diff --git a/.github/dependabot.yml b/.github/dependabot.yml index bd5661bea41a..c68d6301ef4f 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -2,20 +2,37 @@ # # SPDX-License-Identifier: curl +# https://docs.github.com/code-security/dependabot/working-with-dependabot/dependabot-options-reference + version: 2 updates: - package-ecosystem: 'github-actions' directory: '/' schedule: interval: 'monthly' + cooldown: + default-days: 7 + groups: + gha-dependencies: + patterns: + - '*' commit-message: prefix: 'GHA:' - package-ecosystem: 'pip' directories: - - '/.github/scripts' - - '/tests' + - '.github/scripts' + - 'tests' schedule: interval: 'monthly' + cooldown: + default-days: 7 + semver-major-days: 15 + semver-minor-days: 7 + semver-patch-days: 3 + groups: + pip-dependencies: + patterns: + - '*' commit-message: prefix: 'GHA:' diff --git a/.github/labeler.yml b/.github/labeler.yml index 982055f16a3b..75ea8686da0a 100644 --- a/.github/labeler.yml +++ b/.github/labeler.yml @@ -162,9 +162,9 @@ cryptography: docs/libcurl/opts/CURLOPT_EGDSOCKET*,\ lib/*sha256*,\ lib/*sha512*,\ - lib/curl_des.*,\ lib/curl_hmac.*,\ lib/curl_md?.*,\ + lib/curl_ntlm_core.*,\ lib/md?.*,\ lib/rand.*\ }" @@ -451,6 +451,7 @@ TLS: - all: - changed-files: - any-glob-to-all-files: "{\ + CMake/FindGnuTLS.cmake,\ CMake/FindMbedTLS.cmake,\ CMake/FindWolfSSL.cmake,\ CMake/FindRustls.cmake,\ diff --git a/.github/scripts/badwords.txt b/.github/scripts/badwords.txt index 741e5376fced..492ea32537b2 100644 --- a/.github/scripts/badwords.txt +++ b/.github/scripts/badwords.txt @@ -46,6 +46,7 @@ there's:there is \. But: Rewrite it somehow? \. So : Rewrite without "so" ? dir :directory +sub-director:subdirector can't:cannot that's:that is web page:webpage diff --git a/.github/scripts/requirements-docs.txt b/.github/scripts/requirements-docs.txt index bd50e5010efb..fa26c105d095 100644 --- a/.github/scripts/requirements-docs.txt +++ b/.github/scripts/requirements-docs.txt @@ -2,4 +2,4 @@ # # SPDX-License-Identifier: curl -pyspelling==2.11 +pyspelling==2.12 diff --git a/.github/scripts/requirements.txt b/.github/scripts/requirements.txt index 4533b2cfd7d9..8cb1d11d0af5 100644 --- a/.github/scripts/requirements.txt +++ b/.github/scripts/requirements.txt @@ -5,5 +5,5 @@ cmakelang==0.6.13 codespell==2.4.1 pytype==2024.10.11 -reuse==6.1.2 -ruff==0.14.0 +reuse==6.2.0 +ruff==0.14.2 diff --git a/.github/scripts/spacecheck.pl b/.github/scripts/spacecheck.pl index fbd064db3ba2..e2da2cec5d60 100755 --- a/.github/scripts/spacecheck.pl +++ b/.github/scripts/spacecheck.pl @@ -34,18 +34,10 @@ "^tests/data/test", ); -my @mixed_eol = ( - "^tests/data/test", -); - my @need_crlf = ( "\\.(bat|sln)\$", ); -my @space_at_eol = ( - "^tests/data/test", -); - my @non_ascii_allowed = ( '\xC3\xB6', # UTF-8 for https://codepoints.net/U+00F6 LATIN SMALL LETTER O WITH DIAERESIS ); @@ -113,8 +105,7 @@ sub eol_detect { my $eol = eol_detect($content); - if($eol eq "" && - !fn_match($filename, @mixed_eol)) { + if($eol eq "") { push @err, "content: has mixed EOL types"; } @@ -124,13 +115,11 @@ sub eol_detect { } if($eol ne "lf" && $content ne "" && - !fn_match($filename, @need_crlf) && - !fn_match($filename, @mixed_eol)) { + !fn_match($filename, @need_crlf)) { push @err, "content: must use LF EOL for this file type"; } - if(!fn_match($filename, @space_at_eol) && - $content =~ /[ \t]\n/) { + if($content =~ /[ \t]\n/) { my $line; for my $l (split(/\n/, $content)) { $line++; diff --git a/.github/workflows/checksrc.yml b/.github/workflows/checksrc.yml index a0337904f2c7..8557ec708ccf 100644 --- a/.github/workflows/checksrc.yml +++ b/.github/workflows/checksrc.yml @@ -27,6 +27,10 @@ name: 'Source' - 'plan9/**' - 'tests/data/**' +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }} + cancel-in-progress: true + permissions: {} jobs: @@ -49,7 +53,7 @@ jobs: with: persist-credentials: false - - name: 'install' + - name: 'install prereqs' run: | python3 -m venv ~/venv ~/venv/bin/pip --disable-pip-version-check --no-input --no-cache-dir install --progress-bar off --prefer-binary \ @@ -120,7 +124,7 @@ jobs: timeout-minutes: 5 steps: - name: 'install prereqs' - run: HOMEBREW_NO_AUTO_UPDATE=1 /home/linuxbrew/.linuxbrew/bin/brew install shellcheck zizmor + run: HOMEBREW_NO_AUTO_UPDATE=1 /home/linuxbrew/.linuxbrew/bin/brew install actionlint shellcheck zizmor - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: @@ -131,7 +135,14 @@ jobs: GH_TOKEN: '${{ secrets.GITHUB_TOKEN }}' run: | eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" - zizmor --pedantic .github/workflows/*.yml + zizmor --pedantic .github/workflows/*.yml .github/dependabot.yml + + - name: 'actionlint' + run: | + eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" + export SHELLCHECK_OPTS='--exclude=1090,1091,2086,2153 --enable=avoid-nullary-conditions,deprecate-which' + actionlint --version + actionlint --ignore matrix .github/workflows/*.yml - name: 'shellcheck CI' run: | diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 58eaa35be5ba..5cbde8de054c 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -32,7 +32,8 @@ name: 'CodeQL' - cron: '0 0 * * 4' concurrency: - group: ${{ github.workflow }} + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }} + cancel-in-progress: true permissions: {} diff --git a/.github/workflows/configure-vs-cmake.yml b/.github/workflows/configure-vs-cmake.yml index 5c35051f6a34..ade83e0c6028 100644 --- a/.github/workflows/configure-vs-cmake.yml +++ b/.github/workflows/configure-vs-cmake.yml @@ -30,6 +30,10 @@ name: 'configure-vs-cmake' - '.github/scripts/cmp-config.pl' - '.github/workflows/configure-vs-cmake.yml' +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }} + cancel-in-progress: true + permissions: {} jobs: diff --git a/.github/workflows/curl-for-win.yml b/.github/workflows/curl-for-win.yml index 91b0382a7562..a068f773d58d 100644 --- a/.github/workflows/curl-for-win.yml +++ b/.github/workflows/curl-for-win.yml @@ -63,12 +63,39 @@ jobs: export CW_GCCSUFFIX='-12' sudo podman image trust set --type reject default sudo podman image trust set --type accept docker.io/library - time podman pull "${DOCKER_IMAGE_STABLE}" + time podman pull "${OCI_IMAGE_DEBIAN_STABLE}" podman images --digests time podman run --volume "$(pwd):$(pwd)" --workdir "$(pwd)" \ --env-file <(env | grep -a -E \ '^(CW_|GITHUB_)') \ - "${DOCKER_IMAGE_STABLE}" \ + "${OCI_IMAGE_DEBIAN_STABLE}" \ + sh -c ./_ci-linux-debian.sh + + linux-glibc-gcc-minimal: # use gcc to minimize installed packages + name: 'Linux gcc glibc minimal' + runs-on: ubuntu-latest + timeout-minutes: 5 + steps: + - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 + with: + persist-credentials: false + path: 'curl' + fetch-depth: 8 + - name: 'build' + run: | + git clone --depth 1 https://github.com/curl/curl-for-win + mv curl-for-win/* . + export CW_CONFIG='-main-werror-unitybatch-prefill-zero-osnotls-osnoidn-nohttp-nocurltool-linux-x64-gcc' + export CW_REVISION="${GITHUB_SHA}" + . ./_versions.sh + sudo podman image trust set --type reject default + sudo podman image trust set --type accept docker.io/library + time podman pull "${OCI_IMAGE_DEBIAN}" + podman images --digests + time podman run --volume "$(pwd):$(pwd)" --workdir "$(pwd)" \ + --env-file <(env | grep -a -E \ + '^(CW_|GITHUB_)') \ + "${OCI_IMAGE_DEBIAN}" \ sh -c ./_ci-linux-debian.sh linux-musl-llvm: @@ -90,12 +117,12 @@ jobs: . ./_versions.sh sudo podman image trust set --type reject default sudo podman image trust set --type accept docker.io/library - time podman pull "${DOCKER_IMAGE}" + time podman pull "${OCI_IMAGE_DEBIAN}" podman images --digests time podman run --volume "$(pwd):$(pwd)" --workdir "$(pwd)" \ --env-file <(env | grep -a -E \ '^(CW_|GITHUB_)') \ - "${DOCKER_IMAGE}" \ + "${OCI_IMAGE_DEBIAN}" \ sh -c ./_ci-linux-debian.sh mac-clang: @@ -137,16 +164,16 @@ jobs: . ./_versions.sh sudo podman image trust set --type reject default sudo podman image trust set --type accept docker.io/library - time podman pull "${DOCKER_IMAGE}" + time podman pull "${OCI_IMAGE_DEBIAN}" podman images --digests time podman run --volume "$(pwd):$(pwd)" --workdir "$(pwd)" \ --env-file <(env | grep -a -E \ '^(CW_|GITHUB_)') \ - "${DOCKER_IMAGE}" \ + "${OCI_IMAGE_DEBIAN}" \ sh -c ./_ci-linux-debian.sh - win-gcc-libssh-zlibold-x64: - name: 'Windows gcc libssh zlib-classic (x64)' + win-gcc-zlibold-x64: + name: 'Windows gcc zlib-classic (x64)' runs-on: ubuntu-latest timeout-minutes: 10 steps: @@ -159,15 +186,15 @@ jobs: run: | git clone --depth 1 https://github.com/curl/curl-for-win mv curl-for-win/* . - export CW_CONFIG='-main-werror-unitybatch-win-x64-gcc-libssh1-zlibold' + export CW_CONFIG='-main-werror-unitybatch-win-x64-gcc-zlibold' export CW_REVISION="${GITHUB_SHA}" . ./_versions.sh sudo podman image trust set --type reject default sudo podman image trust set --type accept docker.io/library - time podman pull "${DOCKER_IMAGE}" + time podman pull "${OCI_IMAGE_DEBIAN}" podman images --digests time podman run --volume "$(pwd):$(pwd)" --workdir "$(pwd)" \ --env-file <(env | grep -a -E \ '^(CW_|GITHUB_)') \ - "${DOCKER_IMAGE}" \ + "${OCI_IMAGE_DEBIAN}" \ sh -c ./_ci-linux-debian.sh diff --git a/.github/workflows/distcheck.yml b/.github/workflows/distcheck.yml index c6b4e775ebe2..fef5de4f7b97 100644 --- a/.github/workflows/distcheck.yml +++ b/.github/workflows/distcheck.yml @@ -49,7 +49,7 @@ jobs: - name: 'maketgz' run: SOURCE_DATE_EPOCH=1711526400 ./scripts/maketgz 99.98.97 - - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2 + - uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0 with: name: 'release-tgz' path: 'curl-99.98.97.tar.gz' @@ -75,7 +75,7 @@ jobs: timeout-minutes: 10 needs: maketgz-and-verify-in-tree steps: - - uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0 + - uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0 with: name: 'release-tgz' @@ -99,7 +99,7 @@ jobs: timeout-minutes: 10 needs: maketgz-and-verify-in-tree steps: - - uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0 + - uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0 with: name: 'release-tgz' @@ -125,7 +125,7 @@ jobs: timeout-minutes: 10 needs: maketgz-and-verify-in-tree steps: - - uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0 + - uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0 with: name: 'release-tgz' @@ -149,7 +149,7 @@ jobs: timeout-minutes: 10 needs: maketgz-and-verify-in-tree steps: - - uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0 + - uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0 with: name: 'release-tgz' @@ -170,7 +170,7 @@ jobs: timeout-minutes: 5 needs: maketgz-and-verify-in-tree steps: - - uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0 + - uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0 with: name: 'release-tgz' @@ -192,7 +192,7 @@ jobs: timeout-minutes: 5 needs: maketgz-and-verify-in-tree steps: - - uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0 + - uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0 with: name: 'release-tgz' @@ -218,7 +218,7 @@ jobs: with: persist-credentials: false - - uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0 + - uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53 # v6.0.0 with: name: 'release-tgz' diff --git a/.github/workflows/fuzz.yml b/.github/workflows/fuzz.yml index 1c466160fc77..eb4bd0dc887b 100644 --- a/.github/workflows/fuzz.yml +++ b/.github/workflows/fuzz.yml @@ -35,6 +35,11 @@ name: 'Fuzzer' - 'projects/**' - 'tests/data/**' +concurrency: + # Hard-coded workflow name to avoid colliding with curl-fuzzer's group + group: curl-fuzz-${{ github.event.pull_request.number || github.sha }} + cancel-in-progress: true + permissions: {} jobs: diff --git a/.github/workflows/http3-linux.yml b/.github/workflows/http3-linux.yml index 38d2fb6ac025..29d0fe6eaff4 100644 --- a/.github/workflows/http3-linux.yml +++ b/.github/workflows/http3-linux.yml @@ -30,8 +30,7 @@ name: 'Linux HTTP/3' - 'projects/**' concurrency: - # Hardcoded workflow filename as workflow name above is just Linux again - group: http3-${{ github.event.pull_request.number || github.sha }} + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }} cancel-in-progress: true permissions: {} @@ -42,7 +41,7 @@ env: # handled in renovate.json OPENSSL_VERSION: 3.6.0 # renovate: datasource=github-tags depName=libressl/portable versioning=semver registryUrl=https://github.com - LIBRESSL_VERSION: 4.2.0 + LIBRESSL_VERSION: 4.2.1 # renovate: datasource=github-tags depName=awslabs/aws-lc versioning=semver registryUrl=https://github.com AWSLC_VERSION: 1.61.4 # renovate: datasource=github-tags depName=google/boringssl versioning=semver registryUrl=https://github.com @@ -54,9 +53,9 @@ env: # renovate: datasource=github-tags depName=ngtcp2/nghttp3 versioning=semver registryUrl=https://github.com NGHTTP3_VERSION: 1.12.0 # renovate: datasource=github-tags depName=ngtcp2/ngtcp2 versioning=semver registryUrl=https://github.com - NGTCP2_VERSION: 1.16.0 + NGTCP2_VERSION: 1.17.0 # renovate: datasource=github-tags depName=nghttp2/nghttp2 versioning=semver registryUrl=https://github.com - NGHTTP2_VERSION: 1.67.1 + NGHTTP2_VERSION: 1.68.0 # renovate: datasource=github-tags depName=cloudflare/quiche versioning=semver registryUrl=https://github.com QUICHE_VERSION: 0.24.6 @@ -334,8 +333,7 @@ jobs: PKG_CONFIG_PATH: /home/runner/openssl/build/lib/pkgconfig:/home/runner/nghttp3/build/lib/pkgconfig:/home/runner/ngtcp2/build/lib/pkgconfig:/home/runner/nghttp2/build/lib/pkgconfig configure: >- LDFLAGS=-Wl,-rpath,/home/runner/openssl/build/lib - --with-ngtcp2 --disable-ntlm - --with-openssl=/home/runner/openssl/build --enable-ssls-export + --with-openssl=/home/runner/openssl/build --with-ngtcp2 --enable-ssls-export - name: 'openssl' install_steps: skipall @@ -343,7 +341,6 @@ jobs: generate: >- -DOPENSSL_ROOT_DIR=/home/runner/openssl/build -DUSE_NGTCP2=ON -DCURL_DISABLE_LDAP=ON - -DCURL_DISABLE_NTLM=ON -DCMAKE_UNITY_BUILD=ON - name: 'libressl' @@ -351,29 +348,25 @@ jobs: PKG_CONFIG_PATH: /home/runner/libressl/build/lib/pkgconfig:/home/runner/nghttp3/build/lib/pkgconfig:/home/runner/ngtcp2/build/lib/pkgconfig:/home/runner/nghttp2/build/lib/pkgconfig configure: >- LDFLAGS=-Wl,-rpath,/home/runner/libressl/build/lib - --with-ngtcp2 --disable-ntlm - --with-openssl=/home/runner/libressl/build --enable-ssls-export + --with-openssl=/home/runner/libressl/build --with-ngtcp2 --enable-ssls-export --enable-unity - name: 'libressl' PKG_CONFIG_PATH: /home/runner/libressl/build/lib/pkgconfig:/home/runner/nghttp3/build/lib/pkgconfig:/home/runner/ngtcp2/build/lib/pkgconfig:/home/runner/nghttp2/build/lib/pkgconfig generate: >- - -DOPENSSL_ROOT_DIR=/home/runner/libressl/build - -DUSE_NGTCP2=ON -DCURL_DISABLE_NTLM=ON + -DOPENSSL_ROOT_DIR=/home/runner/libressl/build -DUSE_NGTCP2=ON - name: 'awslc' install_steps: skipall PKG_CONFIG_PATH: /home/runner/awslc/build/lib/pkgconfig:/home/runner/nghttp3/build/lib/pkgconfig:/home/runner/ngtcp2/build/lib/pkgconfig:/home/runner/nghttp2/build/lib/pkgconfig configure: >- LDFLAGS=-Wl,-rpath,/home/runner/awslc/build/lib - --with-ngtcp2 --disable-ntlm - --with-openssl=/home/runner/awslc/build --enable-ssls-export + --with-openssl=/home/runner/awslc/build --with-ngtcp2 --enable-ssls-export - name: 'awslc' PKG_CONFIG_PATH: /home/runner/awslc/build/lib/pkgconfig:/home/runner/nghttp3/build/lib/pkgconfig:/home/runner/ngtcp2/build/lib/pkgconfig:/home/runner/nghttp2/build/lib/pkgconfig generate: >- - -DOPENSSL_ROOT_DIR=/home/runner/awslc/build -DBUILD_SHARED_LIBS=OFF - -DUSE_NGTCP2=ON -DCURL_DISABLE_NTLM=ON + -DOPENSSL_ROOT_DIR=/home/runner/awslc/build -DUSE_NGTCP2=ON -DBUILD_SHARED_LIBS=OFF -DCMAKE_UNITY_BUILD=ON - name: 'boringssl' @@ -381,14 +374,12 @@ jobs: PKG_CONFIG_PATH: /home/runner/boringssl/build/lib/pkgconfig:/home/runner/nghttp3/build/lib/pkgconfig:/home/runner/ngtcp2-boringssl/build/lib/pkgconfig:/home/runner/nghttp2/build/lib/pkgconfig configure: >- LDFLAGS=-Wl,-rpath,/home/runner/boringssl/build/lib - --with-ngtcp2 --disable-ntlm - --with-openssl=/home/runner/boringssl/build --enable-ssls-export + --with-openssl=/home/runner/boringssl/build --with-ngtcp2 --enable-ssls-export - name: 'boringssl' PKG_CONFIG_PATH: /home/runner/boringssl/build/lib/pkgconfig:/home/runner/nghttp3/build/lib/pkgconfig:/home/runner/ngtcp2-boringssl/build/lib/pkgconfig:/home/runner/nghttp2/build/lib/pkgconfig generate: >- - -DOPENSSL_ROOT_DIR=/home/runner/boringssl/build -DBUILD_SHARED_LIBS=OFF - -DUSE_NGTCP2=ON -DCURL_DISABLE_NTLM=ON + -DOPENSSL_ROOT_DIR=/home/runner/boringssl/build -DUSE_NGTCP2=ON -DBUILD_SHARED_LIBS=OFF -DCMAKE_UNITY_BUILD=ON - name: 'gnutls' @@ -397,15 +388,13 @@ jobs: PKG_CONFIG_PATH: /home/runner/gnutls/build/lib/pkgconfig:/home/runner/nghttp3/build/lib/pkgconfig:/home/runner/ngtcp2/build/lib/pkgconfig:/home/runner/nghttp2/build/lib/pkgconfig configure: >- LDFLAGS=-Wl,-rpath,/home/runner/gnutls/build/lib - --with-ngtcp2 - --with-gnutls=/home/runner/gnutls/build --enable-ssls-export + --with-gnutls=/home/runner/gnutls/build --with-ngtcp2 --enable-ssls-export - name: 'gnutls' install_packages: nettle-dev libp11-kit-dev PKG_CONFIG_PATH: /home/runner/gnutls/build/lib/pkgconfig:/home/runner/nghttp3/build/lib/pkgconfig:/home/runner/ngtcp2/build/lib/pkgconfig:/home/runner/nghttp2/build/lib/pkgconfig generate: >- - -DCURL_USE_GNUTLS=ON - -DUSE_NGTCP2=ON -DCURL_DISABLE_NTLM=ON + -DCURL_USE_GNUTLS=ON -DUSE_NGTCP2=ON -DCMAKE_UNITY_BUILD=ON - name: 'wolfssl' @@ -413,9 +402,7 @@ jobs: PKG_CONFIG_PATH: /home/runner/wolfssl/build/lib/pkgconfig:/home/runner/nghttp3/build/lib/pkgconfig:/home/runner/ngtcp2/build/lib/pkgconfig:/home/runner/nghttp2/build/lib/pkgconfig configure: >- LDFLAGS=-Wl,-rpath,/home/runner/wolfssl/build/lib - --with-ngtcp2 - --with-wolfssl=/home/runner/wolfssl/build - --enable-ech --enable-ssls-export + --with-wolfssl=/home/runner/wolfssl/build --with-ngtcp2 --enable-ech --enable-ssls-export --enable-unity - name: 'wolfssl' @@ -429,7 +416,6 @@ jobs: PKG_CONFIG_PATH: /home/runner/openssl/build/lib/pkgconfig:/home/runner/nghttp3/build/lib/pkgconfig:/home/runner/nghttp2/build/lib/pkgconfig configure: >- LDFLAGS=-Wl,-rpath,/home/runner/openssl/build/lib - --disable-ntlm --with-openssl=/home/runner/openssl/build --with-openssl-quic - name: 'openssl-quic' @@ -437,7 +423,6 @@ jobs: generate: >- -DOPENSSL_ROOT_DIR=/home/runner/openssl/build -DUSE_OPENSSL_QUIC=ON -DCURL_DISABLE_LDAP=ON - -DCURL_DISABLE_NTLM=ON -DCMAKE_UNITY_BUILD=ON - name: 'quiche' @@ -681,8 +666,6 @@ jobs: - name: 'run tests' if: ${{ !contains(matrix.build.install_steps, 'skipall') && !contains(matrix.build.install_steps, 'skiprun') }} - env: - TFLAGS: '${{ matrix.build.tflags }}' run: | source ~/venv/bin/activate if [ "${MATRIX_BUILD}" = 'cmake' ]; then diff --git a/.github/workflows/label.yml b/.github/workflows/label.yml index a5f42f9d409b..0c169e607573 100644 --- a/.github/workflows/label.yml +++ b/.github/workflows/label.yml @@ -13,6 +13,10 @@ name: 'Labeler' 'on': [pull_request_target] # zizmor: ignore[dangerous-triggers] +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }} + cancel-in-progress: true + permissions: {} jobs: diff --git a/.github/workflows/linux-old.yml b/.github/workflows/linux-old.yml index e145633708de..7cba9243cbe9 100644 --- a/.github/workflows/linux-old.yml +++ b/.github/workflows/linux-old.yml @@ -16,7 +16,7 @@ # httrack is one of the smallest downloaders, needed to bootstrap ELTS, # and won't conflict with the curl we're building. -name: 'Old Linux' +name: 'Linux Old' 'on': push: @@ -43,6 +43,10 @@ name: 'Old Linux' - 'plan9/**' - 'projects/**' +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }} + cancel-in-progress: true + permissions: {} env: @@ -52,7 +56,7 @@ env: jobs: cmake-autotools: - name: 'cmake & autotools' + name: 'autotools & cmake' runs-on: 'ubuntu-latest' container: 'debian:stretch' @@ -80,31 +84,31 @@ jobs: with: persist-credentials: false - - name: 'cmake build-only configure (out-of-tree)' + - name: 'CM build-only configure (out-of-tree)' run: | mkdir bld-1 cd bld-1 cmake .. -DCMAKE_UNITY_BUILD=ON -DCURL_WERROR=ON -DBUILD_SHARED_LIBS=ON \ -DCURL_USE_GNUTLS=ON -DENABLE_ARES=OFF -DCURL_ZSTD=OFF -DCURL_USE_GSSAPI=OFF -DCURL_USE_LIBSSH2=OFF -DCURL_USE_LIBSSH=OFF -DUSE_LIBRTMP=ON - - name: 'cmake build-only build' + - name: 'CM build-only build' run: VERBOSE=1 make -C bld-1 install - - name: 'cmake build-only curl -V' + - name: 'CM build-only curl -V' run: bld-1/src/curl --disable --version - - name: 'cmake build-only configure log' + - name: 'CM build-only configure log' if: ${{ !cancelled() }} run: cat bld-1/CMakeFiles/CMake*.log 2>/dev/null || true - - name: 'cmake build-only curl_config.h' + - name: 'CM build-only curl_config.h' run: | echo '::group::raw'; cat bld-1/lib/curl_config.h || true; echo '::endgroup::' grep -F '#define' bld-1/lib/curl_config.h | sort || true # when this job can get a libssh version 0.9.0 or later, this should get # that enabled again - - name: 'cmake configure (out-of-tree, c-ares, zstd, gssapi)' + - name: 'CM configure (out-of-tree, c-ares, zstd, gssapi)' run: | mkdir bld-cares cd bld-cares @@ -112,37 +116,37 @@ jobs: -DCURL_USE_GNUTLS=ON -DENABLE_ARES=ON -DCURL_USE_GSSAPI=ON -DCURL_USE_LIBSSH2=OFF -DCURL_USE_LIBSSH=OFF -DUSE_LIBRTMP=ON \ -DCURL_LIBCURL_VERSIONED_SYMBOLS=ON - - name: 'cmake configure log' + - name: 'CM configure log' if: ${{ !cancelled() }} run: cat bld-cares/CMakeFiles/CMake*.log 2>/dev/null || true - - name: 'cmake curl_config.h' + - name: 'CM curl_config.h' run: | echo '::group::raw'; cat bld-cares/lib/curl_config.h || true; echo '::endgroup::' grep -F '#define' bld-cares/lib/curl_config.h | sort || true - - name: 'cmake build' + - name: 'CM build' run: make -C bld-cares - - name: 'cmake curl -V' + - name: 'CM curl -V' run: bld-cares/src/curl --disable --version - - name: 'cmake install' + - name: 'CM install' run: make -C bld-cares install - - name: 'cmake build tests' + - name: 'CM build tests' run: make -C bld-cares testdeps - - name: 'cmake run tests' + - name: 'CM run tests' run: make -C bld-cares test-ci - - name: 'cmake build examples' + - name: 'CM build examples' run: make -C bld-cares curl-examples-build - - name: 'autoreconf' + - name: 'AM autoreconf' run: autoreconf -fi - - name: 'autotools configure (out-of-tree, c-ares, zstd, gssapi)' + - name: 'AM configure (out-of-tree, c-ares, zstd, gssapi)' run: | mkdir bld-am cd bld-am @@ -150,23 +154,23 @@ jobs: --with-gnutls --enable-ares --without-libssh2 --with-zstd --with-gssapi --with-librtmp \ --prefix="$PWD"/../curl-install-am - - name: 'autotools configure log' + - name: 'AM configure log' if: ${{ !cancelled() }} run: cat bld-am/config.log 2>/dev/null || true - - name: 'autotools curl_config.h' + - name: 'AM curl_config.h' run: | echo '::group::raw'; cat bld-am/lib/curl_config.h || true; echo '::endgroup::' grep -F '#define' bld-am/lib/curl_config.h | sort || true - - name: 'autotools build' + - name: 'AM build' run: make -C bld-am - - name: 'autotools curl -V' + - name: 'AM curl -V' run: bld-am/src/curl --disable --version - - name: 'autotools install' + - name: 'AM install' run: make -C bld-am install - - name: 'autotools build tests' + - name: 'AM build tests' run: make -C bld-am/tests all diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 2d674dc195cf..6eeb6b697e98 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -38,11 +38,13 @@ env: CURL_CI: github CURL_CLANG_TIDYFLAGS: '-checks=-clang-analyzer-security.insecureAPI.bzero,-clang-analyzer-security.insecureAPI.strcpy,-clang-analyzer-optin.performance.Padding,-clang-analyzer-security.ArrayBound,-clang-analyzer-security.insecureAPI.DeprecatedOrUnsafeBufferHandling,-clang-analyzer-valist.Uninitialized' # renovate: datasource=github-tags depName=libressl/portable versioning=semver registryUrl=https://github.com - LIBRESSL_VERSION: 4.2.0 + LIBRESSL_VERSION: 4.2.1 # renovate: datasource=github-tags depName=wolfSSL/wolfssl versioning=semver extractVersion=^v?(?.+)-stable$ registryUrl=https://github.com WOLFSSL_VERSION: 5.8.2 # renovate: datasource=github-tags depName=Mbed-TLS/mbedtls versioning=semver registryUrl=https://github.com - MBEDTLS_VERSION: 3.6.4 + MBEDTLS_VERSION: 4.0.0 + # renovate: datasource=github-tags depName=Mbed-TLS/mbedtls versioning=semver:^3.0.0 registryUrl=https://github.com + MBEDTLS_VERSION_PREV: 3.6.4 # renovate: datasource=github-tags depName=awslabs/aws-lc versioning=semver registryUrl=https://github.com AWSLC_VERSION: 1.61.4 # renovate: datasource=github-tags depName=google/boringssl versioning=semver registryUrl=https://github.com @@ -109,10 +111,10 @@ jobs: install_steps: mbedtls pytest configure: CC=clang LDFLAGS=-Wl,-rpath,/home/runner/mbedtls/lib --with-mbedtls=/home/runner/mbedtls --enable-debug --with-fish-functions-dir --with-zsh-functions-dir - - name: 'mbedtls' + - name: 'mbedtls-prev' install_packages: libnghttp2-dev libuv1-dev - install_steps: mbedtls - PKG_CONFIG_PATH: /home/runner/mbedtls/lib/pkgconfig # Requires v3.6.0 + install_steps: mbedtls-prev pytest + PKG_CONFIG_PATH: /home/runner/mbedtls-prev/lib/pkgconfig # Requires v3.6.0 generate: -DCURL_USE_MBEDTLS=ON -DCURL_USE_LIBUV=ON -DENABLE_DEBUG=ON - name: 'mbedtls-pkg MultiSSL !pc' @@ -435,7 +437,7 @@ jobs: - name: 'cache mbedtls' if: ${{ contains(matrix.build.install_steps, 'mbedtls') }} uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0 - id: cache-mbedtls + id: cache-mbedtls-threadsafe env: cache-name: cache-mbedtls-threadsafe with: @@ -443,7 +445,7 @@ jobs: key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ env.MBEDTLS_VERSION }} - name: 'build mbedtls' - if: ${{ contains(matrix.build.install_steps, 'mbedtls') && steps.cache-mbedtls.outputs.cache-hit != 'true' }} + if: ${{ contains(matrix.build.install_steps, 'mbedtls') && steps.cache-mbedtls-threadsafe.outputs.cache-hit != 'true' }} run: | curl --disable --fail --silent --show-error --connect-timeout 15 --max-time 120 --retry 6 --retry-connrefused \ --location "https://github.com/Mbed-TLS/mbedtls/releases/download/mbedtls-${MBEDTLS_VERSION}/mbedtls-${MBEDTLS_VERSION}.tar.bz2" | tar -xj @@ -455,7 +457,30 @@ jobs: cmake --build . cmake --install . - - name: 'cache openldap-static' + - name: 'cache mbedtls (prev)' + if: ${{ contains(matrix.build.install_steps, 'mbedtls-prev') }} + uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0 + id: cache-mbedtls-threadsafe-prev + env: + cache-name: cache-mbedtls-threadsafe-prev + with: + path: ~/mbedtls-prev + key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ env.MBEDTLS_VERSION }} + + - name: 'build mbedtls (prev)' + if: ${{ contains(matrix.build.install_steps, 'mbedtls-prev') && steps.cache-mbedtls-threadsafe-prev.outputs.cache-hit != 'true' }} + run: | + curl --disable --fail --silent --show-error --connect-timeout 15 --max-time 120 --retry 6 --retry-connrefused \ + --location "https://github.com/Mbed-TLS/mbedtls/releases/download/mbedtls-${MBEDTLS_VERSION_PREV}/mbedtls-${MBEDTLS_VERSION_PREV}.tar.bz2" | tar -xj + cd "mbedtls-${MBEDTLS_VERSION_PREV}" + ./scripts/config.py set MBEDTLS_THREADING_C + ./scripts/config.py set MBEDTLS_THREADING_PTHREAD + cmake -B . -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_INSTALL_PREFIX=/home/runner/mbedtls-prev \ + -DENABLE_PROGRAMS=OFF -DENABLE_TESTING=OFF + cmake --build . + cmake --install . + + - name: 'cache openldap (static)' if: ${{ contains(matrix.build.install_steps, 'openldap-static') }} uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4.3.0 id: cache-openldap-static @@ -471,8 +496,7 @@ jobs: curl --disable --fail --silent --show-error --connect-timeout 15 --max-time 120 --retry 6 --retry-connrefused \ --location "https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-${OPENLDAP_VERSION}.tgz" | tar -xz cd "openldap-${OPENLDAP_VERSION}" - ./configure --enable-static --disable-shared --prefix=/home/runner/openldap-static - make + ./configure --enable-static --disable-shared --disable-slapd --prefix=/home/runner/openldap-static make install - name: 'cache openssl (thread sanitizer)' diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml index 1e9f2408a8ba..0e0d03bc4f01 100644 --- a/.github/workflows/macos.yml +++ b/.github/workflows/macos.yml @@ -54,12 +54,12 @@ jobs: timeout-minutes: 10 env: DEVELOPER_DIR: "/Applications/Xcode${{ matrix.build.xcode && format('_{0}', matrix.build.xcode) || '' }}.app/Contents/Developer" - CC: ${{ matrix.build.compiler || 'clang' }} + CC: 'clang' LDFLAGS: '' MATRIX_BUILD: ${{ matrix.build.generate && 'cmake' || 'autotools' }} MATRIX_OPTIONS: ${{ matrix.build.options }} # renovate: datasource=github-tags depName=libressl/portable versioning=semver registryUrl=https://github.com - LIBRESSL_VERSION: 4.2.0 + LIBRESSL_VERSION: 4.2.1 strategy: fail-fast: false matrix: @@ -81,6 +81,7 @@ jobs: - name: 'libressl' install_steps: libressl generator: Xcode + xcode: '' # default Xcode. Set it once to silence actionlint. options: --config Debug generate: >- -DCMAKE_XCODE_ATTRIBUTE_CODE_SIGNING_ALLOWED=OFF @@ -216,15 +217,16 @@ jobs: strategy: fail-fast: false matrix: - compiler: [clang, llvm@18, gcc-12] + compiler: [clang, llvm@18, gcc-13] build: # autotools - name: '!ssl !debug brotli zstd' compiler: clang install: brotli zstd configure: --without-ssl --with-brotli --with-zstd + xcode: '' # default Xcode. Set it once to silence actionlint. - name: '!ssl !debug' - compiler: gcc-12 + compiler: gcc-13 configure: --without-ssl - name: '!ssl' compiler: clang @@ -318,7 +320,7 @@ jobs: install: gnutls nettle krb5 generate: -DENABLE_DEBUG=ON -DCURL_USE_GNUTLS=ON -DCURL_USE_OPENSSL=OFF -DCURL_USE_GSSAPI=ON -DGSS_ROOT_DIR=/opt/homebrew/opt/krb5 -DCURL_DISABLE_LDAP=ON -DUSE_SSLS_EXPORT=ON - name: 'aws-lc' - compiler: gcc-12 + compiler: gcc-13 install: aws-lc generate: -DENABLE_DEBUG=ON -DCURL_USE_OPENSSL=ON -DOPENSSL_ROOT_DIR=/opt/homebrew/opt/aws-lc -DUSE_ECH=ON -DCURL_DISABLE_LDAP=ON -DUSE_SSLS_EXPORT=ON - name: 'Rustls' @@ -340,10 +342,10 @@ jobs: exclude: # opt out jobs from combinations that have the compiler set manually - { compiler: llvm@18, build: { compiler: 'clang' } } - - { compiler: llvm@18, build: { compiler: 'gcc-12' } } - - { compiler: gcc-12, build: { compiler: 'clang' } } - - { compiler: gcc-12, build: { compiler: 'llvm@18' } } - - { compiler: clang, build: { compiler: 'gcc-12' } } + - { compiler: llvm@18, build: { compiler: 'gcc-13' } } + - { compiler: gcc-13, build: { compiler: 'clang' } } + - { compiler: gcc-13, build: { compiler: 'llvm@18' } } + - { compiler: clang, build: { compiler: 'gcc-13' } } - { compiler: clang, build: { compiler: 'llvm@18' } } steps: @@ -538,7 +540,7 @@ jobs: fi combinations: # Test buildability with host OS, Xcode / SDK, compiler, target-OS, built tool, combinations - name: "${{ matrix.build == 'cmake' && 'CM' || 'AM' }} ${{ matrix.compiler }} ${{ matrix.image }} ${{ matrix.xcode }} ${{ matrix.config }}" + name: "${{ matrix.build == 'cmake' && 'CM' || 'AM' }} ${{ matrix.compiler }} ${{ matrix.image }} ${{ matrix.xcode }}" runs-on: ${{ matrix.image }} timeout-minutes: 10 env: @@ -555,7 +557,7 @@ jobs: # https://github.com/actions/runner-images/blob/main/images/macos/macos-14-arm64-Readme.md # https://github.com/actions/runner-images/blob/main/images/macos/macos-15-arm64-Readme.md # https://github.com/actions/runner-images/blob/main/images/macos/macos-26-arm64-Readme.md - compiler: [gcc-12, gcc-13, gcc-15, llvm@15, llvm@18, llvm@20, clang] + compiler: [gcc-13, gcc-14, gcc-15, llvm@15, llvm@18, llvm@20, clang] # Xcode support matrix as of 2025-10, with default macOS SDK versions and OS names, years: # * = default Xcode on the runner. # macos-14: 15.0.1, 15.1, 15.2, 15.3,*15.4 @@ -566,47 +568,20 @@ jobs: # https://github.com/actions/runner-images/tree/main/images/macos # https://en.wikipedia.org/wiki/MacOS_version_history image: [macos-14, macos-15, macos-26] - # Can skip these to reduce jobs: - # 15.1 has the same default macOS SDK as 15.2 and identical test results. - # 15.4 not revealing new fallouts. - #xcode: ['15.0.1', '15.1', '15.2', '15.3', '15.4', '16.0', '16.1'] # all Xcode - #xcode: ['15.0.1' , '15.2', '15.3', '15.4', '16.0', '16.1'] # all SDK - #xcode: ['15.0.1' , '15.2', '15.3' , '16.0' ] # coverage xcode: [''] # default Xcodes macos-version-min: [''] build: [autotools, cmake] exclude: # Combinations not covered by runner images: - - { image: macos-14, xcode: '16.0' } - - { image: macos-14, xcode: '16.1' } - - { image: macos-14, xcode: '16.2' } - - { image: macos-14, xcode: '16.3' } - - { image: macos-14, xcode: '16.4' } - - { image: macos-14, xcode: '26.0' } - - { image: macos-15, xcode: '15.0.1' } - - { image: macos-15, xcode: '15.1' } - - { image: macos-15, xcode: '15.2' } - - { image: macos-15, xcode: '15.3' } - - { image: macos-15, xcode: '15.4' } - - { image: macos-26, xcode: '15.0.1' } - - { image: macos-26, xcode: '15.1' } - - { image: macos-26, xcode: '15.2' } - - { image: macos-26, xcode: '15.3' } - - { image: macos-26, xcode: '15.4' } - - { image: macos-26, xcode: '16.0' } - - { image: macos-26, xcode: '16.1' } - - { image: macos-26, xcode: '16.2' } - - { image: macos-26, xcode: '16.3' } - { image: macos-14, compiler: 'llvm@18' } - { image: macos-14, compiler: 'llvm@20' } - { image: macos-15, compiler: 'llvm@15' } - { image: macos-15, compiler: 'llvm@20' } - { image: macos-26, compiler: 'llvm@15' } - { image: macos-26, compiler: 'llvm@18' } - - { image: macos-26, compiler: 'gcc-12' } # Reduce build combinations, by dropping less interesting ones - - { compiler: gcc-13, build: cmake } - - { compiler: gcc-14, build: autotools } + - { image: macos-26, compiler: 'gcc-13' } + - { compiler: gcc-14, build: cmake } - { compiler: gcc-15, build: autotools } steps: - name: 'install autotools' diff --git a/.github/workflows/non-native.yml b/.github/workflows/non-native.yml index 8dccb9e39964..523a6761e6fd 100644 --- a/.github/workflows/non-native.yml +++ b/.github/workflows/non-native.yml @@ -51,7 +51,7 @@ jobs: with: persist-credentials: false - name: 'cmake' - uses: cross-platform-actions/action@e8a7b572196ff79ded1979dc2bb9ee67d1ddb252 # v0.29.0 + uses: cross-platform-actions/action@46e8d7fb25520a8d6c64fd2b7a1192611da98eda # v0.30.0 env: MATRIX_ARCH: '${{ matrix.arch }}' with: @@ -96,7 +96,7 @@ jobs: with: persist-credentials: false - name: 'cmake' - uses: cross-platform-actions/action@e8a7b572196ff79ded1979dc2bb9ee67d1ddb252 # v0.29.0 + uses: cross-platform-actions/action@46e8d7fb25520a8d6c64fd2b7a1192611da98eda # v0.30.0 env: MATRIX_ARCH: '${{ matrix.arch }}' with: @@ -138,15 +138,15 @@ jobs: include: - { build: 'autotools', arch: 'x86_64', compiler: 'clang' } - { build: 'cmake' , arch: 'x86_64', compiler: 'clang', options: '-DCMAKE_UNITY_BUILD=OFF', desc: ' !unity !runtests !examples' } - - { build: 'autotools', arch: 'arm64', compiler: 'clang' } - - { build: 'cmake' , arch: 'arm64', compiler: 'clang' } + - { build: 'autotools', arch: 'arm64' , compiler: 'clang' } + - { build: 'cmake' , arch: 'arm64' , compiler: 'clang' } fail-fast: false steps: - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: persist-credentials: false - name: '${{ matrix.build }}' - uses: cross-platform-actions/action@e8a7b572196ff79ded1979dc2bb9ee67d1ddb252 # v0.29.0 + uses: cross-platform-actions/action@46e8d7fb25520a8d6c64fd2b7a1192611da98eda # v0.30.0 env: CC: '${{ matrix.compiler }}' MATRIX_ARCH: '${{ matrix.arch }}' diff --git a/.github/workflows/windows.yml b/.github/workflows/windows.yml index 975b592c7ce1..8214cbb3101a 100644 --- a/.github/workflows/windows.yml +++ b/.github/workflows/windows.yml @@ -57,8 +57,6 @@ jobs: - { build: 'cmake' , platform: 'x86_64', tflags: '' , config: '-DENABLE_DEBUG=ON -DCURL_USE_OPENSSL=ON -DENABLE_THREADED_RESOLVER=OFF', install: 'libssl-devel libssh2-devel', name: 'openssl' } fail-fast: false steps: - - run: git config --global core.autocrlf input - shell: pwsh - uses: cygwin/cygwin-install-action@f2009323764960f80959895c7bc3bb30210afe4d # v6 with: platform: ${{ matrix.platform }} @@ -220,9 +218,6 @@ jobs: - { build: 'cmake' , sys: 'mingw32' , env: 'i686' , tflags: 'skiprun', config: '-DENABLE_DEBUG=OFF -DBUILD_SHARED_LIBS=ON -DCURL_USE_SCHANNEL=ON -DENABLE_UNICODE=ON', install: 'mingw-w64-i686-libssh2', type: 'Release', name: 'schannel R' } fail-fast: false steps: - - run: git config --global core.autocrlf input - shell: pwsh - - uses: msys2/setup-msys2@fb197b72ce45fb24f17bf3f807a388985654d1f2 # v2.29.0 if: ${{ matrix.sys == 'msys' }} with: @@ -243,7 +238,6 @@ jobs: if: ${{ matrix.sys != 'msys' }} with: msystem: ${{ matrix.sys }} - update: ${{ matrix.sys == 'clangarm64' }} # delete this line on next msys2/setup-msys2 bump install: >- mingw-w64-${{ matrix.env }}-cc mingw-w64-${{ matrix.env }}-${{ matrix.build }} ${{ matrix.build == 'autotools' && 'make' || '' }} @@ -370,7 +364,6 @@ jobs: run: | /usr/bin/pacman --noconfirm --noprogressbar --sync --needed openssh /c/ProgramData/chocolatey/choco.exe install --yes --no-progress --limit-output --timeout 180 --force stunnel || true - perl --version | tee "$GITHUB_WORKSPACE"/perlversion - name: 'run tests' if: ${{ matrix.tflags != 'skipall' && matrix.tflags != 'skiprun' }} @@ -425,14 +418,16 @@ jobs: matrix: include: - name: 'schannel' # mingw-w64 12.0 - dir: 'mingw64' + sys: 'mingw64' + dir: 'w64devkit' env: 'x86_64' - ver: '15.0.1' - url: 'https://github.com/brechtsanders/winlibs_mingw/releases/download/15.0.1-snapshot20250406posix-12.0.0-ucrt-r1/winlibs-x86_64-posix-seh-gcc-15.0.1-snapshot20250406-mingw-w64ucrt-12.0.0-r1.7z' + ver: '15.1.0' + url: 'https://github.com/skeeto/w64devkit/releases/download/v2.2.0/w64devkit-x64-2.2.0.7z.exe' config: '-DENABLE_DEBUG=ON -DBUILD_SHARED_LIBS=OFF -DCURL_USE_SCHANNEL=ON -DENABLE_UNICODE=OFF' type: 'Release' tflags: 'skiprun' - name: 'schannel' # mingw-w64 10.0 + sys: 'mingw64' dir: 'mingw64' env: 'x86_64' ver: '9.5.0' @@ -440,6 +435,7 @@ jobs: config: '-DENABLE_DEBUG=ON -DBUILD_SHARED_LIBS=OFF -DCURL_USE_SCHANNEL=ON -DENABLE_UNICODE=OFF' type: 'Release' - name: 'schannel mbedtls U' # mingw-w64 6.0 + sys: 'mingw64' dir: 'mingw64' env: 'x86_64' ver: '7.3.0' @@ -449,6 +445,7 @@ jobs: type: 'Release' tflags: 'skiprun' - name: 'schannel !unity' # mingw-w64 5.0 + sys: 'mingw32' dir: 'mingw32' env: 'i686' ver: '6.4.0' @@ -457,6 +454,7 @@ jobs: type: 'Debug' tflags: 'skiprun' - name: 'schannel !examples' # mingw-w64 3.0 + sys: 'mingw64' dir: 'mingw64' env: 'x86_64' ver: '4.8.1' @@ -464,11 +462,12 @@ jobs: config: '-DENABLE_DEBUG=ON -DBUILD_SHARED_LIBS=OFF -DCURL_USE_SCHANNEL=ON' type: 'Debug' tflags: 'skipall' + chkprefill: '' # Set it once to silence actionlint fail-fast: false steps: - uses: msys2/setup-msys2@fb197b72ce45fb24f17bf3f807a388985654d1f2 # v2.29.0 with: - msystem: ${{ matrix.dir }} + msystem: ${{ matrix.sys }} release: false update: false cache: false @@ -500,8 +499,6 @@ jobs: rm -r -f pack.bin ls -l - - run: git config --global core.autocrlf input - - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: persist-credentials: false @@ -567,7 +564,6 @@ jobs: run: | /c/ProgramData/chocolatey/choco.exe install --yes --no-progress --limit-output --timeout 180 --force stunnel || true python3 -m pip --disable-pip-version-check --no-input --no-cache-dir install --progress-bar off --prefer-binary -r tests/requirements.txt - perl --version | tee "$GITHUB_WORKSPACE"/perlversion - name: 'run tests' if: ${{ matrix.tflags != 'skipall' && matrix.tflags != 'skiprun' }} @@ -944,7 +940,6 @@ jobs: if [ "${MATRIX_IMAGE}" != 'windows-11-arm' ]; then # save 30-60 seconds, to counteract the slower test run step python3 -m pip --disable-pip-version-check --no-input --no-cache-dir install --progress-bar off --prefer-binary -r tests/requirements.txt fi - perl --version | tee "$GITHUB_WORKSPACE"/perlversion - name: 'run tests' if: ${{ matrix.tflags != 'skipall' && matrix.tflags != 'skiprun' }} diff --git a/.mailmap b/.mailmap index e89e3860561e..d04408efa2ea 100644 --- a/.mailmap +++ b/.mailmap @@ -1,3 +1,7 @@ +# Copyright (C) Daniel Stenberg, , et al. +# +# SPDX-License-Identifier: curl + Guenter Knauf Gisle Vanem Gisle Vanem diff --git a/CMake/FindBrotli.cmake b/CMake/FindBrotli.cmake index 690b5a9c27ce..d2b50d962124 100644 --- a/CMake/FindBrotli.cmake +++ b/CMake/FindBrotli.cmake @@ -25,9 +25,9 @@ # # Input variables: # -# - `BROTLI_INCLUDE_DIR`: The brotli include directory. -# - `BROTLICOMMON_LIBRARY`: Path to `brotlicommon` library. -# - `BROTLIDEC_LIBRARY`: Path to `brotlidec` library. +# - `BROTLI_INCLUDE_DIR`: Absolute path to brotli include directory. +# - `BROTLICOMMON_LIBRARY`: Absolute path to `brotlicommon` library. +# - `BROTLIDEC_LIBRARY`: Absolute path to `brotlidec` library. # # Result variables: # @@ -51,7 +51,7 @@ endif() if(BROTLI_FOUND) set(Brotli_FOUND TRUE) - set(BROTLI_VERSION "${BROTLI_libbrotlicommon_VERSION}") + set(BROTLI_VERSION ${BROTLI_libbrotlicommon_VERSION}) string(REPLACE ";" " " BROTLI_CFLAGS "${BROTLI_CFLAGS}") message(STATUS "Found Brotli (via pkg-config): ${BROTLI_INCLUDE_DIRS} (found version \"${BROTLI_VERSION}\")") else() diff --git a/CMake/FindCares.cmake b/CMake/FindCares.cmake index cc47e2d33103..ae2db52d85aa 100644 --- a/CMake/FindCares.cmake +++ b/CMake/FindCares.cmake @@ -25,8 +25,8 @@ # # Input variables: # -# - `CARES_INCLUDE_DIR`: The c-ares include directory. -# - `CARES_LIBRARY`: Path to `cares` library. +# - `CARES_INCLUDE_DIR`: Absolute path to c-ares include directory. +# - `CARES_LIBRARY`: Absolute path to `cares` library. # # Result variables: # diff --git a/CMake/FindGSS.cmake b/CMake/FindGSS.cmake index 1661f208d2f8..89545aa74134 100644 --- a/CMake/FindGSS.cmake +++ b/CMake/FindGSS.cmake @@ -25,7 +25,7 @@ # # Input variables: # -# - `GSS_ROOT_DIR`: Set this variable to the root installation of GSS. (also supported as environment) +# - `GSS_ROOT_DIR`: Absolute path to the root installation of GSS. (also supported as environment) # # Result variables: # @@ -253,7 +253,7 @@ find_package_handle_standard_args(GSS VERSION_VAR GSS_VERSION FAIL_MESSAGE - "Could NOT find GSS, try to set the path to GSS root folder in the system variable GSS_ROOT_DIR" + "Could NOT find GSS, try to set the absolute path to GSS installation root directory in the environment variable GSS_ROOT_DIR" ) mark_as_advanced( diff --git a/CMake/FindGnuTLS.cmake b/CMake/FindGnuTLS.cmake new file mode 100644 index 000000000000..4de4f82eee38 --- /dev/null +++ b/CMake/FindGnuTLS.cmake @@ -0,0 +1,83 @@ +#*************************************************************************** +# _ _ ____ _ +# Project ___| | | | _ \| | +# / __| | | | |_) | | +# | (__| |_| | _ <| |___ +# \___|\___/|_| \_\_____| +# +# Copyright (C) Daniel Stenberg, , et al. +# +# This software is licensed as described in the file COPYING, which +# you should have received as part of this distribution. The terms +# are also available at https://curl.se/docs/copyright.html. +# +# You may opt to use, copy, modify, merge, publish, distribute and/or sell +# copies of the Software, and permit persons to whom the Software is +# furnished to do so, under the terms of the COPYING file. +# +# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY +# KIND, either express or implied. +# +# SPDX-License-Identifier: curl +# +########################################################################### +# Find the GnuTLS library +# +# Input variables: +# +# - `GNUTLS_INCLUDE_DIR`: Absolute path to GnuTLS include directory. +# - `GNUTLS_LIBRARY`: Absolute path to `gnutls` library. +# +# Result variables: +# +# - `GNUTLS_FOUND`: System has GnuTLS. +# - `GNUTLS_INCLUDE_DIRS`: The GnuTLS include directories. +# - `GNUTLS_LIBRARIES`: The GnuTLS library names. +# - `GNUTLS_LIBRARY_DIRS`: The GnuTLS library directories. +# - `GNUTLS_PC_REQUIRES`: The GnuTLS pkg-config packages. +# - `GNUTLS_CFLAGS`: Required compiler flags. +# - `GNUTLS_VERSION`: Version of GnuTLS. + +set(GNUTLS_PC_REQUIRES "gnutls") + +if(CURL_USE_PKGCONFIG AND + NOT DEFINED GNUTLS_INCLUDE_DIR AND + NOT DEFINED GNUTLS_LIBRARY) + find_package(PkgConfig QUIET) + pkg_check_modules(GNUTLS ${GNUTLS_PC_REQUIRES}) +endif() + +if(GNUTLS_FOUND) + set(GnuTLS_FOUND TRUE) + string(REPLACE ";" " " GNUTLS_CFLAGS "${GNUTLS_CFLAGS}") + message(STATUS "Found GnuTLS (via pkg-config): ${GNUTLS_INCLUDE_DIRS} (found version \"${GNUTLS_VERSION}\")") +else() + find_path(GNUTLS_INCLUDE_DIR NAMES "gnutls/gnutls.h") + find_library(GNUTLS_LIBRARY NAMES "gnutls" "libgnutls") + + unset(GNUTLS_VERSION CACHE) + if(GNUTLS_INCLUDE_DIR AND EXISTS "${GNUTLS_INCLUDE_DIR}/gnutls/gnutls.h") + set(_version_regex "#[\t ]*define[\t ]+GNUTLS_VERSION[\t ]+\"([^\"]*)\"") + file(STRINGS "${GNUTLS_INCLUDE_DIR}/gnutls/gnutls.h" _version_str REGEX "${_version_regex}") + string(REGEX REPLACE "${_version_regex}" "\\1" _version_str "${_version_str}") + set(GNUTLS_VERSION "${_version_str}") + unset(_version_regex) + unset(_version_str) + endif() + + include(FindPackageHandleStandardArgs) + find_package_handle_standard_args(GnuTLS + REQUIRED_VARS + GNUTLS_INCLUDE_DIR + GNUTLS_LIBRARY + VERSION_VAR + GNUTLS_VERSION + ) + + if(GNUTLS_FOUND) + set(GNUTLS_INCLUDE_DIRS ${GNUTLS_INCLUDE_DIR}) + set(GNUTLS_LIBRARIES ${GNUTLS_LIBRARY}) + endif() + + mark_as_advanced(GNUTLS_INCLUDE_DIR GNUTLS_LIBRARY) +endif() diff --git a/CMake/FindLDAP.cmake b/CMake/FindLDAP.cmake index fdc6d7be943d..0a897aa13f88 100644 --- a/CMake/FindLDAP.cmake +++ b/CMake/FindLDAP.cmake @@ -25,9 +25,9 @@ # # Input variables: # -# - `LDAP_INCLUDE_DIR`: The ldap include directory. -# - `LDAP_LIBRARY`: Path to `ldap` library. -# - `LDAP_LBER_LIBRARY`: Path to `lber` library. +# - `LDAP_INCLUDE_DIR`: Absolute path to ldap include directory. +# - `LDAP_LIBRARY`: Absolute path to `ldap` library. +# - `LDAP_LBER_LIBRARY`: Absolute path to `lber` library. # # Result variables: # @@ -50,7 +50,7 @@ if(CURL_USE_PKGCONFIG AND endif() if(LDAP_FOUND) - set(LDAP_VERSION "${LDAP_ldap_VERSION}") + set(LDAP_VERSION ${LDAP_ldap_VERSION}) string(REPLACE ";" " " LDAP_CFLAGS "${LDAP_CFLAGS}") message(STATUS "Found LDAP (via pkg-config): ${LDAP_INCLUDE_DIRS} (found version \"${LDAP_VERSION}\")") else() diff --git a/CMake/FindLibgsasl.cmake b/CMake/FindLibgsasl.cmake index 878d651883da..e584f75371c0 100644 --- a/CMake/FindLibgsasl.cmake +++ b/CMake/FindLibgsasl.cmake @@ -25,8 +25,8 @@ # # Input variables: # -# - `LIBGSASL_INCLUDE_DIR`: The libgsasl include directory. -# - `LIBGSASL_LIBRARY`: Path to `libgsasl` library. +# - `LIBGSASL_INCLUDE_DIR`: Absolute path to libgsasl include directory. +# - `LIBGSASL_LIBRARY`: Absolute path to `libgsasl` library. # # Result variables: # diff --git a/CMake/FindLibidn2.cmake b/CMake/FindLibidn2.cmake index f8f00f0c7913..9112428f37dc 100644 --- a/CMake/FindLibidn2.cmake +++ b/CMake/FindLibidn2.cmake @@ -25,8 +25,8 @@ # # Input variables: # -# - `LIBIDN2_INCLUDE_DIR`: The libidn2 include directory. -# - `LIBIDN2_LIBRARY`: Path to `libidn2` library. +# - `LIBIDN2_INCLUDE_DIR`: Absolute path to libidn2 include directory. +# - `LIBIDN2_LIBRARY`: Absolute path to `libidn2` library. # # Result variables: # diff --git a/CMake/FindLibpsl.cmake b/CMake/FindLibpsl.cmake index d6fde4b2d03c..13740fa9b3fa 100644 --- a/CMake/FindLibpsl.cmake +++ b/CMake/FindLibpsl.cmake @@ -25,8 +25,8 @@ # # Input variables: # -# - `LIBPSL_INCLUDE_DIR`: The libpsl include directory. -# - `LIBPSL_LIBRARY`: Path to `libpsl` library. +# - `LIBPSL_INCLUDE_DIR`: Absolute path to libpsl include directory. +# - `LIBPSL_LIBRARY`: Absolute path to `libpsl` library. # # Result variables: # diff --git a/CMake/FindLibrtmp.cmake b/CMake/FindLibrtmp.cmake index 50fc9692bd24..be975794b773 100644 --- a/CMake/FindLibrtmp.cmake +++ b/CMake/FindLibrtmp.cmake @@ -25,8 +25,8 @@ # # Input variables: # -# - `LIBRTMP_INCLUDE_DIR`: The librtmp include directory. -# - `LIBRTMP_LIBRARY`: Path to `librtmp` library. +# - `LIBRTMP_INCLUDE_DIR`: Absolute path to librtmp include directory. +# - `LIBRTMP_LIBRARY`: Absolute path to `librtmp` library. # # Result variables: # diff --git a/CMake/FindLibssh.cmake b/CMake/FindLibssh.cmake index e2b27d975c3b..cb895aa8d74b 100644 --- a/CMake/FindLibssh.cmake +++ b/CMake/FindLibssh.cmake @@ -25,8 +25,8 @@ # # Input variables: # -# - `LIBSSH_INCLUDE_DIR`: The libssh include directory. -# - `LIBSSH_LIBRARY`: Path to libssh library. +# - `LIBSSH_INCLUDE_DIR`: Absolute path to libssh include directory. +# - `LIBSSH_LIBRARY`: Absolute path to `libssh` library. # # Result variables: # diff --git a/CMake/FindLibssh2.cmake b/CMake/FindLibssh2.cmake index 0b81ecb3cfcb..08415533e0db 100644 --- a/CMake/FindLibssh2.cmake +++ b/CMake/FindLibssh2.cmake @@ -25,8 +25,8 @@ # # Input variables: # -# - `LIBSSH2_INCLUDE_DIR`: The libssh2 include directory. -# - `LIBSSH2_LIBRARY`: Path to `libssh2` library. +# - `LIBSSH2_INCLUDE_DIR`: Absolute path to libssh2 include directory. +# - `LIBSSH2_LIBRARY`: Absolute path to `libssh2` library. # # Result variables: # diff --git a/CMake/FindLibuv.cmake b/CMake/FindLibuv.cmake index b16b3554f651..2565ba3a386a 100644 --- a/CMake/FindLibuv.cmake +++ b/CMake/FindLibuv.cmake @@ -25,8 +25,8 @@ # # Input variables: # -# - `LIBUV_INCLUDE_DIR`: The libuv include directory. -# - `LIBUV_LIBRARY`: Path to `libuv` library. +# - `LIBUV_INCLUDE_DIR`: Absolute path to libuv include directory. +# - `LIBUV_LIBRARY`: Absolute path to `libuv` library. # # Result variables: # diff --git a/CMake/FindMbedTLS.cmake b/CMake/FindMbedTLS.cmake index 4b5a6121f193..11b4f076f4dc 100644 --- a/CMake/FindMbedTLS.cmake +++ b/CMake/FindMbedTLS.cmake @@ -25,10 +25,10 @@ # # Input variables: # -# - `MBEDTLS_INCLUDE_DIR`: The mbedTLS include directory. -# - `MBEDTLS_LIBRARY`: Path to `mbedtls` library. -# - `MBEDX509_LIBRARY`: Path to `mbedx509` library. -# - `MBEDCRYPTO_LIBRARY`: Path to `mbedcrypto` library. +# - `MBEDTLS_INCLUDE_DIR`: Absolute path to mbedTLS include directory. +# - `MBEDTLS_LIBRARY`: Absolute path to `mbedtls` library. +# - `MBEDX509_LIBRARY`: Absolute path to `mbedx509` library. +# - `MBEDCRYPTO_LIBRARY`: Absolute path to `mbedcrypto` library. # # Result variables: # @@ -59,7 +59,7 @@ endif() if(MBEDTLS_FOUND) set(MbedTLS_FOUND TRUE) - set(MBEDTLS_VERSION "${MBEDTLS_mbedtls_VERSION}") + set(MBEDTLS_VERSION ${MBEDTLS_mbedtls_VERSION}) string(REPLACE ";" " " MBEDTLS_CFLAGS "${MBEDTLS_CFLAGS}") message(STATUS "Found MbedTLS (via pkg-config): ${MBEDTLS_INCLUDE_DIRS} (found version \"${MBEDTLS_VERSION}\")") else() diff --git a/CMake/FindNGHTTP2.cmake b/CMake/FindNGHTTP2.cmake index b8f37fdaebf1..1ccf64158915 100644 --- a/CMake/FindNGHTTP2.cmake +++ b/CMake/FindNGHTTP2.cmake @@ -25,8 +25,8 @@ # # Input variables: # -# - `NGHTTP2_INCLUDE_DIR`: The nghttp2 include directory. -# - `NGHTTP2_LIBRARY`: Path to `nghttp2` library. +# - `NGHTTP2_INCLUDE_DIR`: Absolute path to nghttp2 include directory. +# - `NGHTTP2_LIBRARY`: Absolute path to `nghttp2` library. # # Result variables: # diff --git a/CMake/FindNGHTTP3.cmake b/CMake/FindNGHTTP3.cmake index 99edd19955ed..fba2c5779b36 100644 --- a/CMake/FindNGHTTP3.cmake +++ b/CMake/FindNGHTTP3.cmake @@ -25,8 +25,8 @@ # # Input variables: # -# - `NGHTTP3_INCLUDE_DIR`: The nghttp3 include directory. -# - `NGHTTP3_LIBRARY`: Path to `nghttp3` library. +# - `NGHTTP3_INCLUDE_DIR`: Absolute path to nghttp3 include directory. +# - `NGHTTP3_LIBRARY`: Absolute path to `nghttp3` library. # # Result variables: # diff --git a/CMake/FindNGTCP2.cmake b/CMake/FindNGTCP2.cmake index eb4358ef00a7..cda3b0e08cb2 100644 --- a/CMake/FindNGTCP2.cmake +++ b/CMake/FindNGTCP2.cmake @@ -35,14 +35,14 @@ # # Input variables: # -# - `NGTCP2_INCLUDE_DIR`: The ngtcp2 include directory. -# - `NGTCP2_LIBRARY`: Path to `ngtcp2` library. -# - `NGTCP2_CRYPTO_BORINGSSL_LIBRARY`: Path to `ngtcp2_crypto_boringssl` library. -# - `NGTCP2_CRYPTO_GNUTLS_LIBRARY`: Path to `ngtcp2_crypto_gnutls` library. -# - `NGTCP2_CRYPTO_LIBRESSL_LIBRARY`: Path to `ngtcp2_crypto_libressl` library. -# - `NGTCP2_CRYPTO_OSSL_LIBRARY`: Path to `ngtcp2_crypto_ossl` library. -# - `NGTCP2_CRYPTO_QUICTLS_LIBRARY`: Path to `ngtcp2_crypto_quictls` library. -# - `NGTCP2_CRYPTO_WOLFSSL_LIBRARY`: Path to `ngtcp2_crypto_wolfssl` library. +# - `NGTCP2_INCLUDE_DIR`: Absolute path to ngtcp2 include directory. +# - `NGTCP2_LIBRARY`: Absolute path to `ngtcp2` library. +# - `NGTCP2_CRYPTO_BORINGSSL_LIBRARY`: Absolute path to `ngtcp2_crypto_boringssl` library. +# - `NGTCP2_CRYPTO_GNUTLS_LIBRARY`: Absolute path to `ngtcp2_crypto_gnutls` library. +# - `NGTCP2_CRYPTO_LIBRESSL_LIBRARY`: Absolute path to `ngtcp2_crypto_libressl` library. +# - `NGTCP2_CRYPTO_OSSL_LIBRARY`: Absolute path to `ngtcp2_crypto_ossl` library. +# - `NGTCP2_CRYPTO_QUICTLS_LIBRARY`: Absolute path to `ngtcp2_crypto_quictls` library. +# - `NGTCP2_CRYPTO_WOLFSSL_LIBRARY`: Absolute path to `ngtcp2_crypto_wolfssl` library. # # Result variables: # @@ -86,7 +86,7 @@ if(CURL_USE_PKGCONFIG AND endif() if(NGTCP2_FOUND) - set(NGTCP2_VERSION "${NGTCP2_libngtcp2_VERSION}") + set(NGTCP2_VERSION ${NGTCP2_libngtcp2_VERSION}) string(REPLACE ";" " " NGTCP2_CFLAGS "${NGTCP2_CFLAGS}") message(STATUS "Found NGTCP2 (via pkg-config): ${NGTCP2_INCLUDE_DIRS} (found version \"${NGTCP2_VERSION}\")") else() diff --git a/CMake/FindNettle.cmake b/CMake/FindNettle.cmake index c2decf6e7b08..7f2f69c1ca3e 100644 --- a/CMake/FindNettle.cmake +++ b/CMake/FindNettle.cmake @@ -25,8 +25,8 @@ # # Input variables: # -# - `NETTLE_INCLUDE_DIR`: The nettle include directory. -# - `NETTLE_LIBRARY`: Path to `nettle` library. +# - `NETTLE_INCLUDE_DIR`: Absolute path to nettle include directory. +# - `NETTLE_LIBRARY`: Absolute path to `nettle` library. # # Result variables: # diff --git a/CMake/FindQuiche.cmake b/CMake/FindQuiche.cmake index 6939c64e0ff9..934cf9f69f15 100644 --- a/CMake/FindQuiche.cmake +++ b/CMake/FindQuiche.cmake @@ -25,8 +25,8 @@ # # Input variables: # -# - `QUICHE_INCLUDE_DIR`: The quiche include directory. -# - `QUICHE_LIBRARY`: Path to `quiche` library. +# - `QUICHE_INCLUDE_DIR`: Absolute path to quiche include directory. +# - `QUICHE_LIBRARY`: Absolute path to `quiche` library. # # Result variables: # diff --git a/CMake/FindRustls.cmake b/CMake/FindRustls.cmake index 564b08ce15bc..a29ce5fa098b 100644 --- a/CMake/FindRustls.cmake +++ b/CMake/FindRustls.cmake @@ -25,8 +25,8 @@ # # Input variables: # -# - `RUSTLS_INCLUDE_DIR`: The Rustls include directory. -# - `RUSTLS_LIBRARY`: Path to `rustls` library. +# - `RUSTLS_INCLUDE_DIR`: Absolute path to Rustls include directory. +# - `RUSTLS_LIBRARY`: Absolute path to `rustls` library. # # Result variables: # diff --git a/CMake/FindWolfSSL.cmake b/CMake/FindWolfSSL.cmake index 87b640a1f23d..4d172c029a39 100644 --- a/CMake/FindWolfSSL.cmake +++ b/CMake/FindWolfSSL.cmake @@ -25,8 +25,8 @@ # # Input variables: # -# - `WOLFSSL_INCLUDE_DIR`: The wolfSSL include directory. -# - `WOLFSSL_LIBRARY`: Path to `wolfssl` library. +# - `WOLFSSL_INCLUDE_DIR`: Absolute path to wolfSSL include directory. +# - `WOLFSSL_LIBRARY`: Absolute path to `wolfssl` library. # # Result variables: # diff --git a/CMake/FindZstd.cmake b/CMake/FindZstd.cmake index 0ea1fef46724..655f0cc700a8 100644 --- a/CMake/FindZstd.cmake +++ b/CMake/FindZstd.cmake @@ -25,8 +25,8 @@ # # Input variables: # -# - `ZSTD_INCLUDE_DIR`: The zstd include directory. -# - `ZSTD_LIBRARY`: Path to `zstd` library. +# - `ZSTD_INCLUDE_DIR`: Absolute path to zstd include directory. +# - `ZSTD_LIBRARY`: Absolute path to `zstd` library. # # Result variables: # diff --git a/CMake/PickyWarnings.cmake b/CMake/PickyWarnings.cmake index bdd226e9246e..d46c878d46b4 100644 --- a/CMake/PickyWarnings.cmake +++ b/CMake/PickyWarnings.cmake @@ -29,12 +29,10 @@ set(_picky_nocheck "") # not to pass to feature checks if(CURL_WERROR) if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.24) set(CMAKE_COMPILE_WARNING_AS_ERROR ON) - else() - if(MSVC) - list(APPEND _picky_nocheck "-WX") - else() # llvm/clang and gcc style options - list(APPEND _picky_nocheck "-Werror") - endif() + elseif(MSVC) + list(APPEND _picky_nocheck "-WX") + else() # llvm/clang and gcc-style options + list(APPEND _picky_nocheck "-Werror") endif() if((CMAKE_C_COMPILER_ID STREQUAL "GNU" AND diff --git a/CMake/unix-cache.cmake b/CMake/unix-cache.cmake index 2c85626a4957..556e871a03cc 100644 --- a/CMake/unix-cache.cmake +++ b/CMake/unix-cache.cmake @@ -142,7 +142,7 @@ set(HAVE_GETRLIMIT 1) set(HAVE_GETSOCKNAME 1) set(HAVE_GETTIMEOFDAY 1) if(CMAKE_SYSTEM_NAME STREQUAL "Linux") - set(HAVE_GLIBC_STRERROR_R 1) + # Depends on C library. else() set(HAVE_GLIBC_STRERROR_R 0) endif() @@ -164,7 +164,7 @@ else() endif() set(HAVE_LIBGEN_H 1) if(CMAKE_SYSTEM_NAME STREQUAL "Linux") - set(HAVE_LINUX_TCP_H 1) + # Requires Linux kernel userspace headers. Expected with glibc. May be missing by default with MUSL. else() set(HAVE_LINUX_TCP_H 0) endif() @@ -204,7 +204,7 @@ endif() set(HAVE_POLL 1) set(HAVE_POLL_H 1) if(CMAKE_SYSTEM_NAME STREQUAL "Linux") - set(HAVE_POSIX_STRERROR_R 0) + # Depends on C library. else() set(HAVE_POSIX_STRERROR_R 1) endif() diff --git a/CMakeLists.txt b/CMakeLists.txt index 65eaaf670a5e..068d97d49b95 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -645,7 +645,7 @@ elseif(DOS) include_directories(SYSTEM "${WATT_ROOT}/inc") list(APPEND CMAKE_REQUIRED_INCLUDES "${WATT_ROOT}/inc") else() - message(FATAL_ERROR "Set WATT_ROOT variable to the root installation of Watt-32.") + message(FATAL_ERROR "Set WATT_ROOT variable to the absolute path to the root installation of Watt-32.") endif() elseif(AMIGA) if(AMISSL_INCLUDE_DIR AND AMISSL_STUBS_LIBRARY AND AMISSL_AUTO_LIBRARY) @@ -868,6 +868,18 @@ if(CURL_USE_MBEDTLS) set(_valid_default_ssl_backend TRUE) endif() set(_curl_ca_bundle_supported TRUE) + + if(MBEDTLS_VERSION VERSION_GREATER_EQUAL 4.0.0) + set(HAVE_MBEDTLS_DES_CRYPT_ECB 0) # pre-fill detection result + endif() + if(NOT DEFINED HAVE_MBEDTLS_DES_CRYPT_ECB) + cmake_push_check_state() + list(APPEND CMAKE_REQUIRED_INCLUDES "${MBEDTLS_INCLUDE_DIRS}") + list(APPEND CMAKE_REQUIRED_LIBRARIES "${MBEDTLS_LIBRARIES}") + curl_required_libpaths("${MBEDTLS_LIBRARY_DIRS}") + check_function_exists("mbedtls_des_crypt_ecb" HAVE_MBEDTLS_DES_CRYPT_ECB) # in mbedTLS <4 + cmake_pop_check_state() + endif() endif() if(CURL_USE_WOLFSSL) @@ -890,27 +902,23 @@ if(CURL_USE_WOLFSSL) endif() if(CURL_USE_GNUTLS) - if(CURL_USE_PKGCONFIG) - find_package(PkgConfig QUIET) - pkg_check_modules(GNUTLS "gnutls") - if(GNUTLS_FOUND) - set(GNUTLS_LIBRARIES ${GNUTLS_LINK_LIBRARIES}) - string(REPLACE ";" " " GNUTLS_CFLAGS "${GNUTLS_CFLAGS}") - if(GNUTLS_CFLAGS) - string(APPEND CMAKE_C_FLAGS " ${GNUTLS_CFLAGS}") - endif() - endif() - endif() - if(NOT GNUTLS_FOUND) - find_package(GnuTLS REQUIRED) + find_package(GnuTLS REQUIRED) + list(APPEND CURL_LIBS ${GNUTLS_LIBRARIES}) + list(APPEND CURL_LIBDIRS ${GNUTLS_LIBRARY_DIRS}) + list(APPEND LIBCURL_PC_REQUIRES_PRIVATE ${GNUTLS_PC_REQUIRES}) + include_directories(SYSTEM ${GNUTLS_INCLUDE_DIRS}) + link_directories(${GNUTLS_LIBRARY_DIRS}) + if(GNUTLS_CFLAGS) + string(APPEND CMAKE_C_FLAGS " ${GNUTLS_CFLAGS}") endif() + find_package(Nettle REQUIRED) set(_ssl_enabled ON) set(USE_GNUTLS ON) - list(APPEND CURL_LIBS ${GNUTLS_LIBRARIES} ${NETTLE_LIBRARIES}) - list(APPEND CURL_LIBDIRS ${GNUTLS_LIBRARY_DIRS} ${NETTLE_LIBRARY_DIRS}) - list(APPEND LIBCURL_PC_REQUIRES_PRIVATE "gnutls" ${NETTLE_PC_REQUIRES}) - include_directories(SYSTEM ${GNUTLS_INCLUDE_DIRS} ${NETTLE_INCLUDE_DIRS}) + list(APPEND CURL_LIBS ${NETTLE_LIBRARIES}) + list(APPEND CURL_LIBDIRS ${NETTLE_LIBRARY_DIRS}) + list(APPEND LIBCURL_PC_REQUIRES_PRIVATE ${NETTLE_PC_REQUIRES}) + include_directories(SYSTEM ${NETTLE_INCLUDE_DIRS}) link_directories(${NETTLE_LIBRARY_DIRS}) if(NETTLE_CFLAGS) string(APPEND CMAKE_C_FLAGS " ${NETTLE_CFLAGS}") @@ -925,6 +933,9 @@ if(CURL_USE_GNUTLS) cmake_push_check_state() list(APPEND CMAKE_REQUIRED_INCLUDES "${GNUTLS_INCLUDE_DIRS}") list(APPEND CMAKE_REQUIRED_LIBRARIES "${GNUTLS_LIBRARIES}") + curl_required_libpaths("${GNUTLS_LIBRARY_DIRS}") + # In GnuTLS 3.8.0 (2023-02-10) and upper, this check always succeeds. + # Detecting actual TLS-SRP support needs poking the API at runtime. check_symbol_exists("gnutls_srp_verifier" "gnutls/gnutls.h" HAVE_GNUTLS_SRP) cmake_pop_check_state() endif() @@ -1079,6 +1090,9 @@ if(USE_WOLFSSL) endif() if(USE_OPENSSL) + if(NOT DEFINED HAVE_DES_ECB_ENCRYPT) + curl_openssl_check_exists("DES_ecb_encrypt" "openssl/des.h" HAVE_DES_ECB_ENCRYPT) + endif() if(NOT DEFINED HAVE_SSL_SET0_WBIO) curl_openssl_check_exists("SSL_set0_wbio" HAVE_SSL_SET0_WBIO) endif() @@ -1502,14 +1516,16 @@ endif() # CA handling # if(_curl_ca_bundle_supported) + set(_ca_opt_desc "Set 'none' to disable or 'auto' for auto-detection. Defaults to 'auto'.") + set(CURL_CA_BUNDLE "auto" CACHE - STRING "Path to the CA bundle. Set 'none' to disable or 'auto' for auto-detection. Defaults to 'auto'.") + STRING "Absolute path to the CA bundle. ${_ca_opt_desc}") set(CURL_CA_FALLBACK OFF CACHE BOOL "Use built-in CA store of OpenSSL. Defaults to OFF") set(CURL_CA_PATH "auto" CACHE - STRING "Location of default CA path. Set 'none' to disable or 'auto' for auto-detection. Defaults to 'auto'.") + STRING "Absolute path to a directory containing CA certificates stored individually. ${_ca_opt_desc}") set(CURL_CA_EMBED "" CACHE - STRING "Path to the CA bundle to embed in the curl tool.") + STRING "Absolute path to the CA bundle to embed in the curl tool.") if(CURL_CA_FALLBACK AND NOT CURL_USE_OPENSSL) message(FATAL_ERROR "CURL_CA_FALLBACK only works with OpenSSL.") @@ -1535,7 +1551,7 @@ if(_curl_ca_bundle_supported) unset(CURL_CA_PATH CACHE) elseif(CURL_CA_PATH STREQUAL "auto") unset(CURL_CA_PATH CACHE) - if(NOT CMAKE_CROSSCOMPILING AND NOT WIN32) + if(NOT CMAKE_CROSSCOMPILING AND NOT WIN32 AND NOT USE_APPLE_SECTRUST) set(_curl_ca_path_autodetect TRUE) endif() else() @@ -1560,8 +1576,8 @@ if(_curl_ca_bundle_supported) if(EXISTS "${_search_ca_bundle_path}") message(STATUS "Found CA bundle: ${_search_ca_bundle_path}") set(CURL_CA_BUNDLE "${_search_ca_bundle_path}" CACHE - STRING "Path to the CA bundle. Set 'none' to disable or 'auto' for auto-detection. Defaults to 'auto'.") - set(CURL_CA_BUNDLE_SET TRUE CACHE BOOL "Path to the CA bundle has been set") + STRING "Absolute path to the CA bundle. ${_ca_opt_desc}") + set(CURL_CA_BUNDLE_SET TRUE CACHE BOOL "Absolute path to the CA bundle has been set") break() endif() endforeach() @@ -1574,8 +1590,8 @@ if(_curl_ca_bundle_supported) unset(_curl_ca_files_found) message(STATUS "Found CA path: ${_search_ca_path}") set(CURL_CA_PATH "${_search_ca_path}" CACHE - STRING "Location of default CA path. Set 'none' to disable or 'auto' for auto-detection. Defaults to 'auto'.") - set(CURL_CA_PATH_SET TRUE CACHE BOOL "Path to the CA bundle has been set") + STRING "Absolute path to a directory containing CA certificates stored individually. ${_ca_opt_desc}") + set(CURL_CA_PATH_SET TRUE CACHE BOOL "Absolute path to the CA bundle has been set") endif() endif() endif() @@ -2013,9 +2029,8 @@ endif() # (= regenerate it). function(curl_transform_makefile_inc _input_file _output_file) file(READ ${_input_file} _makefile_inc_text) - # cmake-lint: disable=W0106 - string(REPLACE "$(top_srcdir)" "\${PROJECT_SOURCE_DIR}" _makefile_inc_text ${_makefile_inc_text}) - string(REPLACE "$(top_builddir)" "\${PROJECT_BINARY_DIR}" _makefile_inc_text ${_makefile_inc_text}) + string(REPLACE "$(top_srcdir)" "\${PROJECT_SOURCE_DIR}" _makefile_inc_text ${_makefile_inc_text}) # cmake-lint: disable=W0106 + string(REPLACE "$(top_builddir)" "\${PROJECT_BINARY_DIR}" _makefile_inc_text ${_makefile_inc_text}) # cmake-lint: disable=W0106 string(REGEX REPLACE "\\\\\n" "!^!^!" _makefile_inc_text ${_makefile_inc_text}) string(REGEX REPLACE "([a-zA-Z_][a-zA-Z0-9_]*)[\t ]*=[\t ]*([^\n]*)" "set(\\1 \\2)" _makefile_inc_text ${_makefile_inc_text}) @@ -2082,8 +2097,8 @@ endmacro() # NTLM support requires crypto functions from various SSL libs. # These conditions must match those in lib/curl_setup.h. if(NOT CURL_DISABLE_NTLM AND - (USE_OPENSSL OR - USE_MBEDTLS OR + ((USE_OPENSSL AND HAVE_DES_ECB_ENCRYPT) OR + (USE_MBEDTLS AND HAVE_MBEDTLS_DES_CRYPT_ECB) OR USE_GNUTLS OR USE_WIN32_CRYPTO OR (USE_WOLFSSL AND HAVE_WOLFSSL_DES_ECB_ENCRYPT))) diff --git a/Dockerfile b/Dockerfile index 88a356bb88c5..3d2e942cdff4 100644 --- a/Dockerfile +++ b/Dockerfile @@ -24,7 +24,7 @@ # $ ./scripts/maketgz 8.7.1 # To update, get the latest digest e.g. from https://hub.docker.com/_/debian/tags -FROM debian:bookworm-slim@sha256:7e490910eea2861b9664577a96b54ce68ea3e02ce7f51d89cb0103a6f9c386e0 +FROM debian:bookworm-slim@sha256:936abff852736f951dab72d91a1b6337cf04217b2a77a5eaadc7c0f2f1ec1758 RUN apt-get update -qq && apt-get install -qq -y --no-install-recommends \ build-essential make autoconf automake libtool git perl zip zlib1g-dev gawk && \ diff --git a/GIT-INFO.md b/GIT-INFO.md index 1ff22010cbda..ee912560fd5a 100644 --- a/GIT-INFO.md +++ b/GIT-INFO.md @@ -1,3 +1,8 @@ + _ _ ____ _ ___| | | | _ \| | / __| | | | |_) | | diff --git a/Makefile.am b/Makefile.am index 76873854160c..7b2f05f92e56 100644 --- a/Makefile.am +++ b/Makefile.am @@ -34,6 +34,7 @@ CMAKE_DIST = \ CMake/CurlTests.c \ CMake/FindBrotli.cmake \ CMake/FindCares.cmake \ + CMake/FindGnuTLS.cmake \ CMake/FindGSS.cmake \ CMake/FindLDAP.cmake \ CMake/FindLibgsasl.cmake \ diff --git a/README.md b/README.md index 32a3c34fb0f2..e61924673a98 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,11 @@ SPDX-License-Identifier: curl # [![curl logo](https://curl.se/logo/curl-logo.svg)](https://curl.se/) -curl is a command-line tool for transferring data specified with URL syntax. +curl is a command-line tool for transferring data from or to a server using +URLs. It supports these protocols: DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, +HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, +SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP, WS and WSS. + Learn how to use curl by reading [the manpage](https://curl.se/docs/manpage.html) or [everything curl](https://everything.curl.dev/). diff --git a/RELEASE-NOTES b/RELEASE-NOTES index 0930a2719e04..f5e85c224800 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -1,338 +1,19 @@ -curl and libcurl 8.17.0 +curl and libcurl 8.17.1 - Public curl releases: 271 + Public curl releases: 272 Command line options: 273 curl_easy_setopt() options: 308 Public functions in libcurl: 100 - Contributors: 3519 + Contributors: 3536 This release includes the following changes: - o build: drop Heimdal support [267] - o build: drop the winbuild build system [81] - o krb5: drop support for Kerberos FTP [43] - o libssh2: up the minimum requirement to 1.9.0 [85] - o multi: add notifications API [250] - o progress: expand to use 6 characters per size [234] - o ssl: support Apple SecTrust configurations [240] - o tool_getparam: add --knownhosts [204] - o vssh: drop support for wolfSSH [58] - o wcurl: import v2025.09.27 [182] - o write-out: make %header{} able to output *all* occurrences of a header [25] This release includes the following bugfixes: - o ares: fix leak in tracing [91] - o asyn-ares: remove wrong comment about the callback argument [306] - o asyn-ares: use the duped hostname pointer for all calls [158] - o asyn-thrdd resolver: clear timeout when done [97] - o asyn-thrdd: drop pthread_cancel [30] - o autotools: add support for libgsasl auto-detection via pkg-config [112] - o autotools: capitalize 'Rustls' in the log output [106] - o autotools: fix duplicate `UNIX` and `BSD` flags in `buildinfo.txt` [113] - o autotools: fix silly mistake in clang detection for `buildinfo.txt` [114] - o autotools: make `--enable-code-coverage` support llvm/clang [79] - o aws-lc: re-enable large read-ahead with v1.61.0 again [16] - o base64: accept zero length argument to base64_encode [82] - o build: address some `-Weverything` warnings, update picky warnings [74] - o build: avoid overriding system `open` and `stat` symbols [141] - o build: avoid overriding system symbols for fopen functions [150] - o build: avoid overriding system symbols for socket functions [68] - o build: show llvm/clang in platform flags and `buildinfo.txt` [126] - o c-ares: when resolving failed, persist error [270] - o cf-h2-proxy: break loop on edge case [140] - o cf-ip-happy: mention unix domain path, not port number [161] - o cf-socket: always check Curl_cf_socket_peek() return code [198] - o cf-socket: check params and remove accept procondition [197] - o cf-socket: set FD_CLOEXEC on all sockets opened [273] - o cf-socket: tweak a memcpy() to read better [177] - o cf-socket: use the right byte order for ports in bindlocal [61] - o cfilter: unlink and discard [46] - o checksrc: allow disabling warnings on FIXME/TODO comments [324] - o checksrc: catch banned functions when preceded by `(` [146] - o checksrc: fix possible endless loop when detecting `BANNEDFUNC` [149] - o checksrc: fix possible endless loops/errors in the banned function logic [220] - o checksrc: fix to handle `)` predecing a banned function [229] - o checksrc: reduce directory-specific exceptions [228] - o CI.md: refresh [280] - o cmake/FindGSS: dedupe pkg-config module strings [277] - o cmake/FindGSS: drop wrong header check for GNU GSS [278] - o cmake/FindGSS: fix `pkg-config` fallback logic for CMake <3.16 [189] - o cmake/FindGSS: simplify/de-dupe lib setup [253] - o cmake/FindGSS: whitespace/formatting [268] - o cmake: add `CURL_CODE_COVERAGE` option [78] - o cmake: build the "all" examples source list dynamically [245] - o cmake: clang detection tidy-ups [116] - o cmake: drop exclamation in comment looking like a name [160] - o cmake: fix building docs when the base directory contains `.3` [18] - o cmake: minor Heimdal flavour detection fix [269] - o cmake: pre-fill three more type sizes on Windows [244] - o cmake: support building some complicated examples, build them in CI [235] - o cmake: use modern alternatives for `get_filename_component()` [102] - o cmake: use more `COMPILER_OPTIONS`, `LINK_OPTIONS` / `LINK_FLAGS` [152] - o cmdline-docs: extended, clarified, refreshed [28] - o cmdline-opts/_PROGRESS.md: explain the suffixes [154] - o configure: add "-mt" for pthread support on HP-UX [52] - o conn: fix hostname move on connection reuse [272] - o connect: remove redundant condition in shutdown start [289] - o cookie: avoid saving a cookie file if no transfer was done [11] - o cpool: make bundle->dest an array; fix UB [218] - o curl_easy_getinfo: error code on NULL arg [2] - o curl_mem_undef.h: limit to `CURLDEBUG` for non-memalloc overrides [19] - o curl_osslq: error out properly if BIO_ADDR_rawmake() fails [184] - o Curl_resolv: fix comment. 'entry' argument is not optional [187] - o curl_slist_append.md: clarify that a NULL pointer is not acceptable [72] - o curl_threads: delete WinCE fallback branch [233] - o CURLINFO_FTP_ENTRY_PATH.md: this is for SFTP as well [8] - o CURLOPT_COOKIEFILE.md: clarify when the cookies are loaded [159] - o CURLOPT_HEADER/WRITEFUNCTION.md: drop '* size' since size is always 1 [63] - o CURLOPT_MAXLIFETIME_CONN: make default 24 hours [10] - o CURLOPT_SSL_VERIFYHOST.md: add see-also to two other VERIFYHOST options [32] - o CURLOPT_TIMECONDITION.md: works for FILE and FTP as well [27] - o digest_sspi: fix two memory leaks in error branches [77] - o dist: do not distribute `CI.md` [29] - o docs/cmdline-opts: drop double quotes from GLOBBING and URL examples [238] - o docs/libcurl: clarify some timeout option behavior [15] - o docs/libcurl: remove ancient version references [7] - o docs/libcurl: use lowercase must [5] - o docs: expand on quoting rules for file names in SFTP quote [300] - o docs: fix/tidy code fences [87] - o doswin: CloseHandle the thread on shutdown [307] - o easy_getinfo: check magic, Curl_close safety [3] - o examples/sessioninfo: cast printf string mask length to int [232] - o examples/sessioninfo: do not disable security [255] - o examples/synctime: fix null termination assumptions [297] - o examples/synctime: make the sscanf not overflow the local buffer [252] - o examples/usercertinmem: avoid stripping const [247] - o examples: call `curl_global_cleanup()` where missing [323] - o examples: check more errors, fix cleanups, scope variables [318] - o examples: drop unused `curl/mprintf.h` includes [224] - o examples: fix build issues in 'complicated' examples [243] - o examples: fix two build issues surfaced with WinCE [223] - o examples: fix two issues found by CodeQL [35] - o examples: fix two more cases of `stat()` TOCTOU [147] - o examples: improve global init, error checks and returning errors [321] - o examples: return `curl_easy_perform()` results [322] - o form.md: drop reference to MANUAL [178] - o ftp: add extra buffer length check [195] - o ftp: fix ftp_do_more returning with *completep unset [122] - o ftp: fix port number range loop for PORT commands [66] - o ftp: fix the 213 scanner memchr buffer limit argument [196] - o ftp: improve fragile check for first digit > 3 [194] - o ftp: remove misleading comments [193] - o ftp: replace strstr() in ;type= handling [313] - o ftp: simplify the 150/126 size scanner [288] - o gnutls: check conversion of peer cert chain [275] - o gtls: avoid potential use of uninitialized variable in trace output [83] - o hostip: don't store negative resolves due unrelated errors [256] - o hostip: remove leftover INT_MAX check in Curl_dnscache_prune [88] - o http2: check push header names by length first [261] - o http2: cleanup pushed newhandle on fail [260] - o http2: ingress handling edge cases [259] - o http: handle user-defined connection headers [165] - o http: look for trailing 'type=' in ftp:// without strstr [315] - o http: make Content-Length parser more WHATWG [183] - o httpsrr: free old pointers when storing new [57] - o INSTALL-CMAKE.md: document useful build targets [215] - o INTERNALS: drop Winsock 2.2 from the dependency list [162] - o ip-happy: do not set unnecessary timeout [95] - o ip-happy: prevent event-based stall on retry [155] - o kerberos: bump minimum to 1.3 (2003-07-08), drop legacy logic [279] - o kerberos: drop logic for MIT Kerberos <1.2.3 (pre-2002) versions [285] - o kerberos: stop including `gssapi/gssapi_generic.h` [282] - o krb5: return appropriate error on send failures [22] - o krb5_gssapi: fix memory leak on error path [190] - o krb5_sspi: the chlg argument is NOT optional [200] - o ldap: avoid null ptr deref on failure [284] - o ldap: do not base64 encode zero length string [42] - o ldap: tidy-up types, fix error code confusion [191] - o lib1514: fix return code mixup [304] - o lib: drop unused include and duplicate guards [226] - o lib: fix build error and compiler warnings with verbose strings disabled [173] - o lib: remove personal names from comments [168] - o lib: SSL connection reuse [301] - o lib: stop NULL-checking conn->passwd and ->user [309] - o lib: upgrade/multiplex handling [136] - o libcurl-multi.md: added curl_multi_get_offt mention [53] - o libcurl-security.md: mention long-running connections [6] - o libssh/libssh2: reject quote command lines with too much data [299] - o libssh/sftp: fix resume corruption by avoiding O_APPEND with rresume [263] - o libssh2/sftp: fix resume corruption by avoiding O_APPEND with rresume [262] - o libssh2/sftp_realpath: change state consistently [185] - o libssh2: avoid risking using an uninitialized local struct field [209] - o libssh2: bail out on chgrp and chown number parsing errors [202] - o libssh2: clarify that sshp->path is always at least one byte [201] - o libssh2: drop two redundant null-terminations [26] - o libssh2: error check and null-terminate in ssh_state_sftp_readdir_link() [34] - o libssh2: fix EAGAIN return in ssh_state_auth_agent [290] - o libssh2: fix return code for EAGAIN [186] - o libssh2: use sockindex consistently [302] - o libssh: acknowledge SSH_AGAIN in the SFTP state machine [89] - o libssh: catch a resume point larger than the size [281] - o libssh: clarify myssh_block2waitfor [92] - o libssh: drop two unused assignments [104] - o libssh: error on bad chgrp number [71] - o libssh: error on bad chown number and store the value [64] - o libssh: fix range parsing error handling mistake [120] - o libssh: make atime and mtime cap the timestamp instead of wrap [283] - o libssh: react on errors from ssh_scp_read [24] - o libssh: return out of memory correctly if aprintf fails [60] - o Makefile.example: fix option order [231] - o Makefile.example: simplify and make it configurable [20] - o managen: ignore version mentions < 7.66.0 [55] - o managen: render better manpage references/links [54] - o managen: strict protocol check [109] - o managen: verify the options used in example lines [181] - o mbedtls: check result of setting ALPN [127] - o mbedtls: handle WANT_WRITE from mbedtls_ssl_read() [145] - o mdlinkcheck: reject URLs containing quotes [174] - o memdup0: handle edge case [241] - o multi.h: add CURLMINFO_LASTENTRY [51] - o multi_ev: remove unnecessary data check that confuses analysers [167] - o nghttp3: return NGHTTP3_ERR_CALLBACK_FAILURE from recv_header [227] - o ngtcp2: check error code on connect failure [13] - o ngtcp2: close just-opened QUIC stream when submit_request fails [222] - o ngtcp2: compare idle timeout in ms to avoid overflow [248] - o ngtcp2: fix early return [131] - o ngtcp2: fix handling of blocked stream data [236] - o ngtcp2: fix returns when TLS verify failed [251] - o noproxy: fix the IPV6 network mask pattern match [166] - o openldap: avoid indexing the result at -1 for blank responses [44] - o openldap: check ber_sockbuf_add_io() return code [163] - o openldap: check ldap_get_option() return codes [119] - o openldap: fix memory-leak in error path [287] - o openldap: fix memory-leak on oldap_do's exit path [286] - o openssl-quic: check results better [132] - o openssl-quic: handle error in SSL_get_stream_read_error_code [129] - o openssl-quic: ignore unexpected streams opened by server [176] - o openssl: call SSL_get_error() with proper error [207] - o openssl: clear retry flag on x509 error [130] - o openssl: fail the transfer if ossl_certchain() fails [23] - o openssl: fix build for v1.0.2 [225] - o openssl: fix peer certificate leak in channel binding [258] - o openssl: make the asn1_object_dump name null terminated [56] - o openssl: set io_need always [99] - o openssl: skip session resumption when verifystatus is set [230] - o os400: document threads handling in code. [254] - o OS400: fix a use-after-free/double-free case [142] - o osslq: set idle timeout to 0 [237] - o pingpong: remove two old leftover debug infof() calls - o pop3: function could get the ->transfer field wrong [292] - o pytest: skip specific tests for no-verbose builds [171] - o quic: fix min TLS version handling [14] - o quic: ignore EMSGSIZE on receive [4] - o quic: remove data_idle handling [311] - o quiche: fix possible leaks on teardown [205] - o quiche: fix verbose message when ip quadruple cannot be obtained. [128] - o quiche: handle tls fail correctly [266] - o quiche: when ingress processing fails, return that error code [103] - o runtests: tag tests that require curl verbose strings [172] - o rustls: fix clang-tidy warning [107] - o rustls: fix comment describing cr_recv() [117] - o rustls: pass the correct result to rustls_failf [242] - o rustls: typecast variable for safer trace output [69] - o rustls: use %zu for size_t in failf() format string [121] - o sasl: clear canceled mechanism instead of toggling it [41] - o schannel: assign result before using it [62] - o schannel_verify: fix mem-leak in Curl_verify_host [208] - o schannel_verify: use more human friendly error messages [96] - o setopt: accept *_SSL_VERIFYHOST set to 2L [31] - o setopt: allow CURLOPT_DNS_CACHE_TIMEOUT set to -1 [257] - o setopt: make CURLOPT_MAXREDIRS accept -1 (again) [1] - o smb: adjust buffer size checks [45] - o smb: transfer debugassert to real check [303] - o smtp: check EHLO responses case insensitively [50] - o socks: advance iobuf instead of reset [276] - o socks: deny server basic-auth if not configured [264] - o socks: handle error in verbose trace gracefully [94] - o socks: handle premature close [246] - o socks: make Curl_blockread_all return CURLcode [67] - o socks: rewwork, cleaning up socks state handling [135] - o socks_gssapi: make the gss_context a local variable [144] - o socks_gssapi: reject too long tokens [90] - o socks_gssapi: remove superfluous releases of the gss_recv_token [139] - o socks_gssapi: remove the forced "no protection" [143] - o socks_sspi: bail out on too long fields [137] - o socks_sspi: fix memory cleanup calls [40] - o socks_sspi: remove the enforced mode clearing [291] - o socks_sspi: restore non-blocking socket on error paths [48] - o socksd: remove --bindonly mention, there is no such option [305] - o ssl-sessions.md: mark option experimental [12] - o strerror: drop workaround for SalfordC win32 header bug [214] - o sws: fix checking `sscanf()` return value [17] - o sws: pass in socket reference to allow function to close it [298] - o tcp-nodelay.md: expand the documentation [153] - o telnet: ignore empty suboptions [86] - o telnet: make bad_option() consider NULL a bad option too [192] - o telnet: make printsub require another byte input [21] - o telnet: print DISPlay LOCation in printsub without mutating buffer [216] - o telnet: refuse IAC codes in content [111] - o telnet: return error if WSAEventSelect fails [180] - o telnet: return error on crazy TTYPE or XDISPLOC lengths [123] - o telnet: send failure logged but not returned [175] - o telnet: use pointer[0] for "unknown" option instead of pointer[i] [217] - o tests/server: drop pointless memory allocation overrides [219] - o tests/server: drop unsafe `open()` override in signal handler (Windows) [151] - o tftp: check and act on tftp_set_timeouts() returning error [38] - o tftp: check for trailing ";mode=" in URL without strstr [312] - o tftp: default timeout per block is now 15 seconds [156] - o tftp: error requests for blank filenames [296] - o tftp: handle tftp_multi_statemach() return code [65] - o tftp: pin the first used address [110] - o tftp: propagate expired timer from tftp_state_timeout() [39] - o tftp: return error if it hits an illegal state [138] - o tftp: return error when sendto() fails [59] - o thread: errno on thread creation [271] - o tidy-up: `fcntl.h` includes [98] - o tidy-up: assortment of small fixes [115] - o tidy-up: avoid using the reserved macro namespace [76] - o tidy-up: update MS links, allow long URLs via `checksrc` [73] - o tidy-up: URLs [101] - o time-cond.md: refer to the singular curl_getdate man page [148] - o TODO: fix a typo [93] - o TODO: remove already implemented or bad items [36] - o tool: fix exponential retry delay [47] - o tool_cb_hdr: fix fwrite check in header callback [49] - o tool_cb_hdr: size is always 1 [70] - o tool_doswin: fix to use curl socket functions [108] - o tool_filetime: replace cast with the fitting printf mask (Windows) [212] - o tool_getparam/set_rate: skip the multiplication on overflow [84] - o tool_getparam: always disable "lib-ids" for tracing [169] - o tool_getparam: make --fail and --fail-with-body override each other [293] - o tool_getparam: warn if provided header looks malformed [179] - o tool_msgs: make errorf() show if --show-error [294] - o tool_operate: improve wording in retry message [37] - o tool_operate: keep failed partial download for retry auto-resume [210] - o tool_operate: keep the progress meter for --out-null [33] - o tool_operate: retry on HTTP response codes 522 and 524 [317] - o tool_progress: handle possible integer overflows [164] - o tool_progress: make max5data() use an algorithm [170] - o transfer: avoid busy loop with tiny speed limit [100] - o transfer: reset retry count on each request [310] - o unit1323: sync time types and printf masks, drop casts [211] - o unit1664: drop casts, expand masks to full values [221] - o url: make Curl_init_userdefined return void [213] - o urldata: FILE is not a list-only protocol [9] - o urldata: make 'retrycount' a single byte [308] - o urldata: make redirect counter 16 bit [295] - o vauth/digest: improve the digest parser [203] - o vquic: fix idle-timeout checks (ms<-->ns), 64-bit log & honor 0=no-timeout [249] - o vquic: handling of io improvements [239] - o vquic: sending non-gso packets fix for EAGAIN [265] - o vtls: alpn setting, check proto parameter [134] - o vtls_int.h: clarify data_pending [124] - o vtls_scache: fix race condition [157] - o windows: replace `_beginthreadex()` with `CreateThread()` [80] - o windows: stop passing unused, optional argument for Win9x compatibility [75] - o windows: use consistent format when showing error codes [199] - o windows: use native error code types more [206] - o wolfssl: check BIO read parameters [133] - o wolfssl: fix error check in shutdown [105] - o wolfssl: no double get_error() detail [188] - o ws: clarify an error message [125] - o ws: fix some edge cases [274] - o ws: fix type conversion check [316] - o ws: reject curl_ws_recv called with NULL buffer with a buflen [118] + o gtls: add return checks and optimize the code [2] + o lib: cleanup for some typos about spaces and code style [3] + o m4/sectrust: fix test(1) operator [4] This release includes the following known bugs: @@ -356,340 +37,11 @@ Planned upcoming removals include: This release would not have looked like this without help, code, reports and advice from friends like these: - Adam Light, Alice Lee Poetics, Andrei Kurushin, Andrew Kirillov, - Andrew Olsen, BobodevMm on github, Christian Schmitz, Dan Fandrich, - Daniel Stenberg, Daniel Terhorst-North, dependabot[bot], - divinity76 on github, Emilio Pozuelo Monfort, Emre Çalışkan, Ethan Everett, - Evgeny Grin (Karlson2k), fds242 on github, Harry Sintonen, Howard Chu, - Ignat Loskutov, Javier Blazquez, Jicea, jmaggard10 on github, - Johannes Schindelin, Joseph Birr-Pixton, Joshua Rogers, kapsiR on github, - kuchara on github, Marcel Raad, Michael Osipov, Michał Petryka, - Mitchell Blank Jr, Mohamed Daahir, Nir Azkiel, Patrick Monnerat, - plv1313 on github, Pocs Norbert, Ray Satiro, renovate[bot], - rinsuki on github, Sakthi SK, Samuel Dionne-Riel, Samuel Henrique, - Stanislav Fort, Stefan Eissing, tkzv on github, Viktor Szakats - (47 contributors) + Daniel Stenberg, Thomas Klausner, Viktor Szakats, Xiaoke Wang + (4 contributors) References to bug reports and discussions on issues: - [1] = https://curl.se/bug/?i=18571 - [2] = https://curl.se/bug/?i=18512 - [3] = https://curl.se/bug/?i=18511 - [4] = https://curl.se/bug/?i=18505 - [5] = https://curl.se/bug/?i=18570 - [6] = https://curl.se/bug/?i=18533 - [7] = https://curl.se/bug/?i=18530 - [8] = https://curl.se/bug/?i=18531 - [9] = https://curl.se/bug/?i=18525 - [10] = https://curl.se/bug/?i=18527 - [11] = https://curl.se/bug/?i=18621 - [12] = https://curl.se/bug/?i=18523 - [13] = https://curl.se/bug/?i=18521 - [14] = https://curl.se/bug/?i=18518 - [15] = https://curl.se/bug/?i=18569 - [16] = https://curl.se/bug/?i=18568 - [17] = https://curl.se/bug/?i=18565 - [18] = https://curl.se/bug/?i=18560 - [19] = https://curl.se/bug/?i=18510 - [20] = https://curl.se/bug/?i=18554 - [21] = https://curl.se/bug/?i=18618 - [22] = https://curl.se/bug/?i=18561 - [23] = https://curl.se/bug/?i=18646 - [24] = https://curl.se/bug/?i=18616 - [25] = https://curl.se/bug/?i=18491 - [26] = https://curl.se/bug/?i=18606 - [27] = https://curl.se/bug/?i=18551 - [28] = https://curl.se/bug/?i=18550 - [29] = https://curl.se/bug/?i=18549 - [30] = https://curl.se/bug/?i=18532 - [31] = https://curl.se/mail/lib-2025-09/0031.html - [32] = https://curl.se/bug/?i=18548 - [33] = https://curl.se/bug/?i=18607 - [34] = https://curl.se/bug/?i=18598 - [35] = https://curl.se/bug/?i=18605 - [36] = https://curl.se/bug/?i=18542 - [37] = https://curl.se/bug/?i=18604 - [38] = https://curl.se/bug/?i=18603 - [39] = https://curl.se/bug/?i=18574 - [40] = https://curl.se/bug/?i=18587 - [41] = https://curl.se/bug/?i=18573 - [42] = https://curl.se/bug/?i=18602 - [43] = https://curl.se/bug/?i=18577 - [44] = https://curl.se/bug/?i=18600 - [45] = https://curl.se/bug/?i=18599 - [46] = https://curl.se/bug/?i=18596 - [47] = https://curl.se/bug/?i=18591 - [48] = https://curl.se/bug/?i=18592 - [49] = https://curl.se/bug/?i=18593 - [50] = https://curl.se/bug/?i=18588 - [51] = https://curl.se/bug/?i=18578 - [52] = https://curl.se/bug/?i=18585 - [53] = https://curl.se/bug/?i=18579 - [54] = https://curl.se/bug/?i=18580 - [55] = https://curl.se/bug/?i=18583 - [56] = https://curl.se/bug/?i=18647 - [57] = https://curl.se/bug/?i=18631 - [58] = https://curl.se/bug/?i=18700 - [59] = https://curl.se/bug/?i=18643 - [60] = https://curl.se/bug/?i=18637 - [61] = https://curl.se/bug/?i=18641 - [62] = https://curl.se/bug/?i=18642 - [63] = https://curl.se/bug/?i=18640 - [64] = https://curl.se/bug/?i=18639 - [65] = https://curl.se/bug/?i=18638 - [66] = https://curl.se/bug/?i=18636 - [67] = https://curl.se/bug/?i=18635 - [68] = https://curl.se/bug/?i=18503 - [69] = https://curl.se/bug/?i=18628 - [70] = https://curl.se/bug/?i=18630 - [71] = https://curl.se/bug/?i=18629 - [72] = https://curl.se/bug/?i=18627 - [73] = https://curl.se/bug/?i=18626 - [74] = https://curl.se/bug/?i=18477 - [75] = https://curl.se/bug/?i=18490 - [76] = https://curl.se/bug/?i=18482 - [77] = https://curl.se/bug/?i=18488 - [78] = https://curl.se/bug/?i=18468 - [79] = https://curl.se/bug/?i=18473 - [80] = https://curl.se/bug/?i=18451 - [81] = https://curl.se/bug/?i=18040 - [82] = https://curl.se/bug/?i=18617 - [83] = https://curl.se/bug/?i=18620 - [84] = https://curl.se/bug/?i=18624 - [85] = https://curl.se/bug/?i=18612 - [86] = https://curl.se/bug/?i=18899 - [87] = https://curl.se/bug/?i=18707 - [88] = https://curl.se/bug/?i=18680 - [89] = https://curl.se/bug/?i=18740 - [90] = https://curl.se/bug/?i=18681 - [91] = https://curl.se/bug/?i=18251 - [92] = https://curl.se/bug/?i=18739 - [93] = https://curl.se/bug/?i=18788 - [94] = https://curl.se/bug/?i=18722 - [95] = https://curl.se/bug/?i=18767 - [96] = https://curl.se/bug/?i=18737 - [97] = https://curl.se/bug/?i=18769 - [98] = https://curl.se/bug/?i=18782 - [99] = https://curl.se/bug/?i=18733 - [100] = https://curl.se/bug/?i=18732 - [101] = https://curl.se/bug/?i=18689 - [102] = https://curl.se/bug/?i=18688 - [103] = https://curl.se/bug/?i=18730 - [104] = https://curl.se/bug/?i=18684 - [105] = https://curl.se/bug/?i=18729 - [106] = https://curl.se/bug/?i=18671 - [107] = https://curl.se/bug/?i=18670 - [108] = https://curl.se/bug/?i=18633 - [109] = https://curl.se/bug/?i=18675 - [110] = https://curl.se/bug/?i=18658 - [111] = https://curl.se/bug/?i=18657 - [112] = https://curl.se/bug/?i=18669 - [113] = https://curl.se/bug/?i=18667 - [114] = https://curl.se/bug/?i=18666 - [115] = https://curl.se/bug/?i=18664 - [116] = https://curl.se/bug/?i=18659 - [117] = https://curl.se/bug/?i=18728 - [118] = https://curl.se/bug/?i=18656 - [119] = https://curl.se/bug/?i=18653 - [120] = https://curl.se/bug/?i=18652 - [121] = https://curl.se/bug/?i=18651 - [122] = https://curl.se/bug/?i=18650 - [123] = https://curl.se/bug/?i=18648 - [124] = https://curl.se/bug/?i=18644 - [125] = https://curl.se/bug/?i=18654 - [126] = https://curl.se/bug/?i=18645 - [127] = https://curl.se/bug/?i=18727 - [128] = https://curl.se/bug/?i=18726 - [129] = https://curl.se/bug/?i=18725 - [130] = https://curl.se/bug/?i=18724 - [131] = https://curl.se/bug/?i=18723 - [132] = https://curl.se/bug/?i=18720 - [133] = https://curl.se/bug/?i=18718 - [134] = https://curl.se/bug/?i=18717 - [135] = https://curl.se/bug/?i=18401 - [136] = https://curl.se/bug/?i=18227 - [137] = https://curl.se/bug/?i=18719 - [138] = https://curl.se/bug/?i=18894 - [139] = https://curl.se/bug/?i=18714 - [140] = https://curl.se/bug/?i=18715 - [141] = https://curl.se/bug/?i=18776 - [142] = https://curl.se/bug/?i=18713 - [143] = https://curl.se/bug/?i=18712 - [144] = https://curl.se/bug/?i=18711 - [145] = https://curl.se/bug/?i=18682 - [146] = https://curl.se/bug/?i=18779 - [147] = https://curl.se/bug/?i=18778 - [148] = https://curl.se/bug/?i=18816 - [149] = https://curl.se/bug/?i=18775 - [150] = https://curl.se/bug/?i=18510 - [151] = https://curl.se/bug/?i=18774 - [152] = https://curl.se/bug/?i=18762 - [153] = https://curl.se/bug/?i=18811 - [154] = https://curl.se/bug/?i=18817 - [155] = https://curl.se/bug/?i=18815 - [156] = https://curl.se/bug/?i=18893 - [157] = https://curl.se/bug/?i=18806 - [158] = https://curl.se/bug/?i=18980 - [159] = https://curl.se/bug/?i=18924 - [160] = https://curl.se/bug/?i=18810 - [161] = https://curl.se/bug/?i=18749 - [162] = https://curl.se/bug/?i=18808 - [163] = https://curl.se/bug/?i=18747 - [164] = https://curl.se/bug/?i=18744 - [165] = https://curl.se/bug/?i=18662 - [166] = https://curl.se/bug/?i=18891 - [167] = https://curl.se/bug/?i=18804 - [168] = https://curl.se/bug/?i=18803 - [169] = https://curl.se/bug/?i=18805 - [170] = https://curl.se/bug/?i=18807 - [171] = https://curl.se/bug/?i=18801 - [172] = https://curl.se/bug/?i=18800 - [173] = https://curl.se/bug/?i=18799 - [174] = https://curl.se/bug/?i=18889 - [175] = https://curl.se/bug/?i=18887 - [176] = https://curl.se/bug/?i=18780 - [177] = https://curl.se/bug/?i=18787 - [178] = https://curl.se/bug/?i=18790 - [179] = https://curl.se/bug/?i=18793 - [180] = https://curl.se/bug/?i=18886 - [181] = https://curl.se/bug/?i=18884 - [182] = https://curl.se/bug/?i=18754 - [183] = https://curl.se/bug/?i=18921 - [184] = https://curl.se/bug/?i=18878 - [185] = https://curl.se/bug/?i=18875 - [186] = https://curl.se/bug/?i=18874 - [187] = https://curl.se/bug/?i=18979 - [188] = https://curl.se/bug/?i=18940 - [189] = https://curl.se/bug/?i=18932 - [190] = https://curl.se/bug/?i=18976 - [191] = https://curl.se/bug/?i=18888 - [192] = https://curl.se/bug/?i=18873 - [193] = https://curl.se/bug/?i=18871 - [194] = https://curl.se/bug/?i=18870 - [195] = https://curl.se/bug/?i=18869 - [196] = https://curl.se/bug/?i=18867 - [197] = https://curl.se/bug/?i=18882 - [198] = https://curl.se/bug/?i=18862 - [199] = https://curl.se/bug/?i=18877 - [200] = https://curl.se/bug/?i=18865 - [201] = https://curl.se/bug/?i=18864 - [202] = https://curl.se/bug/?i=18863 - [203] = https://curl.se/bug/?i=18975 - [204] = https://curl.se/bug/?i=18859 - [205] = https://curl.se/bug/?i=18880 - [206] = https://curl.se/bug/?i=18868 - [207] = https://curl.se/bug/?i=18872 - [208] = https://curl.se/bug/?i=18972 - [209] = https://curl.se/bug/?i=19043 - [210] = https://curl.se/bug/?i=18035 - [211] = https://curl.se/bug/?i=18860 - [212] = https://curl.se/bug/?i=18858 - [213] = https://curl.se/bug/?i=18855 - [214] = https://curl.se/bug/?i=18857 - [215] = https://curl.se/bug/?i=18927 - [216] = https://curl.se/bug/?i=18852 - [217] = https://curl.se/bug/?i=18851 - [218] = https://curl.se/bug/?i=18850 - [219] = https://curl.se/bug/?i=18922 - [220] = https://curl.se/bug/?i=18845 - [221] = https://curl.se/bug/?i=18838 - [222] = https://curl.se/bug/?i=18904 - [223] = https://curl.se/bug/?i=18843 - [224] = https://curl.se/bug/?i=18842 - [225] = https://curl.se/bug/?i=18841 - [226] = https://curl.se/bug/?i=18839 - [227] = https://curl.se/bug/?i=18904 - [228] = https://curl.se/bug/?i=18823 - [229] = https://curl.se/bug/?i=18836 - [230] = https://curl.se/bug/?i=18902 - [231] = https://curl.se/bug/?i=18835 - [232] = https://curl.se/bug/?i=18918 - [233] = https://curl.se/bug/?i=19015 - [234] = https://curl.se/bug/?i=18828 - [235] = https://curl.se/bug/?i=18909 - [236] = https://curl.se/bug/?i=18905 - [237] = https://curl.se/bug/?i=18907 - [238] = https://curl.se/bug/?i=18829 - [239] = https://curl.se/bug/?i=18812 - [240] = https://curl.se/bug/?i=18703 - [241] = https://curl.se/bug/?i=18966 - [242] = https://curl.se/bug/?i=18961 - [243] = https://curl.se/bug/?i=18914 - [244] = https://curl.se/bug/?i=19013 - [245] = https://curl.se/bug/?i=18911 - [246] = https://curl.se/bug/?i=18883 - [247] = https://curl.se/bug/?i=18908 - [248] = https://curl.se/bug/?i=18903 - [249] = https://curl.se/bug/?i=18903 - [250] = https://curl.se/bug/?i=18432 - [251] = https://curl.se/bug/?i=18881 - [252] = https://curl.se/bug/?i=18890 - [253] = https://curl.se/bug/?i=19012 - [254] = https://curl.se/bug/?i=18967 - [255] = https://curl.se/bug/?i=18969 - [256] = https://curl.se/bug/?i=18953 - [257] = https://curl.se/bug/?i=18959 - [258] = https://hackerone.com/reports/3373640 - [259] = https://curl.se/bug/?i=18933 - [260] = https://curl.se/bug/?i=18931 - [261] = https://curl.se/bug/?i=18930 - [262] = https://curl.se/bug/?i=18952 - [263] = https://curl.se/bug/?i=18952 - [264] = https://curl.se/bug/?i=18937 - [265] = https://curl.se/bug/?i=18936 - [266] = https://curl.se/bug/?i=18934 - [267] = https://curl.se/bug/?i=18928 - [268] = https://curl.se/bug/?i=18957 - [269] = https://curl.se/bug/?i=18951 - [270] = https://curl.se/bug/?i=18999 - [271] = https://curl.se/bug/?i=18998 - [272] = https://curl.se/bug/?i=18995 - [273] = https://curl.se/bug/?i=18968 - [274] = https://curl.se/bug/?i=18965 - [275] = https://curl.se/bug/?i=18964 - [276] = https://curl.se/bug/?i=18938 - [277] = https://curl.se/bug/?i=18994 - [278] = https://curl.se/bug/?i=18993 - [279] = https://curl.se/bug/?i=18992 - [280] = https://curl.se/bug/?i=18973 - [281] = https://curl.se/bug/?i=19044 - [282] = https://curl.se/bug/?i=18990 - [283] = https://curl.se/bug/?i=18989 - [284] = https://curl.se/bug/?i=18988 - [285] = https://curl.se/bug/?i=18978 - [286] = https://curl.se/bug/?i=18986 - [287] = https://curl.se/bug/?i=18985 - [288] = https://curl.se/bug/?i=18984 - [289] = https://curl.se/bug/?i=19079 - [290] = https://curl.se/bug/?i=19042 - [291] = https://curl.se/bug/?i=19040 - [292] = https://curl.se/bug/?i=19039 - [293] = https://curl.se/bug/?i=19029 - [294] = https://curl.se/bug/?i=19035 - [295] = https://curl.se/bug/?i=19072 - [296] = https://curl.se/bug/?i=19033 - [297] = https://curl.se/bug/?i=19032 - [298] = https://curl.se/bug/?i=19031 - [299] = https://curl.se/bug/?i=19030 - [300] = https://curl.se/bug/?i=19025 - [301] = https://curl.se/bug/?i=19006 - [302] = https://curl.se/bug/?i=19004 - [303] = https://curl.se/bug/?i=19003 - [304] = https://curl.se/bug/?i=19027 - [305] = https://curl.se/bug/?i=19026 - [306] = https://curl.se/bug/?i=19014 - [307] = https://curl.se/bug/?i=18996 - [308] = https://curl.se/bug/?i=19071 - [309] = https://curl.se/bug/?i=19059 - [310] = https://curl.se/bug/?i=18926 - [311] = https://curl.se/bug/?i=19060 - [312] = https://curl.se/bug/?i=19070 - [313] = https://curl.se/bug/?i=19069 - [315] = https://curl.se/bug/?i=19065 - [316] = https://curl.se/bug/?i=19017 - [317] = https://curl.se/bug/?i=16143 - [318] = https://curl.se/bug/?i=19055 - [321] = https://curl.se/bug/?i=19053 - [322] = https://curl.se/bug/?i=19052 - [323] = https://curl.se/bug/?i=19051 - [324] = https://curl.se/bug/?i=19048 + [2] = https://curl.se/bug/?i=19366 + [3] = https://curl.se/bug/?i=19370 + [4] = https://curl.se/bug/?i=19371 diff --git a/REUSE.toml b/REUSE.toml index 40531913af3b..fff538016477 100644 --- a/REUSE.toml +++ b/REUSE.toml @@ -13,7 +13,6 @@ SPDX-PackageDownloadLocation = "https://curl.se/" [[annotations]] path = [ - ".mailmap", "docs/FAQ", "docs/INSTALL", "docs/KNOWN_BUGS", @@ -22,7 +21,6 @@ path = [ "docs/options-in-versions", "docs/THANKS", "docs/TODO", - "GIT-INFO.md", "lib/libcurl.vers.in", "lib/libcurl.def", "packages/OS400/README.OS400", diff --git a/appveyor.yml b/appveyor.yml index af6ecd2c159b..98e6e516091a 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -46,14 +46,14 @@ environment: # generated CMake-based Visual Studio builds - - job_name: 'CMake, VS2022, Release, x64, OpenSSL 3.5, Shared, Build-tests' + - job_name: 'CM VS2022, Release, x64, OpenSSL 3.5, Shared, Build-tests' APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022' PRJ_GEN: 'Visual Studio 17 2022' TARGET: '-A x64' PRJ_CFG: Release OPENSSL: 'ON' SHARED: 'ON' - - job_name: 'CMake, VS2022, Release, arm64, Schannel, Static, Build-tests' + - job_name: 'CM VS2022, Release, arm64, Schannel, Static, Build-tests' APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022' PRJ_GEN: 'Visual Studio 17 2022' TARGET: '-A ARM64' @@ -61,7 +61,7 @@ environment: SCHANNEL: 'ON' DEBUG: 'OFF' CURLDEBUG: 'ON' - - job_name: 'CMake, VS2010, Debug, x64, Schannel, Shared, Build-tests & examples, XP' + - job_name: 'CM VS2010, Debug, x64, Schannel, Shared, Build-tests & examples, XP' APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2013' PRJ_GEN: 'Visual Studio 10 2010' TARGET: '-A x64' @@ -70,7 +70,7 @@ environment: SCHANNEL: 'ON' SHARED: 'ON' EXAMPLES: 'ON' - - job_name: 'CMake, VS2012, Release, x86, OpenSSL 1.1.1 + Schannel, Shared, Build-tests' + - job_name: 'CM VS2012, Release, x86, OpenSSL 1.1.1 + Schannel, Shared, Build-tests' APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015' PRJ_GEN: 'Visual Studio 11 2012' TARGET: '-A Win32' @@ -78,7 +78,7 @@ environment: OPENSSL: 'ON' SCHANNEL: 'ON' SHARED: 'ON' - - job_name: 'CMake, VS2013, Debug, x64, OpenSSL 1.1.1, Shared, Build-only' + - job_name: 'CM VS2013, Debug, x64, OpenSSL 1.1.1, Shared, Build-only' APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015' PRJ_GEN: 'Visual Studio 12 2013' TARGET: '-A x64' @@ -86,14 +86,14 @@ environment: OPENSSL: 'ON' SHARED: 'ON' TFLAGS: 'skipall' - - job_name: 'CMake, VS2015, Debug, x64, OpenSSL 1.1.1, Static, Build-only' + - job_name: 'CM VS2015, Debug, x64, OpenSSL 1.1.1, Static, Build-only' APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015' PRJ_GEN: 'Visual Studio 14 2015' TARGET: '-A x64' PRJ_CFG: Debug OPENSSL: 'ON' TFLAGS: 'skipall' - - job_name: 'CMake, VS2017, Debug, x64, OpenSSL 1.1.1, Shared, Build-only' + - job_name: 'CM VS2017, Debug, x64, OpenSSL 1.1.1, Shared, Build-only' APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2017' PRJ_GEN: 'Visual Studio 15 2017' TARGET: '-A x64' @@ -101,7 +101,7 @@ environment: OPENSSL: 'ON' SHARED: 'ON' TFLAGS: 'skipall' - - job_name: 'CMake, VS2019, Debug, x64, OpenSSL 3.0 + Schannel, Shared, Build-tests' + - job_name: 'CM VS2019, Debug, x64, OpenSSL 3.0 + Schannel, Shared, Build-tests' APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2019' PRJ_GEN: 'Visual Studio 16 2019' TARGET: '-A x64' @@ -109,7 +109,7 @@ environment: OPENSSL: 'ON' SCHANNEL: 'ON' SHARED: 'ON' - - job_name: 'CMake, VS2022, Debug, x64, OpenSSL 3.5 + Schannel, Static, Unicode, Build-tests & examples, clang-cl' + - job_name: 'CM VS2022, Debug, x64, OpenSSL 3.5 + Schannel, Static, Unicode, Build-tests & examples, clang-cl' APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022' PRJ_GEN: 'Visual Studio 17 2022' TARGET: '-A x64' @@ -119,14 +119,14 @@ environment: ENABLE_UNICODE: 'ON' EXAMPLES: 'ON' TOOLSET: 'ClangCl' - - job_name: 'CMake, VS2022, Debug, x64, Schannel, Static, Unicode, Build-tests' + - job_name: 'CM VS2022, Debug, x64, Schannel, Static, Unicode, Build-tests' APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022' PRJ_GEN: 'Visual Studio 17 2022' TARGET: '-A x64' PRJ_CFG: Debug SCHANNEL: 'ON' ENABLE_UNICODE: 'ON' - - job_name: 'CMake, VS2022, Release, x64, Schannel, Shared, Unicode, DEBUGBUILD, no-CURLDEBUG, Build-tests' + - job_name: 'CM VS2022, Release, x64, Schannel, Shared, Unicode, DEBUGBUILD, no-CURLDEBUG, Build-tests' APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022' PRJ_GEN: 'Visual Studio 17 2022' TARGET: '-A x64' @@ -135,12 +135,12 @@ environment: ENABLE_UNICODE: 'ON' SHARED: 'ON' CURLDEBUG: 'OFF' - - job_name: 'CMake, VS2022, Debug, x64, no SSL, Static, Build-tests' + - job_name: 'CM VS2022, Debug, x64, no SSL, Static, Build-tests' APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022' PRJ_GEN: 'Visual Studio 17 2022' TARGET: '-A x64' PRJ_CFG: Debug - - job_name: 'CMake, VS2022, Debug, x64, no SSL, Static, HTTP only, Build-tests' + - job_name: 'CM VS2022, Debug, x64, no SSL, Static, HTTP only, Build-tests' APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2022' PRJ_GEN: 'Visual Studio 17 2022' TARGET: '-A x64' @@ -149,7 +149,7 @@ environment: # generated VisualStudioSolution-based builds - - job_name: 'VisualStudioSolution, VS2013, Debug, x86, Schannel, Build-only' + - job_name: 'VisualStudioSolution VS2013, Debug, x86, Schannel, Build-only' APPVEYOR_BUILD_WORKER_IMAGE: 'Visual Studio 2015' BUILD_SYSTEM: VisualStudioSolution PRJ_CFG: 'DLL Debug - DLL Windows SSPI - DLL WinIDN' diff --git a/configure.ac b/configure.ac index 999ab122a323..cc16f4120af5 100644 --- a/configure.ac +++ b/configure.ac @@ -5252,10 +5252,11 @@ fi use_curl_ntlm_core=no if test "x$CURL_DISABLE_NTLM" != "x1"; then - if test "x$OPENSSL_ENABLED" = "x1" -o "x$MBEDTLS_ENABLED" = "x1" \ + if test "x$HAVE_DES_ECB_ENCRYPT" = "x1" \ -o "x$GNUTLS_ENABLED" = "x1" \ -o "x$USE_WIN32_CRYPTO" = "x1" \ - -o "x$HAVE_WOLFSSL_DES_ECB_ENCRYPT" = "x1"; then + -o "x$HAVE_WOLFSSL_DES_ECB_ENCRYPT" = "x1" \ + -o "x$HAVE_MBEDTLS_DES_CRYPT_ECB" = "x1"; then use_curl_ntlm_core=yes fi diff --git a/docs/BINDINGS.md b/docs/BINDINGS.md index a72482cf8dfd..b7074a22756a 100644 --- a/docs/BINDINGS.md +++ b/docs/BINDINGS.md @@ -61,7 +61,7 @@ Go: [go-curl](https://github.com/andelf/go-curl) by ShuYu Wang [Haskell](https://hackage.haskell.org/package/curl) Written by Galois, Inc -[Hollywood](https://www.hollywood-mal.com/download.html) hURL by Andreas Falkenhahn +[Hollywood](https://web.archive.org/web/20250116185836/https://www.hollywood-mal.com/download.html) hURL by Andreas Falkenhahn [Java](https://github.com/covers1624/curl4j) @@ -100,7 +100,7 @@ Bailiff and Bálint Szilakszi, [PostgreSQL](https://github.com/RekGRpth/pg_curl) - cURL client for PostgreSQL -[PureBasic](https://www.purebasic.com/documentation/http/index.html) uses libcurl in its "native" HTTP subsystem +[PureBasic](https://web.archive.org/web/20250325015028/www.purebasic.com/documentation/http/index.html) uses libcurl in its "native" HTTP subsystem [Python](http://pycurl.io/) PycURL by Kjetil Jacobsen diff --git a/docs/ECH.md b/docs/ECH.md index d39f4b2f36a2..b40cd17e78b6 100644 --- a/docs/ECH.md +++ b/docs/ECH.md @@ -22,9 +22,8 @@ To build the OpenSSL project's ECH feature branch: ```sh cd $HOME/code -git clone https://github.com/openssl/openssl +git clone https://github.com/openssl/openssl --branch feature/ech cd openssl -git checkout feature/ech ./config --libdir=lib --prefix=$HOME/code/openssl-local-inst ...stuff... make -j8 diff --git a/docs/HISTORY.md b/docs/HISTORY.md index 21df56f85fa2..41284d8fc611 100644 --- a/docs/HISTORY.md +++ b/docs/HISTORY.md @@ -223,6 +223,9 @@ March: security vulnerability: libcurl TFTP Packet Buffer Overflow September: The major SONAME number for libcurl was bumped to 4 due to the removal of ftp third party transfer support. +October: we started to offer the Mozilla CA cert bundle as a PEM file on the +curl website. + November: Added SCP and SFTP support 2007 @@ -326,6 +329,10 @@ April: added the cyassl backend (later renamed to wolfSSL) August: support for HTTP/2 server push + September: started "everything curl". A separate stand-alone book documenting + curl and related info in perhaps a more tutorial style rather than just a + reference, + December: Public Suffix List 2016 @@ -340,6 +347,8 @@ April: added the cyassl backend (later renamed to wolfSSL) 2017 ---- + May: Fastly starts hosting the curl website + July: OSS-Fuzz started fuzzing libcurl September: Added MultiSSL support @@ -390,6 +399,8 @@ April: added the cyassl backend (later renamed to wolfSSL) 2019 ---- + January: Daniel started working full-time on curl, employed by wolfSSL + March: added experimental alt-svc support August: the first HTTP/3 requests with curl. @@ -404,7 +415,8 @@ April: added the cyassl backend (later renamed to wolfSSL) January: added BearSSL support - March: removed support for PolarSSL, added wolfSSH support + March: removed support for PolarSSL, added wolfSSH support. Created the first + dashboard on the website. April: experimental MQTT support @@ -437,6 +449,8 @@ March: added --json, removed mesalink support The curl.se website serves 16,500 GB/month over 462M requests, the official docker image has been pulled 4,098,015,431 times. +April: added support for msh3 as another HTTP/3 backend + October: initial WebSocket support 2023 @@ -447,7 +461,8 @@ March: remove support for curl_off_t < 8 bytes March 31: we started working on a new command line tool for URL parsing and manipulations: trurl. -May: added support for HTTP/2 over HTTPS proxy. Refuse to resolve .onion. +May: added support for HTTP/2 over HTTPS proxy. Refuse to resolve .onion. The +curl GitHub repository reaches 30,000 stars. August: Dropped support for the NSS library @@ -482,5 +497,25 @@ February 5: first 0RTT for QUIC, ssl session import/export February: experimental HTTPS RR support -February 22: The website served 62.95 TB/month; 12.43 billion requests - The docker image has been pulled 6373501745 times. +February 22: The website served 62.95 TB/month; 12.43 billion requests. The +docker image has been pulled 6373501745 times. + +June: we removed support for BearSSL, Secure Transport and msh3 + +October: Daniel gets awarded a gold medal by the Swedish Royal Academy of +Engineering Sciences for his work on curl. + +We counted curl having been installed on 110 operating systems and 28 CPU +architectures. + +November: + + Public curl releases: 271 + Command line options: 273 + curl_easy_setopt() options: 308 + Public functions in libcurl: 100 + Contributors: 3534 + +We drop support for krb-ftp, Heimdal, wolfSSH and the winbuild build system. + +Add support for Apple SecTrust, native CA certs on Apple systems. diff --git a/docs/HTTP3.md b/docs/HTTP3.md index 2047d4ad2e77..b3ddcbaaf832 100644 --- a/docs/HTTP3.md +++ b/docs/HTTP3.md @@ -93,8 +93,9 @@ Build curl: ## Build with quictls -OpenSSL does not offer the required APIs for building a QUIC client. You need -to use a TLS library that has such APIs and that works with *ngtcp2*. +OpenSSL before version 3.5 does not offer the required APIs for building a +QUIC client. You need to use a TLS library that has such APIs and that works +with *ngtcp2*. Build quictls (any `+quic` tagged version works): diff --git a/docs/INSTALL-CMAKE.md b/docs/INSTALL-CMAKE.md index e5c6b0d375e6..4b9b85326ff0 100644 --- a/docs/INSTALL-CMAKE.md +++ b/docs/INSTALL-CMAKE.md @@ -255,10 +255,10 @@ target_link_libraries(my_target PRIVATE CURL::libcurl) ## CA bundle options -- `CURL_CA_BUNDLE`: Path to the CA bundle. Set `none` to disable or `auto` for auto-detection. Default: `auto` -- `CURL_CA_EMBED`: Path to the CA bundle to embed in the curl tool. Default: (disabled) +- `CURL_CA_BUNDLE`: Absolute path to the CA bundle. Set `none` to disable or `auto` for auto-detection. Default: `auto` +- `CURL_CA_EMBED`: Absolute path to the CA bundle to embed in the curl tool. Default: (disabled) - `CURL_CA_FALLBACK`: Use built-in CA store of OpenSSL. Default: `OFF` -- `CURL_CA_PATH`: Location of default CA path. Set `none` to disable or `auto` for auto-detection. Default: `auto` +- `CURL_CA_PATH`: Absolute path to a directory containing CA certificates stored individually. Set `none` to disable or `auto` for auto-detection. Default: `auto` - `CURL_CA_SEARCH_SAFE`: Enable safe CA bundle search (within the curl tool directory) on Windows. Default: `OFF` ## Enabling features @@ -379,13 +379,13 @@ Details via CMake ## Dependency options (via CMake) -- `OPENSSL_ROOT_DIR`: Set this variable to the root installation of OpenSSL (and forks). -- `OPENSSL_INCLUDE_DIR`: The OpenSSL include directory. -- `OPENSSL_SSL_LIBRARY`: Path to `ssl` library. With MSVC, CMake uses variables `SSL_EAY_DEBUG`/`SSL_EAY_RELEASE` instead. -- `OPENSSL_CRYPTO_LIBRARY`: Path to `crypto` library. With MSVC, CMake uses variables `LIB_EAY_DEBUG`/`LIB_EAY_RELEASE` instead. +- `OPENSSL_ROOT_DIR`: Absolute path to the root installation of OpenSSL (and forks). +- `OPENSSL_INCLUDE_DIR`: Absolute path to OpenSSL include directory. +- `OPENSSL_SSL_LIBRARY`: Absolute path to `ssl` library. With MSVC, CMake uses variables `SSL_EAY_DEBUG`/`SSL_EAY_RELEASE` instead. +- `OPENSSL_CRYPTO_LIBRARY`: Absolute path to `crypto` library. With MSVC, CMake uses variables `LIB_EAY_DEBUG`/`LIB_EAY_RELEASE` instead. - `OPENSSL_USE_STATIC_LIBS`: Look for static OpenSSL libraries. -- `ZLIB_INCLUDE_DIR`: The zlib include directory. -- `ZLIB_LIBRARY`: Path to `zlib` library. +- `ZLIB_INCLUDE_DIR`: Absolute path to zlib include directory. +- `ZLIB_LIBRARY`: Absolute path to `zlib` library. - `ZLIB_USE_STATIC_LIBS`: Look for static ZLIB library (requires CMake v3.24). ## Dependency options (tools) @@ -395,62 +395,80 @@ Details via CMake ## Dependency options (libraries) -- `AMISSL_INCLUDE_DIR`: The AmiSSL include directory. -- `AMISSL_STUBS_LIBRARY`: Path to `amisslstubs` library. -- `AMISSL_AUTO_LIBRARY`: Path to `amisslauto` library. -- `BROTLI_INCLUDE_DIR`: The brotli include directory. -- `BROTLICOMMON_LIBRARY`: Path to `brotlicommon` library. -- `BROTLIDEC_LIBRARY`: Path to `brotlidec` library. -- `CARES_INCLUDE_DIR`: The c-ares include directory. -- `CARES_LIBRARY`: Path to `cares` library. -- `DL_LIBRARY`: Path to `dl` library. (for Rustls) -- `GSS_ROOT_DIR`: Set this variable to the root installation of GSS. (also supported as environment) -- `LDAP_LIBRARY`: Name or full path to `ldap` library. Default: `ldap` -- `LDAP_LBER_LIBRARY`: Name or full path to `lber` library. Default: `lber` -- `LDAP_INCLUDE_DIR`: Path to LDAP include directory. -- `LIBGSASL_INCLUDE_DIR`: The libgsasl include directory. -- `LIBGSASL_LIBRARY`: Path to `libgsasl` library. -- `LIBIDN2_INCLUDE_DIR`: The libidn2 include directory. -- `LIBIDN2_LIBRARY`: Path to `libidn2` library. -- `LIBPSL_INCLUDE_DIR`: The libpsl include directory. -- `LIBPSL_LIBRARY`: Path to `libpsl` library. -- `LIBRTMP_INCLUDE_DIR`: The librtmp include directory. -- `LIBRTMP_LIBRARY`: Path to `librtmp` library. -- `LIBSSH_INCLUDE_DIR`: The libssh include directory. -- `LIBSSH_LIBRARY`: Path to `libssh` library. -- `LIBSSH2_INCLUDE_DIR`: The libssh2 include directory. -- `LIBSSH2_LIBRARY`: Path to `libssh2` library. -- `LIBUV_INCLUDE_DIR`: The libuv include directory. -- `LIBUV_LIBRARY`: Path to `libuv` library. -- `MATH_LIBRARY`: Path to `m` library. (for Rustls, wolfSSL) -- `MBEDTLS_INCLUDE_DIR`: The mbedTLS include directory. -- `MBEDTLS_LIBRARY`: Path to `mbedtls` library. -- `MBEDX509_LIBRARY`: Path to `mbedx509` library. -- `MBEDCRYPTO_LIBRARY`: Path to `mbedcrypto` library. -- `NGHTTP2_INCLUDE_DIR`: The nghttp2 include directory. -- `NGHTTP2_LIBRARY`: Path to `nghttp2` library. -- `NGHTTP3_INCLUDE_DIR`: The nghttp3 include directory. -- `NGHTTP3_LIBRARY`: Path to `nghttp3` library. -- `NGTCP2_INCLUDE_DIR`: The ngtcp2 include directory. -- `NGTCP2_LIBRARY`: Path to `ngtcp2` library. -- `NGTCP2_CRYPTO_BORINGSSL_LIBRARY`: Path to `ngtcp2_crypto_boringssl` library. (also for AWS-LC) -- `NGTCP2_CRYPTO_GNUTLS_LIBRARY`: Path to `ngtcp2_crypto_gnutls` library. -- `NGTCP2_CRYPTO_LIBRESSL_LIBRARY`: Path to `ngtcp2_crypto_libressl` library. (requires ngtcp2 1.15.0+) -- `NGTCP2_CRYPTO_OSSL_LIBRARY`: Path to `ngtcp2_crypto_ossl` library. -- `NGTCP2_CRYPTO_QUICTLS_LIBRARY`: Path to `ngtcp2_crypto_quictls` library. (also for LibreSSL with ngtcp2 <1.15.0) -- `NGTCP2_CRYPTO_WOLFSSL_LIBRARY`: Path to `ngtcp2_crypto_wolfssl` library. -- `NETTLE_INCLUDE_DIR`: The nettle include directory. -- `NETTLE_LIBRARY`: Path to `nettle` library. -- `PTHREAD_LIBRARY`: Path to `pthread` library. (for Rustls) -- `QUICHE_INCLUDE_DIR`: The quiche include directory. -- `QUICHE_LIBRARY`: Path to `quiche` library. -- `RUSTLS_INCLUDE_DIR`: The Rustls include directory. -- `RUSTLS_LIBRARY`: Path to `rustls` library. -- `WATT_ROOT`: Set this variable to the root installation of Watt-32. -- `WOLFSSL_INCLUDE_DIR`: The wolfSSL include directory. -- `WOLFSSL_LIBRARY`: Path to `wolfssl` library. -- `ZSTD_INCLUDE_DIR`: The zstd include directory. -- `ZSTD_LIBRARY`: Path to `zstd` library. +- `AMISSL_INCLUDE_DIR`: Absolute path to AmiSSL include directory. +- `AMISSL_STUBS_LIBRARY`: Absolute path to `amisslstubs` library. +- `AMISSL_AUTO_LIBRARY`: Absolute path to `amisslauto` library. +- `BROTLI_INCLUDE_DIR`: Absolute path to brotli include directory. +- `BROTLICOMMON_LIBRARY`: Absolute path to `brotlicommon` library. +- `BROTLIDEC_LIBRARY`: Absolute path to `brotlidec` library. +- `CARES_INCLUDE_DIR`: Absolute path to c-ares include directory. +- `CARES_LIBRARY`: Absolute path to `cares` library. +- `DL_LIBRARY`: Absolute path to `dl` library. (for Rustls) +- `GNUTLS_INCLUDE_DIR`: Absolute path to GnuTLS include directory. +- `GNUTLS_LIBRARY`: Absolute path to `gnutls` library. +- `GSS_ROOT_DIR`: Absolute path to the root installation of GSS. (also supported as environment) +- `LDAP_INCLUDE_DIR`: Absolute path to LDAP include directory. +- `LDAP_LIBRARY`: Absolute path to `ldap` library. +- `LDAP_LBER_LIBRARY`: Absolute path to `lber` library. +- `LIBGSASL_INCLUDE_DIR`: Absolute path to libgsasl include directory. +- `LIBGSASL_LIBRARY`: Absolute path to `libgsasl` library. +- `LIBIDN2_INCLUDE_DIR`: Absolute path to libidn2 include directory. +- `LIBIDN2_LIBRARY`: Absolute path to `libidn2` library. +- `LIBPSL_INCLUDE_DIR`: Absolute path to libpsl include directory. +- `LIBPSL_LIBRARY`: Absolute path to `libpsl` library. +- `LIBRTMP_INCLUDE_DIR`: Absolute path to librtmp include directory. +- `LIBRTMP_LIBRARY`: Absolute path to `librtmp` library. +- `LIBSSH_INCLUDE_DIR`: Absolute path to libssh include directory. +- `LIBSSH_LIBRARY`: Absolute path to `libssh` library. +- `LIBSSH2_INCLUDE_DIR`: Absolute path to libssh2 include directory. +- `LIBSSH2_LIBRARY`: Absolute path to `libssh2` library. +- `LIBUV_INCLUDE_DIR`: Absolute path to libuv include directory. +- `LIBUV_LIBRARY`: Absolute path to `libuv` library. +- `MATH_LIBRARY`: Absolute path to `m` library. (for Rustls, wolfSSL) +- `MBEDTLS_INCLUDE_DIR`: Absolute path to mbedTLS include directory. +- `MBEDTLS_LIBRARY`: Absolute path to `mbedtls` library. +- `MBEDX509_LIBRARY`: Absolute path to `mbedx509` library. +- `MBEDCRYPTO_LIBRARY`: Absolute path to `mbedcrypto` library. +- `NGHTTP2_INCLUDE_DIR`: Absolute path to nghttp2 include directory. +- `NGHTTP2_LIBRARY`: Absolute path to `nghttp2` library. +- `NGHTTP3_INCLUDE_DIR`: Absolute path to nghttp3 include directory. +- `NGHTTP3_LIBRARY`: Absolute path to `nghttp3` library. +- `NGTCP2_INCLUDE_DIR`: Absolute path to ngtcp2 include directory. +- `NGTCP2_LIBRARY`: Absolute path to `ngtcp2` library. +- `NGTCP2_CRYPTO_BORINGSSL_LIBRARY`: Absolute path to `ngtcp2_crypto_boringssl` library. (also for AWS-LC) +- `NGTCP2_CRYPTO_GNUTLS_LIBRARY`: Absolute path to `ngtcp2_crypto_gnutls` library. +- `NGTCP2_CRYPTO_LIBRESSL_LIBRARY`: Absolute path to `ngtcp2_crypto_libressl` library. (requires ngtcp2 1.15.0+) +- `NGTCP2_CRYPTO_OSSL_LIBRARY`: Absolute path to `ngtcp2_crypto_ossl` library. +- `NGTCP2_CRYPTO_QUICTLS_LIBRARY`: Absolute path to `ngtcp2_crypto_quictls` library. (also for LibreSSL with ngtcp2 <1.15.0) +- `NGTCP2_CRYPTO_WOLFSSL_LIBRARY`: Absolute path to `ngtcp2_crypto_wolfssl` library. +- `NETTLE_INCLUDE_DIR`: Absolute path to nettle include directory. +- `NETTLE_LIBRARY`: Absolute path to `nettle` library. +- `PTHREAD_LIBRARY`: Absolute path to `pthread` library. (for Rustls) +- `QUICHE_INCLUDE_DIR`: Absolute path to quiche include directory. +- `QUICHE_LIBRARY`: Absolute path to `quiche` library. +- `RUSTLS_INCLUDE_DIR`: Absolute path to Rustls include directory. +- `RUSTLS_LIBRARY`: Absolute path to `rustls` library. +- `WATT_ROOT`: Absolute path to the root installation of Watt-32. +- `WOLFSSL_INCLUDE_DIR`: Absolute path to wolfSSL include directory. +- `WOLFSSL_LIBRARY`: Absolute path to `wolfssl` library. +- `ZSTD_INCLUDE_DIR`: Absolute path to zstd include directory. +- `ZSTD_LIBRARY`: Absolute path to `zstd` library. + +Examples: + +- `-DLIBPSL_INCLUDE_DIR=/path/to/libpl/include`, + which directory contains `libpsl.h`. + No ending slash or backslash is necessary. + +- `-DNGHTTP3_INCLUDE_DIR=/path/to/libnghttp3/include`, + which directory contains an `nghttp3` subdirectory with `.h` files in it. + +- `-DLIBPSL_LIBRARY=/path/to/libpsl/lib/libpsl.a` + Always a single library, with its complete filename, as-is on the file system. + +- `-DOPENSSL_ROOT_DIR=/path/to/openssl`, + which directory (typically) contains `include` and `lib` subdirectories. + No ending slash or backslash is necessary. ## Test tools @@ -473,9 +491,11 @@ the parent project, ideally in the "extra" find package redirect file: Available variables: +- `HAVE_DES_ECB_ENCRYPT`: `DES_ecb_encrypt` present in OpenSSL (or fork). - `HAVE_GNUTLS_SRP`: `gnutls_srp_verifier` present in GnuTLS. - `HAVE_LDAP_INIT_FD`: `ldap_init_fd` present in LDAP library. - `HAVE_LDAP_URL_PARSE`: `ldap_url_parse` present in LDAP library. +- `HAVE_MBEDTLS_DES_CRYPT_ECB`: `mbedtls_des_crypt_ecb` present in mbedTLS <4. - `HAVE_OPENSSL_SRP`: `SSL_CTX_set_srp_username` present in OpenSSL (or fork). - `HAVE_QUICHE_CONN_SET_QLOG_FD`: `quiche_conn_set_qlog_fd` present in quiche. - `HAVE_RUSTLS_SUPPORTED_HPKE`: `rustls_supported_hpke` present in Rustls (unused if Rustls is detected via `pkg-config`). diff --git a/docs/INSTALL.md b/docs/INSTALL.md index 453071afd57b..dfbc1eebfd1b 100644 --- a/docs/INSTALL.md +++ b/docs/INSTALL.md @@ -650,22 +650,22 @@ This is a probably incomplete list of known CPU architectures and operating systems that curl has been compiled for. If you know a system curl compiles and runs on, that is not listed, please let us know. -## 104 Operating Systems - - AIX, AmigaOS, Android, ArcoOS, Aros, Atari FreeMiNT, BeOS, Blackberry - 10, Blackberry Tablet OS, Cell OS, CheriBSD, Chrome OS, Cisco IOS, - DG/UX, DR DOS, Dragonfly BSD, eCOS, FreeBSD, FreeDOS, FreeRTOS, Fuchsia, - Garmin OS, Genode, Haiku, HardenedBSD, HP-UX, Hurd, IBM I, illumos, - Integrity, iOS, ipadOS, IRIX, Linux, Lua RTOS, Mac OS 9, macOS, Maemo, - Mbed, Meego, Micrium, MINIX, Minoca, Moblin, MorphOS, MPE/iX, MS-DOS, - NCR MP-RAS, NetBSD, Netware, NextStep, Nintendo 3DS Nintendo Switch, - NonStop OS, NuttX, OpenBSD, OpenStep, Orbis OS, OS/2, OS21, Plan 9, - PlayStation Portable, QNX, Qubes OS, ReactOS, Redox, RISC OS, ROS, - RTEMS, Sailfish OS, SCO Unix, Serenity, SINIX-Z, SkyOS, software, - Solaris, Sortix, SunOS, Syllable OS, Symbian, Tizen, TPF, Tru64, tvOS, - ucLinux, Ultrix, UNICOS, UnixWare, VMS, vxWorks, watchOS, Wear OS, - WebOS, Wii system Wii U, Windows CE, Windows, Xbox System, Xenix, z/OS, - z/TPF, z/VM, z/VSE, Zephyr +## 109 Operating Systems + + AIX, AmigaOS, Android, ArcaOS, Aros, Atari FreeMiNT, Azure Sphere, BeOS, + Blackberry 10, Blackberry Tablet OS, Cell OS, Cesium, CheriBSD, Chrome OS, + Cisco IOS, DG/UX, DR DOS, Dragonfly BSD, eCOS, FreeBSD, FreeDOS, FreeRTOS, + Fuchsia, Garmin OS, Genode, Haiku, HardenedBSD, HP-UX, Hurd, IBM I, + illumos, Integrity, iOS, ipadOS, IRIX, KasperskyOS, Linux, Lua RTOS, + Mac OS 9, macOS, Maemo, Mbed, Meego, Micrium, MINIX, Minoca, Moblin, + MorphOS, MPE/iX, MS-DOS, NCR MP-RAS, NetBSD, Netware, NextStep, + Nintendo 3DS, Nintendo Switch, NonStop OS, NuttX, OpenBSD, OpenStep, + Orbis OS, OS/2, OS21, PikeOS, Plan 9, PlayStation Portable, QNX, Qubes OS, + ReactOS, Redox, RISC OS, ROS, RTEMS, Sailfish OS, SCO Unix, Serenity, + SINIX-Z, SkyOS, SmartOS, Solaris, Sortix, SunOS, Syllable OS, Symbian, + Tizen, TPF, Tru64, tvOS, ucLinux, Ultrix, UNICOS, UnixWare, visionOS, VMS, + vxWorks, watchOS, Wear OS, WebOS, Wii System Software, Wii U, Windows, + Windows CE, Xbox System, Xenix, z/OS, z/TPF, z/VM, z/VSE, Zephyr ## 28 CPU Architectures diff --git a/docs/KNOWN_BUGS b/docs/KNOWN_BUGS index d4e4423094ef..15ca40102aa8 100644 --- a/docs/KNOWN_BUGS +++ b/docs/KNOWN_BUGS @@ -67,6 +67,7 @@ problems may have been fixed or changed somewhat since this was written. 10. Connection 10.1 --interface with link-scoped IPv6 address 10.2 Does not acknowledge getaddrinfo sorting policy + 10.3 SOCKS-SSPI discards the security context 11. Internals 11.1 gssapi library name + version is missing in curl_version_info() @@ -444,6 +445,15 @@ problems may have been fixed or changed somewhat since this was written. https://github.com/curl/curl/issues/16718 + +10.3 SOCKS-SSPI discards the security context + + After a successful SSPI/GSS-API exchange, the function queries and logs the + authenticated username and reports the supported data-protection level, but + then immediately deletes the negotiated SSPI security context and frees the + credentials before returning. The negotiated context is not stored on the + connection and is therefore never used to protect later SOCKS5 traffic. + 11. Internals 11.1 gssapi library name + version is missing in curl_version_info() diff --git a/docs/THANKS b/docs/THANKS index 97f9999b080a..fd4015468e4a 100644 --- a/docs/THANKS +++ b/docs/THANKS @@ -88,6 +88,7 @@ Alessandro Vesely Alex aka WindEagle Alexander Bartel Alexander Beedie +Alexander Blach Alexander Chuykov Alexander Dyagilev Alexander Elgert @@ -221,6 +222,7 @@ Andrew Krieger Andrew Kurushin Andrew Lambert Andrew Moise +Andrew Olsen Andrew Potter Andrew Robbins Andrew Wansink @@ -238,6 +240,7 @@ Andy Reitz Andy Serpa Andy Stamp Andy Tsouladze +And-yW on github Angus Mackay anio on github annalee @@ -411,6 +414,7 @@ Bob Richmond Bob Schader Bodo Bergmann Bogdan Nicula +BohwaZ boilingoden Boris Kuschel Boris Okunskiy @@ -636,6 +640,7 @@ Cristian Greco Cristian Morales Vega Cristian Rodríguez CueXXIII on github +curl.stunt430 Curt Bogmine Cynthia Coan Cyril B @@ -649,6 +654,7 @@ Dagfinn Ilmari Mannsåker Dagobert Michelsen Daiki Ueno Dair Grant +Dalei Dambaev Alexander Damian Dixon Damien Adant @@ -694,6 +700,7 @@ Daniel Silverstone Daniel Steinberg Daniel Stenberg Daniel Szmulewicz +Daniel Terhorst-North Daniel Theron Daniel Valenzuela Daniel Woelfel @@ -804,6 +811,7 @@ Derzsi Dániel Desmond O. Chang destman on github Detlef Schmier +Devdatta Talele devgs on github Dexter Gerig dfdity on github @@ -948,10 +956,12 @@ Emil Engler Emiliano Ida Emilio Cobos Álvarez Emilio López +Emilio Pozuelo Monfort Emil Lerner Emil Österlund Emil Romanus Emmanuel Tychon +Emre Çalışkan Enno Boland Enrico Scholz Enrik Berkhan @@ -1200,6 +1210,7 @@ Guillaume Algis Guillaume Arluison guitared on github Gunamoi Software +Gunni on github Gunter Knauf guoxinvmware on github Gustaf Hui @@ -1303,6 +1314,7 @@ IcedCoffeee on github iconoclasthero icy17 on github Ignacio Vazquez-Abrams +Ignat Loskutov Igor Franchuk Igor Khristophorov Igor Makarov @@ -1367,6 +1379,7 @@ jakirkham on github Jakob Hirsch Jakub Bochenski Jakub Jelen +Jakub Stasiak Jakub Wilk Jakub Zakrzewski James Abbatiello @@ -1503,6 +1516,7 @@ jhoyla on github Jiacai Liu Jiang Wenjian Jiawen Geng +Jicea Jie He Jiehong on github Jilayne Lovejoy @@ -1524,6 +1538,7 @@ Jishan Shaikh Jiwoo Park Jixinqi jkamp-aws on github +jmaggard10 on github jmdavitt on github jnbr on github Jocelyn Jaubert @@ -1635,6 +1650,7 @@ Jose Alf Josef Wolf José Joaquín Atria Jose Kahan +Joseph Birr-Pixton Joseph Chen Joseph Tharayil Josh Bialkowski @@ -1645,6 +1661,7 @@ Josh Kapell Josh McCullough Josh Soref Joshua Kwan +Joshua Rogers Joshua Root Joshua Swink Josie Huddleston @@ -1709,6 +1726,7 @@ Kane York Kang-Jin Lee Kang Lin Kantanat Wannapaka +kapsiR on github Kareem Kari Pahula Karl Chen @@ -1800,6 +1818,7 @@ Kristoffer Gleditsch kriztalz K. R. Walker Kuan-Wei Chiu +kuchara on github Kunal Chandarana Kunal Ekawde kupavcevdenis on github @@ -1948,6 +1967,7 @@ Maciej Puzio Maciej W. Rozycki MacKenzie madblobfish on github +madoe on github MaeIsBad on github magisterquis on hackerone Mahmoud Samir Fayed @@ -2241,6 +2261,7 @@ Mingtao Yang Miroslav Franc Miroslav Spousta Mischa Salle +Mitchell Blank Jr Mitz Wark mkzero on github modbw on github @@ -2363,6 +2384,7 @@ Ning Dong NINIKA Niracler Li Niranjan Hasabnis +Nir Azkiel Nir Soffer Nis Jorgensen nk @@ -2489,6 +2511,7 @@ Pavel Kropachev Pavel Löbl Pavel Mayorov Pavel Orehov +Pavel P Pavel Pavlov Pavel Raiskup Pavel Rochnyak @@ -2507,6 +2530,7 @@ Pedro Neves pendrek at hackerone Peng Li Peng-Yu Chen +pennae on github Per Jensen Per Lundberg Per Malmberg @@ -2586,7 +2610,9 @@ Piotr Dobrogost Piotr Komborski Piotr Nakraszewicz PleaseJustDont +plv1313 on github Po-Chuan Hsieh +Pocs Norbert Pontakorn Prasertsuk Pontus Lundkvist Pooyan McSporran @@ -2738,6 +2764,7 @@ Rider Linden Rikard Falkeborn rilysh Rinku Das +rinsuki on github rl1987 on github rmg-x on github rm-rmonaghan on github @@ -2843,6 +2870,7 @@ rzrymiak on github s0urc3_ on hackerone saimen Sai Ram Kunala +Sakthi SK Salah-Eddin Shaban Saleem Abdulrasool SaltyMilk @@ -3007,6 +3035,7 @@ sspiri on github sstruchtrup on github Stadler Stephan Stan Hu +Stanislav Fort Stanislav Ivochkin Stanislav Lange Stanislav Osipov @@ -3121,9 +3150,11 @@ Terri Oda Terry Wu thanhchungbtc on github TheAssassin on github +TheBitBrine The Infinnovation team TheKnarf on github Theo +Theo Buehler Theodore A. Roth Theodore Dubois therealhirudo on github @@ -3162,6 +3193,7 @@ Till Wegmüller Tim Ansell Tim Baker Tim Bartley +Tim Becker Tim Chen Tim Costello Tim Harder @@ -3363,6 +3395,7 @@ w0x42 on hackerone Waldek Kozba Waldemar Kornewald Walter J. Mack +WangDaLei on github wangzhikun Ward Willats Warren Menzer @@ -3499,6 +3532,7 @@ zzq1015 on github ウさん 不确定 加藤郁之 +包布丁 南宫雪珊 左潇峰 李四 diff --git a/docs/THANKS-filter b/docs/THANKS-filter index fd8722da8bcc..501b649f7632 100644 --- a/docs/THANKS-filter +++ b/docs/THANKS-filter @@ -160,3 +160,4 @@ s/jethrogb$/jethrogb on github/ s/on github/on github/i s/Maksim Sciepanienka/Maksim Ściepanienka/ s/Qriist.*/Qriist on github/ +s/Viktor Szakatas/Viktor Szakats/ diff --git a/docs/TODO b/docs/TODO index 6c3ba904e721..add6819eae77 100644 --- a/docs/TODO +++ b/docs/TODO @@ -54,6 +54,7 @@ 4. FTP 4.1 HOST + 4.2 A fixed directory listing format 4.6 GSSAPI via Windows SSPI 4.7 STAT for LIST without data connection 4.8 Passive transfer could try other IP addresses @@ -484,6 +485,16 @@ https://datatracker.ietf.org/doc/html/rfc7151 +4.2 A fixed directory listing format + + Since listing the contents of a remove directory with FTP is returning the + list in a format and style the server likes without any estblished or even + defactor standard existing, it would be a feature to users if curl could + parse the directory listing and output a general curl format that is fixed + and the same, independent of the server's choice. This would allow users to + better and more reliably extract information about remote content via FTP + directory listings. + 4.6 GSSAPI via Windows SSPI In addition to currently supporting the SASL GSSAPI mechanism (Kerberos V5) diff --git a/docs/VERSIONS.md b/docs/VERSIONS.md index 35267f829484..b910374eab9c 100644 --- a/docs/VERSIONS.md +++ b/docs/VERSIONS.md @@ -69,7 +69,8 @@ dates. The tool was called `httpget` before 2.0, `urlget` before 4.0 then `curl` since 4.0. `libcurl` and `curl` are always released in sync, using the same version numbers. -- 8.17.0: pending +- 8.18.0: pending +- 8.17.0: November 5, 2025 - 8.16.0: September 10, 2025 - 8.15.0: July 16, 2025 - 8.14.1: June 4 2025 diff --git a/docs/cmdline-opts/header.md b/docs/cmdline-opts/header.md index 66816aac538b..7af86aba1833 100644 --- a/docs/cmdline-opts/header.md +++ b/docs/cmdline-opts/header.md @@ -12,6 +12,7 @@ Multi: append See-also: - user-agent - referer + - proxy-header Example: - -H "X-First-Name: Joe" $URL - -H "User-Agent: yes-please/2000" $URL diff --git a/docs/cmdline-opts/list-only.md b/docs/cmdline-opts/list-only.md index 2800a8f79313..eb52d8884972 100644 --- a/docs/cmdline-opts/list-only.md +++ b/docs/cmdline-opts/list-only.md @@ -24,7 +24,7 @@ used like this, the option causes an NLST command to be sent to the server instead of LIST. Note: Some FTP servers list only files in their response to NLST; they do not -include sub-directories and symbolic links. +include subdirectories and symbolic links. When listing an SFTP directory, this switch forces a name-only view, one per line. This is especially useful if the user wants to machine-parse the diff --git a/docs/cmdline-opts/proxy-header.md b/docs/cmdline-opts/proxy-header.md index 3edf6c9a90e5..459eb462f683 100644 --- a/docs/cmdline-opts/proxy-header.md +++ b/docs/cmdline-opts/proxy-header.md @@ -10,6 +10,7 @@ Category: proxy Multi: append See-also: - proxy + - header Example: - --proxy-header "X-First-Name: Joe" -x http://proxy $URL - --proxy-header "User-Agent: surprise" -x http://proxy $URL diff --git a/docs/examples/10-at-a-time.c b/docs/examples/10-at-a-time.c index 87971cbde62f..bddcd1563740 100644 --- a/docs/examples/10-at-a-time.c +++ b/docs/examples/10-at-a-time.c @@ -80,7 +80,7 @@ static const char *urls[] = { "https://www.un.org", }; -#define MAX_PARALLEL 10 /* number of simultaneous transfers */ +#define MAX_PARALLEL 10 /* number of simultaneous transfers */ #define NUM_URLS sizeof(urls)/sizeof(char *) static size_t write_cb(char *data, size_t n, size_t l, void *userp) @@ -88,69 +88,71 @@ static size_t write_cb(char *data, size_t n, size_t l, void *userp) /* take care of the data here, ignored in this example */ (void)data; (void)userp; - return n*l; + return n * l; } -static void add_transfer(CURLM *cm, unsigned int i, int *left) +static void add_transfer(CURLM *multi, unsigned int i, int *left) { - CURL *eh = curl_easy_init(); - curl_easy_setopt(eh, CURLOPT_WRITEFUNCTION, write_cb); - curl_easy_setopt(eh, CURLOPT_URL, urls[i]); - curl_easy_setopt(eh, CURLOPT_PRIVATE, urls[i]); - curl_multi_add_handle(cm, eh); + CURL *curl = curl_easy_init(); + if(curl) { + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); + curl_easy_setopt(curl, CURLOPT_URL, urls[i]); + curl_easy_setopt(curl, CURLOPT_PRIVATE, urls[i]); + curl_multi_add_handle(multi, curl); + } (*left)++; } int main(void) { - CURLM *cm; + CURLM *multi; CURLcode res = curl_global_init(CURL_GLOBAL_ALL); if(res) return (int)res; - cm = curl_multi_init(); - if(cm) { + multi = curl_multi_init(); + if(multi) { CURLMsg *msg; unsigned int transfers = 0; int msgs_left = -1; int left = 0; /* Limit the amount of simultaneous connections curl should allow: */ - curl_multi_setopt(cm, CURLMOPT_MAXCONNECTS, (long)MAX_PARALLEL); + curl_multi_setopt(multi, CURLMOPT_MAXCONNECTS, (long)MAX_PARALLEL); for(transfers = 0; transfers < MAX_PARALLEL && transfers < NUM_URLS; transfers++) - add_transfer(cm, transfers, &left); + add_transfer(multi, transfers, &left); do { int still_alive = 1; - curl_multi_perform(cm, &still_alive); + curl_multi_perform(multi, &still_alive); /* !checksrc! disable EQUALSNULL 1 */ - while((msg = curl_multi_info_read(cm, &msgs_left)) != NULL) { + while((msg = curl_multi_info_read(multi, &msgs_left)) != NULL) { if(msg->msg == CURLMSG_DONE) { char *url; - CURL *e = msg->easy_handle; - curl_easy_getinfo(msg->easy_handle, CURLINFO_PRIVATE, &url); + CURL *curl = msg->easy_handle; + curl_easy_getinfo(curl, CURLINFO_PRIVATE, &url); fprintf(stderr, "R: %d - %s <%s>\n", msg->data.result, curl_easy_strerror(msg->data.result), url); - curl_multi_remove_handle(cm, e); - curl_easy_cleanup(e); + curl_multi_remove_handle(multi, curl); + curl_easy_cleanup(curl); left--; } else { fprintf(stderr, "E: CURLMsg (%d)\n", msg->msg); } if(transfers < NUM_URLS) - add_transfer(cm, transfers++, &left); + add_transfer(multi, transfers++, &left); } if(left) - curl_multi_wait(cm, NULL, 0, 1000, NULL); + curl_multi_wait(multi, NULL, 0, 1000, NULL); } while(left); - curl_multi_cleanup(cm); + curl_multi_cleanup(multi); } curl_global_cleanup(); diff --git a/docs/examples/Makefile.example b/docs/examples/Makefile.example index fbbca8a9a9c0..4031aa2e4366 100644 --- a/docs/examples/Makefile.example +++ b/docs/examples/Makefile.example @@ -22,7 +22,7 @@ # ########################################################################### -SRC ?= ftpget.c +SRC ?= https.c # What to call the final executable TARGET ?= example @@ -36,12 +36,12 @@ CFLAGS ?= -g # This should point to a directory that holds libcurl, if it is not in the # system's standard lib dir # We also set a -L to include the directory where we have the OpenSSL libraries -LDFLAGS ?= -L/home/dast/lib -L/usr/local/ssl/lib +LDFLAGS ?= -L/usr/lib -L/usr/local/lib # We need -lsocket and -lnsl when on Solaris # We need -lssl and -lcrypto when using libcurl with TLS support # We need -lpthread for the pthread example -LIBS ?= -lsocket -lnsl -lssl -lcrypto +LIBS ?= -lssl -lcrypto # We need -lcurl for the curl stuff LIBS := -lcurl $(LIBS) diff --git a/docs/examples/anyauthput.c b/docs/examples/anyauthput.c index 8718ac98bbed..c905b8b45977 100644 --- a/docs/examples/anyauthput.c +++ b/docs/examples/anyauthput.c @@ -69,7 +69,7 @@ static int my_seek(void *userp, curl_off_t offset, int origin) } /* read callback function, fread() look alike */ -static size_t read_callback(char *ptr, size_t size, size_t nmemb, void *stream) +static size_t read_cb(char *ptr, size_t size, size_t nmemb, void *stream) { size_t nread; @@ -124,7 +124,7 @@ int main(int argc, char **argv) curl = curl_easy_init(); if(curl) { /* we want to use our own read function */ - curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_callback); + curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_cb); /* which file to upload */ curl_easy_setopt(curl, CURLOPT_READDATA, (void *) fp); diff --git a/docs/examples/cacertinmem.c b/docs/examples/cacertinmem.c index 5855d872b658..15b11a3b6129 100644 --- a/docs/examples/cacertinmem.c +++ b/docs/examples/cacertinmem.c @@ -48,7 +48,7 @@ typedef size_t ossl_valsize_t; typedef int ossl_valsize_t; #endif -static size_t writefunction(void *ptr, size_t size, size_t nmemb, void *stream) +static size_t write_cb(void *ptr, size_t size, size_t nmemb, void *stream) { fwrite(ptr, size, nmemb, (FILE *)stream); return nmemb * size; @@ -115,37 +115,37 @@ static CURLcode sslctx_function(CURL *curl, void *sslctx, void *pointer) int main(void) { - CURL *ch; + CURL *curl; CURLcode res = curl_global_init(CURL_GLOBAL_ALL); if(res) return (int)res; - ch = curl_easy_init(); - if(ch) { - curl_easy_setopt(ch, CURLOPT_VERBOSE, 0L); - curl_easy_setopt(ch, CURLOPT_HEADER, 0L); - curl_easy_setopt(ch, CURLOPT_NOPROGRESS, 1L); - curl_easy_setopt(ch, CURLOPT_NOSIGNAL, 1L); - curl_easy_setopt(ch, CURLOPT_WRITEFUNCTION, writefunction); - curl_easy_setopt(ch, CURLOPT_WRITEDATA, stdout); - curl_easy_setopt(ch, CURLOPT_HEADERFUNCTION, writefunction); - curl_easy_setopt(ch, CURLOPT_HEADERDATA, stderr); - curl_easy_setopt(ch, CURLOPT_SSLCERTTYPE, "PEM"); - curl_easy_setopt(ch, CURLOPT_SSL_VERIFYPEER, 1L); - curl_easy_setopt(ch, CURLOPT_URL, "https://www.example.com/"); + curl = curl_easy_init(); + if(curl) { + curl_easy_setopt(curl, CURLOPT_VERBOSE, 0L); + curl_easy_setopt(curl, CURLOPT_HEADER, 0L); + curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 1L); + curl_easy_setopt(curl, CURLOPT_NOSIGNAL, 1L); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, stdout); + curl_easy_setopt(curl, CURLOPT_HEADERFUNCTION, write_cb); + curl_easy_setopt(curl, CURLOPT_HEADERDATA, stderr); + curl_easy_setopt(curl, CURLOPT_SSLCERTTYPE, "PEM"); + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 1L); + curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.com/"); /* Turn off the default CA locations, otherwise libcurl loads CA * certificates from the locations that were detected/specified at * build-time */ - curl_easy_setopt(ch, CURLOPT_CAINFO, NULL); - curl_easy_setopt(ch, CURLOPT_CAPATH, NULL); + curl_easy_setopt(curl, CURLOPT_CAINFO, NULL); + curl_easy_setopt(curl, CURLOPT_CAPATH, NULL); /* first try: retrieve page without ca certificates -> should fail * unless libcurl was built --with-ca-fallback enabled at build-time */ - res = curl_easy_perform(ch); + res = curl_easy_perform(curl); if(res == CURLE_OK) printf("*** transfer succeeded ***\n"); else @@ -155,24 +155,24 @@ int main(void) * performance of multiple transfers but it is necessary order to * demonstrate this example. recall that the ssl ctx callback is only * called _before_ an SSL connection is established, therefore it does not - * affect existing verified SSL connections already in the connection cache - * associated with this handle. normally you would set the ssl ctx function - * before making any transfers, and not use this option. + * affect existing verified SSL connections already in the connection + * cache associated with this handle. normally you would set the ssl ctx + * function before making any transfers, and not use this option. */ - curl_easy_setopt(ch, CURLOPT_FRESH_CONNECT, 1L); + curl_easy_setopt(curl, CURLOPT_FRESH_CONNECT, 1L); - /* second try: retrieve page using cacerts' certificate -> succeeds to load - * the certificate by installing a function doing the necessary + /* second try: retrieve page using cacerts' certificate -> succeeds to + * load the certificate by installing a function doing the necessary * "modifications" to the SSL CONTEXT just before link init */ - curl_easy_setopt(ch, CURLOPT_SSL_CTX_FUNCTION, sslctx_function); - res = curl_easy_perform(ch); + curl_easy_setopt(curl, CURLOPT_SSL_CTX_FUNCTION, sslctx_function); + res = curl_easy_perform(curl); if(res == CURLE_OK) printf("*** transfer succeeded ***\n"); else printf("*** transfer failed ***\n"); - curl_easy_cleanup(ch); + curl_easy_cleanup(curl); } curl_global_cleanup(); return (int)res; diff --git a/docs/examples/certinfo.c b/docs/examples/certinfo.c index 0443aa42f46c..3176d0a1fcfc 100644 --- a/docs/examples/certinfo.c +++ b/docs/examples/certinfo.c @@ -29,7 +29,7 @@ #include -static size_t wrfu(void *ptr, size_t size, size_t nmemb, void *stream) +static size_t write_cb(void *ptr, size_t size, size_t nmemb, void *stream) { (void)stream; (void)ptr; @@ -49,7 +49,7 @@ int main(void) if(curl) { curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.com/"); - curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, wrfu); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L); curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L); diff --git a/docs/examples/chkspeed.c b/docs/examples/chkspeed.c index 996db393f584..ea71e6ad70a9 100644 --- a/docs/examples/chkspeed.c +++ b/docs/examples/chkspeed.c @@ -52,7 +52,7 @@ #define CHKSPEED_VERSION "1.0" -static size_t WriteCallback(void *ptr, size_t size, size_t nmemb, void *data) +static size_t write_cb(void *ptr, size_t size, size_t nmemb, void *data) { /* we are not interested in the downloaded bytes itself, so we only return the size we would have saved ... */ @@ -63,7 +63,7 @@ static size_t WriteCallback(void *ptr, size_t size, size_t nmemb, void *data) int main(int argc, char *argv[]) { - CURL *curl_handle; + CURL *curl; CURLcode res; int prtall = 0, prtsep = 0, prttime = 0; const char *url = URL_1M; @@ -161,58 +161,62 @@ int main(int argc, char *argv[]) return (int)res; /* init the curl session */ - curl_handle = curl_easy_init(); - if(curl_handle) { + curl = curl_easy_init(); + if(curl) { /* specify URL to get */ - curl_easy_setopt(curl_handle, CURLOPT_URL, url); + curl_easy_setopt(curl, CURLOPT_URL, url); /* send all data to this function */ - curl_easy_setopt(curl_handle, CURLOPT_WRITEFUNCTION, WriteCallback); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); /* some servers do not like requests that are made without a user-agent field, so we provide one */ - curl_easy_setopt(curl_handle, CURLOPT_USERAGENT, + curl_easy_setopt(curl, CURLOPT_USERAGENT, "libcurl-speedchecker/" CHKSPEED_VERSION); /* get it! */ - res = curl_easy_perform(curl_handle); + res = curl_easy_perform(curl); if(CURLE_OK == res) { curl_off_t val; /* check for bytes downloaded */ - res = curl_easy_getinfo(curl_handle, CURLINFO_SIZE_DOWNLOAD_T, &val); + res = curl_easy_getinfo(curl, CURLINFO_SIZE_DOWNLOAD_T, &val); if((CURLE_OK == res) && (val > 0)) - printf("Data downloaded: %lu bytes.\n", (unsigned long)val); + printf("Data downloaded: %" CURL_FORMAT_CURL_OFF_T " bytes.\n", val); /* check for total download time */ - res = curl_easy_getinfo(curl_handle, CURLINFO_TOTAL_TIME_T, &val); + res = curl_easy_getinfo(curl, CURLINFO_TOTAL_TIME_T, &val); if((CURLE_OK == res) && (val > 0)) - printf("Total download time: %lu.%06lu sec.\n", - (unsigned long)(val / 1000000), - (unsigned long)(val % 1000000)); + printf("Total download time: %" CURL_FORMAT_CURL_OFF_T + ".%06" CURL_FORMAT_CURL_OFF_T " sec.\n", + val / 1000000, + val % 1000000); /* check for average download speed */ - res = curl_easy_getinfo(curl_handle, CURLINFO_SPEED_DOWNLOAD_T, &val); + res = curl_easy_getinfo(curl, CURLINFO_SPEED_DOWNLOAD_T, &val); if((CURLE_OK == res) && (val > 0)) - printf("Average download speed: %lu kbyte/sec.\n", - (unsigned long)(val / 1024)); + printf("Average download speed: " + "%" CURL_FORMAT_CURL_OFF_T " kbyte/sec.\n", + val / 1024); if(prtall) { /* check for name resolution time */ - res = curl_easy_getinfo(curl_handle, CURLINFO_NAMELOOKUP_TIME_T, &val); + res = curl_easy_getinfo(curl, CURLINFO_NAMELOOKUP_TIME_T, &val); if((CURLE_OK == res) && (val > 0)) - printf("Name lookup time: %lu.%06lu sec.\n", - (unsigned long)(val / 1000000), - (unsigned long)(val % 1000000)); + printf("Name lookup time: %" CURL_FORMAT_CURL_OFF_T + ".%06" CURL_FORMAT_CURL_OFF_T " sec.\n", + val / 1000000, + val % 1000000); /* check for connect time */ - res = curl_easy_getinfo(curl_handle, CURLINFO_CONNECT_TIME_T, &val); + res = curl_easy_getinfo(curl, CURLINFO_CONNECT_TIME_T, &val); if((CURLE_OK == res) && (val > 0)) - printf("Connect time: %lu.%06lu sec.\n", - (unsigned long)(val / 1000000), - (unsigned long)(val % 1000000)); + printf("Connect time: %" CURL_FORMAT_CURL_OFF_T + ".%06" CURL_FORMAT_CURL_OFF_T " sec.\n", + val / 1000000, + val % 1000000); } } else { @@ -221,7 +225,7 @@ int main(int argc, char *argv[]) } /* cleanup curl stuff */ - curl_easy_cleanup(curl_handle); + curl_easy_cleanup(curl); } /* we are done with libcurl, so clean it up */ diff --git a/docs/examples/crawler.c b/docs/examples/crawler.c index e8dbf244f91e..c56ad5ab3c8e 100644 --- a/docs/examples/crawler.c +++ b/docs/examples/crawler.c @@ -60,7 +60,7 @@ struct memory { size_t size; }; -static size_t grow_buffer(void *contents, size_t sz, size_t nmemb, void *ctx) +static size_t write_cb(void *contents, size_t sz, size_t nmemb, void *ctx) { size_t realsize = sz * nmemb; struct memory *mem = (struct memory*) ctx; @@ -78,48 +78,48 @@ static size_t grow_buffer(void *contents, size_t sz, size_t nmemb, void *ctx) static CURL *make_handle(const char *url) { - CURL *handle = curl_easy_init(); + CURL *curl = curl_easy_init(); struct memory *mem; /* Important: use HTTP2 over HTTPS */ - curl_easy_setopt(handle, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2TLS); - curl_easy_setopt(handle, CURLOPT_URL, url); + curl_easy_setopt(curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2TLS); + curl_easy_setopt(curl, CURLOPT_URL, url); /* buffer body */ mem = malloc(sizeof(*mem)); mem->size = 0; mem->buf = malloc(1); - curl_easy_setopt(handle, CURLOPT_WRITEFUNCTION, grow_buffer); - curl_easy_setopt(handle, CURLOPT_WRITEDATA, mem); - curl_easy_setopt(handle, CURLOPT_PRIVATE, mem); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, mem); + curl_easy_setopt(curl, CURLOPT_PRIVATE, mem); /* For completeness */ - curl_easy_setopt(handle, CURLOPT_ACCEPT_ENCODING, ""); - curl_easy_setopt(handle, CURLOPT_TIMEOUT, 5L); - curl_easy_setopt(handle, CURLOPT_FOLLOWLOCATION, 1L); + curl_easy_setopt(curl, CURLOPT_ACCEPT_ENCODING, ""); + curl_easy_setopt(curl, CURLOPT_TIMEOUT, 5L); + curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L); /* only allow redirects to HTTP and HTTPS URLs */ - curl_easy_setopt(handle, CURLOPT_REDIR_PROTOCOLS_STR, "http,https"); - curl_easy_setopt(handle, CURLOPT_AUTOREFERER, 1L); - curl_easy_setopt(handle, CURLOPT_MAXREDIRS, 10L); + curl_easy_setopt(curl, CURLOPT_REDIR_PROTOCOLS_STR, "http,https"); + curl_easy_setopt(curl, CURLOPT_AUTOREFERER, 1L); + curl_easy_setopt(curl, CURLOPT_MAXREDIRS, 10L); /* each transfer needs to be done within 20 seconds! */ - curl_easy_setopt(handle, CURLOPT_TIMEOUT_MS, 20000L); + curl_easy_setopt(curl, CURLOPT_TIMEOUT_MS, 20000L); /* connect fast or fail */ - curl_easy_setopt(handle, CURLOPT_CONNECTTIMEOUT_MS, 2000L); + curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT_MS, 2000L); /* skip files larger than a gigabyte */ - curl_easy_setopt(handle, CURLOPT_MAXFILESIZE_LARGE, + curl_easy_setopt(curl, CURLOPT_MAXFILESIZE_LARGE, (curl_off_t)1024*1024*1024); - curl_easy_setopt(handle, CURLOPT_COOKIEFILE, ""); - curl_easy_setopt(handle, CURLOPT_FILETIME, 1L); - curl_easy_setopt(handle, CURLOPT_USERAGENT, "mini crawler"); - curl_easy_setopt(handle, CURLOPT_HTTPAUTH, CURLAUTH_ANY); - curl_easy_setopt(handle, CURLOPT_UNRESTRICTED_AUTH, 1L); - curl_easy_setopt(handle, CURLOPT_PROXYAUTH, CURLAUTH_ANY); - curl_easy_setopt(handle, CURLOPT_EXPECT_100_TIMEOUT_MS, 0L); - return handle; + curl_easy_setopt(curl, CURLOPT_COOKIEFILE, ""); + curl_easy_setopt(curl, CURLOPT_FILETIME, 1L); + curl_easy_setopt(curl, CURLOPT_USERAGENT, "mini crawler"); + curl_easy_setopt(curl, CURLOPT_HTTPAUTH, CURLAUTH_ANY); + curl_easy_setopt(curl, CURLOPT_UNRESTRICTED_AUTH, 1L); + curl_easy_setopt(curl, CURLOPT_PROXYAUTH, CURLAUTH_ANY); + curl_easy_setopt(curl, CURLOPT_EXPECT_100_TIMEOUT_MS, 0L); + return curl; } /* HREF finder implemented in libxml2 but could be any HTML parser */ -static size_t follow_links(CURLM *multi_handle, struct memory *mem, +static size_t follow_links(CURLM *multi, struct memory *mem, const char *url) { int opts = HTML_PARSE_NOBLANKS | HTML_PARSE_NOERROR | \ @@ -160,7 +160,7 @@ static size_t follow_links(CURLM *multi_handle, struct memory *mem, if(!link || strlen(link) < 20) continue; if(!strncmp(link, "http://", 7) || !strncmp(link, "https://", 8)) { - curl_multi_add_handle(multi_handle, make_handle(link)); + curl_multi_add_handle(multi, make_handle(link)); if(count++ == max_link_per_page) break; } @@ -177,7 +177,7 @@ static int is_html(char *ctype) int main(void) { - CURLM *multi_handle; + CURLM *multi; int msgs_left; int pending; int complete; @@ -190,18 +190,18 @@ int main(void) signal(SIGINT, sighandler); LIBXML_TEST_VERSION - multi_handle = curl_multi_init(); - if(multi_handle) { - curl_multi_setopt(multi_handle, CURLMOPT_MAX_TOTAL_CONNECTIONS, max_con); - curl_multi_setopt(multi_handle, CURLMOPT_MAX_HOST_CONNECTIONS, 6L); + multi = curl_multi_init(); + if(multi) { + curl_multi_setopt(multi, CURLMOPT_MAX_TOTAL_CONNECTIONS, max_con); + curl_multi_setopt(multi, CURLMOPT_MAX_HOST_CONNECTIONS, 6L); /* enables http/2 if available */ #ifdef CURLPIPE_MULTIPLEX - curl_multi_setopt(multi_handle, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX); + curl_multi_setopt(multi, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX); #endif /* sets html start page */ - curl_multi_add_handle(multi_handle, make_handle(start_page)); + curl_multi_add_handle(multi, make_handle(start_page)); pending = 0; complete = 0; @@ -210,29 +210,29 @@ int main(void) int numfds; CURLMsg *m; - curl_multi_wait(multi_handle, NULL, 0, 1000, &numfds); - curl_multi_perform(multi_handle, &still_running); + curl_multi_wait(multi, NULL, 0, 1000, &numfds); + curl_multi_perform(multi, &still_running); /* See how the transfers went */ m = NULL; - while((m = curl_multi_info_read(multi_handle, &msgs_left))) { + while((m = curl_multi_info_read(multi, &msgs_left))) { if(m->msg == CURLMSG_DONE) { - CURL *handle = m->easy_handle; + CURL *curl = m->easy_handle; char *url; struct memory *mem; - curl_easy_getinfo(handle, CURLINFO_PRIVATE, &mem); - curl_easy_getinfo(handle, CURLINFO_EFFECTIVE_URL, &url); + curl_easy_getinfo(curl, CURLINFO_PRIVATE, &mem); + curl_easy_getinfo(curl, CURLINFO_EFFECTIVE_URL, &url); if(m->data.result == CURLE_OK) { long res_status; - curl_easy_getinfo(handle, CURLINFO_RESPONSE_CODE, &res_status); + curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &res_status); if(res_status == 200) { char *ctype; - curl_easy_getinfo(handle, CURLINFO_CONTENT_TYPE, &ctype); + curl_easy_getinfo(curl, CURLINFO_CONTENT_TYPE, &ctype); printf("[%d] HTTP 200 (%s): %s\n", complete, ctype, url); if(is_html(ctype) && mem->size > 100) { if(pending < max_requests && (complete + pending) < max_total) { - pending += follow_links(multi_handle, mem, url); + pending += follow_links(multi_curl, mem, url); still_running = 1; } } @@ -244,8 +244,8 @@ int main(void) else { printf("[%d] Connection failure: %s\n", complete, url); } - curl_multi_remove_handle(multi_handle, handle); - curl_easy_cleanup(handle); + curl_multi_remove_handle(multi, curl); + curl_easy_cleanup(curl); free(mem->buf); free(mem); complete++; @@ -253,7 +253,7 @@ int main(void) } } } - curl_multi_cleanup(multi_handle); + curl_multi_cleanup(multi); } curl_global_cleanup(); return 0; diff --git a/docs/examples/debug.c b/docs/examples/debug.c index 3c8355df05cf..ff522b0ce1ec 100644 --- a/docs/examples/debug.c +++ b/docs/examples/debug.c @@ -81,12 +81,12 @@ static void dump(const char *text, FILE *stream, unsigned char *ptr, fflush(stream); } -static int my_trace(CURL *handle, curl_infotype type, +static int my_trace(CURL *curl, curl_infotype type, char *data, size_t size, void *userp) { struct data *config = (struct data *)userp; const char *text; - (void)handle; + (void)curl; switch(type) { case CURLINFO_TEXT: diff --git a/docs/examples/ephiperfifo.c b/docs/examples/ephiperfifo.c index c22a3601010e..026967f3eca5 100644 --- a/docs/examples/ephiperfifo.c +++ b/docs/examples/ephiperfifo.c @@ -90,7 +90,7 @@ struct GlobalInfo { /* Information associated with a specific easy handle */ struct ConnInfo { - CURL *easy; + CURL *curl; char *url; struct GlobalInfo *global; char error[CURL_ERROR_SIZE]; @@ -99,7 +99,7 @@ struct ConnInfo { /* Information associated with a specific socket */ struct SockInfo { curl_socket_t sockfd; - CURL *easy; + CURL *curl; int action; long timeout; struct GlobalInfo *global; @@ -172,20 +172,18 @@ static void check_multi_info(struct GlobalInfo *g) CURLMsg *msg; int msgs_left; struct ConnInfo *conn; - CURL *easy; - CURLcode res; fprintf(MSG_OUT, "REMAINING: %d\n", g->still_running); while((msg = curl_multi_info_read(g->multi, &msgs_left))) { if(msg->msg == CURLMSG_DONE) { - easy = msg->easy_handle; - res = msg->data.result; - curl_easy_getinfo(easy, CURLINFO_PRIVATE, &conn); - curl_easy_getinfo(easy, CURLINFO_EFFECTIVE_URL, &eff_url); + CURL *curl = msg->easy_handle; + CURLcode res = msg->data.result; + curl_easy_getinfo(curl, CURLINFO_PRIVATE, &conn); + curl_easy_getinfo(curl, CURLINFO_EFFECTIVE_URL, &eff_url); fprintf(MSG_OUT, "DONE: %s => (%d) %s\n", eff_url, res, conn->error); - curl_multi_remove_handle(g->multi, easy); + curl_multi_remove_handle(g->multi, curl); free(conn->url); - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); free(conn); } } @@ -270,7 +268,7 @@ static void setsock(struct SockInfo *f, curl_socket_t s, CURL *e, int act, f->sockfd = s; f->action = act; - f->easy = e; + f->curl = e; ev.events = kind; ev.data.fd = s; @@ -280,13 +278,13 @@ static void setsock(struct SockInfo *f, curl_socket_t s, CURL *e, int act, } /* Initialize a new SockInfo structure */ -static void addsock(curl_socket_t s, CURL *easy, int action, +static void addsock(curl_socket_t s, CURL *curl, int action, struct GlobalInfo *g) { struct SockInfo *fdp = (struct SockInfo*)calloc(1, sizeof(struct SockInfo)); fdp->global = g; - setsock(fdp, s, easy, action, g); + setsock(fdp, s, curl, action, g); curl_multi_assign(g->multi, s, fdp); } @@ -347,28 +345,28 @@ static void new_conn(const char *url, struct GlobalInfo *g) conn = (struct ConnInfo*)calloc(1, sizeof(*conn)); conn->error[0] = '\0'; - conn->easy = curl_easy_init(); - if(!conn->easy) { + conn->curl = curl_easy_init(); + if(!conn->curl) { fprintf(MSG_OUT, "curl_easy_init() failed, exiting!\n"); exit(2); } conn->global = g; conn->url = strdup(url); - curl_easy_setopt(conn->easy, CURLOPT_URL, conn->url); - curl_easy_setopt(conn->easy, CURLOPT_WRITEFUNCTION, write_cb); - curl_easy_setopt(conn->easy, CURLOPT_WRITEDATA, conn); - curl_easy_setopt(conn->easy, CURLOPT_VERBOSE, 1L); - curl_easy_setopt(conn->easy, CURLOPT_ERRORBUFFER, conn->error); - curl_easy_setopt(conn->easy, CURLOPT_PRIVATE, conn); - curl_easy_setopt(conn->easy, CURLOPT_NOPROGRESS, 0L); - curl_easy_setopt(conn->easy, CURLOPT_PROGRESSFUNCTION, prog_cb); - curl_easy_setopt(conn->easy, CURLOPT_PROGRESSDATA, conn); - curl_easy_setopt(conn->easy, CURLOPT_FOLLOWLOCATION, 1L); - curl_easy_setopt(conn->easy, CURLOPT_LOW_SPEED_TIME, 3L); - curl_easy_setopt(conn->easy, CURLOPT_LOW_SPEED_LIMIT, 10L); + curl_easy_setopt(conn->curl, CURLOPT_URL, conn->url); + curl_easy_setopt(conn->curl, CURLOPT_WRITEFUNCTION, write_cb); + curl_easy_setopt(conn->curl, CURLOPT_WRITEDATA, conn); + curl_easy_setopt(conn->curl, CURLOPT_VERBOSE, 1L); + curl_easy_setopt(conn->curl, CURLOPT_ERRORBUFFER, conn->error); + curl_easy_setopt(conn->curl, CURLOPT_PRIVATE, conn); + curl_easy_setopt(conn->curl, CURLOPT_NOPROGRESS, 0L); + curl_easy_setopt(conn->curl, CURLOPT_PROGRESSFUNCTION, prog_cb); + curl_easy_setopt(conn->curl, CURLOPT_PROGRESSDATA, conn); + curl_easy_setopt(conn->curl, CURLOPT_FOLLOWLOCATION, 1L); + curl_easy_setopt(conn->curl, CURLOPT_LOW_SPEED_TIME, 3L); + curl_easy_setopt(conn->curl, CURLOPT_LOW_SPEED_LIMIT, 10L); fprintf(MSG_OUT, - "Adding easy %p to multi %p (%s)\n", conn->easy, g->multi, url); - rc = curl_multi_add_handle(g->multi, conn->easy); + "Adding easy %p to multi %p (%s)\n", conn->curl, g->multi, url); + rc = curl_multi_add_handle(g->multi, conn->curl); mcode_or_die("new_conn: curl_multi_add_handle", rc); /* note that the add_handle() sets a timeout to trigger soon so that the diff --git a/docs/examples/evhiperfifo.c b/docs/examples/evhiperfifo.c index 79dfd3452178..21f188549b99 100644 --- a/docs/examples/evhiperfifo.c +++ b/docs/examples/evhiperfifo.c @@ -90,7 +90,7 @@ struct GlobalInfo { /* Information associated with a specific easy handle */ struct ConnInfo { - CURL *easy; + CURL *curl; char *url; struct GlobalInfo *global; char error[CURL_ERROR_SIZE]; @@ -99,7 +99,7 @@ struct ConnInfo { /* Information associated with a specific socket */ struct SockInfo { curl_socket_t sockfd; - CURL *easy; + CURL *curl; int action; long timeout; struct ev_io ev; @@ -169,20 +169,18 @@ static void check_multi_info(struct GlobalInfo *g) CURLMsg *msg; int msgs_left; struct ConnInfo *conn; - CURL *easy; - CURLcode res; fprintf(MSG_OUT, "REMAINING: %d\n", g->still_running); while((msg = curl_multi_info_read(g->multi, &msgs_left))) { if(msg->msg == CURLMSG_DONE) { - easy = msg->easy_handle; - res = msg->data.result; - curl_easy_getinfo(easy, CURLINFO_PRIVATE, &conn); - curl_easy_getinfo(easy, CURLINFO_EFFECTIVE_URL, &eff_url); + CURL *curl = msg->easy_handle; + CURLcode res = msg->data.result; + curl_easy_getinfo(curl, CURLINFO_PRIVATE, &conn); + curl_easy_getinfo(curl, CURLINFO_EFFECTIVE_URL, &eff_url); fprintf(MSG_OUT, "DONE: %s => (%d) %s\n", eff_url, res, conn->error); - curl_multi_remove_handle(g->multi, easy); + curl_multi_remove_handle(g->multi, curl); free(conn->url); - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); free(conn); } } @@ -247,7 +245,7 @@ static void setsock(struct SockInfo *f, curl_socket_t s, CURL *e, int act, f->sockfd = s; f->action = act; - f->easy = e; + f->curl = e; if(f->evset) ev_io_stop(g->loop, &f->ev); ev_io_init(&f->ev, event_cb, f->sockfd, kind); @@ -257,13 +255,13 @@ static void setsock(struct SockInfo *f, curl_socket_t s, CURL *e, int act, } /* Initialize a new SockInfo structure */ -static void addsock(curl_socket_t s, CURL *easy, int action, +static void addsock(curl_socket_t s, CURL *curl, int action, struct GlobalInfo *g) { struct SockInfo *fdp = calloc(1, sizeof(struct SockInfo)); fdp->global = g; - setsock(fdp, s, easy, action, g); + setsock(fdp, s, curl, action, g); curl_multi_assign(g->multi, s, fdp); } @@ -330,28 +328,28 @@ static void new_conn(const char *url, struct GlobalInfo *g) conn = calloc(1, sizeof(*conn)); conn->error[0]='\0'; - conn->easy = curl_easy_init(); - if(!conn->easy) { + conn->curl = curl_easy_init(); + if(!conn->curl) { fprintf(MSG_OUT, "curl_easy_init() failed, exiting!\n"); exit(2); } conn->global = g; conn->url = strdup(url); - curl_easy_setopt(conn->easy, CURLOPT_URL, conn->url); - curl_easy_setopt(conn->easy, CURLOPT_WRITEFUNCTION, write_cb); - curl_easy_setopt(conn->easy, CURLOPT_WRITEDATA, conn); - curl_easy_setopt(conn->easy, CURLOPT_VERBOSE, 1L); - curl_easy_setopt(conn->easy, CURLOPT_ERRORBUFFER, conn->error); - curl_easy_setopt(conn->easy, CURLOPT_PRIVATE, conn); - curl_easy_setopt(conn->easy, CURLOPT_NOPROGRESS, 0L); - curl_easy_setopt(conn->easy, CURLOPT_XFERINFOFUNCTION, xferinfo_cb); - curl_easy_setopt(conn->easy, CURLOPT_PROGRESSDATA, conn); - curl_easy_setopt(conn->easy, CURLOPT_LOW_SPEED_TIME, 3L); - curl_easy_setopt(conn->easy, CURLOPT_LOW_SPEED_LIMIT, 10L); + curl_easy_setopt(conn->curl, CURLOPT_URL, conn->url); + curl_easy_setopt(conn->curl, CURLOPT_WRITEFUNCTION, write_cb); + curl_easy_setopt(conn->curl, CURLOPT_WRITEDATA, conn); + curl_easy_setopt(conn->curl, CURLOPT_VERBOSE, 1L); + curl_easy_setopt(conn->curl, CURLOPT_ERRORBUFFER, conn->error); + curl_easy_setopt(conn->curl, CURLOPT_PRIVATE, conn); + curl_easy_setopt(conn->curl, CURLOPT_NOPROGRESS, 0L); + curl_easy_setopt(conn->curl, CURLOPT_XFERINFOFUNCTION, xferinfo_cb); + curl_easy_setopt(conn->curl, CURLOPT_PROGRESSDATA, conn); + curl_easy_setopt(conn->curl, CURLOPT_LOW_SPEED_TIME, 3L); + curl_easy_setopt(conn->curl, CURLOPT_LOW_SPEED_LIMIT, 10L); fprintf(MSG_OUT, - "Adding easy %p to multi %p (%s)\n", conn->easy, g->multi, url); - rc = curl_multi_add_handle(g->multi, conn->easy); + "Adding easy %p to multi %p (%s)\n", conn->curl, g->multi, url); + rc = curl_multi_add_handle(g->multi, conn->curl); mcode_or_die("new_conn: curl_multi_add_handle", rc); /* note that add_handle() sets a timeout to trigger soon so that the diff --git a/docs/examples/externalsocket.c b/docs/examples/externalsocket.c index 99e719b74574..7415cff81f01 100644 --- a/docs/examples/externalsocket.c +++ b/docs/examples/externalsocket.c @@ -60,7 +60,7 @@ #define INADDR_NONE 0xffffffff #endif -static size_t write_data(void *ptr, size_t size, size_t nmemb, void *stream) +static size_t write_cb(void *ptr, size_t size, size_t nmemb, void *stream) { size_t written = fwrite(ptr, size, nmemb, (FILE *)stream); return written; @@ -143,7 +143,7 @@ int main(void) curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 1L); /* send all data to this function */ - curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_data); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); /* call this function to get a socket */ curl_easy_setopt(curl, CURLOPT_OPENSOCKETFUNCTION, opensocket); diff --git a/docs/examples/fileupload.c b/docs/examples/fileupload.c index f827c68390a7..03dd323bda6b 100644 --- a/docs/examples/fileupload.c +++ b/docs/examples/fileupload.c @@ -98,10 +98,12 @@ int main(void) curl_easy_getinfo(curl, CURLINFO_SPEED_UPLOAD_T, &speed_upload); curl_easy_getinfo(curl, CURLINFO_TOTAL_TIME_T, &total_time); - fprintf(stderr, "Speed: %lu bytes/sec during %lu.%06lu seconds\n", - (unsigned long)speed_upload, - (unsigned long)(total_time / 1000000), - (unsigned long)(total_time % 1000000)); + fprintf(stderr, "Speed: %" CURL_FORMAT_CURL_OFF_T " bytes/sec during " + "%" CURL_FORMAT_CURL_OFF_T + ".%06" CURL_FORMAT_CURL_OFF_T " seconds\n", + speed_upload, + total_time / 1000000, + total_time % 1000000); } /* always cleanup */ curl_easy_cleanup(curl); diff --git a/docs/examples/ftp-delete.c b/docs/examples/ftp-delete.c index f5c553ff68ef..e43dd30f2f27 100644 --- a/docs/examples/ftp-delete.c +++ b/docs/examples/ftp-delete.c @@ -30,7 +30,7 @@ * */ -static size_t my_fwrite(void *buffer, size_t size, size_t nmemb, void *stream) +static size_t write_cb(void *buffer, size_t size, size_t nmemb, void *stream) { (void)buffer; (void)stream; @@ -54,7 +54,7 @@ int main(void) */ curl_easy_setopt(curl, CURLOPT_URL, "ftp://ftp.example.com/"); /* Define our callback to get called when there is data to be written */ - curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, my_fwrite); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); /* Switch on full protocol/debug output */ curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); diff --git a/docs/examples/ftp-wildcard.c b/docs/examples/ftp-wildcard.c index 0861f2f0487e..79386f98343d 100644 --- a/docs/examples/ftp-wildcard.c +++ b/docs/examples/ftp-wildcard.c @@ -78,7 +78,7 @@ static long file_is_downloaded(void *input) return CURL_CHUNK_END_FUNC_OK; } -static size_t write_it(char *buff, size_t size, size_t nmemb, +static size_t write_cb(char *buff, size_t size, size_t nmemb, void *cb_data) { struct callback_data *data = cb_data; @@ -94,7 +94,7 @@ static size_t write_it(char *buff, size_t size, size_t nmemb, int main(int argc, char **argv) { /* curl easy handle */ - CURL *handle; + CURL *curl; /* help data */ struct callback_data data = { 0 }; @@ -105,40 +105,40 @@ int main(int argc, char **argv) return (int)res; /* initialization of easy handle */ - handle = curl_easy_init(); - if(!handle) { + curl = curl_easy_init(); + if(!curl) { curl_global_cleanup(); return CURLE_OUT_OF_MEMORY; } /* turn on wildcard matching */ - curl_easy_setopt(handle, CURLOPT_WILDCARDMATCH, 1L); + curl_easy_setopt(curl, CURLOPT_WILDCARDMATCH, 1L); /* callback is called before download of concrete file started */ - curl_easy_setopt(handle, CURLOPT_CHUNK_BGN_FUNCTION, file_is_coming); + curl_easy_setopt(curl, CURLOPT_CHUNK_BGN_FUNCTION, file_is_coming); /* callback is called after data from the file have been transferred */ - curl_easy_setopt(handle, CURLOPT_CHUNK_END_FUNCTION, file_is_downloaded); + curl_easy_setopt(curl, CURLOPT_CHUNK_END_FUNCTION, file_is_downloaded); /* this callback writes contents into files */ - curl_easy_setopt(handle, CURLOPT_WRITEFUNCTION, write_it); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); /* put transfer data into callbacks */ - curl_easy_setopt(handle, CURLOPT_CHUNK_DATA, &data); - curl_easy_setopt(handle, CURLOPT_WRITEDATA, &data); + curl_easy_setopt(curl, CURLOPT_CHUNK_DATA, &data); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, &data); - /* curl_easy_setopt(handle, CURLOPT_VERBOSE, 1L); */ + /* curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); */ /* set a URL containing wildcard pattern (only in the last part) */ if(argc == 2) - curl_easy_setopt(handle, CURLOPT_URL, argv[1]); + curl_easy_setopt(curl, CURLOPT_URL, argv[1]); else - curl_easy_setopt(handle, CURLOPT_URL, "ftp://example.com/test/*"); + curl_easy_setopt(curl, CURLOPT_URL, "ftp://example.com/test/*"); /* and start transfer! */ - res = curl_easy_perform(handle); + res = curl_easy_perform(curl); - curl_easy_cleanup(handle); + curl_easy_cleanup(curl); curl_global_cleanup(); return (int)res; } diff --git a/docs/examples/ftpget.c b/docs/examples/ftpget.c index f4ba1e52aa24..391324bf64cc 100644 --- a/docs/examples/ftpget.c +++ b/docs/examples/ftpget.c @@ -35,7 +35,7 @@ struct FtpFile { FILE *stream; }; -static size_t my_fwrite(void *buffer, size_t size, size_t nmemb, void *stream) +static size_t write_cb(void *buffer, size_t size, size_t nmemb, void *stream) { struct FtpFile *out = (struct FtpFile *)stream; if(!out->stream) { @@ -69,7 +69,7 @@ int main(void) curl_easy_setopt(curl, CURLOPT_URL, "ftp://ftp.example.com/curl/curl-7.9.2.tar.gz"); /* Define our callback to get called when there is data to be written */ - curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, my_fwrite); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); /* Set a pointer to our struct to pass to the callback */ curl_easy_setopt(curl, CURLOPT_WRITEDATA, &ftpfile); diff --git a/docs/examples/ftpsget.c b/docs/examples/ftpsget.c index c2aee89c8487..f39046885e4f 100644 --- a/docs/examples/ftpsget.c +++ b/docs/examples/ftpsget.c @@ -36,7 +36,7 @@ struct FtpFile { FILE *stream; }; -static size_t my_fwrite(void *buffer, size_t size, size_t nmemb, +static size_t write_cb(void *buffer, size_t size, size_t nmemb, void *stream) { struct FtpFile *out = (struct FtpFile *)stream; @@ -73,7 +73,7 @@ int main(void) curl_easy_setopt(curl, CURLOPT_URL, "ftp://user@server/home/user/file.txt"); /* Define our callback to get called when there is data to be written */ - curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, my_fwrite); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); /* Set a pointer to our struct to pass to the callback */ curl_easy_setopt(curl, CURLOPT_WRITEDATA, &ftpfile); diff --git a/docs/examples/ftpupload.c b/docs/examples/ftpupload.c index 2bfb51f66e7c..0df41005f5c3 100644 --- a/docs/examples/ftpupload.c +++ b/docs/examples/ftpupload.c @@ -59,7 +59,7 @@ you MUST also provide a read callback with CURLOPT_READFUNCTION. Failing to do so might give you a crash since a DLL may not use the variable's memory when passed in to it from an app like this. */ -static size_t read_callback(char *ptr, size_t size, size_t nmemb, void *stream) +static size_t read_cb(char *ptr, size_t size, size_t nmemb, void *stream) { unsigned long nread; /* in real-world cases, this would probably get this data differently @@ -106,7 +106,7 @@ int main(void) } fsize = file_info.st_size; - printf("Local file size: %lu bytes.\n", (unsigned long)fsize); + printf("Local file size: %" CURL_FORMAT_CURL_OFF_T " bytes.\n", fsize); /* In Windows, this inits the Winsock stuff */ res = curl_global_init(CURL_GLOBAL_ALL); @@ -123,7 +123,7 @@ int main(void) headerlist = curl_slist_append(headerlist, buf_2); /* we want to use our own read function */ - curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_callback); + curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_cb); /* enable uploading */ curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L); diff --git a/docs/examples/ftpuploadfrommem.c b/docs/examples/ftpuploadfrommem.c index 70242376ae17..3ae71fa4aba4 100644 --- a/docs/examples/ftpuploadfrommem.c +++ b/docs/examples/ftpuploadfrommem.c @@ -45,7 +45,7 @@ struct WriteThis { size_t sizeleft; }; -static size_t read_callback(char *ptr, size_t size, size_t nmemb, void *userp) +static size_t read_cb(char *ptr, size_t size, size_t nmemb, void *userp) { struct WriteThis *upload = (struct WriteThis *)userp; size_t max = size*nmemb; @@ -99,7 +99,7 @@ int main(void) curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L); /* we want to use our own read function */ - curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_callback); + curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_cb); /* pointer to pass to our read function */ curl_easy_setopt(curl, CURLOPT_READDATA, &upload); diff --git a/docs/examples/ftpuploadresume.c b/docs/examples/ftpuploadresume.c index 13df8541a2d6..ea972ec1931f 100644 --- a/docs/examples/ftpuploadresume.c +++ b/docs/examples/ftpuploadresume.c @@ -45,7 +45,7 @@ static size_t getcontentlengthfunc(void *ptr, size_t size, size_t nmemb, } /* discard downloaded data */ -static size_t discardfunc(void *ptr, size_t size, size_t nmemb, void *stream) +static size_t write_cb(void *ptr, size_t size, size_t nmemb, void *stream) { (void)ptr; (void)stream; @@ -53,7 +53,7 @@ static size_t discardfunc(void *ptr, size_t size, size_t nmemb, void *stream) } /* read data to upload */ -static size_t readfunc(char *ptr, size_t size, size_t nmemb, void *stream) +static size_t read_cb(char *ptr, size_t size, size_t nmemb, void *stream) { FILE *f = stream; size_t n; @@ -67,12 +67,12 @@ static size_t readfunc(char *ptr, size_t size, size_t nmemb, void *stream) } -static int upload(CURL *curlhandle, const char *remotepath, +static int upload(CURL *curl, const char *remotepath, const char *localpath, long timeout, long tries) { FILE *f; long uploaded_len = 0; - CURLcode r = CURLE_GOT_NOTHING; + CURLcode res = CURLE_GOT_NOTHING; int c; f = fopen(localpath, "rb"); @@ -83,32 +83,32 @@ static int upload(CURL *curlhandle, const char *remotepath, return 0; } - curl_easy_setopt(curlhandle, CURLOPT_UPLOAD, 1L); + curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L); - curl_easy_setopt(curlhandle, CURLOPT_URL, remotepath); + curl_easy_setopt(curl, CURLOPT_URL, remotepath); if(timeout) - curl_easy_setopt(curlhandle, CURLOPT_SERVER_RESPONSE_TIMEOUT, timeout); + curl_easy_setopt(curl, CURLOPT_SERVER_RESPONSE_TIMEOUT, timeout); - curl_easy_setopt(curlhandle, CURLOPT_HEADERFUNCTION, getcontentlengthfunc); - curl_easy_setopt(curlhandle, CURLOPT_HEADERDATA, &uploaded_len); + curl_easy_setopt(curl, CURLOPT_HEADERFUNCTION, getcontentlengthfunc); + curl_easy_setopt(curl, CURLOPT_HEADERDATA, &uploaded_len); - curl_easy_setopt(curlhandle, CURLOPT_WRITEFUNCTION, discardfunc); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); - curl_easy_setopt(curlhandle, CURLOPT_READFUNCTION, readfunc); - curl_easy_setopt(curlhandle, CURLOPT_READDATA, f); + curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_cb); + curl_easy_setopt(curl, CURLOPT_READDATA, f); /* enable active mode */ - curl_easy_setopt(curlhandle, CURLOPT_FTPPORT, "-"); + curl_easy_setopt(curl, CURLOPT_FTPPORT, "-"); /* allow the server no more than 7 seconds to connect back */ - curl_easy_setopt(curlhandle, CURLOPT_ACCEPTTIMEOUT_MS, 7000L); + curl_easy_setopt(curl, CURLOPT_ACCEPTTIMEOUT_MS, 7000L); - curl_easy_setopt(curlhandle, CURLOPT_FTP_CREATE_MISSING_DIRS, 1L); + curl_easy_setopt(curl, CURLOPT_FTP_CREATE_MISSING_DIRS, 1L); - curl_easy_setopt(curlhandle, CURLOPT_VERBOSE, 1L); + curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); - for(c = 0; (r != CURLE_OK) && (c < tries); c++) { + for(c = 0; (res != CURLE_OK) && (c < tries); c++) { /* are we resuming? */ if(c) { /* yes */ /* determine the length of the file already written */ @@ -116,55 +116,52 @@ static int upload(CURL *curlhandle, const char *remotepath, /* * With NOBODY and NOHEADER, libcurl issues a SIZE command, but the only * way to retrieve the result is to parse the returned Content-Length - * header. Thus, getcontentlengthfunc(). We need discardfunc() above + * header. Thus, getcontentlengthfunc(). We need write_cb() above * because HEADER dumps the headers to stdout without it. */ - curl_easy_setopt(curlhandle, CURLOPT_NOBODY, 1L); - curl_easy_setopt(curlhandle, CURLOPT_HEADER, 1L); + curl_easy_setopt(curl, CURLOPT_NOBODY, 1L); + curl_easy_setopt(curl, CURLOPT_HEADER, 1L); - r = curl_easy_perform(curlhandle); - if(r != CURLE_OK) + res = curl_easy_perform(curl); + if(res != CURLE_OK) continue; - curl_easy_setopt(curlhandle, CURLOPT_NOBODY, 0L); - curl_easy_setopt(curlhandle, CURLOPT_HEADER, 0L); + curl_easy_setopt(curl, CURLOPT_NOBODY, 0L); + curl_easy_setopt(curl, CURLOPT_HEADER, 0L); fseek(f, uploaded_len, SEEK_SET); - curl_easy_setopt(curlhandle, CURLOPT_APPEND, 1L); + curl_easy_setopt(curl, CURLOPT_APPEND, 1L); } else { /* no */ - curl_easy_setopt(curlhandle, CURLOPT_APPEND, 0L); + curl_easy_setopt(curl, CURLOPT_APPEND, 0L); } - r = curl_easy_perform(curlhandle); + res = curl_easy_perform(curl); } fclose(f); - if(r == CURLE_OK) + if(res == CURLE_OK) return 1; else { - fprintf(stderr, "%s\n", curl_easy_strerror(r)); + fprintf(stderr, "%s\n", curl_easy_strerror(res)); return 0; } } int main(void) { - CURL *curlhandle = NULL; + CURL *curl = NULL; CURLcode res = curl_global_init(CURL_GLOBAL_ALL); if(res) return (int)res; - curlhandle = curl_easy_init(); - if(curlhandle) { - - upload(curlhandle, "ftp://user:pass@example.com/path/file", "C:\\file", - 0, 3); - - curl_easy_cleanup(curlhandle); + curl = curl_easy_init(); + if(curl) { + upload(curl, "ftp://user:pass@example.com/path/file", "C:\\file", 0, 3); + curl_easy_cleanup(curl); } curl_global_cleanup(); diff --git a/docs/examples/getinmemory.c b/docs/examples/getinmemory.c index aa31654c168a..025ebe67a553 100644 --- a/docs/examples/getinmemory.c +++ b/docs/examples/getinmemory.c @@ -38,7 +38,7 @@ struct MemoryStruct { size_t size; }; -static size_t WriteMemoryCallback(void *contents, size_t size, size_t nmemb, +static size_t write_cb(void *contents, size_t size, size_t nmemb, void *userp) { size_t realsize = size * nmemb; @@ -61,7 +61,7 @@ static size_t WriteMemoryCallback(void *contents, size_t size, size_t nmemb, int main(void) { - CURL *curl_handle; + CURL *curl; CURLcode res; struct MemoryStruct chunk; @@ -74,24 +74,24 @@ int main(void) chunk.size = 0; /* no data at this point */ /* init the curl session */ - curl_handle = curl_easy_init(); - if(curl_handle) { + curl = curl_easy_init(); + if(curl) { /* specify URL to get */ - curl_easy_setopt(curl_handle, CURLOPT_URL, "https://www.example.com/"); + curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.com/"); /* send all data to this function */ - curl_easy_setopt(curl_handle, CURLOPT_WRITEFUNCTION, WriteMemoryCallback); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); /* we pass our 'chunk' struct to the callback function */ - curl_easy_setopt(curl_handle, CURLOPT_WRITEDATA, (void *)&chunk); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, (void *)&chunk); /* some servers do not like requests that are made without a user-agent field, so we provide one */ - curl_easy_setopt(curl_handle, CURLOPT_USERAGENT, "libcurl-agent/1.0"); + curl_easy_setopt(curl, CURLOPT_USERAGENT, "libcurl-agent/1.0"); /* get it! */ - res = curl_easy_perform(curl_handle); + res = curl_easy_perform(curl); /* check for errors */ if(res != CURLE_OK) { @@ -110,7 +110,7 @@ int main(void) } /* cleanup curl stuff */ - curl_easy_cleanup(curl_handle); + curl_easy_cleanup(curl); } free(chunk.memory); diff --git a/docs/examples/ghiper.c b/docs/examples/ghiper.c index e9844fc89e01..61771c7ad7bb 100644 --- a/docs/examples/ghiper.c +++ b/docs/examples/ghiper.c @@ -78,7 +78,7 @@ struct GlobalInfo { /* Information associated with a specific easy handle */ struct ConnInfo { - CURL *easy; + CURL *curl; char *url; struct GlobalInfo *global; char error[CURL_ERROR_SIZE]; @@ -87,7 +87,7 @@ struct ConnInfo { /* Information associated with a specific socket */ struct SockInfo { curl_socket_t sockfd; - CURL *easy; + CURL *curl; int action; long timeout; GIOChannel *ch; @@ -124,16 +124,16 @@ static void check_multi_info(struct GlobalInfo *g) MSG_OUT("REMAINING: %d\n", g->still_running); while((msg = curl_multi_info_read(g->multi, &msgs_left))) { if(msg->msg == CURLMSG_DONE) { - CURL *easy = msg->easy_handle; + CURL *curl = msg->easy_handle; CURLcode res = msg->data.result; char *eff_url; struct ConnInfo *conn; - curl_easy_getinfo(easy, CURLINFO_PRIVATE, &conn); - curl_easy_getinfo(easy, CURLINFO_EFFECTIVE_URL, &eff_url); + curl_easy_getinfo(curl, CURLINFO_PRIVATE, &conn); + curl_easy_getinfo(curl, CURLINFO_EFFECTIVE_URL, &eff_url); MSG_OUT("DONE: %s => (%d) %s\n", eff_url, res, conn->error); - curl_multi_remove_handle(g->multi, easy); + curl_multi_remove_handle(g->multi, curl); free(conn->url); - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); free(conn); } } @@ -223,7 +223,7 @@ static void setsock(struct SockInfo *f, curl_socket_t s, CURL *e, int act, f->sockfd = s; f->action = act; - f->easy = e; + f->curl = e; if(f->ev) { g_source_remove(f->ev); } @@ -231,14 +231,14 @@ static void setsock(struct SockInfo *f, curl_socket_t s, CURL *e, int act, } /* Initialize a new SockInfo structure */ -static void addsock(curl_socket_t s, CURL *easy, int action, +static void addsock(curl_socket_t s, CURL *curl, int action, struct GlobalInfo *g) { struct SockInfo *fdp = g_malloc0(sizeof(struct SockInfo)); fdp->global = g; fdp->ch = g_io_channel_unix_new(s); - setsock(fdp, s, easy, action, g); + setsock(fdp, s, curl, action, g); curl_multi_assign(g->multi, s, fdp); } @@ -301,29 +301,29 @@ static void new_conn(const char *url, struct GlobalInfo *g) conn = g_malloc0(sizeof(*conn)); conn->error[0] = '\0'; - conn->easy = curl_easy_init(); - if(!conn->easy) { + conn->curl = curl_easy_init(); + if(!conn->curl) { MSG_OUT("curl_easy_init() failed, exiting!\n"); exit(2); } conn->global = g; conn->url = g_strdup(url); - curl_easy_setopt(conn->easy, CURLOPT_URL, conn->url); - curl_easy_setopt(conn->easy, CURLOPT_WRITEFUNCTION, write_cb); - curl_easy_setopt(conn->easy, CURLOPT_WRITEDATA, &conn); - curl_easy_setopt(conn->easy, CURLOPT_VERBOSE, SHOW_VERBOSE); - curl_easy_setopt(conn->easy, CURLOPT_ERRORBUFFER, conn->error); - curl_easy_setopt(conn->easy, CURLOPT_PRIVATE, conn); - curl_easy_setopt(conn->easy, CURLOPT_NOPROGRESS, SHOW_PROGRESS ? 0L : 1L); - curl_easy_setopt(conn->easy, CURLOPT_XFERINFOFUNCTION, xferinfo_cb); - curl_easy_setopt(conn->easy, CURLOPT_PROGRESSDATA, conn); - curl_easy_setopt(conn->easy, CURLOPT_FOLLOWLOCATION, 1L); - curl_easy_setopt(conn->easy, CURLOPT_CONNECTTIMEOUT, 30L); - curl_easy_setopt(conn->easy, CURLOPT_LOW_SPEED_LIMIT, 1L); - curl_easy_setopt(conn->easy, CURLOPT_LOW_SPEED_TIME, 30L); - - MSG_OUT("Adding easy %p to multi %p (%s)\n", conn->easy, g->multi, url); - rc = curl_multi_add_handle(g->multi, conn->easy); + curl_easy_setopt(conn->curl, CURLOPT_URL, conn->url); + curl_easy_setopt(conn->curl, CURLOPT_WRITEFUNCTION, write_cb); + curl_easy_setopt(conn->curl, CURLOPT_WRITEDATA, &conn); + curl_easy_setopt(conn->curl, CURLOPT_VERBOSE, SHOW_VERBOSE); + curl_easy_setopt(conn->curl, CURLOPT_ERRORBUFFER, conn->error); + curl_easy_setopt(conn->curl, CURLOPT_PRIVATE, conn); + curl_easy_setopt(conn->curl, CURLOPT_NOPROGRESS, SHOW_PROGRESS ? 0L : 1L); + curl_easy_setopt(conn->curl, CURLOPT_XFERINFOFUNCTION, xferinfo_cb); + curl_easy_setopt(conn->curl, CURLOPT_PROGRESSDATA, conn); + curl_easy_setopt(conn->curl, CURLOPT_FOLLOWLOCATION, 1L); + curl_easy_setopt(conn->curl, CURLOPT_CONNECTTIMEOUT, 30L); + curl_easy_setopt(conn->curl, CURLOPT_LOW_SPEED_LIMIT, 1L); + curl_easy_setopt(conn->curl, CURLOPT_LOW_SPEED_TIME, 30L); + + MSG_OUT("Adding easy %p to multi %p (%s)\n", conn->curl, g->multi, url); + rc = curl_multi_add_handle(g->multi, conn->curl); mcode_or_die("new_conn: curl_multi_add_handle", rc); /* note that add_handle() sets a timeout to trigger soon so that the diff --git a/docs/examples/hiperfifo.c b/docs/examples/hiperfifo.c index cc22e70abbe4..314d7dd9d95a 100644 --- a/docs/examples/hiperfifo.c +++ b/docs/examples/hiperfifo.c @@ -90,7 +90,7 @@ struct GlobalInfo { /* Information associated with a specific easy handle */ struct ConnInfo { - CURL *easy; + CURL *curl; char *url; struct GlobalInfo *global; char error[CURL_ERROR_SIZE]; @@ -99,7 +99,7 @@ struct ConnInfo { /* Information associated with a specific socket */ struct SockInfo { curl_socket_t sockfd; - CURL *easy; + CURL *curl; int action; long timeout; struct event ev; @@ -162,20 +162,18 @@ static void check_multi_info(struct GlobalInfo *g) CURLMsg *msg; int msgs_left; struct ConnInfo *conn; - CURL *easy; - CURLcode res; fprintf(MSG_OUT, "REMAINING: %d\n", g->still_running); while((msg = curl_multi_info_read(g->multi, &msgs_left))) { if(msg->msg == CURLMSG_DONE) { - easy = msg->easy_handle; - res = msg->data.result; - curl_easy_getinfo(easy, CURLINFO_PRIVATE, &conn); - curl_easy_getinfo(easy, CURLINFO_EFFECTIVE_URL, &eff_url); + CURL *curl = msg->easy_handle; + CURLcode res = msg->data.result; + curl_easy_getinfo(curl, CURLINFO_PRIVATE, &conn); + curl_easy_getinfo(curl, CURLINFO_EFFECTIVE_URL, &eff_url); fprintf(MSG_OUT, "DONE: %s => (%d) %s\n", eff_url, res, conn->error); - curl_multi_remove_handle(g->multi, easy); + curl_multi_remove_handle(g->multi, curl); free(conn->url); - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); free(conn); } } @@ -240,7 +238,7 @@ static void setsock(struct SockInfo *f, curl_socket_t s, CURL *e, int act, f->sockfd = s; f->action = act; - f->easy = e; + f->curl = e; if(event_initialized(&f->ev)) { event_del(&f->ev); } @@ -249,13 +247,13 @@ static void setsock(struct SockInfo *f, curl_socket_t s, CURL *e, int act, } /* Initialize a new SockInfo structure */ -static void addsock(curl_socket_t s, CURL *easy, int action, +static void addsock(curl_socket_t s, CURL *curl, int action, struct GlobalInfo *g) { struct SockInfo *fdp = calloc(1, sizeof(struct SockInfo)); fdp->global = g; - setsock(fdp, s, easy, action, g); + setsock(fdp, s, curl, action, g); curl_multi_assign(g->multi, s, fdp); } @@ -317,26 +315,26 @@ static void new_conn(const char *url, struct GlobalInfo *g) conn = calloc(1, sizeof(*conn)); conn->error[0] = '\0'; - conn->easy = curl_easy_init(); - if(!conn->easy) { + conn->curl = curl_easy_init(); + if(!conn->curl) { fprintf(MSG_OUT, "curl_easy_init() failed, exiting!\n"); exit(2); } conn->global = g; conn->url = strdup(url); - curl_easy_setopt(conn->easy, CURLOPT_URL, conn->url); - curl_easy_setopt(conn->easy, CURLOPT_WRITEFUNCTION, write_cb); - curl_easy_setopt(conn->easy, CURLOPT_WRITEDATA, conn); - curl_easy_setopt(conn->easy, CURLOPT_VERBOSE, 1L); - curl_easy_setopt(conn->easy, CURLOPT_ERRORBUFFER, conn->error); - curl_easy_setopt(conn->easy, CURLOPT_PRIVATE, conn); - curl_easy_setopt(conn->easy, CURLOPT_NOPROGRESS, 0L); - curl_easy_setopt(conn->easy, CURLOPT_XFERINFOFUNCTION, xferinfo_cb); - curl_easy_setopt(conn->easy, CURLOPT_PROGRESSDATA, conn); - curl_easy_setopt(conn->easy, CURLOPT_FOLLOWLOCATION, 1L); + curl_easy_setopt(conn->curl, CURLOPT_URL, conn->url); + curl_easy_setopt(conn->curl, CURLOPT_WRITEFUNCTION, write_cb); + curl_easy_setopt(conn->curl, CURLOPT_WRITEDATA, conn); + curl_easy_setopt(conn->curl, CURLOPT_VERBOSE, 1L); + curl_easy_setopt(conn->curl, CURLOPT_ERRORBUFFER, conn->error); + curl_easy_setopt(conn->curl, CURLOPT_PRIVATE, conn); + curl_easy_setopt(conn->curl, CURLOPT_NOPROGRESS, 0L); + curl_easy_setopt(conn->curl, CURLOPT_XFERINFOFUNCTION, xferinfo_cb); + curl_easy_setopt(conn->curl, CURLOPT_PROGRESSDATA, conn); + curl_easy_setopt(conn->curl, CURLOPT_FOLLOWLOCATION, 1L); fprintf(MSG_OUT, - "Adding easy %p to multi %p (%s)\n", conn->easy, g->multi, url); - rc = curl_multi_add_handle(g->multi, conn->easy); + "Adding easy %p to multi %p (%s)\n", conn->curl, g->multi, url); + rc = curl_multi_add_handle(g->multi, conn->curl); mcode_or_die("new_conn: curl_multi_add_handle", rc); /* note that the add_handle() sets a time-out to trigger soon so that diff --git a/docs/examples/hsts-preload.c b/docs/examples/hsts-preload.c index 303b17f52500..a775ec9778a7 100644 --- a/docs/examples/hsts-preload.c +++ b/docs/examples/hsts-preload.c @@ -46,13 +46,13 @@ struct state { /* "read" is from the point of the library, it wants data from us. One domain entry per invoke. */ -static CURLSTScode hstsread(CURL *easy, struct curl_hstsentry *e, +static CURLSTScode hstsread(CURL *curl, struct curl_hstsentry *e, void *userp) { const char *host; const char *expire; struct state *s = (struct state *)userp; - (void)easy; + (void)curl; host = preload_hosts[s->index].name; expire = preload_hosts[s->index++].exp; @@ -67,10 +67,10 @@ static CURLSTScode hstsread(CURL *easy, struct curl_hstsentry *e, return CURLSTS_OK; } -static CURLSTScode hstswrite(CURL *easy, struct curl_hstsentry *e, +static CURLSTScode hstswrite(CURL *curl, struct curl_hstsentry *e, struct curl_index *i, void *userp) { - (void)easy; + (void)curl; (void)userp; /* we have no custom input */ printf("[%u/%u] %s %s\n", (unsigned int)i->index, (unsigned int)i->total, e->name, e->expire); diff --git a/docs/examples/htmltitle.cpp b/docs/examples/htmltitle.cpp index e4979ee859d3..2251a215e8a5 100644 --- a/docs/examples/htmltitle.cpp +++ b/docs/examples/htmltitle.cpp @@ -86,43 +86,43 @@ static size_t writer(char *data, size_t size, size_t nmemb, // libcurl connection initialization // -static bool init(CURL *&conn, const char *url) +static bool init(CURL *&curl, const char *url) { - CURLcode code; + CURLcode res; - conn = curl_easy_init(); + curl = curl_easy_init(); - if(conn == NULL) { - fprintf(stderr, "Failed to create CURL connection\n"); + if(!curl) { + fprintf(stderr, "Failed to create CURL handle\n"); return false; } - code = curl_easy_setopt(conn, CURLOPT_ERRORBUFFER, errorBuffer); - if(code != CURLE_OK) { - fprintf(stderr, "Failed to set error buffer [%d]\n", code); + res = curl_easy_setopt(curl, CURLOPT_ERRORBUFFER, errorBuffer); + if(res != CURLE_OK) { + fprintf(stderr, "Failed to set error buffer [%d]\n", res); return false; } - code = curl_easy_setopt(conn, CURLOPT_URL, url); - if(code != CURLE_OK) { + res = curl_easy_setopt(curl, CURLOPT_URL, url); + if(res != CURLE_OK) { fprintf(stderr, "Failed to set URL [%s]\n", errorBuffer); return false; } - code = curl_easy_setopt(conn, CURLOPT_FOLLOWLOCATION, 1L); - if(code != CURLE_OK) { + res = curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L); + if(res != CURLE_OK) { fprintf(stderr, "Failed to set redirect option [%s]\n", errorBuffer); return false; } - code = curl_easy_setopt(conn, CURLOPT_WRITEFUNCTION, writer); - if(code != CURLE_OK) { + res = curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, writer); + if(res != CURLE_OK) { fprintf(stderr, "Failed to set writer [%s]\n", errorBuffer); return false; } - code = curl_easy_setopt(conn, CURLOPT_WRITEDATA, &buffer); - if(code != CURLE_OK) { + res = curl_easy_setopt(curl, CURLOPT_WRITEDATA, &buffer); + if(res != CURLE_OK) { fprintf(stderr, "Failed to set write data [%s]\n", errorBuffer); return false; } @@ -262,7 +262,7 @@ static void parseHtml(const std::string &html, int main(int argc, char *argv[]) { - CURL *conn = NULL; + CURL *curl = NULL; CURLcode res; std::string title; @@ -277,18 +277,18 @@ int main(int argc, char *argv[]) if(res) return (int)res; - // Initialize CURL connection + // Initialize CURL handle - if(!init(conn, argv[1])) { - fprintf(stderr, "Connection initialization failed\n"); + if(!init(curl, argv[1])) { + fprintf(stderr, "Handle initialization failed\n"); curl_global_cleanup(); return EXIT_FAILURE; } // Retrieve content for the URL - res = curl_easy_perform(conn); - curl_easy_cleanup(conn); + res = curl_easy_perform(curl); + curl_easy_cleanup(curl); if(res != CURLE_OK) { fprintf(stderr, "Failed to get '%s' [%s]\n", argv[1], errorBuffer); diff --git a/docs/examples/http2-download.c b/docs/examples/http2-download.c index 06902415e18d..efc747215371 100644 --- a/docs/examples/http2-download.c +++ b/docs/examples/http2-download.c @@ -34,13 +34,13 @@ #include #endif -/* curl stuff */ -#include - #if defined(_MSC_VER) && (_MSC_VER < 1900) #define snprintf _snprintf #endif +/* curl stuff */ +#include + #ifndef CURLPIPE_MULTIPLEX /* This little trick makes sure that we do not enable pipelining for libcurls old enough to not have this symbol. It is _not_ defined to zero in a recent @@ -49,26 +49,23 @@ #endif struct transfer { - CURL *easy; - unsigned int num; FILE *out; + CURL *curl; + int num; }; -#define NUM_HANDLES 1000 - -static void dump(const char *text, unsigned int num, unsigned char *ptr, +static void dump(const char *text, int num, unsigned char *ptr, size_t size, char nohex) { size_t i; size_t c; - unsigned int width = 0x10; if(nohex) /* without the hex output, we can fit more on screen */ width = 0x40; - fprintf(stderr, "%u %s, %lu bytes (0x%lx)\n", + fprintf(stderr, "%d %s, %lu bytes (0x%lx)\n", num, text, (unsigned long)size, (unsigned long)size); for(i = 0; i < size; i += width) { @@ -104,17 +101,17 @@ static void dump(const char *text, unsigned int num, unsigned char *ptr, } } -static int my_trace(CURL *handle, curl_infotype type, +static int my_trace(CURL *curl, curl_infotype type, char *data, size_t size, void *userp) { const char *text; struct transfer *t = (struct transfer *)userp; - unsigned int num = t->num; - (void)handle; + int num = t->num; + (void)curl; switch(type) { case CURLINFO_TEXT: - fprintf(stderr, "== %u Info: %s", num, data); + fprintf(stderr, "== [%d] Info: %s", num, data); return 0; case CURLINFO_HEADER_OUT: text = "=> Send header"; @@ -145,12 +142,12 @@ static int my_trace(CURL *handle, curl_infotype type, static int setup(struct transfer *t, int num) { char filename[128]; - CURL *hnd; + CURL *curl; - hnd = t->easy = curl_easy_init(); + curl = t->curl = NULL; + t->num = num; snprintf(filename, sizeof(filename), "dl-%d", num); - t->out = fopen(filename, "wb"); if(!t->out) { fprintf(stderr, "error: could not open file %s for writing: %s\n", @@ -158,27 +155,31 @@ static int setup(struct transfer *t, int num) return 1; } - /* write to this file */ - curl_easy_setopt(hnd, CURLOPT_WRITEDATA, t->out); + curl = t->curl = curl_easy_init(); + if(curl) { - /* set the same URL */ - curl_easy_setopt(hnd, CURLOPT_URL, "https://localhost:8443/index.html"); + /* write to this file */ + curl_easy_setopt(curl, CURLOPT_WRITEDATA, t->out); - /* please be verbose */ - curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L); - curl_easy_setopt(hnd, CURLOPT_DEBUGFUNCTION, my_trace); - curl_easy_setopt(hnd, CURLOPT_DEBUGDATA, t); + /* set the same URL */ + curl_easy_setopt(curl, CURLOPT_URL, "https://localhost:8443/index.html"); - /* enlarge the receive buffer for potentially higher transfer speeds */ - curl_easy_setopt(hnd, CURLOPT_BUFFERSIZE, 100000L); + /* please be verbose */ + curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); + curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, my_trace); + curl_easy_setopt(curl, CURLOPT_DEBUGDATA, t); - /* HTTP/2 please */ - curl_easy_setopt(hnd, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0); + /* enlarge the receive buffer for potentially higher transfer speeds */ + curl_easy_setopt(curl, CURLOPT_BUFFERSIZE, 100000L); + + /* HTTP/2 please */ + curl_easy_setopt(curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0); #if (CURLPIPE_MULTIPLEX > 0) - /* wait for pipe connection to confirm */ - curl_easy_setopt(hnd, CURLOPT_PIPEWAIT, 1L); + /* wait for pipe connection to confirm */ + curl_easy_setopt(curl, CURLOPT_PIPEWAIT, 1L); #endif + } return 0; } @@ -188,8 +189,8 @@ static int setup(struct transfer *t, int num) int main(int argc, char **argv) { CURLcode res; - struct transfer trans[NUM_HANDLES]; - CURLM *multi_handle; + struct transfer *trans; + CURLM *multi = NULL; int i; int still_running = 0; /* keep number of running handles */ int num_transfers; @@ -197,50 +198,65 @@ int main(int argc, char **argv) if(argc > 1) { /* if given a number, do that many transfers */ num_transfers = atoi(argv[1]); - if((num_transfers < 1) || (num_transfers > NUM_HANDLES)) - num_transfers = 3; /* a suitable low default */ + if((num_transfers < 1) || (num_transfers > 1000)) + num_transfers = 3; /* a suitable low default */ } else - num_transfers = 3; /* suitable default */ + num_transfers = 3; /* a suitable low default */ res = curl_global_init(CURL_GLOBAL_ALL); if(res) return (int)res; - memset(trans, 0, sizeof(trans)); + trans = calloc(num_transfers, sizeof(*trans)); + if(!trans) { + fprintf(stderr, "error allocating transfer structs\n"); + goto error; + } /* init a multi stack */ - multi_handle = curl_multi_init(); + multi = curl_multi_init(); + if(!multi) + goto error; for(i = 0; i < num_transfers; i++) { if(setup(&trans[i], i)) { - curl_global_cleanup(); - return 1; + goto error; } /* add the individual transfer */ - curl_multi_add_handle(multi_handle, trans[i].easy); + curl_multi_add_handle(multi, trans[i].curl); } - curl_multi_setopt(multi_handle, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX); + curl_multi_setopt(multi, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX); do { - CURLMcode mc = curl_multi_perform(multi_handle, &still_running); + CURLMcode mc = curl_multi_perform(multi, &still_running); if(still_running) /* wait for activity, timeout or "nothing" */ - mc = curl_multi_poll(multi_handle, NULL, 0, 1000, NULL); + mc = curl_multi_poll(multi, NULL, 0, 1000, NULL); if(mc) break; + } while(still_running); - for(i = 0; i < num_transfers; i++) { - curl_multi_remove_handle(multi_handle, trans[i].easy); - curl_easy_cleanup(trans[i].easy); +error: + + if(multi) { + for(i = 0; i < num_transfers; i++) { + curl_multi_remove_handle(multi, trans[i].curl); + curl_easy_cleanup(trans[i].curl); + + if(trans[i].out) + fclose(trans[i].out); + } + curl_multi_cleanup(multi); } - curl_multi_cleanup(multi_handle); + free(trans); + curl_global_cleanup(); return 0; diff --git a/docs/examples/http2-pushinmemory.c b/docs/examples/http2-pushinmemory.c index 85bf0e34a745..e15f15169762 100644 --- a/docs/examples/http2-pushinmemory.c +++ b/docs/examples/http2-pushinmemory.c @@ -66,30 +66,30 @@ static void init_memory(struct Memory *chunk) chunk->size = 0; /* no data at this point */ } -static void setup(CURL *hnd) +static void setup(CURL *curl) { /* set the same URL */ - curl_easy_setopt(hnd, CURLOPT_URL, "https://localhost:8443/index.html"); + curl_easy_setopt(curl, CURLOPT_URL, "https://localhost:8443/index.html"); /* HTTP/2 please */ - curl_easy_setopt(hnd, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0); + curl_easy_setopt(curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0); /* we use a self-signed test server, skip verification during debugging */ - curl_easy_setopt(hnd, CURLOPT_SSL_VERIFYPEER, 0L); - curl_easy_setopt(hnd, CURLOPT_SSL_VERIFYHOST, 0L); + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L); + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L); /* write data to a struct */ - curl_easy_setopt(hnd, CURLOPT_WRITEFUNCTION, write_cb); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); init_memory(&files[0]); - curl_easy_setopt(hnd, CURLOPT_WRITEDATA, &files[0]); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, &files[0]); /* wait for pipe connection to confirm */ - curl_easy_setopt(hnd, CURLOPT_PIPEWAIT, 1L); + curl_easy_setopt(curl, CURLOPT_PIPEWAIT, 1L); } /* called when there is an incoming push */ static int server_push_callback(CURL *parent, - CURL *easy, + CURL *curl, size_t num_headers, struct curl_pushheaders *headers, void *userp) @@ -105,7 +105,7 @@ static int server_push_callback(CURL *parent, /* write to this buffer */ init_memory(&files[pushindex]); - curl_easy_setopt(easy, CURLOPT_WRITEDATA, &files[pushindex]); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, &files[pushindex]); pushindex++; headp = curl_pushheader_byname(headers, ":path"); @@ -122,7 +122,7 @@ static int server_push_callback(CURL *parent, */ int main(void) { - CURL *easy; + CURL *curl; CURLM *multi; int transfers = 1; /* we start with one */ int i; @@ -134,13 +134,13 @@ int main(void) /* init a multi stack */ multi = curl_multi_init(); - easy = curl_easy_init(); + curl = curl_easy_init(); /* set options */ - setup(easy); + setup(curl); /* add the easy transfer */ - curl_multi_add_handle(multi, easy); + curl_multi_add_handle(multi, curl); curl_multi_setopt(multi, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX); curl_multi_setopt(multi, CURLMOPT_PUSHFUNCTION, server_push_callback); @@ -167,10 +167,10 @@ int main(void) int msgq = 0; m = curl_multi_info_read(multi, &msgq); if(m && (m->msg == CURLMSG_DONE)) { - CURL *e = m->easy_handle; + curl = m->easy_handle; transfers--; - curl_multi_remove_handle(multi, e); - curl_easy_cleanup(e); + curl_multi_remove_handle(multi, curl); + curl_easy_cleanup(curl); } } while(m); } diff --git a/docs/examples/http2-serverpush.c b/docs/examples/http2-serverpush.c index e97be991a8cb..d501f2419940 100644 --- a/docs/examples/http2-serverpush.c +++ b/docs/examples/http2-serverpush.c @@ -40,6 +40,8 @@ #error "too old libcurl, cannot do HTTP/2 server push!" #endif +static FILE *out_download; + static void dump(const char *text, unsigned char *ptr, size_t size, char nohex) { size_t i; @@ -87,11 +89,11 @@ static void dump(const char *text, unsigned char *ptr, size_t size, char nohex) } } -static int my_trace(CURL *handle, curl_infotype type, +static int my_trace(CURL *curl, curl_infotype type, char *data, size_t size, void *userp) { const char *text; - (void)handle; + (void)curl; (void)userp; switch(type) { case CURLINFO_TEXT: @@ -125,40 +127,41 @@ static int my_trace(CURL *handle, curl_infotype type, #define OUTPUTFILE "dl" -static int setup(CURL *hnd, const char *url) +static int setup(CURL *curl, const char *url) { - FILE *out = fopen(OUTPUTFILE, "wb"); - if(!out) - /* failed */ - return 1; - - /* write to this file */ - curl_easy_setopt(hnd, CURLOPT_WRITEDATA, out); + out_download = fopen(OUTPUTFILE, "wb"); + if(!out_download) + return 1; /* failed */ /* set the same URL */ - curl_easy_setopt(hnd, CURLOPT_URL, url); - - /* please be verbose */ - curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L); - curl_easy_setopt(hnd, CURLOPT_DEBUGFUNCTION, my_trace); + curl_easy_setopt(curl, CURLOPT_URL, url); /* HTTP/2 please */ - curl_easy_setopt(hnd, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0); + curl_easy_setopt(curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0); /* we use a self-signed test server, skip verification during debugging */ - curl_easy_setopt(hnd, CURLOPT_SSL_VERIFYPEER, 0L); - curl_easy_setopt(hnd, CURLOPT_SSL_VERIFYHOST, 0L); + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L); + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L); + + /* write to this file */ + curl_easy_setopt(curl, CURLOPT_WRITEDATA, out_download); + + /* please be verbose */ + curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); + curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, my_trace); -#if (CURLPIPE_MULTIPLEX > 0) +#if CURLPIPE_MULTIPLEX > 0 /* wait for pipe connection to confirm */ - curl_easy_setopt(hnd, CURLOPT_PIPEWAIT, 1L); + curl_easy_setopt(curl, CURLOPT_PIPEWAIT, 1L); #endif return 0; /* all is good */ } +static FILE *out_push; + /* called when there is an incoming push */ static int server_push_callback(CURL *parent, - CURL *easy, + CURL *curl, size_t num_headers, struct curl_pushheaders *headers, void *userp) @@ -167,7 +170,6 @@ static int server_push_callback(CURL *parent, size_t i; int *transfers = (int *)userp; char filename[128]; - FILE *out; static unsigned int count = 0; (void)parent; @@ -175,15 +177,15 @@ static int server_push_callback(CURL *parent, snprintf(filename, sizeof(filename), "push%u", count++); /* here's a new stream, save it in a new file for each new push */ - out = fopen(filename, "wb"); - if(!out) { + out_push = fopen(filename, "wb"); + if(!out_push) { /* if we cannot save it, deny it */ fprintf(stderr, "Failed to create output file for push\n"); return CURL_PUSH_DENY; } /* write to this file */ - curl_easy_setopt(easy, CURLOPT_WRITEDATA, out); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, out_push); fprintf(stderr, "**** push callback approves stream %u, got %lu headers!\n", count, (unsigned long)num_headers); @@ -199,18 +201,18 @@ static int server_push_callback(CURL *parent, } (*transfers)++; /* one more */ + return CURL_PUSH_OK; } - /* * Download a file over HTTP/2, take care of server push. */ int main(int argc, char *argv[]) { CURLcode res; - CURL *easy; - CURLM *multi_handle; + CURL *curl; + CURLM *multi; int transfers = 1; /* we start with one */ const char *url = "https://localhost:8443/index.html"; @@ -222,32 +224,33 @@ int main(int argc, char *argv[]) return (int)res; /* init a multi stack */ - multi_handle = curl_multi_init(); + multi = curl_multi_init(); + if(!multi) + goto error; - easy = curl_easy_init(); + curl = curl_easy_init(); /* set options */ - if(setup(easy, url)) { + if(!curl || setup(curl, url)) { fprintf(stderr, "failed\n"); - curl_global_cleanup(); - return 1; + goto error; } - /* add the easy transfer */ - curl_multi_add_handle(multi_handle, easy); + curl_multi_setopt(multi, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX); + curl_multi_setopt(multi, CURLMOPT_PUSHFUNCTION, server_push_callback); + curl_multi_setopt(multi, CURLMOPT_PUSHDATA, &transfers); - curl_multi_setopt(multi_handle, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX); - curl_multi_setopt(multi_handle, CURLMOPT_PUSHFUNCTION, server_push_callback); - curl_multi_setopt(multi_handle, CURLMOPT_PUSHDATA, &transfers); + /* add the easy transfer */ + curl_multi_add_handle(multi, curl); do { struct CURLMsg *m; int still_running; /* keep number of running handles */ - CURLMcode mc = curl_multi_perform(multi_handle, &still_running); + CURLMcode mc = curl_multi_perform(multi, &still_running); if(still_running) /* wait for activity, timeout or "nothing" */ - mc = curl_multi_poll(multi_handle, NULL, 0, 1000, NULL); + mc = curl_multi_poll(multi, NULL, 0, 1000, NULL); if(mc) break; @@ -257,22 +260,29 @@ int main(int argc, char *argv[]) * created and added one or more easy handles but we need to clean them up * when we are done. */ - do { int msgq = 0; - m = curl_multi_info_read(multi_handle, &msgq); + m = curl_multi_info_read(multi, &msgq); if(m && (m->msg == CURLMSG_DONE)) { - CURL *e = m->easy_handle; + curl = m->easy_handle; transfers--; - curl_multi_remove_handle(multi_handle, e); - curl_easy_cleanup(e); + curl_multi_remove_handle(multi, curl); + curl_easy_cleanup(curl); } } while(m); } while(transfers); /* as long as we have transfers going */ - curl_multi_cleanup(multi_handle); +error: + + if(multi) + curl_multi_cleanup(multi); + curl_global_cleanup(); + fclose(out_download); + if(out_push) + fclose(out_push); + return 0; } diff --git a/docs/examples/http2-upload.c b/docs/examples/http2-upload.c index 55162c03a3ad..2bff0d050602 100644 --- a/docs/examples/http2-upload.c +++ b/docs/examples/http2-upload.c @@ -64,8 +64,6 @@ #define CURLPIPE_MULTIPLEX 0L #endif -#define NUM_HANDLES 1000 - #ifdef _MSC_VER #define gettimeofday(a, b) my_gettimeofday((a), (b)) static int my_gettimeofday(struct timeval *tp, void *tzp) @@ -90,12 +88,12 @@ struct input { FILE *in; FILE *out; size_t bytes_read; /* count up */ - CURL *hnd; + CURL *curl; int num; }; -static void dump(const char *text, int num, unsigned char *ptr, size_t size, - char nohex) +static void dump(const char *text, int num, unsigned char *ptr, + size_t size, char nohex) { size_t i; size_t c; @@ -141,8 +139,8 @@ static void dump(const char *text, int num, unsigned char *ptr, size_t size, } } -static int my_trace(CURL *handle, curl_infotype type, char *data, - size_t size, void *userp) +static int my_trace(CURL *curl, curl_infotype type, + char *data, size_t size, void *userp) { char timebuf[60]; const char *text; @@ -153,7 +151,7 @@ static int my_trace(CURL *handle, curl_infotype type, char *data, struct timeval tv; time_t secs; struct tm *now; - (void)handle; + (void)curl; gettimeofday(&tv, NULL); if(!known_offset) { @@ -195,7 +193,7 @@ static int my_trace(CURL *handle, curl_infotype type, char *data, return 0; } -static size_t read_callback(char *ptr, size_t size, size_t nmemb, void *userp) +static size_t read_cb(char *ptr, size_t size, size_t nmemb, void *userp) { struct input *i = userp; size_t retcode = fread(ptr, size, nmemb, i->in); @@ -203,33 +201,33 @@ static size_t read_callback(char *ptr, size_t size, size_t nmemb, void *userp) return retcode; } -static int setup(struct input *i, int num, const char *upload) +static int setup(struct input *t, int num, const char *upload) { char url[256]; char filename[128]; struct stat file_info; curl_off_t uploadsize; - CURL *hnd; + CURL *curl; - hnd = i->hnd = NULL; + curl = t->curl = NULL; - i->num = num; + t->num = num; snprintf(filename, sizeof(filename), "dl-%d", num); - i->out = fopen(filename, "wb"); - if(!i->out) { - fprintf(stderr, "error: could not open file %s for writing: %s\n", upload, - strerror(errno)); + t->out = fopen(filename, "wb"); + if(!t->out) { + fprintf(stderr, "error: could not open file %s for writing: %s\n", + upload, strerror(errno)); return 1; } snprintf(url, sizeof(url), "https://localhost:8443/upload-%d", num); - i->in = fopen(upload, "rb"); - if(!i->in) { - fprintf(stderr, "error: could not open file %s for reading: %s\n", upload, - strerror(errno)); - fclose(i->out); - i->out = NULL; + t->in = fopen(upload, "rb"); + if(!t->in) { + fprintf(stderr, "error: could not open file %s for reading: %s\n", + upload, strerror(errno)); + fclose(t->out); + t->out = NULL; return 1; } @@ -237,51 +235,51 @@ static int setup(struct input *i, int num, const char *upload) /* !checksrc! disable BANNEDFUNC 1 */ if(stat(upload, &file_info) != 0) { #else - if(fstat(fileno(i->in), &file_info) != 0) { + if(fstat(fileno(t->in), &file_info) != 0) { #endif - fprintf(stderr, "error: could not stat file %s: %s\n", upload, - strerror(errno)); - fclose(i->out); - i->out = NULL; + fprintf(stderr, "error: could not stat file %s: %s\n", + upload, strerror(errno)); + fclose(t->out); + t->out = NULL; return 1; } uploadsize = file_info.st_size; - hnd = i->hnd = curl_easy_init(); - if(hnd) { + curl = t->curl = curl_easy_init(); + if(curl) { /* write to this file */ - curl_easy_setopt(hnd, CURLOPT_WRITEDATA, i->out); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, t->out); /* we want to use our own read function */ - curl_easy_setopt(hnd, CURLOPT_READFUNCTION, read_callback); + curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_cb); /* read from this file */ - curl_easy_setopt(hnd, CURLOPT_READDATA, i); + curl_easy_setopt(curl, CURLOPT_READDATA, t); /* provide the size of the upload */ - curl_easy_setopt(hnd, CURLOPT_INFILESIZE_LARGE, uploadsize); + curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE, uploadsize); /* send in the URL to store the upload as */ - curl_easy_setopt(hnd, CURLOPT_URL, url); + curl_easy_setopt(curl, CURLOPT_URL, url); /* upload please */ - curl_easy_setopt(hnd, CURLOPT_UPLOAD, 1L); + curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L); /* please be verbose */ - curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L); - curl_easy_setopt(hnd, CURLOPT_DEBUGFUNCTION, my_trace); - curl_easy_setopt(hnd, CURLOPT_DEBUGDATA, i); + curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); + curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, my_trace); + curl_easy_setopt(curl, CURLOPT_DEBUGDATA, t); /* HTTP/2 please */ - curl_easy_setopt(hnd, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0); + curl_easy_setopt(curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0); /* we use a self-signed test server, skip verification during debugging */ - curl_easy_setopt(hnd, CURLOPT_SSL_VERIFYPEER, 0L); - curl_easy_setopt(hnd, CURLOPT_SSL_VERIFYHOST, 0L); + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L); + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L); #if (CURLPIPE_MULTIPLEX > 0) /* wait for pipe connection to confirm */ - curl_easy_setopt(hnd, CURLOPT_PIPEWAIT, 1L); + curl_easy_setopt(curl, CURLOPT_PIPEWAIT, 1L); #endif } return 0; @@ -293,80 +291,84 @@ static int setup(struct input *i, int num, const char *upload) int main(int argc, char **argv) { CURLcode res; - struct input trans[NUM_HANDLES]; - CURLM *multi_handle; + struct input *trans; + CURLM *multi = NULL; int i; const char *filename = "index.html"; + int still_running = 0; /* keep number of running handles */ int num_transfers; if(argc > 1) { /* if given a number, do that many transfers */ num_transfers = atoi(argv[1]); - - if(!num_transfers || (num_transfers > NUM_HANDLES)) - num_transfers = 3; /* a suitable low default */ + if((num_transfers < 1) || (num_transfers > 1000)) + num_transfers = 3; /* a suitable low default */ if(argc > 2) /* if given a file name, upload this! */ filename = argv[2]; } else - num_transfers = 3; + num_transfers = 3; /* a suitable low default */ res = curl_global_init(CURL_GLOBAL_ALL); if(res) return (int)res; - memset(trans, 0, sizeof(trans)); + trans = calloc(num_transfers, sizeof(*trans)); + if(!trans) { + fprintf(stderr, "error allocating transfer structs\n"); + goto error; + } /* init a multi stack */ - multi_handle = curl_multi_init(); - if(multi_handle) { - - int still_running = 0; /* keep number of running handles */ + multi = curl_multi_init(); + if(!multi) + goto error; - for(i = 0; i < num_transfers; i++) { - if(setup(&trans[i], i, filename)) { - curl_global_cleanup(); - return 1; - } - - /* add the individual transfer */ - curl_multi_add_handle(multi_handle, trans[i].hnd); + for(i = 0; i < num_transfers; i++) { + if(setup(&trans[i], i, filename)) { + goto error; } - curl_multi_setopt(multi_handle, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX); + /* add the individual transfer */ + curl_multi_add_handle(multi, trans[i].curl); + } - /* We do HTTP/2 so let's stick to one connection per host */ - curl_multi_setopt(multi_handle, CURLMOPT_MAX_HOST_CONNECTIONS, 1L); + curl_multi_setopt(multi, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX); - do { - CURLMcode mc = curl_multi_perform(multi_handle, &still_running); + /* We do HTTP/2 so let's stick to one connection per host */ + curl_multi_setopt(multi, CURLMOPT_MAX_HOST_CONNECTIONS, 1L); - if(still_running) - /* wait for activity, timeout or "nothing" */ - mc = curl_multi_poll(multi_handle, NULL, 0, 1000, NULL); + do { + CURLMcode mc = curl_multi_perform(multi, &still_running); - if(mc) - break; + if(still_running) + /* wait for activity, timeout or "nothing" */ + mc = curl_multi_poll(multi, NULL, 0, 1000, NULL); - } while(still_running); + if(mc) + break; - for(i = 0; i < num_transfers; i++) - curl_multi_remove_handle(multi_handle, trans[i].hnd); + } while(still_running); - curl_multi_cleanup(multi_handle); - } +error: - for(i = 0; i < num_transfers; i++) { - curl_easy_cleanup(trans[i].hnd); + if(multi) { + for(i = 0; i < num_transfers; i++) { + curl_multi_remove_handle(multi, trans[i].curl); + curl_easy_cleanup(trans[i].curl); - if(trans[i].in) - fclose(trans[i].in); - if(trans[i].out) - fclose(trans[i].out); + if(trans[i].in) + fclose(trans[i].in); + if(trans[i].out) + fclose(trans[i].out); + } + curl_multi_cleanup(multi); } + free(trans); + curl_global_cleanup(); return 0; diff --git a/docs/examples/httpput.c b/docs/examples/httpput.c index 2aef62fc6713..794ea99ae582 100644 --- a/docs/examples/httpput.c +++ b/docs/examples/httpput.c @@ -48,7 +48,7 @@ * http://www.apacheweek.com/features/put */ -static size_t read_callback(char *ptr, size_t size, size_t nmemb, void *stream) +static size_t read_cb(char *ptr, size_t size, size_t nmemb, void *stream) { size_t retcode; unsigned long nread; @@ -111,7 +111,7 @@ int main(int argc, char **argv) curl = curl_easy_init(); if(curl) { /* we want to use our own read function */ - curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_callback); + curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_cb); /* enable uploading (implies PUT over HTTP) */ curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L); diff --git a/docs/examples/imap-append.c b/docs/examples/imap-append.c index e8851ce97717..c78462a508cd 100644 --- a/docs/examples/imap-append.c +++ b/docs/examples/imap-append.c @@ -59,7 +59,7 @@ struct upload_status { size_t bytes_read; }; -static size_t payload_source(char *ptr, size_t size, size_t nmemb, void *userp) +static size_t read_cb(char *ptr, size_t size, size_t nmemb, void *userp) { struct upload_status *upload_ctx = (struct upload_status *)userp; const char *data; @@ -108,7 +108,7 @@ int main(void) /* In this case, we are using a callback function to specify the data. You * could just use the CURLOPT_READDATA option to specify a FILE pointer to * read from. */ - curl_easy_setopt(curl, CURLOPT_READFUNCTION, payload_source); + curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_cb); curl_easy_setopt(curl, CURLOPT_READDATA, &upload_ctx); curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L); diff --git a/docs/examples/imap-multi.c b/docs/examples/imap-multi.c index e2d5dd4e9cc6..56a9147bc8a5 100644 --- a/docs/examples/imap-multi.c +++ b/docs/examples/imap-multi.c @@ -46,10 +46,10 @@ int main(void) curl = curl_easy_init(); if(curl) { - CURLM *mcurl; + CURLM *multi; - mcurl = curl_multi_init(); - if(mcurl) { + multi = curl_multi_init(); + if(multi) { int still_running = 1; /* Set username and password */ @@ -61,22 +61,22 @@ int main(void) "INBOX/;UID=1"); /* Tell the multi stack about our easy handle */ - curl_multi_add_handle(mcurl, curl); + curl_multi_add_handle(multi, curl); do { - CURLMcode mc = curl_multi_perform(mcurl, &still_running); + CURLMcode mc = curl_multi_perform(multi, &still_running); if(still_running) /* wait for activity, timeout or "nothing" */ - mc = curl_multi_poll(mcurl, NULL, 0, 1000, NULL); + mc = curl_multi_poll(multi, NULL, 0, 1000, NULL); if(mc) break; } while(still_running); /* Always cleanup */ - curl_multi_remove_handle(mcurl, curl); - curl_multi_cleanup(mcurl); + curl_multi_remove_handle(multi, curl); + curl_multi_cleanup(multi); } curl_easy_cleanup(curl); } diff --git a/docs/examples/log_failed_transfers.c b/docs/examples/log_failed_transfers.c index fe5f02f882c8..c9c0009763ac 100644 --- a/docs/examples/log_failed_transfers.c +++ b/docs/examples/log_failed_transfers.c @@ -130,7 +130,7 @@ static int mem_add(struct mem *mem, const char *str) } #if defined(__GNUC__) || defined(__clang__) -__attribute__ ((format (printf, 2, 3))) +__attribute__((format(printf, 2, 3))) #endif static int mem_addf(struct mem *mem, const char *format, ...) { @@ -172,14 +172,14 @@ static int mem_addf(struct mem *mem, const char *format, ...) return -1; } -static int mydebug(CURL *handle, curl_infotype type, +static int mydebug(CURL *curl, curl_infotype type, char *data, size_t size, void *userdata) { struct transfer *t = (struct transfer *)userdata; static const char s_infotype[CURLINFO_END][3] = { "* ", "< ", "> ", "{ ", "} ", "{ ", "} " }; - (void)handle; + (void)curl; switch(type) { case CURLINFO_TEXT: @@ -198,7 +198,7 @@ static int mydebug(CURL *handle, curl_infotype type, return 0; } -static size_t mywrite(char *ptr, size_t size, size_t nmemb, void *userdata) +static size_t write_cb(char *ptr, size_t size, size_t nmemb, void *userdata) { struct transfer *t = (struct transfer *)userdata; @@ -258,7 +258,7 @@ int main(void) curl_easy_setopt(t->curl, CURLOPT_DEBUGDATA, t); /* Enable writing the body to a file */ - curl_easy_setopt(t->curl, CURLOPT_WRITEFUNCTION, mywrite); + curl_easy_setopt(t->curl, CURLOPT_WRITEFUNCTION, write_cb); curl_easy_setopt(t->curl, CURLOPT_WRITEDATA, t); /* Enable immediate error on HTTP status codes >= 400 in most cases, diff --git a/docs/examples/multi-app.c b/docs/examples/multi-app.c index 7dab0b04f147..8c0d8b404152 100644 --- a/docs/examples/multi-app.c +++ b/docs/examples/multi-app.c @@ -43,8 +43,8 @@ int main(void) { - CURL *handles[HANDLECOUNT]; - CURLM *multi_handle; + CURL *curl[HANDLECOUNT]; + CURLM *multi; int i; @@ -54,17 +54,17 @@ int main(void) /* Allocate one curl handle per transfer */ for(i = 0; i < HANDLECOUNT; i++) - handles[i] = curl_easy_init(); + curl[i] = curl_easy_init(); /* set the options (I left out a few, you get the point anyway) */ - curl_easy_setopt(handles[HTTP_HANDLE], CURLOPT_URL, "https://example.com"); + curl_easy_setopt(curl[HTTP_HANDLE], CURLOPT_URL, "https://example.com"); - curl_easy_setopt(handles[FTP_HANDLE], CURLOPT_URL, "ftp://example.com"); - curl_easy_setopt(handles[FTP_HANDLE], CURLOPT_UPLOAD, 1L); + curl_easy_setopt(curl[FTP_HANDLE], CURLOPT_URL, "ftp://example.com"); + curl_easy_setopt(curl[FTP_HANDLE], CURLOPT_UPLOAD, 1L); /* init a multi stack */ - multi_handle = curl_multi_init(); - if(multi_handle) { + multi = curl_multi_init(); + if(multi) { int still_running = 1; /* keep number of running handles */ @@ -73,14 +73,14 @@ int main(void) /* add the individual transfers */ for(i = 0; i < HANDLECOUNT; i++) - curl_multi_add_handle(multi_handle, handles[i]); + curl_multi_add_handle(multi, curl[i]); while(still_running) { - CURLMcode mc = curl_multi_perform(multi_handle, &still_running); + CURLMcode mc = curl_multi_perform(multi, &still_running); if(still_running) /* wait for activity, timeout or "nothing" */ - mc = curl_multi_poll(multi_handle, NULL, 0, 1000, NULL); + mc = curl_multi_poll(multi, NULL, 0, 1000, NULL); if(mc) break; @@ -88,13 +88,13 @@ int main(void) /* See how the transfers went */ /* !checksrc! disable EQUALSNULL 1 */ - while((msg = curl_multi_info_read(multi_handle, &msgs_left)) != NULL) { + while((msg = curl_multi_info_read(multi, &msgs_left)) != NULL) { if(msg->msg == CURLMSG_DONE) { int idx; /* Find out which handle this message is about */ for(idx = 0; idx < HANDLECOUNT; idx++) { - int found = (msg->easy_handle == handles[idx]); + int found = (msg->easy_handle == curl[idx]); if(found) break; } @@ -112,14 +112,14 @@ int main(void) /* remove the transfers */ for(i = 0; i < HANDLECOUNT; i++) - curl_multi_remove_handle(multi_handle, handles[i]); + curl_multi_remove_handle(multi, curl[i]); - curl_multi_cleanup(multi_handle); + curl_multi_cleanup(multi); } /* Free the curl handles */ for(i = 0; i < HANDLECOUNT; i++) - curl_easy_cleanup(handles[i]); + curl_easy_cleanup(curl[i]); curl_global_cleanup(); diff --git a/docs/examples/multi-debugcallback.c b/docs/examples/multi-debugcallback.c index 278a5b4a2e1e..758cfca1de9d 100644 --- a/docs/examples/multi-debugcallback.c +++ b/docs/examples/multi-debugcallback.c @@ -83,14 +83,14 @@ static void dump(const char *text, FILE *stream, unsigned char *ptr, fflush(stream); } -static int my_trace(CURL *handle, curl_infotype type, +static int my_trace(CURL *curl, curl_infotype type, unsigned char *data, size_t size, void *userp) { const char *text; (void)userp; - (void)handle; + (void)curl; switch(type) { case CURLINFO_TEXT: @@ -121,48 +121,48 @@ static int my_trace(CURL *handle, curl_infotype type, */ int main(void) { - CURL *http_handle; + CURL *curl; CURLcode res = curl_global_init(CURL_GLOBAL_ALL); if(res) return (int)res; - http_handle = curl_easy_init(); - if(http_handle) { + curl = curl_easy_init(); + if(curl) { - CURLM *multi_handle; + CURLM *multi; /* set the options (I left out a few, you get the point anyway) */ - curl_easy_setopt(http_handle, CURLOPT_URL, "https://www.example.com/"); + curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.com/"); - curl_easy_setopt(http_handle, CURLOPT_DEBUGFUNCTION, my_trace); - curl_easy_setopt(http_handle, CURLOPT_VERBOSE, 1L); + curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, my_trace); + curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); /* init a multi stack */ - multi_handle = curl_multi_init(); - if(multi_handle) { + multi = curl_multi_init(); + if(multi) { int still_running = 0; /* keep number of running handles */ /* add the individual transfers */ - curl_multi_add_handle(multi_handle, http_handle); + curl_multi_add_handle(multi, curl); do { - CURLMcode mc = curl_multi_perform(multi_handle, &still_running); + CURLMcode mc = curl_multi_perform(multi, &still_running); if(still_running) /* wait for activity, timeout or "nothing" */ - mc = curl_multi_poll(multi_handle, NULL, 0, 1000, NULL); + mc = curl_multi_poll(multi, NULL, 0, 1000, NULL); if(mc) break; } while(still_running); - curl_multi_cleanup(multi_handle); + curl_multi_cleanup(multi); } - curl_easy_cleanup(http_handle); + curl_easy_cleanup(curl); } curl_global_cleanup(); diff --git a/docs/examples/multi-double.c b/docs/examples/multi-double.c index 71ac7422d6d2..1149f21b78d7 100644 --- a/docs/examples/multi-double.c +++ b/docs/examples/multi-double.c @@ -36,52 +36,51 @@ */ int main(void) { - CURL *http_handle; - CURL *http_handle2; + CURL *curl; + CURL *curl2; CURLcode res = curl_global_init(CURL_GLOBAL_ALL); if(res) return (int)res; - http_handle = curl_easy_init(); - http_handle2 = curl_easy_init(); + curl = curl_easy_init(); + curl2 = curl_easy_init(); - if(http_handle && - http_handle2) { + if(curl && curl2) { - CURLM *multi_handle; + CURLM *multi; /* set options */ - curl_easy_setopt(http_handle, CURLOPT_URL, "https://www.example.com/"); + curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.com/"); /* set options */ - curl_easy_setopt(http_handle2, CURLOPT_URL, "http://localhost/"); + curl_easy_setopt(curl2, CURLOPT_URL, "http://localhost/"); /* init a multi stack */ - multi_handle = curl_multi_init(); - if(multi_handle) { + multi = curl_multi_init(); + if(multi) { int still_running = 1; /* keep number of running handles */ /* add the individual transfers */ - curl_multi_add_handle(multi_handle, http_handle); - curl_multi_add_handle(multi_handle, http_handle2); + curl_multi_add_handle(multi, curl); + curl_multi_add_handle(multi, curl2); while(still_running) { CURLMsg *msg; int queued; - CURLMcode mc = curl_multi_perform(multi_handle, &still_running); + CURLMcode mc = curl_multi_perform(multi, &still_running); if(still_running) /* wait for activity, timeout or "nothing" */ - mc = curl_multi_poll(multi_handle, NULL, 0, 1000, NULL); + mc = curl_multi_poll(multi, NULL, 0, 1000, NULL); if(mc) break; do { - msg = curl_multi_info_read(multi_handle, &queued); + msg = curl_multi_info_read(multi, &queued); if(msg) { if(msg->msg == CURLMSG_DONE) { /* a transfer ended */ @@ -91,15 +90,15 @@ int main(void) } while(msg); } - curl_multi_remove_handle(multi_handle, http_handle); - curl_multi_remove_handle(multi_handle, http_handle2); + curl_multi_remove_handle(multi, curl); + curl_multi_remove_handle(multi, curl2); - curl_multi_cleanup(multi_handle); + curl_multi_cleanup(multi); } } - curl_easy_cleanup(http_handle); - curl_easy_cleanup(http_handle2); + curl_easy_cleanup(curl); + curl_easy_cleanup(curl2); curl_global_cleanup(); diff --git a/docs/examples/multi-event.c b/docs/examples/multi-event.c index af77101b638a..abf907afe534 100644 --- a/docs/examples/multi-event.c +++ b/docs/examples/multi-event.c @@ -33,7 +33,7 @@ #include static struct event_base *base; -static CURLM *curl_handle; +static CURLM *multi; static struct event *timeout; struct curl_context { @@ -67,7 +67,7 @@ static void add_download(const char *url, int num) { char filename[50]; FILE *file; - CURL *handle; + CURL *curl; snprintf(filename, sizeof(filename), "%d.download", num); @@ -77,11 +77,11 @@ static void add_download(const char *url, int num) return; } - handle = curl_easy_init(); - curl_easy_setopt(handle, CURLOPT_WRITEDATA, file); - curl_easy_setopt(handle, CURLOPT_PRIVATE, file); - curl_easy_setopt(handle, CURLOPT_URL, url); - curl_multi_add_handle(curl_handle, handle); + curl = curl_easy_init(); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, file); + curl_easy_setopt(curl, CURLOPT_PRIVATE, file); + curl_easy_setopt(curl, CURLOPT_URL, url); + curl_multi_add_handle(multi, curl); fprintf(stderr, "Added download %s -> %s\n", url, filename); } @@ -90,10 +90,10 @@ static void check_multi_info(void) char *done_url; CURLMsg *message; int pending; - CURL *easy_handle; + CURL *curl; FILE *file; - while((message = curl_multi_info_read(curl_handle, &pending))) { + while((message = curl_multi_info_read(multi, &pending))) { switch(message->msg) { case CURLMSG_DONE: /* Do not use message data after calling curl_multi_remove_handle() and @@ -101,14 +101,14 @@ static void check_multi_info(void) "WARNING: The data the returned pointer points to does not survive calling curl_multi_cleanup, curl_multi_remove_handle or curl_easy_cleanup." */ - easy_handle = message->easy_handle; + curl = message->easy_handle; - curl_easy_getinfo(easy_handle, CURLINFO_EFFECTIVE_URL, &done_url); - curl_easy_getinfo(easy_handle, CURLINFO_PRIVATE, &file); + curl_easy_getinfo(curl, CURLINFO_EFFECTIVE_URL, &done_url); + curl_easy_getinfo(curl, CURLINFO_PRIVATE, &file); printf("%s DONE\n", done_url); - curl_multi_remove_handle(curl_handle, easy_handle); - curl_easy_cleanup(easy_handle); + curl_multi_remove_handle(multi, curl); + curl_easy_cleanup(curl); if(file) { fclose(file); } @@ -136,7 +136,7 @@ static void curl_perform(int fd, short event, void *arg) context = (struct curl_context *) arg; - curl_multi_socket_action(curl_handle, context->sockfd, flags, + curl_multi_socket_action(multi, context->sockfd, flags, &running_handles); check_multi_info(); @@ -148,7 +148,7 @@ static void on_timeout(evutil_socket_t fd, short events, void *arg) (void)fd; (void)events; (void)arg; - curl_multi_socket_action(curl_handle, CURL_SOCKET_TIMEOUT, 0, + curl_multi_socket_action(multi, CURL_SOCKET_TIMEOUT, 0, &running_handles); check_multi_info(); } @@ -172,13 +172,13 @@ static int start_timeout(CURLM *multi, long timeout_ms, void *userp) return 0; } -static int handle_socket(CURL *easy, curl_socket_t s, int action, void *userp, +static int handle_socket(CURL *curl, curl_socket_t s, int action, void *userp, void *socketp) { struct curl_context *curl_context; int events = 0; - (void)easy; + (void)curl; (void)userp; switch(action) { @@ -188,7 +188,7 @@ static int handle_socket(CURL *easy, curl_socket_t s, int action, void *userp, curl_context = socketp ? (struct curl_context *) socketp : create_curl_context(s); - curl_multi_assign(curl_handle, s, (void *) curl_context); + curl_multi_assign(multi, s, (void *) curl_context); if(action != CURL_POLL_IN) events |= EV_WRITE; @@ -207,7 +207,7 @@ static int handle_socket(CURL *easy, curl_socket_t s, int action, void *userp, if(socketp) { event_del(((struct curl_context*) socketp)->event); destroy_curl_context((struct curl_context*) socketp); - curl_multi_assign(curl_handle, s, NULL); + curl_multi_assign(multi, s, NULL); } break; default: @@ -233,10 +233,10 @@ int main(int argc, char **argv) base = event_base_new(); timeout = evtimer_new(base, on_timeout, NULL); - curl_handle = curl_multi_init(); - if(curl_handle) { - curl_multi_setopt(curl_handle, CURLMOPT_SOCKETFUNCTION, handle_socket); - curl_multi_setopt(curl_handle, CURLMOPT_TIMERFUNCTION, start_timeout); + multi = curl_multi_init(); + if(multi) { + curl_multi_setopt(multi, CURLMOPT_SOCKETFUNCTION, handle_socket); + curl_multi_setopt(multi, CURLMOPT_TIMERFUNCTION, start_timeout); while(argc-- > 1) { add_download(argv[argc], argc); @@ -244,7 +244,7 @@ int main(int argc, char **argv) event_base_dispatch(base); - curl_multi_cleanup(curl_handle); + curl_multi_cleanup(multi); } event_free(timeout); event_base_free(base); diff --git a/docs/examples/multi-formadd.c b/docs/examples/multi-formadd.c index 08d852ec6528..7a1b9eb95dec 100644 --- a/docs/examples/multi-formadd.c +++ b/docs/examples/multi-formadd.c @@ -79,10 +79,10 @@ int main(void) curl = curl_easy_init(); if(curl) { - CURLM *multi_handle; + CURLM *multi; - multi_handle = curl_multi_init(); - if(multi_handle) { + multi = curl_multi_init(); + if(multi) { int still_running = 0; @@ -96,21 +96,21 @@ int main(void) curl_easy_setopt(curl, CURLOPT_HTTPPOST, formpost); ) - curl_multi_add_handle(multi_handle, curl); + curl_multi_add_handle(multi, curl); do { - CURLMcode mc = curl_multi_perform(multi_handle, &still_running); + CURLMcode mc = curl_multi_perform(multi, &still_running); if(still_running) /* wait for activity, timeout or "nothing" */ - mc = curl_multi_poll(multi_handle, NULL, 0, 1000, NULL); + mc = curl_multi_poll(multi, NULL, 0, 1000, NULL); if(mc) break; } while(still_running); - curl_multi_cleanup(multi_handle); + curl_multi_cleanup(multi); } /* always cleanup */ diff --git a/docs/examples/multi-legacy.c b/docs/examples/multi-legacy.c index 19821ad6d327..93b50c169f4d 100644 --- a/docs/examples/multi-legacy.c +++ b/docs/examples/multi-legacy.c @@ -49,8 +49,8 @@ int main(void) { - CURL *handles[HANDLECOUNT]; - CURLM *multi_handle; + CURL *curl[HANDLECOUNT]; + CURLM *multi; int i; @@ -60,17 +60,17 @@ int main(void) /* Allocate one curl handle per transfer */ for(i = 0; i < HANDLECOUNT; i++) - handles[i] = curl_easy_init(); + curl[i] = curl_easy_init(); /* set the options (I left out a few, you get the point anyway) */ - curl_easy_setopt(handles[HTTP_HANDLE], CURLOPT_URL, "https://example.com"); + curl_easy_setopt(curl[HTTP_HANDLE], CURLOPT_URL, "https://example.com"); - curl_easy_setopt(handles[FTP_HANDLE], CURLOPT_URL, "ftp://example.com"); - curl_easy_setopt(handles[FTP_HANDLE], CURLOPT_UPLOAD, 1L); + curl_easy_setopt(curl[FTP_HANDLE], CURLOPT_URL, "ftp://example.com"); + curl_easy_setopt(curl[FTP_HANDLE], CURLOPT_UPLOAD, 1L); /* init a multi stack */ - multi_handle = curl_multi_init(); - if(multi_handle) { + multi = curl_multi_init(); + if(multi) { int still_running = 0; /* keep number of running handles */ @@ -79,10 +79,10 @@ int main(void) /* add the individual transfers */ for(i = 0; i < HANDLECOUNT; i++) - curl_multi_add_handle(multi_handle, handles[i]); + curl_multi_add_handle(multi, curl[i]); /* we start some action by calling perform right away */ - curl_multi_perform(multi_handle, &still_running); + curl_multi_perform(multi, &still_running); while(still_running) { @@ -105,7 +105,7 @@ int main(void) timeout.tv_sec = 1; timeout.tv_usec = 0; - curl_multi_timeout(multi_handle, &curl_timeo); + curl_multi_timeout(multi, &curl_timeo); if(curl_timeo >= 0) { #if defined(MSDOS) || defined(__AMIGA__) timeout.tv_sec = (time_t)(curl_timeo / 1000); @@ -123,7 +123,7 @@ int main(void) } /* get file descriptors from the transfers */ - mc = curl_multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd); + mc = curl_multi_fdset(multi, &fdread, &fdwrite, &fdexcep, &maxfd); if(mc != CURLM_OK) { fprintf(stderr, "curl_multi_fdset() failed, code %d.\n", mc); @@ -159,20 +159,20 @@ int main(void) break; case 0: /* timeout */ default: /* action */ - curl_multi_perform(multi_handle, &still_running); + curl_multi_perform(multi, &still_running); break; } } /* See how the transfers went */ /* !checksrc! disable EQUALSNULL 1 */ - while((msg = curl_multi_info_read(multi_handle, &msgs_left)) != NULL) { + while((msg = curl_multi_info_read(multi, &msgs_left)) != NULL) { if(msg->msg == CURLMSG_DONE) { int idx; /* Find out which handle this message is about */ for(idx = 0; idx < HANDLECOUNT; idx++) { - int found = (msg->easy_handle == handles[idx]); + int found = (msg->easy_handle == curl[idx]); if(found) break; } @@ -188,12 +188,12 @@ int main(void) } } - curl_multi_cleanup(multi_handle); + curl_multi_cleanup(multi); } /* Free the curl handles */ for(i = 0; i < HANDLECOUNT; i++) - curl_easy_cleanup(handles[i]); + curl_easy_cleanup(curl[i]); curl_global_cleanup(); diff --git a/docs/examples/multi-post.c b/docs/examples/multi-post.c index ac7d2f525205..c6cb60e898b0 100644 --- a/docs/examples/multi-post.c +++ b/docs/examples/multi-post.c @@ -46,10 +46,10 @@ int main(void) curl = curl_easy_init(); if(curl) { - CURLM *multi_handle; + CURLM *multi; - multi_handle = curl_multi_init(); - if(multi_handle) { + multi = curl_multi_init(); + if(multi) { int still_running = 0; /* Create the form */ @@ -82,20 +82,20 @@ int main(void) curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headerlist); curl_easy_setopt(curl, CURLOPT_MIMEPOST, form); - curl_multi_add_handle(multi_handle, curl); + curl_multi_add_handle(multi, curl); do { - CURLMcode mc = curl_multi_perform(multi_handle, &still_running); + CURLMcode mc = curl_multi_perform(multi, &still_running); if(still_running) /* wait for activity, timeout or "nothing" */ - mc = curl_multi_poll(multi_handle, NULL, 0, 1000, NULL); + mc = curl_multi_poll(multi, NULL, 0, 1000, NULL); if(mc) break; } while(still_running); - curl_multi_cleanup(multi_handle); + curl_multi_cleanup(multi); } /* always cleanup */ diff --git a/docs/examples/multi-single.c b/docs/examples/multi-single.c index 50736c720112..ee2676bae3fe 100644 --- a/docs/examples/multi-single.c +++ b/docs/examples/multi-single.c @@ -37,34 +37,34 @@ */ int main(void) { - CURL *http_handle; + CURL *curl; CURLcode res = curl_global_init(CURL_GLOBAL_ALL); if(res) return (int)res; - http_handle = curl_easy_init(); - if(http_handle) { + curl = curl_easy_init(); + if(curl) { - CURLM *multi_handle; + CURLM *multi; int still_running = 1; /* keep number of running handles */ /* set the options (I left out a few, you get the point anyway) */ - curl_easy_setopt(http_handle, CURLOPT_URL, "https://www.example.com/"); + curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.com/"); /* init a multi stack */ - multi_handle = curl_multi_init(); - if(multi_handle) { + multi = curl_multi_init(); + if(multi) { /* add the individual transfers */ - curl_multi_add_handle(multi_handle, http_handle); + curl_multi_add_handle(multi, curl); do { - CURLMcode mc = curl_multi_perform(multi_handle, &still_running); + CURLMcode mc = curl_multi_perform(multi, &still_running); if(!mc) /* wait for activity, timeout or "nothing" */ - mc = curl_multi_poll(multi_handle, NULL, 0, 1000, NULL); + mc = curl_multi_poll(multi, NULL, 0, 1000, NULL); if(mc) { fprintf(stderr, "curl_multi_poll() failed, code %d.\n", (int)mc); @@ -73,12 +73,12 @@ int main(void) } while(still_running); - curl_multi_remove_handle(multi_handle, http_handle); + curl_multi_remove_handle(multi, curl); - curl_multi_cleanup(multi_handle); + curl_multi_cleanup(multi); } - curl_easy_cleanup(http_handle); + curl_easy_cleanup(curl); } curl_global_cleanup(); diff --git a/docs/examples/multi-uv.c b/docs/examples/multi-uv.c index d2f18348e68a..de6beda2102c 100644 --- a/docs/examples/multi-uv.c +++ b/docs/examples/multi-uv.c @@ -85,7 +85,7 @@ static void add_download(const char *url, int num, CURLM *multi) { char filename[50]; FILE *file; - CURL *handle; + CURL *curl; snprintf(filename, sizeof(filename), "%d.download", num); @@ -95,11 +95,11 @@ static void add_download(const char *url, int num, CURLM *multi) return; } - handle = curl_easy_init(); - curl_easy_setopt(handle, CURLOPT_WRITEDATA, file); - curl_easy_setopt(handle, CURLOPT_PRIVATE, file); - curl_easy_setopt(handle, CURLOPT_URL, url); - curl_multi_add_handle(multi, handle); + curl = curl_easy_init(); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, file); + curl_easy_setopt(curl, CURLOPT_PRIVATE, file); + curl_easy_setopt(curl, CURLOPT_URL, url); + curl_multi_add_handle(multi, curl); fprintf(stderr, "Added download %s -> %s\n", url, filename); } @@ -108,7 +108,7 @@ static void check_multi_info(struct curl_context *context) char *done_url; CURLMsg *message; int pending; - CURL *easy_handle; + CURL *curl; FILE *file; while((message = curl_multi_info_read(context->uv->multi, &pending))) { @@ -119,14 +119,14 @@ static void check_multi_info(struct curl_context *context) "WARNING: The data the returned pointer points to does not survive calling curl_multi_cleanup, curl_multi_remove_handle or curl_easy_cleanup." */ - easy_handle = message->easy_handle; + curl = message->easy_handle; - curl_easy_getinfo(easy_handle, CURLINFO_EFFECTIVE_URL, &done_url); - curl_easy_getinfo(easy_handle, CURLINFO_PRIVATE, &file); + curl_easy_getinfo(curl, CURLINFO_EFFECTIVE_URL, &done_url); + curl_easy_getinfo(curl, CURLINFO_PRIVATE, &file); printf("%s DONE\n", done_url); - curl_multi_remove_handle(context->uv->multi, easy_handle); - curl_easy_cleanup(easy_handle); + curl_multi_remove_handle(context->uv->multi, curl); + curl_easy_cleanup(curl); if(file) { fclose(file); } @@ -186,13 +186,13 @@ static int cb_timeout(CURLM *multi, long timeout_ms, void *userp) } /* callback from libcurl to update socket activity to wait for */ -static int cb_socket(CURL *easy, curl_socket_t s, int action, +static int cb_socket(CURL *curl, curl_socket_t s, int action, void *userp, void *socketp) { struct datauv *uv = (struct datauv *)userp; struct curl_context *curl_context; int events = 0; - (void)easy; + (void)curl; switch(action) { case CURL_POLL_IN: diff --git a/docs/examples/pop3-multi.c b/docs/examples/pop3-multi.c index 4d418a7d09a7..d88d1193499d 100644 --- a/docs/examples/pop3-multi.c +++ b/docs/examples/pop3-multi.c @@ -47,10 +47,10 @@ int main(void) curl = curl_easy_init(); if(curl) { - CURLM *mcurl; + CURLM *multi; - mcurl = curl_multi_init(); - if(mcurl) { + multi = curl_multi_init(); + if(multi) { int still_running = 1; /* Set username and password */ @@ -61,14 +61,14 @@ int main(void) curl_easy_setopt(curl, CURLOPT_URL, "pop3://pop.example.com/1"); /* Tell the multi stack about our easy handle */ - curl_multi_add_handle(mcurl, curl); + curl_multi_add_handle(multi, curl); do { - CURLMcode mc = curl_multi_perform(mcurl, &still_running); + CURLMcode mc = curl_multi_perform(multi, &still_running); if(still_running) /* wait for activity, timeout or "nothing" */ - mc = curl_multi_poll(mcurl, NULL, 0, 1000, NULL); + mc = curl_multi_poll(multi, NULL, 0, 1000, NULL); if(mc) break; @@ -76,8 +76,8 @@ int main(void) } while(still_running); /* Always cleanup */ - curl_multi_remove_handle(mcurl, curl); - curl_multi_cleanup(mcurl); + curl_multi_remove_handle(multi, curl); + curl_multi_cleanup(multi); } curl_easy_cleanup(curl); } diff --git a/docs/examples/post-callback.c b/docs/examples/post-callback.c index 7c5a87e9acf7..ed5b4b197212 100644 --- a/docs/examples/post-callback.c +++ b/docs/examples/post-callback.c @@ -43,7 +43,7 @@ struct WriteThis { size_t sizeleft; }; -static size_t read_callback(char *dest, size_t size, size_t nmemb, void *userp) +static size_t read_cb(char *dest, size_t size, size_t nmemb, void *userp) { struct WriteThis *wt = (struct WriteThis *)userp; size_t buffer_size = size*nmemb; @@ -92,7 +92,7 @@ int main(void) curl_easy_setopt(curl, CURLOPT_POST, 1L); /* we want to use our own read function */ - curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_callback); + curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_cb); /* pointer to pass to our read function */ curl_easy_setopt(curl, CURLOPT_READDATA, &wt); diff --git a/docs/examples/postinmemory.c b/docs/examples/postinmemory.c index 50b3b6fe7b27..a6ff7fa3770c 100644 --- a/docs/examples/postinmemory.c +++ b/docs/examples/postinmemory.c @@ -35,7 +35,7 @@ struct MemoryStruct { size_t size; }; -static size_t WriteMemoryCallback(void *contents, size_t size, size_t nmemb, +static size_t write_cb(void *contents, size_t size, size_t nmemb, void *userp) { size_t realsize = size * nmemb; @@ -75,7 +75,7 @@ int main(void) curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.org/"); /* send all data to this function */ - curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, WriteMemoryCallback); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); /* we pass our 'chunk' struct to the callback function */ curl_easy_setopt(curl, CURLOPT_WRITEDATA, (void *)&chunk); diff --git a/docs/examples/progressfunc.c b/docs/examples/progressfunc.c index 35adc6c82d56..052620dcdf67 100644 --- a/docs/examples/progressfunc.c +++ b/docs/examples/progressfunc.c @@ -53,14 +53,19 @@ static int xferinfo(void *p, be used */ if((curtime - myp->lastruntime) >= MINIMAL_PROGRESS_FUNCTIONALITY_INTERVAL) { myp->lastruntime = curtime; - fprintf(stderr, "TOTAL TIME: %lu.%06lu\r\n", - (unsigned long)(curtime / 1000000), - (unsigned long)(curtime % 1000000)); + fprintf(stderr, "TOTAL TIME: %" CURL_FORMAT_CURL_OFF_T + ".%06" CURL_FORMAT_CURL_OFF_T "\r\n", + curtime / 1000000, + curtime % 1000000); } - fprintf(stderr, "UP: %lu of %lu DOWN: %lu of %lu\r\n", - (unsigned long)ulnow, (unsigned long)ultotal, - (unsigned long)dlnow, (unsigned long)dltotal); + fprintf(stderr, + "UP: " + "%" CURL_FORMAT_CURL_OFF_T " of %" CURL_FORMAT_CURL_OFF_T " " + "DOWN: " + "%" CURL_FORMAT_CURL_OFF_T " of %" CURL_FORMAT_CURL_OFF_T "\r\n", + ulnow, ultotal, + dlnow, dltotal); if(dlnow > STOP_DOWNLOAD_AFTER_THIS_MANY_BYTES) return 1; diff --git a/docs/examples/sepheaders.c b/docs/examples/sepheaders.c index cea07fd56698..85938dc223e4 100644 --- a/docs/examples/sepheaders.c +++ b/docs/examples/sepheaders.c @@ -30,7 +30,7 @@ #include -static size_t write_data(void *ptr, size_t size, size_t nmemb, void *stream) +static size_t write_cb(void *ptr, size_t size, size_t nmemb, void *stream) { size_t written = fwrite(ptr, size, nmemb, (FILE *)stream); return written; @@ -38,33 +38,33 @@ static size_t write_data(void *ptr, size_t size, size_t nmemb, void *stream) int main(void) { - CURL *curl_handle; + CURL *curl; CURLcode res = curl_global_init(CURL_GLOBAL_ALL); if(res) return (int)res; /* init the curl session */ - curl_handle = curl_easy_init(); - if(curl_handle) { + curl = curl_easy_init(); + if(curl) { static const char *headerfilename = "head.out"; FILE *headerfile; static const char *bodyfilename = "body.out"; FILE *bodyfile; /* set URL to get */ - curl_easy_setopt(curl_handle, CURLOPT_URL, "https://example.com"); + curl_easy_setopt(curl, CURLOPT_URL, "https://example.com"); /* no progress meter please */ - curl_easy_setopt(curl_handle, CURLOPT_NOPROGRESS, 1L); + curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 1L); /* send all data to this function */ - curl_easy_setopt(curl_handle, CURLOPT_WRITEFUNCTION, write_data); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); /* open the header file */ headerfile = fopen(headerfilename, "wb"); if(!headerfile) { - curl_easy_cleanup(curl_handle); + curl_easy_cleanup(curl); curl_global_cleanup(); return -1; } @@ -72,20 +72,20 @@ int main(void) /* open the body file */ bodyfile = fopen(bodyfilename, "wb"); if(!bodyfile) { - curl_easy_cleanup(curl_handle); + curl_easy_cleanup(curl); fclose(headerfile); curl_global_cleanup(); return -1; } /* we want the headers be written to this file handle */ - curl_easy_setopt(curl_handle, CURLOPT_HEADERDATA, headerfile); + curl_easy_setopt(curl, CURLOPT_HEADERDATA, headerfile); /* we want the body be written to this file handle instead of stdout */ - curl_easy_setopt(curl_handle, CURLOPT_WRITEDATA, bodyfile); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, bodyfile); /* get it! */ - res = curl_easy_perform(curl_handle); + res = curl_easy_perform(curl); /* close the header file */ fclose(headerfile); @@ -94,7 +94,7 @@ int main(void) fclose(bodyfile); /* cleanup curl stuff */ - curl_easy_cleanup(curl_handle); + curl_easy_cleanup(curl); } curl_global_cleanup(); diff --git a/docs/examples/sessioninfo.c b/docs/examples/sessioninfo.c index c7ea52ccc2e8..e90b387da06e 100644 --- a/docs/examples/sessioninfo.c +++ b/docs/examples/sessioninfo.c @@ -43,7 +43,7 @@ static CURL *curl; -static size_t wrfu(void *ptr, size_t size, size_t nmemb, void *stream) +static size_t write_cb(void *ptr, size_t size, size_t nmemb, void *stream) { const struct curl_tlssessioninfo *info; CURLcode res; @@ -103,7 +103,7 @@ int main(void) curl = curl_easy_init(); if(curl) { curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.com/"); - curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, wrfu); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); curl_easy_setopt(curl, CURLOPT_VERBOSE, 0L); res = curl_easy_perform(curl); diff --git a/docs/examples/sftpget.c b/docs/examples/sftpget.c index 36653c5b828c..5eaf3416e8de 100644 --- a/docs/examples/sftpget.c +++ b/docs/examples/sftpget.c @@ -45,7 +45,7 @@ struct FtpFile { FILE *stream; }; -static size_t my_fwrite(void *buffer, size_t size, size_t nmemb, +static size_t write_cb(void *buffer, size_t size, size_t nmemb, void *stream) { struct FtpFile *out = (struct FtpFile *)stream; @@ -79,7 +79,7 @@ int main(void) curl_easy_setopt(curl, CURLOPT_URL, "sftp://user@server/home/user/file.txt"); /* Define our callback to get called when there is data to be written */ - curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, my_fwrite); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); /* Set a pointer to our struct to pass to the callback */ curl_easy_setopt(curl, CURLOPT_WRITEDATA, &ftpfile); diff --git a/docs/examples/sftpuploadresume.c b/docs/examples/sftpuploadresume.c index 8745abe78b8f..c15d103b5f0b 100644 --- a/docs/examples/sftpuploadresume.c +++ b/docs/examples/sftpuploadresume.c @@ -31,7 +31,7 @@ #include /* read data to upload */ -static size_t readfunc(char *ptr, size_t size, size_t nmemb, void *stream) +static size_t read_cb(char *ptr, size_t size, size_t nmemb, void *stream) { FILE *f = (FILE *)stream; size_t n; @@ -49,34 +49,37 @@ static size_t readfunc(char *ptr, size_t size, size_t nmemb, void *stream) */ static curl_off_t sftpGetRemoteFileSize(const char *i_remoteFile) { - CURLcode result = CURLE_GOT_NOTHING; curl_off_t remoteFileSizeByte = -1; - CURL *curlHandlePtr = curl_easy_init(); - - curl_easy_setopt(curlHandlePtr, CURLOPT_VERBOSE, 1L); - - curl_easy_setopt(curlHandlePtr, CURLOPT_URL, i_remoteFile); - curl_easy_setopt(curlHandlePtr, CURLOPT_NOPROGRESS, 1L); - curl_easy_setopt(curlHandlePtr, CURLOPT_NOBODY, 1L); - curl_easy_setopt(curlHandlePtr, CURLOPT_HEADER, 1L); - curl_easy_setopt(curlHandlePtr, CURLOPT_FILETIME, 1L); - - result = curl_easy_perform(curlHandlePtr); - if(CURLE_OK == result) { - result = curl_easy_getinfo(curlHandlePtr, - CURLINFO_CONTENT_LENGTH_DOWNLOAD_T, - &remoteFileSizeByte); - if(result) - return -1; - printf("filesize: %lu\n", (unsigned long)remoteFileSizeByte); + CURL *curl = curl_easy_init(); + + if(curl) { + CURLcode result; + + curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); + + curl_easy_setopt(curl, CURLOPT_URL, i_remoteFile); + curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 1L); + curl_easy_setopt(curl, CURLOPT_NOBODY, 1L); + curl_easy_setopt(curl, CURLOPT_HEADER, 1L); + curl_easy_setopt(curl, CURLOPT_FILETIME, 1L); + + result = curl_easy_perform(curl); + if(CURLE_OK == result) { + result = curl_easy_getinfo(curl, + CURLINFO_CONTENT_LENGTH_DOWNLOAD_T, + &remoteFileSizeByte); + if(result) + return -1; + printf("filesize: %" CURL_FORMAT_CURL_OFF_T "\n", remoteFileSizeByte); + } + curl_easy_cleanup(curl); } - curl_easy_cleanup(curlHandlePtr); return remoteFileSizeByte; } -static int sftpResumeUpload(CURL *curlhandle, const char *remotepath, +static int sftpResumeUpload(CURL *curl, const char *remotepath, const char *localpath) { FILE *f = NULL; @@ -96,18 +99,18 @@ static int sftpResumeUpload(CURL *curlhandle, const char *remotepath, return 0; } - curl_easy_setopt(curlhandle, CURLOPT_UPLOAD, 1L); - curl_easy_setopt(curlhandle, CURLOPT_URL, remotepath); - curl_easy_setopt(curlhandle, CURLOPT_READFUNCTION, readfunc); - curl_easy_setopt(curlhandle, CURLOPT_READDATA, f); + curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L); + curl_easy_setopt(curl, CURLOPT_URL, remotepath); + curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_cb); + curl_easy_setopt(curl, CURLOPT_READDATA, f); #if defined(_WIN32) && !defined(UNDER_CE) _fseeki64(f, remoteFileSizeByte, SEEK_SET); #else fseek(f, (long)remoteFileSizeByte, SEEK_SET); #endif - curl_easy_setopt(curlhandle, CURLOPT_APPEND, 1L); - result = curl_easy_perform(curlhandle); + curl_easy_setopt(curl, CURLOPT_APPEND, 1L); + result = curl_easy_perform(curl); fclose(f); @@ -121,22 +124,22 @@ static int sftpResumeUpload(CURL *curlhandle, const char *remotepath, int main(void) { - CURL *curlhandle = NULL; + CURL *curl = NULL; CURLcode res = curl_global_init(CURL_GLOBAL_ALL); if(res) return (int)res; - curlhandle = curl_easy_init(); - if(curlhandle) { + curl = curl_easy_init(); + if(curl) { const char *remote = "sftp://user:pass@example.com/path/filename"; const char *filename = "filename"; - if(!sftpResumeUpload(curlhandle, remote, filename)) { + if(!sftpResumeUpload(curl, remote, filename)) { printf("resumed upload using curl %s failed\n", curl_version()); } - curl_easy_cleanup(curlhandle); + curl_easy_cleanup(curl); } curl_global_cleanup(); diff --git a/docs/examples/shared-connection-cache.c b/docs/examples/shared-connection-cache.c index a8549d776668..4af62fee943c 100644 --- a/docs/examples/shared-connection-cache.c +++ b/docs/examples/shared-connection-cache.c @@ -28,19 +28,19 @@ #include #include -static void my_lock(CURL *handle, curl_lock_data data, +static void my_lock(CURL *curl, curl_lock_data data, curl_lock_access laccess, void *useptr) { - (void)handle; + (void)curl; (void)data; (void)laccess; (void)useptr; fprintf(stderr, "-> Mutex lock\n"); } -static void my_unlock(CURL *handle, curl_lock_data data, void *useptr) +static void my_unlock(CURL *curl, curl_lock_data data, void *useptr) { - (void)handle; + (void)curl; (void)data; (void)useptr; fprintf(stderr, "<- Mutex unlock\n"); diff --git a/docs/examples/simplessl.c b/docs/examples/simplessl.c index 5da79a79a068..9fc2e4148405 100644 --- a/docs/examples/simplessl.c +++ b/docs/examples/simplessl.c @@ -49,7 +49,7 @@ int main(void) { - CURL *curl; + CURL *curl = NULL; CURLcode res; FILE *headerfile; const char *pPassphrase = NULL; @@ -61,98 +61,89 @@ int main(void) const char *pKeyName; const char *pKeyType; - const char *pEngine; - #ifdef USE_ENGINE pKeyName = "rsa_test"; pKeyType = "ENG"; - pEngine = "chil"; /* for nCipher HSM... */ #else pKeyName = "testkey.pem"; pKeyType = "PEM"; - pEngine = NULL; #endif - headerfile = fopen(pHeaderFile, "wb"); - if(!headerfile) - return 1; - res = curl_global_init(CURL_GLOBAL_ALL); if(res) { - fclose(headerfile); return (int)res; } + headerfile = fopen(pHeaderFile, "wb"); + if(!headerfile) + goto error; + curl = curl_easy_init(); - if(curl) { - /* what call to write: */ - curl_easy_setopt(curl, CURLOPT_URL, "HTTPS://secure.site.example"); - curl_easy_setopt(curl, CURLOPT_HEADERDATA, headerfile); - -#ifdef _MSC_VER -#pragma warning(push) -#pragma warning(disable:4127) /* conditional expression is constant */ -#endif - do { /* dummy loop, just to break out from */ - if(pEngine) { - /* use crypto engine */ - if(curl_easy_setopt(curl, CURLOPT_SSLENGINE, pEngine) != CURLE_OK) { - /* load the crypto engine */ - fprintf(stderr, "cannot set crypto engine\n"); - break; - } - if(curl_easy_setopt(curl, CURLOPT_SSLENGINE_DEFAULT, 1L) != CURLE_OK) { - /* set the crypto engine as default */ - /* only needed for the first time you load - an engine in a curl object... */ - fprintf(stderr, "cannot set crypto engine as default\n"); - break; - } - } - /* cert is stored PEM coded in file... */ - /* since PEM is default, we needn't set it for PEM */ - curl_easy_setopt(curl, CURLOPT_SSLCERTTYPE, "PEM"); - - /* set the cert for client authentication */ - curl_easy_setopt(curl, CURLOPT_SSLCERT, pCertFile); - - /* sorry, for engine we must set the passphrase - (if the key has one...) */ - if(pPassphrase) - curl_easy_setopt(curl, CURLOPT_KEYPASSWD, pPassphrase); - - /* if we use a key stored in a crypto engine, - we must set the key type to "ENG" */ - curl_easy_setopt(curl, CURLOPT_SSLKEYTYPE, pKeyType); - - /* set the private key (file or ID in engine) */ - curl_easy_setopt(curl, CURLOPT_SSLKEY, pKeyName); - - /* set the file with the certs validating the server */ - curl_easy_setopt(curl, CURLOPT_CAINFO, pCACertFile); - - /* disconnect if we cannot validate server's cert */ - curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 1L); - - /* Perform the request, res gets the return code */ - res = curl_easy_perform(curl); - /* Check for errors */ - if(res != CURLE_OK) - fprintf(stderr, "curl_easy_perform() failed: %s\n", - curl_easy_strerror(res)); - - /* we are done... */ - } while(0); -#ifdef _MSC_VER -#pragma warning(pop) + if(!curl) + goto error; + + /* what call to write: */ + curl_easy_setopt(curl, CURLOPT_URL, "HTTPS://secure.site.example"); + curl_easy_setopt(curl, CURLOPT_HEADERDATA, headerfile); + +#ifdef USE_ENGINE + /* use crypto engine. nCipher HSM... */ + if(curl_easy_setopt(curl, CURLOPT_SSLENGINE, "chil") != CURLE_OK) { + /* load the crypto engine */ + fprintf(stderr, "cannot set crypto engine\n"); + goto error; + } + if(curl_easy_setopt(curl, CURLOPT_SSLENGINE_DEFAULT, 1L) != CURLE_OK) { + /* set the crypto engine as default */ + /* only needed for the first time you load + an engine in a curl object... */ + fprintf(stderr, "cannot set crypto engine as default\n"); + goto error; + } #endif - /* always cleanup */ + + /* cert is stored PEM coded in file... */ + /* since PEM is default, we needn't set it for PEM */ + curl_easy_setopt(curl, CURLOPT_SSLCERTTYPE, "PEM"); + + /* set the cert for client authentication */ + curl_easy_setopt(curl, CURLOPT_SSLCERT, pCertFile); + + /* sorry, for engine we must set the passphrase + (if the key has one...) */ + if(pPassphrase) + curl_easy_setopt(curl, CURLOPT_KEYPASSWD, pPassphrase); + + /* if we use a key stored in a crypto engine, + we must set the key type to "ENG" */ + curl_easy_setopt(curl, CURLOPT_SSLKEYTYPE, pKeyType); + + /* set the private key (file or ID in engine) */ + curl_easy_setopt(curl, CURLOPT_SSLKEY, pKeyName); + + /* set the file with the certs validating the server */ + curl_easy_setopt(curl, CURLOPT_CAINFO, pCACertFile); + + /* disconnect if we cannot validate server's cert */ + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 1L); + + /* Perform the request, res gets the return code */ + res = curl_easy_perform(curl); + /* Check for errors */ + if(res != CURLE_OK) + fprintf(stderr, "curl_easy_perform() failed: %s\n", + curl_easy_strerror(res)); + +error: + + /* always cleanup */ + if(curl) curl_easy_cleanup(curl); - } - curl_global_cleanup(); + if(headerfile) + fclose(headerfile); - fclose(headerfile); + curl_global_cleanup(); - return 0; + return (int)res; } diff --git a/docs/examples/smooth-gtk-thread.c b/docs/examples/smooth-gtk-thread.c index 5a0bb2d05e97..0fcffe250188 100644 --- a/docs/examples/smooth-gtk-thread.c +++ b/docs/examples/smooth-gtk-thread.c @@ -60,7 +60,7 @@ const char * const urls[]= { "90030" }; -size_t write_file(void *ptr, size_t size, size_t nmemb, FILE *stream) +size_t write_cb(void *ptr, size_t size, size_t nmemb, FILE *stream) { return fwrite(ptr, size, nmemb, stream); } @@ -80,7 +80,7 @@ static void run_one(gchar *http, int j) /* Write to the file */ curl_easy_setopt(curl, CURLOPT_WRITEDATA, outfile); - curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_file); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); (void)curl_easy_perform(curl); fclose(outfile); diff --git a/docs/examples/smtp-authzid.c b/docs/examples/smtp-authzid.c index 758a7fdaaf2a..539997d945de 100644 --- a/docs/examples/smtp-authzid.c +++ b/docs/examples/smtp-authzid.c @@ -67,11 +67,12 @@ struct upload_status { size_t bytes_read; }; -static size_t payload_source(char *ptr, size_t size, size_t nmemb, void *userp) +static size_t read_cb(char *ptr, size_t size, size_t nmemb, void *userp) { struct upload_status *upload_ctx = (struct upload_status *)userp; const char *data; size_t room = size * nmemb; + size_t len; if((size == 0) || (nmemb == 0) || ((size*nmemb) < 1)) { return 0; @@ -79,17 +80,13 @@ static size_t payload_source(char *ptr, size_t size, size_t nmemb, void *userp) data = &payload_text[upload_ctx->bytes_read]; - if(data) { - size_t len = strlen(data); - if(room < len) - len = room; - memcpy(ptr, data, len); - upload_ctx->bytes_read += len; + len = strlen(data); + if(room < len) + len = room; + memcpy(ptr, data, len); + upload_ctx->bytes_read += len; - return len; - } - - return 0; + return len; } int main(void) @@ -136,7 +133,7 @@ int main(void) /* We are using a callback function to specify the payload (the headers and * body of the message). You could just use the CURLOPT_READDATA option to * specify a FILE pointer to read from. */ - curl_easy_setopt(curl, CURLOPT_READFUNCTION, payload_source); + curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_cb); curl_easy_setopt(curl, CURLOPT_READDATA, &upload_ctx); curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L); diff --git a/docs/examples/smtp-mail.c b/docs/examples/smtp-mail.c index d3f4346b8c0a..39aa86a81828 100644 --- a/docs/examples/smtp-mail.c +++ b/docs/examples/smtp-mail.c @@ -64,11 +64,12 @@ struct upload_status { size_t bytes_read; }; -static size_t payload_source(char *ptr, size_t size, size_t nmemb, void *userp) +static size_t read_cb(char *ptr, size_t size, size_t nmemb, void *userp) { struct upload_status *upload_ctx = (struct upload_status *)userp; const char *data; size_t room = size * nmemb; + size_t len; if((size == 0) || (nmemb == 0) || ((size*nmemb) < 1)) { return 0; @@ -76,17 +77,13 @@ static size_t payload_source(char *ptr, size_t size, size_t nmemb, void *userp) data = &payload_text[upload_ctx->bytes_read]; - if(data) { - size_t len = strlen(data); - if(room < len) - len = room; - memcpy(ptr, data, len); - upload_ctx->bytes_read += len; + len = strlen(data); + if(room < len) + len = room; + memcpy(ptr, data, len); + upload_ctx->bytes_read += len; - return len; - } - - return 0; + return len; } int main(void) @@ -124,7 +121,7 @@ int main(void) /* We are using a callback function to specify the payload (the headers and * body of the message). You could just use the CURLOPT_READDATA option to * specify a FILE pointer to read from. */ - curl_easy_setopt(curl, CURLOPT_READFUNCTION, payload_source); + curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_cb); curl_easy_setopt(curl, CURLOPT_READDATA, &upload_ctx); curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L); diff --git a/docs/examples/smtp-multi.c b/docs/examples/smtp-multi.c index f7619465ee17..3dabfbb9801e 100644 --- a/docs/examples/smtp-multi.c +++ b/docs/examples/smtp-multi.c @@ -57,11 +57,12 @@ struct upload_status { size_t bytes_read; }; -static size_t payload_source(char *ptr, size_t size, size_t nmemb, void *userp) +static size_t read_cb(char *ptr, size_t size, size_t nmemb, void *userp) { struct upload_status *upload_ctx = (struct upload_status *)userp; const char *data; size_t room = size * nmemb; + size_t len; if((size == 0) || (nmemb == 0) || ((size*nmemb) < 1)) { return 0; @@ -69,17 +70,13 @@ static size_t payload_source(char *ptr, size_t size, size_t nmemb, void *userp) data = &payload_text[upload_ctx->bytes_read]; - if(data) { - size_t len = strlen(data); - if(room < len) - len = room; - memcpy(ptr, data, len); - upload_ctx->bytes_read += len; + len = strlen(data); + if(room < len) + len = room; + memcpy(ptr, data, len); + upload_ctx->bytes_read += len; - return len; - } - - return 0; + return len; } int main(void) @@ -92,10 +89,10 @@ int main(void) curl = curl_easy_init(); if(curl) { - CURLM *mcurl; + CURLM *multi; - mcurl = curl_multi_init(); - if(mcurl) { + multi = curl_multi_init(); + if(multi) { int still_running = 1; struct curl_slist *recipients = NULL; struct upload_status upload_ctx = { 0 }; @@ -122,19 +119,19 @@ int main(void) /* We are using a callback function to specify the payload (the headers * and body of the message). You could just use the CURLOPT_READDATA * option to specify a FILE pointer to read from. */ - curl_easy_setopt(curl, CURLOPT_READFUNCTION, payload_source); + curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_cb); curl_easy_setopt(curl, CURLOPT_READDATA, &upload_ctx); curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L); /* Tell the multi stack about our easy handle */ - curl_multi_add_handle(mcurl, curl); + curl_multi_add_handle(multi, curl); do { - CURLMcode mc = curl_multi_perform(mcurl, &still_running); + CURLMcode mc = curl_multi_perform(multi, &still_running); if(still_running) /* wait for activity, timeout or "nothing" */ - mc = curl_multi_poll(mcurl, NULL, 0, 1000, NULL); + mc = curl_multi_poll(multi, NULL, 0, 1000, NULL); if(mc) break; @@ -145,8 +142,8 @@ int main(void) curl_slist_free_all(recipients); /* Always cleanup */ - curl_multi_remove_handle(mcurl, curl); - curl_multi_cleanup(mcurl); + curl_multi_remove_handle(multi, curl); + curl_multi_cleanup(multi); } curl_easy_cleanup(curl); } diff --git a/docs/examples/smtp-ssl.c b/docs/examples/smtp-ssl.c index ca73b73fca9a..5391f3e22297 100644 --- a/docs/examples/smtp-ssl.c +++ b/docs/examples/smtp-ssl.c @@ -61,11 +61,12 @@ struct upload_status { size_t bytes_read; }; -static size_t payload_source(char *ptr, size_t size, size_t nmemb, void *userp) +static size_t read_cb(char *ptr, size_t size, size_t nmemb, void *userp) { struct upload_status *upload_ctx = (struct upload_status *)userp; const char *data; size_t room = size * nmemb; + size_t len; if((size == 0) || (nmemb == 0) || ((size*nmemb) < 1)) { return 0; @@ -73,17 +74,13 @@ static size_t payload_source(char *ptr, size_t size, size_t nmemb, void *userp) data = &payload_text[upload_ctx->bytes_read]; - if(data) { - size_t len = strlen(data); - if(room < len) - len = room; - memcpy(ptr, data, len); - upload_ctx->bytes_read += len; + len = strlen(data); + if(room < len) + len = room; + memcpy(ptr, data, len); + upload_ctx->bytes_read += len; - return len; - } - - return 0; + return len; } int main(void) @@ -146,7 +143,7 @@ int main(void) /* We are using a callback function to specify the payload (the headers and * body of the message). You could just use the CURLOPT_READDATA option to * specify a FILE pointer to read from. */ - curl_easy_setopt(curl, CURLOPT_READFUNCTION, payload_source); + curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_cb); curl_easy_setopt(curl, CURLOPT_READDATA, &upload_ctx); curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L); diff --git a/docs/examples/smtp-tls.c b/docs/examples/smtp-tls.c index 4f7379529c1e..b2ea769b21f5 100644 --- a/docs/examples/smtp-tls.c +++ b/docs/examples/smtp-tls.c @@ -61,11 +61,12 @@ struct upload_status { size_t bytes_read; }; -static size_t payload_source(char *ptr, size_t size, size_t nmemb, void *userp) +static size_t read_cb(char *ptr, size_t size, size_t nmemb, void *userp) { struct upload_status *upload_ctx = (struct upload_status *)userp; const char *data; size_t room = size * nmemb; + size_t len; if((size == 0) || (nmemb == 0) || ((size*nmemb) < 1)) { return 0; @@ -73,17 +74,13 @@ static size_t payload_source(char *ptr, size_t size, size_t nmemb, void *userp) data = &payload_text[upload_ctx->bytes_read]; - if(data) { - size_t len = strlen(data); - if(room < len) - len = room; - memcpy(ptr, data, len); - upload_ctx->bytes_read += len; + len = strlen(data); + if(room < len) + len = room; + memcpy(ptr, data, len); + upload_ctx->bytes_read += len; - return len; - } - - return 0; + return len; } int main(void) @@ -148,7 +145,7 @@ int main(void) /* We are using a callback function to specify the payload (the headers and * body of the message). You could just use the CURLOPT_READDATA option to * specify a FILE pointer to read from. */ - curl_easy_setopt(curl, CURLOPT_READFUNCTION, payload_source); + curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_cb); curl_easy_setopt(curl, CURLOPT_READDATA, &upload_ctx); curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L); diff --git a/docs/examples/synctime.c b/docs/examples/synctime.c index da2c7ea0f362..43fe5d312eca 100644 --- a/docs/examples/synctime.c +++ b/docs/examples/synctime.c @@ -117,7 +117,7 @@ static SYSTEMTIME LOCALTime; #define HTTP_COMMAND_HEAD 0 #define HTTP_COMMAND_GET 1 -static size_t SyncTime_CURL_WriteOutput(void *ptr, size_t size, size_t nmemb, +static size_t write_cb(void *ptr, size_t size, size_t nmemb, void *stream) { fwrite(ptr, size, nmemb, stream); @@ -187,7 +187,7 @@ static void SyncTime_CURL_Init(CURL *curl, const char *proxy_port, curl_easy_setopt(curl, CURLOPT_PROXYUSERPWD, proxy_user_password); curl_easy_setopt(curl, CURLOPT_USERAGENT, SYNCTIME_UA); - curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, SyncTime_CURL_WriteOutput); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); curl_easy_setopt(curl, CURLOPT_HEADERFUNCTION, SyncTime_CURL_WriteHeader); } diff --git a/docs/examples/url2file.c b/docs/examples/url2file.c index 8e9e01db15df..a0523f62db60 100644 --- a/docs/examples/url2file.c +++ b/docs/examples/url2file.c @@ -30,7 +30,7 @@ #include -static size_t write_data(void *ptr, size_t size, size_t nmemb, void *stream) +static size_t write_cb(void *ptr, size_t size, size_t nmemb, void *stream) { size_t written = fwrite(ptr, size, nmemb, (FILE *)stream); return written; @@ -41,7 +41,7 @@ int main(int argc, char *argv[]) static const char *pagefilename = "page.out"; CURLcode res; - CURL *curl_handle; + CURL *curl; if(argc < 2) { printf("Usage: %s \n", argv[0]); @@ -55,38 +55,38 @@ int main(int argc, char *argv[]) } /* init the curl session */ - curl_handle = curl_easy_init(); - if(curl_handle) { + curl = curl_easy_init(); + if(curl) { FILE *pagefile; /* set URL to get here */ - curl_easy_setopt(curl_handle, CURLOPT_URL, argv[1]); + curl_easy_setopt(curl, CURLOPT_URL, argv[1]); /* Switch on full protocol/debug output while testing */ - curl_easy_setopt(curl_handle, CURLOPT_VERBOSE, 1L); + curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); /* disable progress meter, set to 0L to enable it */ - curl_easy_setopt(curl_handle, CURLOPT_NOPROGRESS, 1L); + curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 1L); /* send all data to this function */ - curl_easy_setopt(curl_handle, CURLOPT_WRITEFUNCTION, write_data); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); /* open the file */ pagefile = fopen(pagefilename, "wb"); if(pagefile) { /* write the page body to this file handle */ - curl_easy_setopt(curl_handle, CURLOPT_WRITEDATA, pagefile); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, pagefile); /* get it! */ - res = curl_easy_perform(curl_handle); + res = curl_easy_perform(curl); /* close the header file */ fclose(pagefile); } /* cleanup curl stuff */ - curl_easy_cleanup(curl_handle); + curl_easy_cleanup(curl); } curl_global_cleanup(); diff --git a/docs/examples/usercertinmem.c b/docs/examples/usercertinmem.c index c53fcde9cbce..175dae11514f 100644 --- a/docs/examples/usercertinmem.c +++ b/docs/examples/usercertinmem.c @@ -156,34 +156,34 @@ static CURLcode sslctx_function(CURL *curl, void *sslctx, void *pointer) int main(void) { - CURL *ch; + CURL *curl; CURLcode res = curl_global_init(CURL_GLOBAL_ALL); if(res) return (int)res; - ch = curl_easy_init(); - if(ch) { - curl_easy_setopt(ch, CURLOPT_VERBOSE, 0L); - curl_easy_setopt(ch, CURLOPT_HEADER, 0L); - curl_easy_setopt(ch, CURLOPT_NOPROGRESS, 1L); - curl_easy_setopt(ch, CURLOPT_NOSIGNAL, 1L); - curl_easy_setopt(ch, CURLOPT_WRITEFUNCTION, writefunction); - curl_easy_setopt(ch, CURLOPT_WRITEDATA, stdout); - curl_easy_setopt(ch, CURLOPT_HEADERFUNCTION, writefunction); - curl_easy_setopt(ch, CURLOPT_HEADERDATA, stderr); - curl_easy_setopt(ch, CURLOPT_SSLCERTTYPE, "PEM"); + curl = curl_easy_init(); + if(curl) { + curl_easy_setopt(curl, CURLOPT_VERBOSE, 0L); + curl_easy_setopt(curl, CURLOPT_HEADER, 0L); + curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 1L); + curl_easy_setopt(curl, CURLOPT_NOSIGNAL, 1L); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, writefunction); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, stdout); + curl_easy_setopt(curl, CURLOPT_HEADERFUNCTION, writefunction); + curl_easy_setopt(curl, CURLOPT_HEADERDATA, stderr); + curl_easy_setopt(curl, CURLOPT_SSLCERTTYPE, "PEM"); /* both VERIFYPEER and VERIFYHOST are set to 0 in this case because there is no CA certificate */ + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L); + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L); - curl_easy_setopt(ch, CURLOPT_SSL_VERIFYPEER, 0L); - curl_easy_setopt(ch, CURLOPT_SSL_VERIFYHOST, 0L); - curl_easy_setopt(ch, CURLOPT_URL, "https://www.example.com/"); - curl_easy_setopt(ch, CURLOPT_SSLKEYTYPE, "PEM"); + curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.com/"); + curl_easy_setopt(curl, CURLOPT_SSLKEYTYPE, "PEM"); /* first try: retrieve page without user certificate and key -> fails */ - res = curl_easy_perform(ch); + res = curl_easy_perform(curl); if(res == CURLE_OK) printf("*** transfer succeeded ***\n"); else @@ -193,14 +193,14 @@ int main(void) * load the certificate and key by installing a function doing * the necessary "modifications" to the SSL CONTEXT just before link init */ - curl_easy_setopt(ch, CURLOPT_SSL_CTX_FUNCTION, sslctx_function); - res = curl_easy_perform(ch); + curl_easy_setopt(curl, CURLOPT_SSL_CTX_FUNCTION, sslctx_function); + res = curl_easy_perform(curl); if(res == CURLE_OK) printf("*** transfer succeeded ***\n"); else printf("*** transfer failed ***\n"); - curl_easy_cleanup(ch); + curl_easy_cleanup(curl); } curl_global_cleanup(); return (int)res; diff --git a/docs/examples/websocket-cb.c b/docs/examples/websocket-cb.c index aa81d89ab126..78899826fb53 100644 --- a/docs/examples/websocket-cb.c +++ b/docs/examples/websocket-cb.c @@ -28,11 +28,11 @@ #include #include -static size_t writecb(char *b, size_t size, size_t nitems, void *p) +static size_t write_cb(char *b, size_t size, size_t nitems, void *p) { - CURL *easy = p; + CURL *curl = p; size_t i; - const struct curl_ws_frame *frame = curl_ws_meta(easy); + const struct curl_ws_frame *frame = curl_ws_meta(curl); fprintf(stderr, "Type: %s\n", frame->flags & CURLWS_BINARY ? "binary" : "text"); fprintf(stderr, "Bytes: %u", (unsigned int)(nitems * size)); @@ -53,7 +53,7 @@ int main(void) if(curl) { curl_easy_setopt(curl, CURLOPT_URL, "wss://example.com"); - curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, writecb); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); /* pass the easy handle to the callback */ curl_easy_setopt(curl, CURLOPT_WRITEDATA, curl); diff --git a/docs/examples/websocket-updown.c b/docs/examples/websocket-updown.c index f95c151cacd1..88d7b6e6e9f4 100644 --- a/docs/examples/websocket-updown.c +++ b/docs/examples/websocket-updown.c @@ -29,12 +29,12 @@ #include #include -static size_t writecb(char *b, size_t size, size_t nitems, void *p) +static size_t write_cb(char *b, size_t size, size_t nitems, void *p) { - CURL *easy = p; + CURL *curl = p; size_t i; unsigned int blen = (unsigned int)(nitems * size); - const struct curl_ws_frame *frame = curl_ws_meta(easy); + const struct curl_ws_frame *frame = curl_ws_meta(curl); fprintf(stderr, "Type: %s\n", frame->flags & CURLWS_BINARY ? "binary" : "text"); if(frame->flags & CURLWS_BINARY) { @@ -49,13 +49,13 @@ static size_t writecb(char *b, size_t size, size_t nitems, void *p) } struct read_ctx { - CURL *easy; + CURL *curl; char buf[1024]; size_t blen; size_t nsent; }; -static size_t readcb(char *buf, size_t nitems, size_t buflen, void *p) +static size_t read_cb(char *buf, size_t nitems, size_t buflen, void *p) { struct read_ctx *ctx = p; size_t len = nitems * buflen; @@ -65,7 +65,7 @@ static size_t readcb(char *buf, size_t nitems, size_t buflen, void *p) if(!ctx->nsent) { /* On first call, set the FRAME information to be used (it defaults * to CURLWS_BINARY otherwise). */ - result = curl_ws_start_frame(ctx->easy, CURLWS_TEXT, + result = curl_ws_start_frame(ctx->curl, CURLWS_TEXT, (curl_off_t)ctx->blen); if(result) { fprintf(stderr, "error starting frame: %d\n", result); @@ -85,7 +85,7 @@ static size_t readcb(char *buf, size_t nitems, size_t buflen, void *p) int main(int argc, const char *argv[]) { - CURL *easy; + CURL *curl; struct read_ctx rctx; const char *payload = "Hello, friend!"; @@ -95,33 +95,33 @@ int main(int argc, const char *argv[]) memset(&rctx, 0, sizeof(rctx)); - easy = curl_easy_init(); - if(easy) { + curl = curl_easy_init(); + if(curl) { if(argc == 2) - curl_easy_setopt(easy, CURLOPT_URL, argv[1]); + curl_easy_setopt(curl, CURLOPT_URL, argv[1]); else - curl_easy_setopt(easy, CURLOPT_URL, "wss://example.com"); + curl_easy_setopt(curl, CURLOPT_URL, "wss://example.com"); - curl_easy_setopt(easy, CURLOPT_WRITEFUNCTION, writecb); - curl_easy_setopt(easy, CURLOPT_WRITEDATA, easy); - curl_easy_setopt(easy, CURLOPT_READFUNCTION, readcb); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, curl); + curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_cb); /* tell curl that we want to send the payload */ - rctx.easy = easy; + rctx.curl = curl; rctx.blen = strlen(payload); memcpy(rctx.buf, payload, rctx.blen); - curl_easy_setopt(easy, CURLOPT_READDATA, &rctx); - curl_easy_setopt(easy, CURLOPT_UPLOAD, 1L); + curl_easy_setopt(curl, CURLOPT_READDATA, &rctx); + curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L); /* Perform the request, res gets the return code */ - res = curl_easy_perform(easy); + res = curl_easy_perform(curl); /* Check for errors */ if(res != CURLE_OK) fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res)); /* always cleanup */ - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); } curl_global_cleanup(); return (int)res; diff --git a/docs/examples/xmlstream.c b/docs/examples/xmlstream.c index 1131a3ce9e76..04fc3afd8580 100644 --- a/docs/examples/xmlstream.c +++ b/docs/examples/xmlstream.c @@ -95,8 +95,8 @@ static void endElement(void *userData, const XML_Char *name) printf("%5lu %10lu %s\n", state->depth, state->characters.size, name); } -static size_t parseStreamCallback(void *contents, size_t length, size_t nmemb, - void *userp) +static size_t write_cb(void *contents, size_t length, size_t nmemb, + void *userp) { XML_Parser parser = (XML_Parser) userp; size_t real_size = length * nmemb; @@ -116,14 +116,14 @@ static size_t parseStreamCallback(void *contents, size_t length, size_t nmemb, int main(void) { - CURL *curl_handle; + CURL *curl; CURLcode res = curl_global_init(CURL_GLOBAL_ALL); if(res) return (int)res; /* Initialize a libcurl handle. */ - curl_handle = curl_easy_init(); + curl = curl_easy_init(); if(curl) { XML_Parser parser; struct ParserStruct state; @@ -138,15 +138,15 @@ int main(void) XML_SetElementHandler(parser, startElement, endElement); XML_SetCharacterDataHandler(parser, characterDataHandler); - curl_easy_setopt(curl_handle, CURLOPT_URL, + curl_easy_setopt(curl, CURLOPT_URL, "https://www.w3schools.com/xml/simple.xml"); - curl_easy_setopt(curl_handle, CURLOPT_WRITEFUNCTION, parseStreamCallback); - curl_easy_setopt(curl_handle, CURLOPT_WRITEDATA, (void *)parser); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_cb); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, (void *)parser); printf("Depth Characters Closing Tag\n"); /* Perform the request and any follow-up parsing. */ - res = curl_easy_perform(curl_handle); + res = curl_easy_perform(curl); if(res != CURLE_OK) { fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res)); @@ -168,7 +168,7 @@ int main(void) free(state.characters.memory); XML_ParserFree(parser); - curl_easy_cleanup(curl_handle); + curl_easy_cleanup(curl); } curl_global_cleanup(); diff --git a/docs/libcurl/curl_easy_setopt.md b/docs/libcurl/curl_easy_setopt.md index 430c3c14abbc..49c57fb11f78 100644 --- a/docs/libcurl/curl_easy_setopt.md +++ b/docs/libcurl/curl_easy_setopt.md @@ -686,6 +686,10 @@ Port number to connect to. See CURLOPT_PORT(3) Make an HTTP POST. See CURLOPT_POST(3) +## CURLOPT_POSTFIELDS + +Send a POST with this data - does not copy it. See CURLOPT_POSTFIELDS(3) + ## CURLOPT_POSTFIELDSIZE The POST data is this big. See CURLOPT_POSTFIELDSIZE(3) diff --git a/docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.md b/docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.md index de3dd1b70b03..837fd2de1aaa 100644 --- a/docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.md +++ b/docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.md @@ -11,6 +11,8 @@ See-also: - CURLOPT_UPLOAD (3) Protocol: - HTTP + - MQTT + - RTSP Added-in: 7.17.1 --- diff --git a/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.md b/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.md index 5871e91d9b30..10414e7eea7b 100644 --- a/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.md +++ b/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.md @@ -9,6 +9,8 @@ See-also: - CURLOPT_POSTFIELDSIZE_LARGE (3) Protocol: - HTTP + - MQTT + - RTSP Added-in: 7.2 --- diff --git a/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE_LARGE.md b/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE_LARGE.md index 16e874b667ed..e3d983e25338 100644 --- a/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE_LARGE.md +++ b/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE_LARGE.md @@ -10,6 +10,8 @@ See-also: - CURLOPT_POSTFIELDSIZE (3) Protocol: - HTTP + - MQTT + - RTSP Added-in: 7.11.1 --- diff --git a/docs/libcurl/opts/CURLOPT_SERVER_RESPONSE_TIMEOUT.md b/docs/libcurl/opts/CURLOPT_SERVER_RESPONSE_TIMEOUT.md index 30ae25b42ac5..85695316e655 100644 --- a/docs/libcurl/opts/CURLOPT_SERVER_RESPONSE_TIMEOUT.md +++ b/docs/libcurl/opts/CURLOPT_SERVER_RESPONSE_TIMEOUT.md @@ -5,6 +5,7 @@ Title: CURLOPT_SERVER_RESPONSE_TIMEOUT Section: 3 Source: libcurl See-also: + - CURLOPT_SERVER_RESPONSE_TIMEOUT_MS (3) - CURLOPT_CONNECTTIMEOUT (3) - CURLOPT_LOW_SPEED_LIMIT (3) - CURLOPT_TIMEOUT (3) @@ -40,11 +41,9 @@ connection is considered dead and the transfer fails. It is recommended that if used in conjunction with CURLOPT_TIMEOUT(3), you set CURLOPT_SERVER_RESPONSE_TIMEOUT(3) to a value smaller than CURLOPT_TIMEOUT(3). -This option was formerly known as CURLOPT_FTP_RESPONSE_TIMEOUT. - # DEFAULT -None +60 seconds # %PROTOCOLS% @@ -66,6 +65,10 @@ int main(void) } ~~~ +# HISTORY + +This option was formerly known as CURLOPT_FTP_RESPONSE_TIMEOUT. + # %AVAILABILITY% # RETURN VALUE diff --git a/docs/libcurl/opts/CURLOPT_SERVER_RESPONSE_TIMEOUT_MS.md b/docs/libcurl/opts/CURLOPT_SERVER_RESPONSE_TIMEOUT_MS.md index 267659cde2db..98d93fe5dc95 100644 --- a/docs/libcurl/opts/CURLOPT_SERVER_RESPONSE_TIMEOUT_MS.md +++ b/docs/libcurl/opts/CURLOPT_SERVER_RESPONSE_TIMEOUT_MS.md @@ -5,6 +5,7 @@ Title: CURLOPT_SERVER_RESPONSE_TIMEOUT_MS Section: 3 Source: libcurl See-also: + - CURLOPT_SERVER_RESPONSE_TIMEOUT (3) - CURLOPT_CONNECTTIMEOUT (3) - CURLOPT_LOW_SPEED_LIMIT (3) - CURLOPT_TIMEOUT (3) @@ -47,7 +48,7 @@ This is the millisecond version of CURLOPT_SERVER_RESPONSE_TIMEOUT(3). # DEFAULT -None +60000 milliseconds # %PROTOCOLS% diff --git a/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.md b/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.md index 6dc81a086710..7cc94bdfb9da 100644 --- a/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.md +++ b/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.md @@ -81,9 +81,10 @@ static CURLcode sslctx_function(CURL *curl, void *sslctx, void *pointer) int main(void) { - CURL *ch; - CURLcode rv; - char *mypem = /* CA cert in PEM format, replace the XXXs */ + CURL *curl; + CURLcode res; + /* CA cert in PEM format, replace the XXXs */ + char *mypem = "-----BEGIN CERTIFICATE-----\n" "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" @@ -94,23 +95,23 @@ int main(void) "-----END CERTIFICATE-----\n"; curl_global_init(CURL_GLOBAL_ALL); - ch = curl_easy_init(); + curl = curl_easy_init(); - curl_easy_setopt(ch, CURLOPT_SSLCERTTYPE, "PEM"); - curl_easy_setopt(ch, CURLOPT_SSL_VERIFYPEER, 1L); - curl_easy_setopt(ch, CURLOPT_URL, "https://www.example.com/"); + curl_easy_setopt(curl, CURLOPT_SSLCERTTYPE, "PEM"); + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 1L); + curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.com/"); - curl_easy_setopt(ch, CURLOPT_SSL_CTX_FUNCTION, *sslctx_function); - curl_easy_setopt(ch, CURLOPT_SSL_CTX_DATA, mypem); - rv = curl_easy_perform(ch); - if(!rv) + curl_easy_setopt(curl, CURLOPT_SSL_CTX_FUNCTION, *sslctx_function); + curl_easy_setopt(curl, CURLOPT_SSL_CTX_DATA, mypem); + res = curl_easy_perform(curl); + if(!res) printf("*** transfer succeeded ***\n"); else printf("*** transfer failed ***\n"); - curl_easy_cleanup(ch); + curl_easy_cleanup(curl); curl_global_cleanup(); - return rv; + return (int)res; } ~~~ diff --git a/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.md b/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.md index 75e1dc8edb9d..01688ef3ea90 100644 --- a/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.md +++ b/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.md @@ -134,9 +134,10 @@ static CURLcode sslctx_function(CURL *curl, void *sslctx, void *pointer) int main(void) { - CURL *ch; - CURLcode rv; - char *mypem = /* CA cert in PEM format, replace the XXXs */ + CURL *curl; + CURLcode res; + /* CA cert in PEM format, replace the XXXs */ + char *mypem = "-----BEGIN CERTIFICATE-----\n" "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\n" @@ -147,23 +148,23 @@ int main(void) "-----END CERTIFICATE-----\n"; curl_global_init(CURL_GLOBAL_ALL); - ch = curl_easy_init(); + curl = curl_easy_init(); - curl_easy_setopt(ch, CURLOPT_SSLCERTTYPE, "PEM"); - curl_easy_setopt(ch, CURLOPT_SSL_VERIFYPEER, 1L); - curl_easy_setopt(ch, CURLOPT_URL, "https://www.example.com/"); + curl_easy_setopt(curl, CURLOPT_SSLCERTTYPE, "PEM"); + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 1L); + curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.com/"); - curl_easy_setopt(ch, CURLOPT_SSL_CTX_FUNCTION, *sslctx_function); - curl_easy_setopt(ch, CURLOPT_SSL_CTX_DATA, mypem); - rv = curl_easy_perform(ch); - if(!rv) + curl_easy_setopt(curl, CURLOPT_SSL_CTX_FUNCTION, *sslctx_function); + curl_easy_setopt(curl, CURLOPT_SSL_CTX_DATA, mypem); + res = curl_easy_perform(curl); + if(!res) printf("*** transfer succeeded ***\n"); else printf("*** transfer failed ***\n"); - curl_easy_cleanup(ch); + curl_easy_cleanup(curl); curl_global_cleanup(); - return rv; + return (int)res; } ~~~ diff --git a/docs/runtests.md b/docs/runtests.md index 4a7ddf5c0bdf..373f07618d5e 100644 --- a/docs/runtests.md +++ b/docs/runtests.md @@ -289,6 +289,10 @@ Enable verbose output. Speaks more than by default. If used in conjunction with parallel testing, it is difficult to associate the logs with the specific test being run. +## `-w` + +Verify test data. + ## `-vc \` Provide a path to a custom curl binary to run when verifying that the servers diff --git a/docs/tests/FILEFORMAT.md b/docs/tests/FILEFORMAT.md index 91aa9a587028..f100adcf89b3 100644 --- a/docs/tests/FILEFORMAT.md +++ b/docs/tests/FILEFORMAT.md @@ -76,6 +76,18 @@ For example, to insert the word hello 100 times: %repeat[100 x hello]% +## Whitespace + +To force CRLF newline, add this macro to the end of the line: + + %CR - carriage return + +To add significant whitespace characters at the end of the line, or to empty +lines: + + %SP - space + %TAB - horizontal tab + ## Insert capped epoch days Mostly to test capped cookie expire dates: `%days[NUM]` inserts the number of @@ -233,7 +245,7 @@ similar. ## `` -### `` +### `` data to be sent to the client on its request and later verified that it arrived safely. Set `nocheck="yes"` to prevent the test script from verifying @@ -261,16 +273,19 @@ used as "raw" data. `nonewline=yes` means that the last byte (the trailing newline character) should be cut off from the data before sending or comparing it. -`crlf=yes` forces *header* newlines to become CRLF even if not written so in -the source file. Note that this makes runtests.pl parse and "guess" what is a -header and what is not in order to apply the CRLF line endings appropriately. +`crlf=yes` forces the newlines to become CRLF even if not written so in the +test. + +`crlf=headers` forces *header* newlines to become CRLF even if not written so +in the source file. Note that this makes runtests.pl parse and "guess" what is +a header and what is not in order to apply the CRLF line endings appropriately. For FTP file listings, the `` section is be used *only* if you make sure that there has been a CWD done first to a directory named `test-[NUM]` where `NUM` is the test case number. Otherwise the ftp server cannot know from which test file to load the list content. -### `` +### `` Send back this contents instead of the `` one. The `NUM` is set by: @@ -289,15 +304,22 @@ to complete a transfer. The response to each request is found in its own data section. Validating the entire negotiation sequence can be done by specifying a `datacheck` section. -### `` +### `` The connect section is used instead of the 'data' for all CONNECT requests. The remainder of the rules for the data section then apply but with a connect prefix. +`crlf=yes` forces the newlines to become CRLF even if not written so in the +test. + +`crlf=headers` forces *header* newlines to become CRLF even if not written so +in the source file. Note that this makes runtests.pl parse and "guess" what is +a header and what is not in order to apply the CRLF line endings appropriately. + ### `` Address type and address details as logged by the SOCKS proxy. -### `` +### `` if the data is sent but this is what should be checked afterwards. If `nonewline=yes` is set, runtests cuts off the trailing newline from the data before comparing with the one actually received by the client. @@ -305,7 +327,7 @@ before comparing with the one actually received by the client. Use the `mode="text"` attribute if the output is in text mode on platforms that have a text/binary difference. -### `` +### `` The contents of numbered `datacheck` sections are appended to the non-numbered one. @@ -605,13 +627,16 @@ parameter is the not negative integer number of seconds for the delay. This 'delay' attribute is intended for specific test cases, and normally not needed. -### `` +### `` This creates the named file with this content before the test case is run, which is useful if the test case needs a file to act on. If `nonewline="yes"` is used, the created file gets the final newline stripped off. +`crlf=yes` forces the newlines to become CRLF even if not written so in the +test. + ### `` 1 to 4 can be appended to 'file' to create more files. @@ -621,12 +646,15 @@ off. ### `` -### `` +### `` Pass this given data on stdin to the tool. If `nonewline` is set, we cut off the trailing newline of this given data before comparing with the one actually received by the client +`crlf=yes` forces the newlines to become CRLF even if not written so in the +test. + ## `` If `test-duphandle` is a listed item here, this is not run when @@ -655,7 +683,7 @@ command exists with a non-zero status code, the test is considered failed. A list of directory entries that are checked for after the test has completed and that must not exist. A listed entry existing causes the test to fail. -### `` +### `` the protocol dump curl should transmit, if `nonewline` is set, we cut off the trailing newline of this given data before comparing with the one actually @@ -665,14 +693,18 @@ comparisons are made. `crlf=yes` forces the newlines to become CRLF even if not written so in the test. -### `` +`crlf=headers` forces *header* newlines to become CRLF even if not written so +in the source file. Note that this makes runtests.pl parse and "guess" what is +a header and what is not in order to apply the CRLF line endings appropriately. + +### `` The protocol dump curl should transmit to an HTTP proxy (when the http-proxy server is used), if `nonewline` is set, we cut off the trailing newline of this given data before comparing with the one actually sent by the client The `` and `` rules are applied before comparisons are made. -### `` +### `` This verifies that this data was passed to stderr. Use the mode="text" attribute if the output is in text mode on platforms that @@ -681,10 +713,14 @@ have a text/binary difference. `crlf=yes` forces the newlines to become CRLF even if not written so in the test. +`crlf=headers` forces *header* newlines to become CRLF even if not written so +in the source file. Note that this makes runtests.pl parse and "guess" what is +a header and what is not in order to apply the CRLF line endings appropriately. + If `nonewline` is set, we cut off the trailing newline of this given data before comparing with the one actually received by the client -### `` +### `` This verifies that this data was passed to stdout. Use the mode="text" attribute if the output is in text mode on platforms that @@ -696,6 +732,10 @@ before comparing with the one actually received by the client `crlf=yes` forces the newlines to become CRLF even if not written so in the test. +`crlf=headers` forces *header* newlines to become CRLF even if not written so +in the source file. Note that this makes runtests.pl parse and "guess" what is +a header and what is not in order to apply the CRLF line endings appropriately. + `loadfile="filename"` makes loading the data from an external file. ### `` @@ -706,11 +746,18 @@ that the set limits are not exceeded. Supported limits: Allocations: [number of allocation calls] Maximum allocated: [maximum concurrent memory allocated] -### `` +### `` The file's contents must be identical to this after the test is complete. Use the mode="text" attribute if the output is in text mode on platforms that have a text/binary difference. +`crlf=yes` forces the newlines to become CRLF even if not written so in the +test. + +`crlf=headers` forces *header* newlines to become CRLF even if not written so +in the source file. Note that this makes runtests.pl parse and "guess" what is +a header and what is not in order to apply the CRLF line endings appropriately. + ### `` 1 to 4 can be appended to 'file' to compare more files. diff --git a/docs/wcurl.md b/docs/wcurl.md index ab5f956fc029..7d1200b2ea70 100644 --- a/docs/wcurl.md +++ b/docs/wcurl.md @@ -40,7 +40,7 @@ should be using curl directly if your use case is not covered. By default, **wcurl** does: -## * Percent-encode whitespaces in URLs; +## * Percent-encode whitespace in URLs; ## * Download multiple URLs in parallel if the installed curl's version is \>= 7.66.0 (--parallel); @@ -88,7 +88,7 @@ last value is considered. ## --no-decode-filename Don't percent-decode the output filename, even if the percent-encoding in the -URL was done by **wcurl**, e.g.: The URL contained whitespaces. +URL was done by **wcurl**, e.g.: The URL contained whitespace. ## --dry-run @@ -110,7 +110,7 @@ is instead forwarded to the curl invocation. # URL URL to be downloaded. Anything that is not a parameter is considered -an URL. Whitespaces are percent-encoded and the URL is passed to curl, which +an URL. Whitespace is percent-encoded and the URL is passed to curl, which then performs the parsing. May be specified more than once. # EXAMPLES @@ -144,7 +144,7 @@ Download multiple files without a limit of concurrent connections per host (the # REPORTING BUGS If you experience any problems with **wcurl** that you do not experience with -curl, submit an issue on Github: https://github.com/curl/wcurl +curl, submit an issue on GitHub: https://github.com/curl/wcurl # COPYRIGHT diff --git a/include/curl/curl.h b/include/curl/curl.h index 49552558ddb7..9e07527dc9c4 100644 --- a/include/curl/curl.h +++ b/include/curl/curl.h @@ -401,12 +401,12 @@ typedef int (*curl_seek_callback)(void *instream, #define CURL_TRAILERFUNC_ABORT 1 typedef size_t (*curl_read_callback)(char *buffer, - size_t size, - size_t nitems, - void *instream); + size_t size, + size_t nitems, + void *instream); typedef int (*curl_trailer_callback)(struct curl_slist **list, - void *userdata); + void *userdata); typedef enum { CURLSOCKTYPE_IPCXN, /* socket created for a specific IP connection */ @@ -1953,8 +1953,7 @@ typedef enum { /* Pass in a bitmask of "header options" */ CURLOPT(CURLOPT_HEADEROPT, CURLOPTTYPE_VALUES, 229), - /* The public key in DER form used to validate the peer public key - this option is used only if SSL_VERIFYPEER is true */ + /* The public key used to validate the peer public key */ CURLOPT(CURLOPT_PINNEDPUBLICKEY, CURLOPTTYPE_STRINGPOINT, 230), /* Path to Unix domain socket */ diff --git a/include/curl/curlver.h b/include/curl/curlver.h index 19b2bf87521b..8977d9eb410d 100644 --- a/include/curl/curlver.h +++ b/include/curl/curlver.h @@ -32,13 +32,13 @@ /* This is the version number of the libcurl package from which this header file origins: */ -#define LIBCURL_VERSION "8.17.0-DEV" +#define LIBCURL_VERSION "8.17.1-DEV" /* The numeric version number is also available "in parts" by using these defines: */ #define LIBCURL_VERSION_MAJOR 8 #define LIBCURL_VERSION_MINOR 17 -#define LIBCURL_VERSION_PATCH 0 +#define LIBCURL_VERSION_PATCH 1 /* This is the numeric version of the libcurl version number, meant for easier parsing and comparisons by programs. The LIBCURL_VERSION_NUM define will always follow this syntax: @@ -58,7 +58,7 @@ CURL_VERSION_BITS() macro since curl's own configure script greps for it and needs it to contain the full number. */ -#define LIBCURL_VERSION_NUM 0x081100 +#define LIBCURL_VERSION_NUM 0x081101 /* * This is the date and time when the full source package was created. The diff --git a/lib/Makefile.inc b/lib/Makefile.inc index f06af2ca70e3..8b506febcfab 100644 --- a/lib/Makefile.inc +++ b/lib/Makefile.inc @@ -160,7 +160,6 @@ LIB_CFILES = \ cookie.c \ cshutdn.c \ curl_addrinfo.c \ - curl_des.c \ curl_endian.c \ curl_fnmatch.c \ curl_fopen.c \ @@ -290,7 +289,6 @@ LIB_HFILES = \ cookie.h \ curl_addrinfo.h \ curl_ctype.h \ - curl_des.h \ curl_endian.h \ curl_fnmatch.h \ curl_fopen.h \ diff --git a/lib/altsvc.c b/lib/altsvc.c index 449bea8528dc..d9933f229802 100644 --- a/lib/altsvc.c +++ b/lib/altsvc.c @@ -228,14 +228,18 @@ static CURLcode altsvc_load(struct altsvcinfo *asi, const char *file) fp = curlx_fopen(file, FOPEN_READTEXT); if(fp) { + bool eof = FALSE; struct dynbuf buf; curlx_dyn_init(&buf, MAX_ALTSVC_LINE); - while(Curl_get_line(&buf, fp)) { - const char *lineptr = curlx_dyn_ptr(&buf); - curlx_str_passblanks(&lineptr); - if(curlx_str_single(&lineptr, '#')) - altsvc_add(asi, lineptr); - } + do { + result = Curl_get_line(&buf, fp, &eof); + if(!result) { + const char *lineptr = curlx_dyn_ptr(&buf); + curlx_str_passblanks(&lineptr); + if(curlx_str_single(&lineptr, '#')) + altsvc_add(asi, lineptr); + } + } while(!result && !eof); curlx_dyn_free(&buf); /* free the line buffer */ curlx_fclose(fp); } diff --git a/lib/asyn-ares.c b/lib/asyn-ares.c index 040100acec36..09c94f97b8f1 100644 --- a/lib/asyn-ares.c +++ b/lib/asyn-ares.c @@ -61,7 +61,6 @@ #include "progress.h" #include "curlx/timediff.h" #include "httpsrr.h" -#include "strdup.h" #include #include /* really old c-ares did not include this by @@ -731,6 +730,9 @@ struct Curl_addrinfo *Curl_async_getaddrinfo(struct Curl_easy *data, int *waitp) { struct async_ares_ctx *ares = &data->state.async.ares; +#ifdef USE_HTTPSRR + char *rrname = NULL; +#endif *waitp = 0; /* default to synchronous response */ if(async_ares_init_lazy(data)) @@ -743,6 +745,15 @@ struct Curl_addrinfo *Curl_async_getaddrinfo(struct Curl_easy *data, data->state.async.hostname = strdup(hostname); if(!data->state.async.hostname) return NULL; +#ifdef USE_HTTPSRR + if(port != 443) { + rrname = curl_maprintf("_%d_.https.%s", port, hostname); + if(!rrname) { + free(data->state.async.hostname); + return NULL; + } + } +#endif /* initial status - failed */ ares->ares_status = ARES_ENOTFOUND; @@ -815,11 +826,14 @@ struct Curl_addrinfo *Curl_async_getaddrinfo(struct Curl_easy *data, #endif #ifdef USE_HTTPSRR { - CURL_TRC_DNS(data, "asyn-ares: fire off query for HTTPSRR"); + CURL_TRC_DNS(data, "asyn-ares: fire off query for HTTPSRR: %s", + rrname ? rrname : data->state.async.hostname); memset(&ares->hinfo, 0, sizeof(ares->hinfo)); ares->hinfo.port = -1; + ares->hinfo.rrname = rrname; ares->num_pending++; /* one more */ - ares_query_dnsrec(ares->channel, data->state.async.hostname, + ares_query_dnsrec(ares->channel, + rrname ? rrname : data->state.async.hostname, ARES_CLASS_IN, ARES_REC_TYPE_HTTPS, async_ares_rr_done, data, NULL); } diff --git a/lib/asyn-base.c b/lib/asyn-base.c index eb2240b816c9..a49e1752a57a 100644 --- a/lib/asyn-base.c +++ b/lib/asyn-base.c @@ -77,8 +77,6 @@ * * Returns: sockets-in-use-bitmap */ - - CURLcode Curl_ares_pollset(struct Curl_easy *data, ares_channel channel, struct easy_pollset *ps) diff --git a/lib/asyn-thrdd.c b/lib/asyn-thrdd.c index dc13143e245d..b25745ee1b3b 100644 --- a/lib/asyn-thrdd.c +++ b/lib/asyn-thrdd.c @@ -64,7 +64,6 @@ #include "multiif.h" #include "curl_threads.h" #include "select.h" -#include "strdup.h" #ifdef USE_ARES #include @@ -362,12 +361,18 @@ static void async_thrdd_rr_done(void *user_data, ares_status_t status, thrdd->rr.result = Curl_httpsrr_from_ares(data, dnsrec, &thrdd->rr.hinfo); } -static CURLcode async_rr_start(struct Curl_easy *data) +static CURLcode async_rr_start(struct Curl_easy *data, int port) { struct async_thrdd_ctx *thrdd = &data->state.async.thrdd; int status; + char *rrname = NULL; DEBUGASSERT(!thrdd->rr.channel); + if(port != 443) { + rrname = curl_maprintf("_%d_.https.%s", port, data->conn->host.name); + if(!rrname) + return CURLE_OUT_OF_MEMORY; + } status = ares_init_options(&thrdd->rr.channel, NULL, 0); if(status != ARES_SUCCESS) { thrdd->rr.channel = NULL; @@ -384,8 +389,9 @@ static CURLcode async_rr_start(struct Curl_easy *data) memset(&thrdd->rr.hinfo, 0, sizeof(thrdd->rr.hinfo)); thrdd->rr.hinfo.port = -1; + thrdd->rr.hinfo.rrname = rrname; ares_query_dnsrec(thrdd->rr.channel, - data->conn->host.name, ARES_CLASS_IN, + rrname ? rrname : data->conn->host.name, ARES_CLASS_IN, ARES_REC_TYPE_HTTPS, async_thrdd_rr_done, data, NULL); CURL_TRC_DNS(data, "Issued HTTPS-RR request for %s", data->conn->host.name); @@ -455,7 +461,7 @@ static bool async_thrdd_init(struct Curl_easy *data, } #ifdef USE_HTTPSRR_ARES - if(async_rr_start(data)) + if(async_rr_start(data, port)) infof(data, "Failed HTTPS RR operation"); #endif CURL_TRC_DNS(data, "resolve thread started for of %s:%d", hostname, port); @@ -660,7 +666,7 @@ CURLcode Curl_async_is_resolved(struct Curl_easy *data, /* Start at 1ms poll interval */ thrdd->addr->poll_interval = 1; else if(elapsed >= thrdd->addr->interval_end) - /* Back-off exponentially if last interval expired */ + /* Back-off exponentially if last interval expired */ thrdd->addr->poll_interval *= 2; if(thrdd->addr->poll_interval > 250) diff --git a/lib/cf-h1-proxy.c b/lib/cf-h1-proxy.c index e65aa74ddb87..f46cc09616b6 100644 --- a/lib/cf-h1-proxy.c +++ b/lib/cf-h1-proxy.c @@ -126,7 +126,7 @@ static CURLcode tunnel_init(struct Curl_cfilter *cf, curlx_dyn_init(&ts->request_data, DYN_HTTP_REQUEST); Curl_httpchunk_init(data, &ts->ch, TRUE); - *pts = ts; + *pts = ts; connkeep(cf->conn, "HTTP proxy CONNECT"); return tunnel_reinit(cf, data, ts); } @@ -350,7 +350,7 @@ static CURLcode on_resp_header(struct Curl_cfilter *cf, ISDIGIT(header[9]) && ISDIGIT(header[10]) && ISDIGIT(header[11]) && !ISDIGIT(header[12])) { /* store the HTTP code from the proxy */ - data->info.httpproxycode = k->httpcode = (header[9] - '0') * 100 + + data->info.httpproxycode = k->httpcode = (header[9] - '0') * 100 + (header[10] - '0') * 10 + (header[11] - '0'); } return result; diff --git a/lib/cf-h2-proxy.c b/lib/cf-h2-proxy.c index 8baa227aac22..b0638c664287 100644 --- a/lib/cf-h2-proxy.c +++ b/lib/cf-h2-proxy.c @@ -99,9 +99,9 @@ static CURLcode tunnel_stream_init(struct Curl_cfilter *cf, if(result) return result; - ts->authority = /* host:port with IPv6 support */ - curl_maprintf("%s%s%s:%d", ipv6_ip ? "[":"", hostname, - ipv6_ip ? "]" : "", port); + /* host:port with IPv6 support */ + ts->authority = curl_maprintf("%s%s%s:%d", ipv6_ip ? "[":"", hostname, + ipv6_ip ? "]" : "", port); if(!ts->authority) return CURLE_OUT_OF_MEMORY; @@ -365,7 +365,6 @@ static CURLcode cf_h2_proxy_ctx_init(struct Curl_cfilter *cf, goto out; } - /* all set, traffic will be send on connect */ result = CURLE_OK; @@ -468,8 +467,8 @@ static CURLcode proxy_h2_progress_ingress(struct Curl_cfilter *cf, /* Receive data from the "lower" filters, e.g. network until * it is time to stop or we have enough data for this stream */ - while(!ctx->conn_closed && /* not closed the connection */ - !ctx->tunnel.closed && /* nor the tunnel */ + while(!ctx->conn_closed && /* not closed the connection */ + !ctx->tunnel.closed && /* nor the tunnel */ Curl_bufq_is_empty(&ctx->inbufq) && /* and we consumed our input */ !Curl_bufq_is_full(&ctx->tunnel.recvbuf)) { diff --git a/lib/cf-ip-happy.c b/lib/cf-ip-happy.c index 6b7130be83f5..22ae260ce047 100644 --- a/lib/cf-ip-happy.c +++ b/lib/cf-ip-happy.c @@ -237,7 +237,7 @@ static CURLcode cf_ip_attempt_connect(struct cf_ip_attempt *a, bool *connected) { *connected = a->connected; - if(!a->result && !*connected) { + if(!a->result && !*connected) { /* evaluate again */ a->result = Curl_conn_cf_connect(a->cf, data, connected); diff --git a/lib/cf-socket.c b/lib/cf-socket.c index 758641e40dbe..92fe433a69b1 100644 --- a/lib/cf-socket.c +++ b/lib/cf-socket.c @@ -344,6 +344,8 @@ static CURLcode socket_open(struct Curl_easy *data, struct Curl_sockaddr_ex *addr, curl_socket_t *sockfd) { + char errbuf[STRERROR_LEN]; + DEBUGASSERT(data); DEBUGASSERT(data->conn); if(data->set.fopensocket) { @@ -367,13 +369,15 @@ static CURLcode socket_open(struct Curl_easy *data, *sockfd = CURL_SOCKET(addr->family, addr->socktype, addr->protocol); } - if(*sockfd == CURL_SOCKET_BAD) + if(*sockfd == CURL_SOCKET_BAD) { /* no socket, no connection */ + failf(data, "failed to open socket: %s", + curlx_strerror(SOCKERRNO, errbuf, sizeof(errbuf))); return CURLE_COULDNT_CONNECT; + } #ifdef HAVE_FCNTL if(fcntl(*sockfd, F_SETFD, FD_CLOEXEC) < 0) { - char errbuf[STRERROR_LEN]; failf(data, "fcntl set CLOEXEC: %s", curlx_strerror(SOCKERRNO, errbuf, sizeof(errbuf))); close(*sockfd); @@ -1042,10 +1046,12 @@ static void cf_socket_destroy(struct Curl_cfilter *cf, struct Curl_easy *data) cf->ctx = NULL; } -static CURLcode set_local_ip(struct Curl_cfilter *cf, - struct Curl_easy *data) +static void set_local_ip(struct Curl_cfilter *cf, + struct Curl_easy *data) { struct cf_socket_ctx *ctx = cf->ctx; + ctx->ip.local_ip[0] = 0; + ctx->ip.local_port = -1; #ifdef HAVE_GETSOCKNAME if((ctx->sock != CURL_SOCKET_BAD) && @@ -1059,23 +1065,18 @@ static CURLcode set_local_ip(struct Curl_cfilter *cf, memset(&ssloc, 0, sizeof(ssloc)); if(getsockname(ctx->sock, (struct sockaddr*) &ssloc, &slen)) { int error = SOCKERRNO; - failf(data, "getsockname() failed with errno %d: %s", + infof(data, "getsockname() failed with errno %d: %s", error, curlx_strerror(error, buffer, sizeof(buffer))); - return CURLE_FAILED_INIT; } - if(!Curl_addr2string((struct sockaddr*)&ssloc, slen, - ctx->ip.local_ip, &ctx->ip.local_port)) { - failf(data, "ssloc inet_ntop() failed with errno %d: %s", + else if(!Curl_addr2string((struct sockaddr*)&ssloc, slen, + ctx->ip.local_ip, &ctx->ip.local_port)) { + infof(data, "ssloc inet_ntop() failed with errno %d: %s", errno, curlx_strerror(errno, buffer, sizeof(buffer))); - return CURLE_FAILED_INIT; } } #else (void)data; - ctx->ip.local_ip[0] = 0; - ctx->ip.local_port = -1; #endif - return CURLE_OK; } static CURLcode set_remote_ip(struct Curl_cfilter *cf, @@ -2138,6 +2139,7 @@ static CURLcode cf_tcp_accept_connect(struct Curl_cfilter *cf, (curlx_nonblock(s_accepted, TRUE) < 0)) { failf(data, "fcntl set CLOEXEC/NONBLOCK: %s", curlx_strerror(SOCKERRNO, errbuf, sizeof(errbuf))); + Curl_socket_close(data, cf->conn, s_accepted); return CURLE_FTP_ACCEPT_FAILED; } #endif diff --git a/lib/cfilters.c b/lib/cfilters.c index 2ef5d75d431c..090365fdd6ed 100644 --- a/lib/cfilters.c +++ b/lib/cfilters.c @@ -542,8 +542,9 @@ CURLcode Curl_conn_connect(struct Curl_easy *data, Curl_pollfds_reset(&cpfds); /* In general, we want to send after connect, wait on that. */ if(sockfd != CURL_SOCKET_BAD) - Curl_pollset_set_out_only(data, &ps, sockfd); - result = Curl_conn_adjust_pollset(data, data->conn, &ps); + result = Curl_pollset_set_out_only(data, &ps, sockfd); + if(!result) + result = Curl_conn_adjust_pollset(data, data->conn, &ps); if(result) goto out; result = Curl_pollfds_add_ps(&cpfds, &ps); diff --git a/lib/cfilters.h b/lib/cfilters.h index 2fab300b211a..6cb4a6909c36 100644 --- a/lib/cfilters.h +++ b/lib/cfilters.h @@ -513,7 +513,7 @@ CURLcode Curl_cf_send(struct Curl_easy *data, int sockindex, /** * Receive bytes from connection filter `cf` into `bufq`. - * Convenience wrappter around `Curl_bufq_sipn()`, + * Convenience wrapper around `Curl_bufq_sipn()`, * so users do not have to implement a callback. */ CURLcode Curl_cf_recv_bufq(struct Curl_cfilter *cf, diff --git a/lib/conncache.c b/lib/conncache.c index 67e2a63d8a57..7dc21d967adc 100644 --- a/lib/conncache.c +++ b/lib/conncache.c @@ -375,7 +375,7 @@ int Curl_cpool_check_limits(struct Curl_easy *data, bundle = cpool_find_bundle(cpool, conn); live = bundle ? Curl_llist_count(&bundle->conns) : 0; shutdowns = Curl_cshutdn_dest_count(data, conn->destination); - while((live + shutdowns) >= dest_limit) { + while((live + shutdowns) >= dest_limit) { if(shutdowns) { /* close one connection in shutdown right away, if we can */ if(!Curl_cshutdn_close_oldest(data, conn->destination)) @@ -531,12 +531,22 @@ static bool cpool_foreach(struct Curl_easy *data, bool Curl_cpool_conn_now_idle(struct Curl_easy *data, struct connectdata *conn) { - unsigned int maxconnects = !data->multi->maxconnects ? - (Curl_multi_xfers_running(data->multi) * 4) : data->multi->maxconnects; + unsigned int maxconnects; struct connectdata *oldest_idle = NULL; struct cpool *cpool = cpool_get_instance(data); bool kept = TRUE; + if(!data) + return kept; + + if(!data->multi->maxconnects) { + unsigned int running = Curl_multi_xfers_running(data->multi); + maxconnects = (running <= UINT_MAX / 4) ? running * 4 : UINT_MAX; + } + else { + maxconnects = data->multi->maxconnects; + } + conn->lastused = curlx_now(); /* it was used up until now */ if(cpool && maxconnects) { /* may be called form a callback already under lock */ diff --git a/lib/connect.c b/lib/connect.c index 5dc4e2fc747b..e3295524b0ec 100644 --- a/lib/connect.c +++ b/lib/connect.c @@ -123,7 +123,7 @@ timediff_t Curl_timeleft(struct Curl_easy *data, before the connect timeout expires and we must acknowledge whichever timeout that is reached first. The total timeout is set per entire operation, while the connect timeout is set per connect. */ - if(data->set.timeout <= 0 && !duringconnect) + if((!data->set.timeout || data->set.connect_only) && !duringconnect) return 0; /* no timeout in place or checked, return "no limit" */ if(!nowp) { @@ -131,9 +131,9 @@ timediff_t Curl_timeleft(struct Curl_easy *data, nowp = &now; } - if(data->set.timeout > 0) { + if(data->set.timeout) { timeleft_ms = data->set.timeout - - curlx_timediff(*nowp, data->progress.t_startop); + curlx_timediff(*nowp, data->progress.t_startop); if(!timeleft_ms) timeleft_ms = -1; /* 0 is "no limit", fake 1 ms expiry */ if(!duringconnect) diff --git a/lib/content_encoding.c b/lib/content_encoding.c index 28cccacdb647..b724b576b41d 100644 --- a/lib/content_encoding.c +++ b/lib/content_encoding.c @@ -51,7 +51,6 @@ #include "sendf.h" #include "http.h" #include "content_encoding.h" -#include "strdup.h" /* The last 2 #include files should be in this order */ #include "curl_memory.h" diff --git a/lib/cookie.c b/lib/cookie.c index 59a841a303c7..35b252971d9a 100644 --- a/lib/cookie.c +++ b/lib/cookie.c @@ -750,7 +750,6 @@ parse_cookie_header(struct Curl_easy *data, if(!co->name) return CERR_BAD; - data->req.setcookies++; return CERR_OK; } @@ -1140,6 +1139,9 @@ Curl_cookie_add(struct Curl_easy *data, if(co->expires && (co->expires < ci->next_expiration)) ci->next_expiration = co->expires; + if(httpheader) + data->req.setcookies++; + return co; fail: freecookie(co); @@ -1205,19 +1207,27 @@ struct CookieInfo *Curl_cookie_init(struct Curl_easy *data, ci->running = FALSE; /* this is not running, this is init */ if(fp) { struct dynbuf buf; + bool eof = FALSE; + CURLcode result; curlx_dyn_init(&buf, MAX_COOKIE_LINE); - while(Curl_get_line(&buf, fp)) { - const char *lineptr = curlx_dyn_ptr(&buf); - bool headerline = FALSE; - if(checkprefix("Set-Cookie:", lineptr)) { - /* This is a cookie line, get it! */ - lineptr += 11; - headerline = TRUE; - curlx_str_passblanks(&lineptr); - } + do { + result = Curl_get_line(&buf, fp, &eof); + if(!result) { + const char *lineptr = curlx_dyn_ptr(&buf); + bool headerline = FALSE; + if(checkprefix("Set-Cookie:", lineptr)) { + /* This is a cookie line, get it! */ + lineptr += 11; + headerline = TRUE; + curlx_str_passblanks(&lineptr); + } - Curl_cookie_add(data, ci, headerline, TRUE, lineptr, NULL, NULL, TRUE); - } + (void)Curl_cookie_add(data, ci, headerline, TRUE, lineptr, NULL, + NULL, TRUE); + /* File reading cookie failures are not propagated back to the + caller because there is no way to do that */ + } + } while(!result && !eof); curlx_dyn_free(&buf); /* free the line buffer */ /* @@ -1585,7 +1595,6 @@ static CURLcode cookie_output(struct Curl_easy *data, curlx_fclose(out); out = NULL; if(tempstore && Curl_rename(tempstore, filename)) { - unlink(tempstore); error = CURLE_WRITE_ERROR; goto error; } @@ -1602,7 +1611,10 @@ static CURLcode cookie_output(struct Curl_easy *data, error: if(out && !use_stdout) curlx_fclose(out); - free(tempstore); + if(tempstore) { + unlink(tempstore); + free(tempstore); + } return error; } diff --git a/lib/curl_addrinfo.c b/lib/curl_addrinfo.c index e26ee656bda4..fc26bef8333d 100644 --- a/lib/curl_addrinfo.c +++ b/lib/curl_addrinfo.c @@ -68,7 +68,7 @@ */ #if defined(__INTEL_COMPILER) && (__INTEL_COMPILER == 910) && \ - defined(__OPTIMIZE__) && defined(__unix__) && defined(__i386__) + defined(__OPTIMIZE__) && defined(__unix__) && defined(__i386__) /* workaround icc 9.1 optimizer issue */ # define vqualifier volatile #else diff --git a/lib/curl_config.h.cmake b/lib/curl_config.h.cmake index 1fabc24c182f..88b991d7ef94 100644 --- a/lib/curl_config.h.cmake +++ b/lib/curl_config.h.cmake @@ -673,6 +673,9 @@ ${SIZEOF_TIME_T_CODE} /* if mbedTLS is enabled */ #cmakedefine USE_MBEDTLS 1 +/* if mbedTLS <4 has the mbedtls_des_crypt_ecb function. */ +#cmakedefine HAVE_MBEDTLS_DES_CRYPT_ECB 1 + /* if Rustls is enabled */ #cmakedefine USE_RUSTLS 1 @@ -801,7 +804,10 @@ ${SIZEOF_TIME_T_CODE} #cmakedefine USE_ECH 1 /* Define to 1 if you have the wolfSSL_CTX_GenerateEchConfig function. */ -#cmakedefine HAVE_WOLFSSL_CTX_GENERATEECHCONFIG +#cmakedefine HAVE_WOLFSSL_CTX_GENERATEECHCONFIG 1 /* Define to 1 if you have the SSL_set1_ech_config_list function. */ -#cmakedefine HAVE_SSL_SET1_ECH_CONFIG_LIST +#cmakedefine HAVE_SSL_SET1_ECH_CONFIG_LIST 1 + +/* Define to 1 if OpenSSL has the DES_ecb_encrypt function. */ +#cmakedefine HAVE_DES_ECB_ENCRYPT 1 diff --git a/lib/curl_des.c b/lib/curl_des.c deleted file mode 100644 index a202dd3fe4a5..000000000000 --- a/lib/curl_des.c +++ /dev/null @@ -1,68 +0,0 @@ -/*************************************************************************** - * _ _ ____ _ - * Project ___| | | | _ \| | - * / __| | | | |_) | | - * | (__| |_| | _ <| |___ - * \___|\___/|_| \_\_____| - * - * Copyright (C) Steve Holme, . - * - * This software is licensed as described in the file COPYING, which - * you should have received as part of this distribution. The terms - * are also available at https://curl.se/docs/copyright.html. - * - * You may opt to use, copy, modify, merge, publish, distribute and/or sell - * copies of the Software, and permit persons to whom the Software is - * furnished to do so, under the terms of the COPYING file. - * - * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY - * KIND, either express or implied. - * - * SPDX-License-Identifier: curl - * - ***************************************************************************/ - -#include "curl_setup.h" - -#if defined(USE_CURL_NTLM_CORE) && \ - (defined(USE_GNUTLS) || \ - defined(USE_OS400CRYPTO) || \ - defined(USE_WIN32_CRYPTO)) - -#include "curl_des.h" - -/* - * Curl_des_set_odd_parity() - * - * This is used to apply odd parity to the given byte array. It is typically - * used by when a cryptography engine does not have its own version. - * - * The function is a port of the Java based oddParity() function over at: - * - * https://davenport.sourceforge.net/ntlm.html - * - * Parameters: - * - * bytes [in/out] - The data whose parity bits are to be adjusted for - * odd parity. - * len [out] - The length of the data. - */ -void Curl_des_set_odd_parity(unsigned char *bytes, size_t len) -{ - size_t i; - - for(i = 0; i < len; i++) { - unsigned char b = bytes[i]; - - bool needs_parity = (((b >> 7) ^ (b >> 6) ^ (b >> 5) ^ - (b >> 4) ^ (b >> 3) ^ (b >> 2) ^ - (b >> 1)) & 0x01) == 0; - - if(needs_parity) - bytes[i] |= 0x01; - else - bytes[i] &= 0xfe; - } -} - -#endif diff --git a/lib/curl_des.h b/lib/curl_des.h deleted file mode 100644 index c50aaf45b176..000000000000 --- a/lib/curl_des.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef HEADER_CURL_DES_H -#define HEADER_CURL_DES_H -/*************************************************************************** - * _ _ ____ _ - * Project ___| | | | _ \| | - * / __| | | | |_) | | - * | (__| |_| | _ <| |___ - * \___|\___/|_| \_\_____| - * - * Copyright (C) Steve Holme, . - * - * This software is licensed as described in the file COPYING, which - * you should have received as part of this distribution. The terms - * are also available at https://curl.se/docs/copyright.html. - * - * You may opt to use, copy, modify, merge, publish, distribute and/or sell - * copies of the Software, and permit persons to whom the Software is - * furnished to do so, under the terms of the COPYING file. - * - * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY - * KIND, either express or implied. - * - * SPDX-License-Identifier: curl - * - ***************************************************************************/ - -#include "curl_setup.h" - -#if defined(USE_CURL_NTLM_CORE) && \ - (defined(USE_GNUTLS) || \ - defined(USE_OS400CRYPTO) || \ - defined(USE_WIN32_CRYPTO)) - -/* Applies odd parity to the given byte array */ -void Curl_des_set_odd_parity(unsigned char *bytes, size_t length); - -#endif - -#endif /* HEADER_CURL_DES_H */ diff --git a/lib/curl_fnmatch.c b/lib/curl_fnmatch.c index 66b9739f3c03..3148c472e299 100644 --- a/lib/curl_fnmatch.c +++ b/lib/curl_fnmatch.c @@ -243,7 +243,7 @@ static int setcharset(const unsigned char **p, unsigned char *charset) case CURLFNM_SCHS_RIGHTBRLEFTBR: if(c == ']') return SETCHARSET_OK; - state = CURLFNM_SCHS_DEFAULT; + state = CURLFNM_SCHS_DEFAULT; charset[c] = 1; (*p)++; break; diff --git a/lib/curl_get_line.c b/lib/curl_get_line.c index 4b1c6c3e0970..d5ab7b842720 100644 --- a/lib/curl_get_line.c +++ b/lib/curl_get_line.c @@ -32,63 +32,43 @@ /* The last #include file should be: */ #include "memdebug.h" -static int appendnl(struct dynbuf *buf) -{ - CURLcode result = curlx_dyn_addn(buf, "\n", 1); - if(result) - /* too long line or out of memory */ - return 0; /* error */ - return 1; /* all good */ -} +#define appendnl(b) \ + curlx_dyn_addn(buf, "\n", 1) /* - * Curl_get_line() makes sure to only return complete whole lines that end - * newlines. + * Curl_get_line() returns only complete whole lines that end with newline. + * When 'eof' is set TRUE, the last line has been read. */ -int Curl_get_line(struct dynbuf *buf, FILE *input) +CURLcode Curl_get_line(struct dynbuf *buf, FILE *input, bool *eof) { CURLcode result; char buffer[128]; curlx_dyn_reset(buf); while(1) { - char *b = fgets(buffer, sizeof(buffer), input); size_t rlen; + char *b = fgets(buffer, sizeof(buffer), input); - if(b) { - rlen = strlen(b); - - if(!rlen) - break; + *eof = feof(input); + rlen = b ? strlen(b) : 0; + if(rlen) { result = curlx_dyn_addn(buf, b, rlen); if(result) /* too long line or out of memory */ - return 0; /* error */ - - else if(b[rlen-1] == '\n') - /* end of the line */ - return 1; /* all good */ - - else if(feof(input)) - /* append a newline */ - return appendnl(buf); - } - else { - rlen = curlx_dyn_len(buf); - if(rlen) { - b = curlx_dyn_ptr(buf); - - if(b[rlen-1] != '\n') - /* append a newline */ - return appendnl(buf); - - return 1; /* all good */ - } - else - break; + return result; } + /* now check the full line */ + rlen = curlx_dyn_len(buf); + b = curlx_dyn_ptr(buf); + if(rlen && (b[rlen-1] == '\n')) + /* LF at end of the line */ + return CURLE_OK; /* all good */ + if(*eof) + /* append a newline */ + return appendnl(buf); + /* otherwise get next line to append */ } - return 0; + /* UNREACHABLE */ } #endif /* if not disabled */ diff --git a/lib/curl_get_line.h b/lib/curl_get_line.h index d4877123f261..176d5f7a30e3 100644 --- a/lib/curl_get_line.h +++ b/lib/curl_get_line.h @@ -27,6 +27,6 @@ #include "curlx/dynbuf.h" /* Curl_get_line() returns complete lines that end with a newline. */ -int Curl_get_line(struct dynbuf *buf, FILE *input); +CURLcode Curl_get_line(struct dynbuf *buf, FILE *input, bool *eof); #endif /* HEADER_CURL_GET_LINE_H */ diff --git a/lib/curl_gssapi.c b/lib/curl_gssapi.c index 42ccaa3e2962..947bb9c00631 100644 --- a/lib/curl_gssapi.c +++ b/lib/curl_gssapi.c @@ -29,6 +29,28 @@ #include "curl_gssapi.h" #include "sendf.h" +#ifdef DEBUGBUILD +#if defined(HAVE_GSSGNU) || !defined(_WIN32) +/* To avoid memdebug macro replacement, wrap the name in parentheses to call + the original version. It is freed via the GSS API gss_release_buffer(). */ +#define Curl_gss_alloc (malloc) +#define Curl_gss_free (free) +#define CURL_GSS_STUB +/* For correctness this would be required for all platforms, not only Windows, + but, as of v1.22.1, MIT Kerberos uses a special allocator only for Windows, + and the availability of 'gssapi/gssapi_alloc.h' is difficult to detect, + because GSS headers are not versioned, and there is also no other macro to + indicate 1.18+ vs. previous versions. On Windows we can use 'GSS_S_BAD_MIC'. + */ +#elif defined(_WIN32) && defined(GSS_S_BAD_MIC) /* MIT Kerberos 1.15+ */ +/* MIT Kerberos 1.10+ (Windows), 1.18+ (all platforms), missing from GNU GSS */ +#include +#define Curl_gss_alloc gssalloc_malloc +#define Curl_gss_free gssalloc_free +#define CURL_GSS_STUB +#endif +#endif /* DEBUGBUILD */ + /* The last 2 #include files should be in this order */ #include "curl_memory.h" #include "memdebug.h" @@ -51,7 +73,7 @@ gss_OID_desc Curl_krb5_mech_oid CURL_ALIGN8 = { 9, CURL_UNCONST("\x2a\x86\x48\x86\xf7\x12\x01\x02\x02") }; -#ifdef DEBUGBUILD +#ifdef CURL_GSS_STUB enum min_err_code { STUB_GSS_OK = 0, STUB_GSS_NO_MEMORY, @@ -212,9 +234,7 @@ stub_gss_init_sec_context(OM_uint32 *min, ctx->flags = req_flags; } - /* To avoid memdebug macro replacement, wrap the name in parentheses to call - the original version. It is freed via the GSS API gss_release_buffer(). */ - token = (malloc)(length); + token = Curl_gss_alloc(length); if(!token) { free(ctx); *min = STUB_GSS_NO_MEMORY; @@ -229,14 +249,14 @@ stub_gss_init_sec_context(OM_uint32 *min, major_status = gss_display_name(&minor_status, target_name, &target_desc, &name_type); if(GSS_ERROR(major_status)) { - (free)(token); + Curl_gss_free(token); free(ctx); *min = STUB_GSS_NO_MEMORY; return GSS_S_FAILURE; } if(strlen(creds) + target_desc.length + 5 >= sizeof(ctx->creds)) { - (free)(token); + Curl_gss_free(token); free(ctx); *min = STUB_GSS_NO_MEMORY; return GSS_S_FAILURE; @@ -252,7 +272,7 @@ stub_gss_init_sec_context(OM_uint32 *min, } if(used >= length) { - (free)(token); + Curl_gss_free(token); free(ctx); *min = STUB_GSS_NO_MEMORY; return GSS_S_FAILURE; @@ -294,7 +314,7 @@ stub_gss_delete_sec_context(OM_uint32 *min, return GSS_S_COMPLETE; } -#endif /* DEBUGBUILD */ +#endif /* CURL_GSS_STUB */ OM_uint32 Curl_gss_init_sec_context(struct Curl_easy *data, OM_uint32 *minor_status, @@ -324,7 +344,7 @@ OM_uint32 Curl_gss_init_sec_context(struct Curl_easy *data, if(data->set.gssapi_delegation & CURLGSSAPI_DELEGATION_FLAG) req_flags |= GSS_C_DELEG_FLAG; -#ifdef DEBUGBUILD +#ifdef CURL_GSS_STUB if(getenv("CURL_STUB_GSS_CREDS")) return stub_gss_init_sec_context(minor_status, GSS_C_NO_CREDENTIAL, /* cred_handle */ @@ -339,7 +359,7 @@ OM_uint32 Curl_gss_init_sec_context(struct Curl_easy *data, output_token, ret_flags, NULL /* time_rec */); -#endif /* DEBUGBUILD */ +#endif /* CURL_GSS_STUB */ return gss_init_sec_context(minor_status, GSS_C_NO_CREDENTIAL, /* cred_handle */ @@ -360,19 +380,20 @@ OM_uint32 Curl_gss_delete_sec_context(OM_uint32 *min, gss_ctx_id_t *context, gss_buffer_t output_token) { -#ifdef DEBUGBUILD +#ifdef CURL_GSS_STUB if(getenv("CURL_STUB_GSS_CREDS")) return stub_gss_delete_sec_context(min, (struct stub_gss_ctx_id_t_desc **)context, output_token); -#endif /* DEBUGBUILD */ +#endif /* CURL_GSS_STUB */ return gss_delete_sec_context(min, context, output_token); } #define GSS_LOG_BUFFER_LEN 1024 static size_t display_gss_error(OM_uint32 status, int type, - char *buf, size_t len) { + char *buf, size_t len) +{ OM_uint32 maj_stat; OM_uint32 min_stat; OM_uint32 msg_ctx = 0; diff --git a/lib/curl_gssapi.h b/lib/curl_gssapi.h index 6df7e059d325..1a2bbabdf516 100644 --- a/lib/curl_gssapi.h +++ b/lib/curl_gssapi.h @@ -28,6 +28,11 @@ #include "urldata.h" #ifdef HAVE_GSSAPI + +#ifdef GSS_C_CHANNEL_BOUND_FLAG /* MIT Kerberos 1.19+, missing from GNU GSS */ +#define CURL_GSSAPI_HAS_CHANNEL_BINDING +#endif + extern gss_OID_desc Curl_spnego_mech_oid; extern gss_OID_desc Curl_krb5_mech_oid; diff --git a/lib/curl_ntlm_core.c b/lib/curl_ntlm_core.c index cf0e4dc28832..28ae16d187a5 100644 --- a/lib/curl_ntlm_core.c +++ b/lib/curl_ntlm_core.c @@ -38,10 +38,9 @@ 1. USE_OPENSSL 2. USE_WOLFSSL 3. USE_GNUTLS - 4. - - 5. USE_MBEDTLS - 6. USE_OS400CRYPTO - 7. USE_WIN32_CRYPTO + 4. USE_MBEDTLS + 5. USE_OS400CRYPTO + 6. USE_WIN32_CRYPTO This ensures that: - the same SSL branch gets activated throughout this source @@ -51,23 +50,25 @@ in NTLM type-3 messages. */ -#ifdef USE_OPENSSL - #include - #if !defined(OPENSSL_NO_DES) && !defined(OPENSSL_NO_DEPRECATED_3_0) - #define USE_OPENSSL_DES - #endif -#elif defined(USE_WOLFSSL) - #include - #ifndef NO_DES3 - #define USE_OPENSSL_DES - #endif +#ifdef USE_MBEDTLS +#include +#if MBEDTLS_VERSION_NUMBER < 0x03020000 + #error "mbedTLS 3.2.0 or later required" +#endif +#endif + +#if defined(USE_OPENSSL) && defined(HAVE_DES_ECB_ENCRYPT) + #define USE_OPENSSL_DES +#elif defined(USE_WOLFSSL) && defined(HAVE_WOLFSSL_DES_ECB_ENCRYPT) + #define USE_OPENSSL_DES +#elif defined(USE_MBEDTLS) && defined(HAVE_MBEDTLS_DES_CRYPT_ECB) + #define USE_MBEDTLS_DES #endif #ifdef USE_OPENSSL_DES #ifdef USE_OPENSSL # include -# include # include # include # ifdef OPENSSL_IS_AWSLC /* for versions 1.2.0 to 1.30.1 */ @@ -75,8 +76,8 @@ # endif # define DESKEY(x) &x #else +# include # include -# include # include # include # ifdef OPENSSL_COEXIST @@ -96,18 +97,20 @@ #elif defined(USE_GNUTLS) # include +# define USE_CURL_DES_SET_ODD_PARITY -#elif defined(USE_MBEDTLS) +#elif defined(USE_MBEDTLS_DES) # include #elif defined(USE_OS400CRYPTO) # include "cipher.mih" /* mih/cipher */ +# define USE_CURL_DES_SET_ODD_PARITY #elif defined(USE_WIN32_CRYPTO) # include +# define USE_CURL_DES_SET_ODD_PARITY #else # error "cannot compile NTLM support without a crypto library with DES." -# define CURL_NTLM_NOT_SUPPORTED #endif #include "urldata.h" @@ -117,14 +120,50 @@ #include "curl_hmac.h" #include "curlx/warnless.h" #include "curl_endian.h" -#include "curl_des.h" #include "curl_md4.h" /* The last 2 #include files should be in this order */ #include "curl_memory.h" #include "memdebug.h" -#ifndef CURL_NTLM_NOT_SUPPORTED +#ifdef USE_CURL_DES_SET_ODD_PARITY +/* + * curl_des_set_odd_parity() + * + * Copyright (C) Steve Holme, + * + * This is used to apply odd parity to the given byte array. It is typically + * used by when a cryptography engine does not have its own version. + * + * The function is a port of the Java based oddParity() function over at: + * + * https://davenport.sourceforge.net/ntlm.html + * + * Parameters: + * + * bytes [in/out] - The data whose parity bits are to be adjusted for + * odd parity. + * len [out] - The length of the data. + */ +static void curl_des_set_odd_parity(unsigned char *bytes, size_t len) +{ + size_t i; + + for(i = 0; i < len; i++) { + unsigned char b = bytes[i]; + + bool needs_parity = (((b >> 7) ^ (b >> 6) ^ (b >> 5) ^ + (b >> 4) ^ (b >> 3) ^ (b >> 2) ^ + (b >> 1)) & 0x01) == 0; + + if(needs_parity) + bytes[i] |= 0x01; + else + bytes[i] &= 0xfe; + } +} +#endif /* USE_CURL_DES_SET_ODD_PARITY */ + /* * Turns a 56-bit key into being 64-bit wide. */ @@ -139,7 +178,6 @@ static void extend_key_56_to_64(const unsigned char *key_56, char *key) key[6] = (char)(((key_56[5] << 2) & 0xFF) | (key_56[6] >> 6)); key[7] = (char) ((key_56[6] << 1) & 0xFF); } -#endif #ifdef USE_OPENSSL_DES /* @@ -172,13 +210,13 @@ static void setup_des_key(const unsigned char *key_56, extend_key_56_to_64(key_56, key); /* Set the key parity to odd */ - Curl_des_set_odd_parity((unsigned char *) key, sizeof(key)); + curl_des_set_odd_parity((unsigned char *) key, sizeof(key)); /* Set the key */ des_set_key(des, (const uint8_t *) key); } -#elif defined(USE_MBEDTLS) +#elif defined(USE_MBEDTLS_DES) static bool encrypt_des(const unsigned char *in, unsigned char *out, const unsigned char *key_56) @@ -214,7 +252,7 @@ static bool encrypt_des(const unsigned char *in, unsigned char *out, extend_key_56_to_64(key_56, ctl.Crypto_Key); /* Set the key parity to odd */ - Curl_des_set_odd_parity((unsigned char *) ctl.Crypto_Key, ctl.Data_Len); + curl_des_set_odd_parity((unsigned char *) ctl.Crypto_Key, ctl.Data_Len); /* Perform the encryption */ _CIPHER((_SPCPTR *) &out, &ctl, (_SPCPTR *) &in); @@ -252,7 +290,7 @@ static bool encrypt_des(const unsigned char *in, unsigned char *out, extend_key_56_to_64(key_56, blob.key); /* Set the key parity to odd */ - Curl_des_set_odd_parity((unsigned char *) blob.key, sizeof(blob.key)); + curl_des_set_odd_parity((unsigned char *) blob.key, sizeof(blob.key)); /* Import the key */ if(!CryptImportKey(hprov, (BYTE *) &blob, sizeof(blob), 0, 0, &hkey)) { @@ -305,7 +343,7 @@ void Curl_ntlm_core_lm_resp(const unsigned char *keys, des_encrypt(&des, 8, results + 8, plaintext); setup_des_key(keys + 14, &des); des_encrypt(&des, 8, results + 16, plaintext); -#elif defined(USE_MBEDTLS) || defined(USE_OS400CRYPTO) || \ +#elif defined(USE_MBEDTLS_DES) || defined(USE_OS400CRYPTO) || \ defined(USE_WIN32_CRYPTO) encrypt_des(plaintext, results, keys); encrypt_des(plaintext, results + 8, keys + 7); @@ -324,11 +362,9 @@ CURLcode Curl_ntlm_core_mk_lm_hash(const char *password, unsigned char *lmbuffer /* 21 bytes */) { unsigned char pw[14]; -#ifndef CURL_NTLM_NOT_SUPPORTED static const unsigned char magic[] = { 0x4B, 0x47, 0x53, 0x21, 0x40, 0x23, 0x24, 0x25 /* i.e. KGS!@#$% */ }; -#endif size_t len = CURLMIN(strlen(password), 14); Curl_strntoupper((char *)pw, password, len); @@ -353,7 +389,7 @@ CURLcode Curl_ntlm_core_mk_lm_hash(const char *password, des_encrypt(&des, 8, lmbuffer, magic); setup_des_key(pw + 7, &des); des_encrypt(&des, 8, lmbuffer + 8, magic); -#elif defined(USE_MBEDTLS) || defined(USE_OS400CRYPTO) || \ +#elif defined(USE_MBEDTLS_DES) || defined(USE_OS400CRYPTO) || \ defined(USE_WIN32_CRYPTO) encrypt_des(magic, lmbuffer, pw); encrypt_des(magic, lmbuffer + 8, pw + 7); @@ -614,10 +650,10 @@ CURLcode Curl_ntlm_core_mk_ntlmv2_resp(unsigned char *ntlmv2hash, * * Returns CURLE_OK on success. */ -CURLcode Curl_ntlm_core_mk_lmv2_resp(unsigned char *ntlmv2hash, - unsigned char *challenge_client, - unsigned char *challenge_server, - unsigned char *lmresp) +CURLcode Curl_ntlm_core_mk_lmv2_resp(unsigned char *ntlmv2hash, + unsigned char *challenge_client, + unsigned char *challenge_server, + unsigned char *lmresp) { unsigned char data[16]; unsigned char hmac_output[16]; diff --git a/lib/curl_sasl.c b/lib/curl_sasl.c index c907c2c27bb2..b04e9582689d 100644 --- a/lib/curl_sasl.c +++ b/lib/curl_sasl.c @@ -43,7 +43,6 @@ #include "urldata.h" #include "curlx/base64.h" -#include "curl_md5.h" #include "vauth/vauth.h" #include "cfilters.h" #include "vtls/vtls.h" @@ -933,10 +932,10 @@ CURLcode Curl_sasl_is_blocked(struct SASL *sasl, struct Curl_easy *data) CURL_SASL_DIGEST, TRUE, NULL); sasl_unchosen(data, SASL_MECH_NTLM, enabledmechs, CURL_SASL_NTLM, Curl_auth_is_ntlm_supported(), NULL); - sasl_unchosen(data, SASL_MECH_OAUTHBEARER, enabledmechs, TRUE, TRUE, + sasl_unchosen(data, SASL_MECH_OAUTHBEARER, enabledmechs, TRUE, TRUE, data->set.str[STRING_BEARER] ? NULL : "CURLOPT_XOAUTH2_BEARER"); - sasl_unchosen(data, SASL_MECH_XOAUTH2, enabledmechs, TRUE, TRUE, + sasl_unchosen(data, SASL_MECH_XOAUTH2, enabledmechs, TRUE, TRUE, data->set.str[STRING_BEARER] ? NULL : "CURLOPT_XOAUTH2_BEARER"); } diff --git a/lib/curl_setup.h b/lib/curl_setup.h index 694d14df4f09..7c033623c5ff 100644 --- a/lib/curl_setup.h +++ b/lib/curl_setup.h @@ -756,8 +756,9 @@ /* Single point where USE_NTLM definition might be defined */ #ifndef CURL_DISABLE_NTLM -# if defined(USE_OPENSSL) || defined(USE_MBEDTLS) || \ +# if (defined(USE_OPENSSL) && defined(HAVE_DES_ECB_ENCRYPT)) || \ defined(USE_GNUTLS) || \ + (defined(USE_MBEDTLS) && defined(HAVE_MBEDTLS_DES_CRYPT_ECB)) || \ defined(USE_OS400CRYPTO) || defined(USE_WIN32_CRYPTO) || \ (defined(USE_WOLFSSL) && defined(HAVE_WOLFSSL_DES_ECB_ENCRYPT)) # define USE_CURL_NTLM_CORE diff --git a/lib/curl_sha512_256.c b/lib/curl_sha512_256.c index 7e9b223387e0..0d2cd3c3f966 100644 --- a/lib/curl_sha512_256.c +++ b/lib/curl_sha512_256.c @@ -344,7 +344,7 @@ static CURL_FORCEINLINE curl_uint64_t Curl_rotr64(curl_uint64_t value, * Size of the SHA-512/256 resulting digest in words. * This is the final digest size, not intermediate hash. */ -#define SHA512_256_DIGEST_SIZE_WORDS (SHA512_256_HASH_SIZE_WORDS / 2) +#define SHA512_256_DIGEST_SIZE_WORDS (SHA512_256_HASH_SIZE_WORDS / 2) /** * Size of the SHA-512/256 resulting digest in bytes @@ -760,7 +760,6 @@ static CURLcode Curl_sha512_256_finish(unsigned char *digest, void *context) #endif /* Local SHA-512/256 code */ - /** * Compute SHA-512/256 hash for the given data in one function call * @param[out] output the pointer to put the hash diff --git a/lib/curlx/base64.c b/lib/curlx/base64.c index 5f6887bd5c4c..ef07243dd3c5 100644 --- a/lib/curlx/base64.c +++ b/lib/curlx/base64.c @@ -184,10 +184,10 @@ static CURLcode base64_encode(const char *table64, if(!insize) return CURLE_OK; -#if SIZEOF_SIZE_T == 4 - if(insize > UINT_MAX/4) - return CURLE_OUT_OF_MEMORY; -#endif + /* safety precaution */ + DEBUGASSERT(insize <= CURL_MAX_BASE64_INPUT); + if(insize > CURL_MAX_BASE64_INPUT) + return CURLE_TOO_LARGE; base64data = output = malloc((insize + 2) / 3 * 4 + 1); if(!output) diff --git a/lib/curlx/base64.h b/lib/curlx/base64.h index 026f80e4d37f..31cfcb36e767 100644 --- a/lib/curlx/base64.h +++ b/lib/curlx/base64.h @@ -33,4 +33,8 @@ CURLcode curlx_base64_decode(const char *src, extern const char Curl_base64encdec[]; +/* maximum input length acceptable to base64 encode, here to catch and prevent + mistakes */ +#define CURL_MAX_BASE64_INPUT 16000000 + #endif /* HEADER_CURL_BASE64_H */ diff --git a/lib/curlx/fopen.c b/lib/curlx/fopen.c index 22c7259c70dd..cc164c8c29b4 100644 --- a/lib/curlx/fopen.c +++ b/lib/curlx/fopen.c @@ -32,9 +32,23 @@ #include "../curl_setup.h" +#include "fopen.h" + +int curlx_fseek(void *stream, curl_off_t offset, int whence) +{ +#if defined(_WIN32) && defined(USE_WIN32_LARGE_FILES) + return _fseeki64(stream, (__int64)offset, whence); +#elif defined(HAVE_FSEEKO) && defined(HAVE_DECL_FSEEKO) + return fseeko(stream, (off_t)offset, whence); +#else + if(offset > LONG_MAX) + return -1; + return fseek(stream, (long)offset, whence); +#endif +} + #if defined(_WIN32) && !defined(UNDER_CE) -#include "fopen.h" #include "multibyte.h" /* declare GetFullPathNameW for mingw-w64 UWP builds targeting old windows */ diff --git a/lib/curlx/fopen.h b/lib/curlx/fopen.h index b44cbbdfced2..51f4dbca173b 100644 --- a/lib/curlx/fopen.h +++ b/lib/curlx/fopen.h @@ -32,6 +32,8 @@ #include /* for open() and attributes */ #endif +int curlx_fseek(void *stream, curl_off_t offset, int whence); + #if defined(_WIN32) && !defined(UNDER_CE) FILE *curlx_win32_fopen(const char *filename, const char *mode); int curlx_win32_stat(const char *path, struct_stat *buffer); diff --git a/lib/cw-out.c b/lib/cw-out.c index 7a9274b5f21b..36cfc36aca04 100644 --- a/lib/cw-out.c +++ b/lib/cw-out.c @@ -252,7 +252,7 @@ static CURLcode cw_out_ptr_flush(struct cw_out_ctx *ctx, size_t wlen, nwritten; CURLcode result; - /* If we errored once, we do not invoke the client callback again */ + /* If we errored once, we do not invoke the client callback again */ if(ctx->errored) return CURLE_WRITE_ERROR; @@ -302,6 +302,7 @@ static CURLcode cw_out_buf_flush(struct cw_out_ctx *ctx, &consumed); if(result && (result != CURLE_AGAIN)) return result; + result = CURLE_OK; if(consumed) { if(consumed == curlx_dyn_len(&cwbuf->b)) { @@ -403,7 +404,7 @@ static CURLcode cw_out_do_write(struct cw_out_ctx *ctx, /* still have buffered data, append and flush */ result = cw_out_append(ctx, data, otype, buf, blen); if(result) - return result; + goto out; result = cw_out_flush_chain(ctx, data, &ctx->buf, flush_all); if(result) goto out; diff --git a/lib/doh.c b/lib/doh.c index 3dd7a2872d2f..3552cba7b554 100644 --- a/lib/doh.c +++ b/lib/doh.c @@ -79,7 +79,7 @@ static const char *doh_strerror(DOHcode code) UNITTEST DOHcode doh_req_encode(const char *host, DNStype dnstype, unsigned char *dnsp, /* buffer */ - size_t len, /* buffer size */ + size_t len, /* buffer size */ size_t *olen) /* output length */ { const size_t hostlen = strlen(host); @@ -158,9 +158,9 @@ UNITTEST DOHcode doh_req_encode(const char *host, *dnsp++ = 0; /* append zero-length label for root */ - /* There are assigned TYPE codes beyond 255: use range [1..65535] */ + /* There are assigned TYPE codes beyond 255: use range [1..65535] */ *dnsp++ = (unsigned char)(255 & (dnstype >> 8)); /* upper 8 bit TYPE */ - *dnsp++ = (unsigned char)(255 & dnstype); /* lower 8 bit TYPE */ + *dnsp++ = (unsigned char)(255 & dnstype); /* lower 8 bit TYPE */ *dnsp++ = '\0'; /* upper 8 bit CLASS */ *dnsp++ = DNS_CLASS_IN; /* IN - "the Internet" */ @@ -458,6 +458,7 @@ struct Curl_addrinfo *Curl_doh(struct Curl_easy *data, DEBUGASSERT(conn); DEBUGASSERT(!data->state.async.doh); + DEBUGASSERT(hostname && hostname[0]); if(data->state.async.doh) Curl_doh_cleanup(data); @@ -676,7 +677,7 @@ static DOHcode doh_rdata(const unsigned char *doh, struct dohentry *d) { /* RDATA - - A (TYPE 1): 4 bytes + - A (TYPE 1): 4 bytes - AAAA (TYPE 28): 16 bytes - NS (TYPE 2): N bytes - HTTPS (TYPE 65): N bytes */ @@ -706,7 +707,7 @@ static DOHcode doh_rdata(const unsigned char *doh, return rc; break; case CURL_DNS_TYPE_DNAME: - /* explicit for clarity; just skip; rely on synthesized CNAME */ + /* explicit for clarity; just skip; rely on synthesized CNAME */ break; default: /* unsupported type, just skip it */ @@ -1218,8 +1219,9 @@ UNITTEST void doh_print_httpsrr(struct Curl_easy *data, CURLcode Curl_doh_is_resolved(struct Curl_easy *data, struct Curl_dns_entry **dnsp) { - CURLcode result; + CURLcode result = CURLE_OK; struct doh_probes *dohp = data->state.async.doh; + struct dohentry de; *dnsp = NULL; /* defaults to no response */ if(!dohp) return CURLE_OUT_OF_MEMORY; @@ -1232,7 +1234,6 @@ CURLcode Curl_doh_is_resolved(struct Curl_easy *data, } else if(!dohp->pending) { DOHcode rc[DOH_SLOT_COUNT]; - struct dohentry de; int slot; /* Clear any result the might still be there */ @@ -1264,17 +1265,14 @@ CURLcode Curl_doh_is_resolved(struct Curl_easy *data, struct Curl_dns_entry *dns; struct Curl_addrinfo *ai; - if(Curl_trc_ft_is_verbose(data, &Curl_trc_feat_dns)) { CURL_TRC_DNS(data, "hostname: %s", dohp->host); doh_show(data, &de); } result = doh2ai(&de, dohp->host, dohp->port, &ai); - if(result) { - de_cleanup(&de); - return result; - } + if(result) + goto error; /* we got a response, create a dns entry. */ dns = Curl_dnscache_mk_entry(data, ai, dohp->host, 0, dohp->port, FALSE); @@ -1287,7 +1285,8 @@ CURLcode Curl_doh_is_resolved(struct Curl_easy *data, de.https_rrs->len, &hrr); if(result) { infof(data, "Failed to decode HTTPS RR"); - return result; + Curl_resolv_unlink(data, &dns); + goto error; } infof(data, "Some HTTPS RR to process"); # ifdef DEBUGBUILD @@ -1305,14 +1304,15 @@ CURLcode Curl_doh_is_resolved(struct Curl_easy *data, /* All done */ data->state.async.done = TRUE; - de_cleanup(&de); - Curl_doh_cleanup(data); - return result; - } /* !dohp->pending */ + else + /* wait for pending DoH transactions to complete */ + return CURLE_OK; - /* else wait for pending DoH transactions to complete */ - return CURLE_OK; +error: + de_cleanup(&de); + Curl_doh_cleanup(data); + return result; } void Curl_doh_close(struct Curl_easy *data) diff --git a/lib/easy.c b/lib/easy.c index 793a18f33eb8..4236a01d8744 100644 --- a/lib/easy.c +++ b/lib/easy.c @@ -1165,7 +1165,8 @@ CURLcode curl_easy_pause(CURL *d, int action) send_paused = Curl_xfer_send_is_paused(data); send_paused_new = (action & CURLPAUSE_SEND); - if(send_paused != send_paused_new) { + if((send_paused != send_paused_new) || + (send_paused_new != Curl_creader_is_paused(data))) { changed = TRUE; result = Curl_1st_err(result, Curl_xfer_pause_send(data, send_paused_new)); } diff --git a/lib/escape.c b/lib/escape.c index e7587e49b40e..fdc6e438ab3e 100644 --- a/lib/escape.c +++ b/lib/escape.c @@ -23,7 +23,7 @@ ***************************************************************************/ /* Escape and unescape URL encoding in strings. The functions return a new - * allocated string or NULL if an error occurred. */ + * allocated string or NULL if an error occurred. */ #include "curl_setup.h" @@ -34,7 +34,6 @@ struct Curl_easy; #include "urldata.h" #include "curlx/warnless.h" #include "escape.h" -#include "strdup.h" #include "curlx/strparse.h" #include "curl_printf.h" diff --git a/lib/file.c b/lib/file.c index fe07df5d2a92..f45a487c90f3 100644 --- a/lib/file.c +++ b/lib/file.c @@ -61,7 +61,6 @@ #include "escape.h" #include "file.h" #include "speedcheck.h" -#include "getinfo.h" #include "multiif.h" #include "transfer.h" #include "url.h" diff --git a/lib/fileinfo.c b/lib/fileinfo.c index 47cdb102e373..bddd3fe6fbb1 100644 --- a/lib/fileinfo.c +++ b/lib/fileinfo.c @@ -26,7 +26,6 @@ #ifndef CURL_DISABLE_FTP -#include "strdup.h" #include "fileinfo.h" #include "curl_memory.h" /* The last #include file should be: */ diff --git a/lib/formdata.c b/lib/formdata.c index a98384c18ac9..416bcad4f57d 100644 --- a/lib/formdata.c +++ b/lib/formdata.c @@ -37,6 +37,7 @@ struct Curl_easy; #include "sendf.h" #include "strdup.h" #include "rand.h" +#include "curlx/fopen.h" #include "curlx/warnless.h" /* The last 2 #include files should be in this order */ @@ -288,7 +289,7 @@ static CURLFORMcode FormAddCheck(struct FormInfo *first_form, HTTPPOST_PTRCONTENTS | HTTPPOST_PTRBUFFER | HTTPPOST_CALLBACK)) && form->value) { /* copy value (without strdup; possibly contains null characters) */ - size_t clen = (size_t) form->contentslength; + size_t clen = (size_t) form->contentslength; if(!clen) clen = strlen(form->value) + 1; @@ -546,7 +547,7 @@ CURLFORMcode FormAdd(struct curl_httppost **httppost, retval = CURL_FORMADD_OPTION_TWICE; else { if(!array_state) - avalue = va_arg(params, char *); + avalue = va_arg(params, char *); if(avalue) { curr->userp = avalue; curr->value = avalue; /* this is not strictly true but we derive a @@ -771,20 +772,6 @@ static CURLcode setname(curl_mimepart *part, const char *name, size_t len) return res; } -/* wrap call to fseeko so it matches the calling convention of callback */ -static int fseeko_wrapper(void *stream, curl_off_t offset, int whence) -{ -#if defined(_WIN32) && defined(USE_WIN32_LARGE_FILES) - return _fseeki64(stream, (__int64)offset, whence); -#elif defined(HAVE_FSEEKO) && defined(HAVE_DECL_FSEEKO) - return fseeko(stream, (off_t)offset, whence); -#else - if(offset > LONG_MAX) - return -1; - return fseek(stream, (long)offset, whence); -#endif -} - /* * Curl_getformdata() converts a linked list of "meta data" into a mime * structure. The input list is in 'post', while the output is stored in @@ -874,7 +861,7 @@ CURLcode Curl_getformdata(CURL *data, #endif result = curl_mime_data_cb(part, (curl_off_t) -1, (curl_read_callback) fread, - fseeko_wrapper, + curlx_fseek, NULL, (void *) stdin); #if defined(__clang__) && __clang_major__ >= 16 #pragma clang diagnostic pop diff --git a/lib/ftp.c b/lib/ftp.c index fd957a2bb485..819fab462b93 100644 --- a/lib/ftp.c +++ b/lib/ftp.c @@ -334,7 +334,6 @@ static void freedirs(struct ftp_conn *ftpc) ftpc->dirdepth = 0; Curl_safefree(ftpc->rawpath); ftpc->file = NULL; - Curl_safefree(ftpc->newhost); } #ifdef CURL_PREFER_LF_LINEENDS @@ -534,7 +533,7 @@ static CURLcode ftp_initiate_transfer(struct Curl_easy *data, if(result || !connected) return result; - if(ftpc->state_saved == FTP_STOR) { + if(data->state.upload) { /* When we know we are uploading a specified file, we can get the file size prior to the actual upload. */ Curl_pgrsSetUploadSize(data, data->state.infilesize); @@ -549,7 +548,7 @@ static CURLcode ftp_initiate_transfer(struct Curl_easy *data, } else { /* FTP download, shutdown, do not ignore errors */ - Curl_xfer_setup_recv(data, SECONDARYSOCKET, ftpc->retr_size_saved); + Curl_xfer_setup_recv(data, SECONDARYSOCKET, data->req.size); Curl_xfer_set_shutdown(data, TRUE, FALSE); } @@ -1116,7 +1115,6 @@ static CURLcode ftp_state_use_port(struct Curl_easy *data, port++; } - /* get the name again after the bind() so that we can extract the port number it uses now */ sslen = sizeof(ss); @@ -1771,11 +1769,12 @@ static CURLcode ftp_epsv_disable(struct Curl_easy *data, } -static char *control_address_dup(struct Curl_easy *data, - struct connectdata *conn) +static CURLcode ftp_control_addr_dup(struct Curl_easy *data, + char **newhostp) { - struct ip_quadruple ipquad; - bool is_ipv6; + struct connectdata *conn = data->conn; + struct ip_quadruple ipquad; + bool is_ipv6; /* Returns the control connection IP address. If a proxy tunnel is used, returns the original hostname instead, because @@ -1783,11 +1782,19 @@ static char *control_address_dup(struct Curl_easy *data, not the ftp host. */ #ifndef CURL_DISABLE_PROXY if(conn->bits.tunnel_proxy || conn->bits.socksproxy) - return strdup(conn->host.name); + *newhostp = strdup(conn->host.name); + else #endif - if(!Curl_conn_get_ip_info(data, conn, FIRSTSOCKET, &is_ipv6, &ipquad)) - return strdup(ipquad.remote_ip); - return NULL; + if(!Curl_conn_get_ip_info(data, conn, FIRSTSOCKET, &is_ipv6, &ipquad) && + *ipquad.remote_ip) + *newhostp = strdup(ipquad.remote_ip); + else { + /* failed to get the remote_ip of the DATA connection */ + failf(data, "unable to get peername of DATA connection"); + *newhostp = NULL; + return CURLE_FTP_CANT_GET_HOST; + } + return *newhostp ? CURLE_OK : CURLE_OUT_OF_MEMORY; } static bool match_pasv_6nums(const char *p, @@ -1817,12 +1824,11 @@ static CURLcode ftp_state_pasv_resp(struct Curl_easy *data, struct Curl_dns_entry *dns = NULL; unsigned short connectport; /* the local port connect() should use! */ struct pingpong *pp = &ftpc->pp; + char *newhost = NULL; + unsigned short newport = 0; char *str = curlx_dyn_ptr(&pp->recvbuf) + 4; /* start on the first letter */ - /* if we come here again, make sure the former name is cleared */ - Curl_safefree(ftpc->newhost); - if((ftpc->count1 == 0) && (ftpcode == 229)) { /* positive EPSV response */ @@ -1839,10 +1845,10 @@ static CURLcode ftp_state_pasv_resp(struct Curl_easy *data, failf(data, "Illegal port number in EPSV reply"); return CURLE_FTP_WEIRD_PASV_REPLY; } - ftpc->newport = (unsigned short)num; - ftpc->newhost = control_address_dup(data, conn); - if(!ftpc->newhost) - return CURLE_OUT_OF_MEMORY; + newport = (unsigned short)num; + result = ftp_control_addr_dup(data, &newhost); + if(result) + return result; } else ptr = NULL; @@ -1884,15 +1890,17 @@ static CURLcode ftp_state_pasv_resp(struct Curl_easy *data, infof(data, "Skip %u.%u.%u.%u for data connection, reuse %s instead", ip[0], ip[1], ip[2], ip[3], conn->host.name); - ftpc->newhost = control_address_dup(data, conn); + result = ftp_control_addr_dup(data, &newhost); + if(result) + return result; } else - ftpc->newhost = curl_maprintf("%u.%u.%u.%u", ip[0], ip[1], ip[2], ip[3]); + newhost = curl_maprintf("%u.%u.%u.%u", ip[0], ip[1], ip[2], ip[3]); - if(!ftpc->newhost) + if(!newhost) return CURLE_OUT_OF_MEMORY; - ftpc->newport = (unsigned short)(((ip[4] << 8) + ip[5]) & 0xffff); + newport = (unsigned short)(((ip[4] << 8) + ip[5]) & 0xffff); } else if(ftpc->count1 == 0) { /* EPSV failed, move on to PASV */ @@ -1916,7 +1924,7 @@ static CURLcode ftp_state_pasv_resp(struct Curl_easy *data, result = Curl_conn_get_ip_info(data, data->conn, FIRSTSOCKET, &is_ipv6, &ipquad); if(result) - return result; + goto error; (void)Curl_resolv_blocking(data, host_name, ipquad.remote_port, is_ipv6 ? CURL_IPRESOLVE_V6 : CURL_IPRESOLVE_V4, @@ -1926,31 +1934,31 @@ static CURLcode ftp_state_pasv_resp(struct Curl_easy *data, if(!dns) { failf(data, "cannot resolve proxy host %s:%hu", host_name, connectport); - return CURLE_COULDNT_RESOLVE_PROXY; + result = CURLE_COULDNT_RESOLVE_PROXY; + goto error; } } else #endif { /* normal, direct, ftp connection */ - DEBUGASSERT(ftpc->newhost); + DEBUGASSERT(newhost); /* postponed address resolution in case of tcp fastopen */ - if(conn->bits.tcp_fastopen && !conn->bits.reuse && !ftpc->newhost[0]) { - free(ftpc->newhost); - ftpc->newhost = control_address_dup(data, conn); - if(!ftpc->newhost) - return CURLE_OUT_OF_MEMORY; + if(conn->bits.tcp_fastopen && !conn->bits.reuse && !newhost[0]) { + free(newhost); + result = ftp_control_addr_dup(data, &newhost); + if(result) + goto error; } - (void)Curl_resolv_blocking(data, ftpc->newhost, ftpc->newport, - conn->ip_version, &dns); - connectport = ftpc->newport; /* we connect to the remote port */ + (void)Curl_resolv_blocking(data, newhost, newport, conn->ip_version, &dns); + connectport = newport; /* we connect to the remote port */ if(!dns) { - failf(data, "cannot resolve new host %s:%hu", - ftpc->newhost, connectport); - return CURLE_FTP_CANT_GET_HOST; + failf(data, "cannot resolve new host %s:%hu", newhost, connectport); + result = CURLE_FTP_CANT_GET_HOST; + goto error; } } @@ -1959,13 +1967,14 @@ static CURLcode ftp_state_pasv_resp(struct Curl_easy *data, CURL_CF_SSL_ENABLE : CURL_CF_SSL_DISABLE); if(result) { - if(ftpc->count1 == 0 && ftpcode == 229) + if(ftpc->count1 == 0 && ftpcode == 229) { + free(newhost); return ftp_epsv_disable(data, ftpc, conn); + } - return result; + goto error; } - /* * When this is used from the multi interface, this might've returned with * the 'connected' set to FALSE and thus we are now awaiting a non-blocking @@ -1974,17 +1983,21 @@ static CURLcode ftp_state_pasv_resp(struct Curl_easy *data, if(data->set.verbose) /* this just dumps information about this second connection */ - ftp_pasv_verbose(data, dns->addr, ftpc->newhost, connectport); + ftp_pasv_verbose(data, dns->addr, newhost, connectport); free(conn->secondaryhostname); - conn->secondary_port = ftpc->newport; - conn->secondaryhostname = strdup(ftpc->newhost); - if(!conn->secondaryhostname) - return CURLE_OUT_OF_MEMORY; + conn->secondary_port = newport; + conn->secondaryhostname = strdup(newhost); + if(!conn->secondaryhostname) { + result = CURLE_OUT_OF_MEMORY; + goto error; + } conn->bits.do_more = TRUE; ftp_state(data, ftpc, FTP_STOP); /* this phase is completed */ +error: + free(newhost); return result; } @@ -2413,7 +2426,7 @@ static CURLcode ftp_state_rest_resp(struct Curl_easy *data, static CURLcode ftp_state_stor_resp(struct Curl_easy *data, struct ftp_conn *ftpc, - int ftpcode, ftpstate instate) + int ftpcode) { CURLcode result = CURLE_OK; @@ -2423,8 +2436,6 @@ static CURLcode ftp_state_stor_resp(struct Curl_easy *data, return CURLE_UPLOAD_FAILED; } - ftpc->state_saved = instate; - /* PORT means we are now awaiting the server to connect to us. */ if(data->set.ftp_use_port) { bool connected; @@ -2473,8 +2484,7 @@ static CURLcode ftp_state_get_resp(struct Curl_easy *data, E: 125 Data connection already open; Transfer starting. */ - curl_off_t size = -1; /* default unknown size */ - + data->req.size = -1; /* default unknown size */ /* * It appears that there are FTP-servers that return size 0 for files when @@ -2506,28 +2516,25 @@ static CURLcode ftp_state_get_resp(struct Curl_easy *data, if(!curlx_str_number(&c, &what, CURL_OFF_T_MAX) && !curlx_str_single(&c, ' ') && !strncmp(c, "bytes", 5)) { - size = what; + data->req.size = what; break; } } } } else if(ftp->downloadsize > -1) - size = ftp->downloadsize; + data->req.size = ftp->downloadsize; - if(size > data->req.maxdownload && data->req.maxdownload > 0) - size = data->req.size = data->req.maxdownload; + if(data->req.size > data->req.maxdownload && data->req.maxdownload > 0) + data->req.size = data->req.maxdownload; else if((instate != FTP_LIST) && (data->state.prefer_ascii)) - size = -1; /* kludge for servers that understate ASCII mode file size */ + data->req.size = -1; /* for servers that understate ASCII mode file + size */ infof(data, "Maxdownload = %" FMT_OFF_T, data->req.maxdownload); if(instate != FTP_LIST) - infof(data, "Getting file with size: %" FMT_OFF_T, size); - - /* FTP download: */ - ftpc->state_saved = instate; - ftpc->retr_size_saved = size; + infof(data, "Getting file with size: %" FMT_OFF_T, data->req.size); if(data->set.ftp_use_port) { bool connected; @@ -3127,7 +3134,7 @@ static CURLcode ftp_pp_statemachine(struct Curl_easy *data, break; case FTP_STOR: - result = ftp_state_stor_resp(data, ftpc, ftpcode, ftpc->state); + result = ftp_state_stor_resp(data, ftpc, ftpcode); break; case FTP_QUIT: @@ -3354,15 +3361,9 @@ static CURLcode ftp_done(struct Curl_easy *data, CURLcode status, * data has been transferred. This happens when doing through NATs etc that * abandon old silent connections. */ - timediff_t old_time = pp->response_time; - - pp->response_time = 60*1000; /* give it only a minute for now */ pp->response = curlx_now(); /* timeout relative now */ - result = getftpresponse(data, &nread, &ftpcode); - pp->response_time = old_time; /* set this back to previous value */ - if(!nread && (CURLE_OPERATION_TIMEDOUT == result)) { failf(data, "control connection looks dead"); ftpc->ctl_valid = FALSE; /* mark control connection as bad */ @@ -4154,6 +4155,8 @@ static size_t numof_slashes(const char *str) return num; } +#define FTP_MAX_DIR_DEPTH 1000 + /*********************************************************************** * * ftp_parse_url_path() @@ -4227,7 +4230,7 @@ CURLcode ftp_parse_url_path(struct Curl_easy *data, /* number of entries to allocate for the 'dirs' array */ size_t dirAlloc = numof_slashes(rawPath); - if(dirAlloc >= 1000) + if(dirAlloc >= FTP_MAX_DIR_DEPTH) /* suspiciously deep dir hierarchy */ return CURLE_URL_MALFORMAT; diff --git a/lib/ftp.h b/lib/ftp.h index fdbb4b0539f2..8d5f9c203147 100644 --- a/lib/ftp.h +++ b/lib/ftp.h @@ -133,26 +133,22 @@ struct ftp_conn { const char *file; /* url-decoded filename (or path), points into rawpath */ char *rawpath; /* URL decoded, allocated, version of the path */ struct pathcomp *dirs; /* allocated array for path components */ - char *newhost; /* the (allocated) IP addr or hostname to connect the data - connection to */ char *prevpath; /* url-decoded conn->path from the previous transfer */ char transfertype; /* set by ftp_transfertype for use by Curl_client_write()a and others (A/I or zero) */ - curl_off_t retr_size_saved; /* Size of retrieved file saved */ char *server_os; /* The target server operating system. */ curl_off_t known_filesize; /* file size is different from -1, if wildcard LIST parsing was done and wc_statemach set it */ - int dirdepth; /* number of entries used in the 'dirs' array */ - int cwdcount; /* number of CWD commands issued */ int count1; /* general purpose counter for the state machine */ int count2; /* general purpose counter for the state machine */ int count3; /* general purpose counter for the state machine */ - unsigned short newport; /* the port of 'newhost' to connect the data - connection to */ - ftpstate state; /* always use ftp.c:state() to change state! */ - ftpstate state_saved; /* transfer type saved to be reloaded after data - connection is established */ + unsigned short dirdepth; /* number of entries used in the 'dirs' array, + < FTP_MAX_DIR_DEPTH */ + unsigned short cwdcount; /* number of CWD commands issued, + < FTP_MAX_DIR_DEPTH */ + unsigned char state; /* (ftpstate enum) always use ftp.c:state() to change + state! */ unsigned char use_ssl; /* if AUTH TLS is to be attempted etc, for FTP or IMAP or POP3 or others! (type: curl_usessl)*/ unsigned char ccc; /* ccc level for this connection */ diff --git a/lib/gopher.c b/lib/gopher.c index 6ff47d58c70a..3a6c73e6a274 100644 --- a/lib/gopher.c +++ b/lib/gopher.c @@ -35,7 +35,6 @@ #include "progress.h" #include "gopher.h" #include "select.h" -#include "strdup.h" #include "vtls/vtls.h" #include "url.h" #include "escape.h" diff --git a/lib/hmac.c b/lib/hmac.c index 5e7dd0df0c2d..7842f0601b06 100644 --- a/lib/hmac.c +++ b/lib/hmac.c @@ -74,7 +74,7 @@ Curl_HMAC_init(const struct HMAC_params *hashparams, /* If the key is too long, replace it by its hash digest. */ if(keylen > hashparams->maxkeylen) { if(hashparams->hinit(ctxt->hashctxt1)) - return NULL; + goto fail; hashparams->hupdate(ctxt->hashctxt1, key, keylen); hkey = (unsigned char *) ctxt->hashctxt2 + hashparams->ctxtsize; hashparams->hfinal(hkey, ctxt->hashctxt1); @@ -85,7 +85,7 @@ Curl_HMAC_init(const struct HMAC_params *hashparams, /* Prime the two hash contexts with the modified key. */ if(hashparams->hinit(ctxt->hashctxt1) || hashparams->hinit(ctxt->hashctxt2)) - return NULL; + goto fail; for(i = 0; i < keylen; i++) { b = (unsigned char)(*key ^ hmac_ipad); @@ -101,6 +101,10 @@ Curl_HMAC_init(const struct HMAC_params *hashparams, /* Done, return pointer to HMAC context. */ return ctxt; + +fail: + free(ctxt); + return NULL; } int Curl_HMAC_update(struct HMAC_context *ctxt, diff --git a/lib/hostip.c b/lib/hostip.c index 41db274c5d4e..7e2551d8f301 100644 --- a/lib/hostip.c +++ b/lib/hostip.c @@ -848,6 +848,8 @@ CURLcode Curl_resolv(struct Curl_easy *data, size_t hostname_len; bool keep_negative = TRUE; /* cache a negative result */ + *entry = NULL; + #ifndef CURL_DISABLE_DOH data->conn->bits.doh = FALSE; /* default is not */ #else @@ -858,6 +860,7 @@ CURLcode Curl_resolv(struct Curl_easy *data, /* We should intentionally error and not resolve .onion TLDs */ hostname_len = strlen(hostname); + DEBUGASSERT(hostname_len); if(hostname_len >= 7 && (curl_strequal(&hostname[hostname_len - 6], ".onion") || curl_strequal(&hostname[hostname_len - 7], ".onion."))) { @@ -968,7 +971,6 @@ CURLcode Curl_resolv(struct Curl_easy *data, error: if(dns) Curl_resolv_unlink(data, &dns); - *entry = NULL; Curl_async_shutdown(data); if(keep_negative) store_negative_resolve(data, hostname, port); @@ -982,7 +984,7 @@ CURLcode Curl_resolv_blocking(struct Curl_easy *data, struct Curl_dns_entry **dnsentry) { CURLcode result; - + DEBUGASSERT(hostname && *hostname); *dnsentry = NULL; result = Curl_resolv(data, hostname, port, ip_version, FALSE, dnsentry); switch(result) { @@ -1060,6 +1062,7 @@ CURLcode Curl_resolv_timeout(struct Curl_easy *data, #endif /* USE_ALARM_TIMEOUT */ CURLcode result; + DEBUGASSERT(hostname && *hostname); *entry = NULL; if(timeoutms < 0) @@ -1350,9 +1353,9 @@ CURLcode Curl_loadhostpairs(struct Curl_easy *data) } } #ifndef USE_IPV6 - if(memchr(target.str, ':', target.len)) { - infof(data, "Ignoring resolve address '%s', missing IPv6 support.", - address); + if(memchr(curlx_str(&target), ':', curlx_strlen(&target))) { + infof(data, "Ignoring resolve address '%.*s', missing IPv6 support.", + (int)curlx_strlen(&target), curlx_str(&target)); if(curlx_str_single(&host, ',')) goto err; continue; diff --git a/lib/hsts.c b/lib/hsts.c index 28989764b90f..4e41155f3006 100644 --- a/lib/hsts.c +++ b/lib/hsts.c @@ -526,20 +526,24 @@ static CURLcode hsts_load(struct hsts *h, const char *file) fp = curlx_fopen(file, FOPEN_READTEXT); if(fp) { struct dynbuf buf; + bool eof = FALSE; curlx_dyn_init(&buf, MAX_HSTS_LINE); - while(Curl_get_line(&buf, fp)) { - const char *lineptr = curlx_dyn_ptr(&buf); - curlx_str_passblanks(&lineptr); - - /* - * Skip empty or commented lines, since we know the line will have a - * trailing newline from Curl_get_line we can treat length 1 as empty. - */ - if((*lineptr == '#') || strlen(lineptr) <= 1) - continue; - - hsts_add(h, lineptr); - } + do { + result = Curl_get_line(&buf, fp, &eof); + if(!result) { + const char *lineptr = curlx_dyn_ptr(&buf); + curlx_str_passblanks(&lineptr); + + /* + * Skip empty or commented lines, since we know the line will have a + * trailing newline from Curl_get_line we can treat length 1 as empty. + */ + if((*lineptr == '#') || strlen(lineptr) <= 1) + continue; + + hsts_add(h, lineptr); + } + } while(!result && !eof); curlx_dyn_free(&buf); /* free the line buffer */ curlx_fclose(fp); } diff --git a/lib/http.c b/lib/http.c index db37995a12c7..f3cf228bf274 100644 --- a/lib/http.c +++ b/lib/http.c @@ -277,14 +277,13 @@ static bool http_header_is_empty(const char *header) /* * Strip off leading and trailing whitespace from the value in the given HTTP - * header line and return a strdup()ed copy. Returns NULL in case of - * allocation failure or bad input. Returns an empty string if the header - * value consists entirely of whitespace. + * header line and return a strdup()ed copy in 'valp' - returns an empty + * string if the header value consists entirely of whitespace. * - * If the header is provided as "name;", ending with a semicolon, it must - * return a blank string. + * If the header is provided as "name;", ending with a semicolon, it returns a + * blank string. */ -char *Curl_copy_header_value(const char *header) +static CURLcode copy_custom_value(const char *header, char **valp) { struct Curl_str out; @@ -294,9 +293,37 @@ char *Curl_copy_header_value(const char *header) curlx_str_untilnl(&header, &out, MAX_HTTP_RESP_HEADER_SIZE); curlx_str_trimblanks(&out); - return Curl_memdup0(curlx_str(&out), curlx_strlen(&out)); + *valp = Curl_memdup0(curlx_str(&out), curlx_strlen(&out)); + if(*valp) + return CURLE_OK; + return CURLE_OUT_OF_MEMORY; } /* bad input */ + *valp = NULL; + return CURLE_BAD_FUNCTION_ARGUMENT; +} + +/* + * Strip off leading and trailing whitespace from the value in the given HTTP + * header line and return a strdup()ed copy in 'valp' - returns an empty + * string if the header value consists entirely of whitespace. + * + * This function MUST be used after the header has already been confirmed to + * lead with "word:". + */ +char *Curl_copy_header_value(const char *header) +{ + struct Curl_str out; + + /* find the end of the header name */ + if(!curlx_str_until(&header, &out, MAX_HTTP_RESP_HEADER_SIZE, ':') && + !curlx_str_single(&header, ':')) { + curlx_str_untilnl(&header, &out, MAX_HTTP_RESP_HEADER_SIZE); + curlx_str_trimblanks(&out); + return Curl_memdup0(curlx_str(&out), curlx_strlen(&out)); + } + /* bad input, should never happen */ + DEBUGASSERT(0); return NULL; } @@ -1825,9 +1852,12 @@ void Curl_http_method(struct Curl_easy *data, { Curl_HttpReq httpreq = (Curl_HttpReq)data->state.httpreq; const char *request; +#ifndef CURL_DISABLE_WEBSOCKETS if(data->conn->handler->protocol&(CURLPROTO_WS|CURLPROTO_WSS)) httpreq = HTTPREQ_GET; - else if((data->conn->handler->protocol&(PROTO_FAMILY_HTTP|CURLPROTO_FTP)) && + else +#endif + if((data->conn->handler->protocol&(PROTO_FAMILY_HTTP|CURLPROTO_FTP)) && data->state.upload) httpreq = HTTPREQ_PUT; @@ -1906,9 +1936,10 @@ static CURLcode http_set_aptr_host(struct Curl_easy *data) custom Host: header if this is NOT a redirect, as setting Host: in the redirected request is being out on thin ice. Except if the hostname is the same as the first one! */ - char *cookiehost = Curl_copy_header_value(ptr); - if(!cookiehost) - return CURLE_OUT_OF_MEMORY; + char *cookiehost; + CURLcode result = copy_custom_value(ptr, &cookiehost); + if(result) + return result; if(!*cookiehost) /* ignore empty data */ free(cookiehost); @@ -2657,7 +2688,6 @@ static CURLcode http_add_connection_hd(struct Curl_easy *data, const char *sep = "Connection: "; CURLcode result = CURLE_OK; size_t rlen = curlx_dyn_len(req); - char *value; bool skip; /* Add the 1st custom "Connection: " header, if there is one */ @@ -2665,9 +2695,10 @@ static CURLcode http_add_connection_hd(struct Curl_easy *data, if(curl_strnequal(head->data, "Connection", 10) && Curl_headersep(head->data[10]) && !http_header_is_empty(head->data)) { - value = Curl_copy_header_value(head->data); - if(!value) - return CURLE_OUT_OF_MEMORY; + char *value; + result = copy_custom_value(head->data, &value); + if(result) + return result; result = curlx_dyn_addf(req, "%s%s", sep, value); sep = ", "; free(value); @@ -2749,7 +2780,11 @@ static CURLcode http_add_hd(struct Curl_easy *data, Curl_HttpReq httpreq) { CURLcode result = CURLE_OK; +#if !defined(CURL_DISABLE_ALTSVC) || \ + !defined(CURL_DISABLE_PROXY) || \ + !defined(CURL_DISABLE_WEBSOCKETS) struct connectdata *conn = data->conn; +#endif switch(id) { case H1_HD_REQUEST: /* add the main request stuff */ @@ -2936,8 +2971,10 @@ CURLcode Curl_http(struct Curl_easy *data, bool *done) char *pq = NULL; if(data->state.up.query) { pq = curl_maprintf("%s?%s", data->state.up.path, data->state.up.query); - if(!pq) - return CURLE_OUT_OF_MEMORY; + if(!pq) { + result = CURLE_OUT_OF_MEMORY; + goto out; + } } result = Curl_http_output_auth(data, data->conn, method, httpreq, (pq ? pq : data->state.up.path), FALSE); @@ -3265,20 +3302,28 @@ static CURLcode http_header_l(struct Curl_easy *data, data->info.filetime = k->timeofdoc; return CURLE_OK; } - if((k->httpcode >= 300 && k->httpcode < 400) && - HD_IS(hd, hdlen, "Location:") && - !data->req.location) { + if(HD_IS(hd, hdlen, "Location:")) { /* this is the URL that the server advises us to use instead */ char *location = Curl_copy_header_value(hd); if(!location) return CURLE_OUT_OF_MEMORY; - if(!*location) - /* ignore empty data */ + if(!*location || + (data->req.location && !strcmp(data->req.location, location))) { + /* ignore empty header, or exact repeat of a previous one */ free(location); + return CURLE_OK; + } else { + /* has value and is not an exact repeat */ + if(data->req.location) { + failf(data, "Multiple Location headers"); + free(location); + return CURLE_WEIRD_SERVER_REPLY; + } data->req.location = location; - if(data->set.http_follow_mode) { + if((k->httpcode >= 300 && k->httpcode < 400) && + data->set.http_follow_mode) { CURLcode result; DEBUGASSERT(!data->req.newurl); data->req.newurl = strdup(data->req.location); /* clone */ @@ -3336,11 +3381,11 @@ static CURLcode http_header_p(struct Curl_easy *data, #endif if((407 == k->httpcode) && HD_IS(hd, hdlen, "Proxy-authenticate:")) { char *auth = Curl_copy_header_value(hd); - CURLcode result; - if(!auth) - return CURLE_OUT_OF_MEMORY; - result = Curl_http_input_auth(data, TRUE, auth); - free(auth); + CURLcode result = auth ? CURLE_OK : CURLE_OUT_OF_MEMORY; + if(!result) { + result = Curl_http_input_auth(data, TRUE, auth); + free(auth); + } return result; } #ifdef USE_SPNEGO @@ -3515,9 +3560,11 @@ static CURLcode http_header_w(struct Curl_easy *data, if((401 == k->httpcode) && HD_IS(hd, hdlen, "WWW-Authenticate:")) { char *auth = Curl_copy_header_value(hd); if(!auth) - return CURLE_OUT_OF_MEMORY; - result = Curl_http_input_auth(data, FALSE, auth); - free(auth); + result = CURLE_OUT_OF_MEMORY; + else { + result = Curl_http_input_auth(data, FALSE, auth); + free(auth); + } } return result; } @@ -3992,9 +4039,13 @@ static CURLcode http_on_response(struct Curl_easy *data, goto out; } data->state.disableexpect = TRUE; + Curl_req_abort_sending(data); DEBUGASSERT(!data->req.newurl); data->req.newurl = strdup(data->state.url); - Curl_req_abort_sending(data); + if(!data->req.newurl) { + result = CURLE_OUT_OF_MEMORY; + goto out; + } } else if(data->set.http_keep_sending_on_error) { infof(data, "HTTP error before end of send, keep sending"); @@ -4030,7 +4081,7 @@ static CURLcode http_on_response(struct Curl_easy *data, k->download_done = TRUE; /* If max download size is *zero* (nothing) we already have - nothing and can safely return ok now! But for HTTP/2, we would + nothing and can safely return ok now! But for HTTP/2, we would like to call http2_handle_stream_close to properly close a stream. In order to do this, we keep reading until we close the stream. */ diff --git a/lib/http1.c b/lib/http1.c index 098dd7cd64f8..0403e95ba20b 100644 --- a/lib/http1.c +++ b/lib/http1.c @@ -84,7 +84,7 @@ static ssize_t detect_line(struct h1_req_parser *parser, const char *buf, const size_t buflen, CURLcode *err) { - const char *line_end; + const char *line_end; DEBUGASSERT(!parser->line); line_end = memchr(buf, '\n', buflen); @@ -136,7 +136,7 @@ static ssize_t next_line(struct h1_req_parser *parser, static CURLcode start_req(struct h1_req_parser *parser, const char *scheme_default, int options) { - const char *p, *m, *target, *hv, *scheme, *authority, *path; + const char *p, *m, *target, *hv, *scheme, *authority, *path; size_t m_len, target_len, hv_len, scheme_len, authority_len, path_len; size_t i; CURLU *url = NULL; diff --git a/lib/http2.c b/lib/http2.c index 4e2d59ff5187..de1113c1e45f 100644 --- a/lib/http2.c +++ b/lib/http2.c @@ -42,7 +42,6 @@ #include "cfilters.h" #include "connect.h" #include "rand.h" -#include "strdup.h" #include "curlx/strparse.h" #include "transfer.h" #include "curlx/dynbuf.h" @@ -797,7 +796,7 @@ static ssize_t send_callback(nghttp2_session *h2, ctx->nw_out_blocked = 1; return NGHTTP2_ERR_WOULDBLOCK; } - return (nwritten > SSIZE_MAX) ? + return (nwritten > SSIZE_MAX) ? NGHTTP2_ERR_CALLBACK_FAILURE : (ssize_t)nwritten; } @@ -2559,7 +2558,7 @@ static CURLcode cf_h2_connect(struct Curl_cfilter *cf, } /* Send out our SETTINGS and ACKs and such. If that blocks, we - * have it buffered and can count this filter as being connected */ + * have it buffered and can count this filter as being connected */ result = h2_progress_egress(cf, data); if(result && (result != CURLE_AGAIN)) goto out; @@ -2946,7 +2945,7 @@ CURLcode Curl_http2_upgrade(struct Curl_easy *data, struct cf_h2_ctx *ctx; CURLcode result; - DEBUGASSERT(Curl_conn_http_version(data, conn) < 20); + DEBUGASSERT(Curl_conn_http_version(data, conn) < 20); result = http2_cfilter_add(&cf, data, conn, sockindex, TRUE); if(result) diff --git a/lib/http_aws_sigv4.c b/lib/http_aws_sigv4.c index f592f3844feb..b5601f45a2cb 100644 --- a/lib/http_aws_sigv4.c +++ b/lib/http_aws_sigv4.c @@ -274,7 +274,6 @@ static CURLcode make_headers(struct Curl_easy *data, } } - if(*content_sha256_header) { tmp_head = curl_slist_append(head, content_sha256_header); if(!tmp_head) @@ -329,6 +328,8 @@ static CURLcode make_headers(struct Curl_easy *data, goto fail; head = tmp_head; *date_header = curl_maprintf("%s: %s\r\n", date_hdr_key, timestamp); + if(!*date_header) + goto fail; } else { const char *value; @@ -410,7 +411,8 @@ static CURLcode make_headers(struct Curl_easy *data, static const char *parse_content_sha_hdr(struct Curl_easy *data, const char *provider1, size_t plen, - size_t *value_len) { + size_t *value_len) +{ char key[CONTENT_SHA256_KEY_LEN]; size_t key_len; const char *value; diff --git a/lib/http_negotiate.c b/lib/http_negotiate.c index 8a19c1ad8738..136cb07641c4 100644 --- a/lib/http_negotiate.c +++ b/lib/http_negotiate.c @@ -124,7 +124,7 @@ CURLcode Curl_input_negotiate(struct Curl_easy *data, struct connectdata *conn, neg_ctx->sslContext = conn->sslContext; #endif /* Check if the connection is using SSL and get the channel binding data */ -#ifdef HAVE_GSSAPI +#ifdef CURL_GSSAPI_HAS_CHANNEL_BINDING #ifdef USE_SSL curlx_dyn_init(&neg_ctx->channel_binding_data, SSL_CB_MAX_SIZE + 1); if(Curl_conn_is_ssl(conn, FIRSTSOCKET)) { @@ -138,13 +138,13 @@ CURLcode Curl_input_negotiate(struct Curl_easy *data, struct connectdata *conn, #else curlx_dyn_init(&neg_ctx->channel_binding_data, 1); #endif /* USE_SSL */ -#endif /* HAVE_GSSAPI */ +#endif /* CURL_GSSAPI_HAS_CHANNEL_BINDING */ /* Initialize the security context and decode our challenge */ result = Curl_auth_decode_spnego_message(data, userp, passwdp, service, host, header, neg_ctx); -#ifdef HAVE_GSSAPI +#ifdef CURL_GSSAPI_HAS_CHANNEL_BINDING curlx_dyn_free(&neg_ctx->channel_binding_data); #endif diff --git a/lib/http_proxy.c b/lib/http_proxy.c index 845ba2e8f8da..f6e546b9fd96 100644 --- a/lib/http_proxy.c +++ b/lib/http_proxy.c @@ -48,18 +48,11 @@ #include "curl_memory.h" #include "memdebug.h" -static bool hd_name_eq(const char *n1, size_t n1len, - const char *n2, size_t n2len) -{ - return (n1len == n2len) ? curl_strnequal(n1, n2, n1len) : FALSE; -} - static CURLcode dynhds_add_custom(struct Curl_easy *data, bool is_connect, int httpversion, struct dynhds *hds) { struct connectdata *conn = data->conn; - const char *ptr; struct curl_slist *h[2]; struct curl_slist *headers; int numlists = 1; /* by default */ @@ -95,86 +88,76 @@ static CURLcode dynhds_add_custom(struct Curl_easy *data, /* loop through one or two lists */ for(i = 0; i < numlists; i++) { for(headers = h[i]; headers; headers = headers->next) { - const char *name, *value; - size_t namelen, valuelen; + struct Curl_str name; + const char *value = NULL; + size_t valuelen = 0; + const char *ptr = headers->data; /* There are 2 quirks in place for custom headers: * 1. setting only 'name:' to suppress a header from being sent * 2. setting only 'name;' to send an empty (illegal) header */ - ptr = strchr(headers->data, ':'); - if(ptr) { - name = headers->data; - namelen = ptr - headers->data; - ptr++; /* pass the colon */ - curlx_str_passblanks(&ptr); - if(*ptr) { - value = ptr; - valuelen = strlen(value); + if(!curlx_str_cspn(&ptr, &name, ";:")) { + if(!curlx_str_single(&ptr, ':')) { + curlx_str_passblanks(&ptr); + if(*ptr) { + value = ptr; + valuelen = strlen(value); + } + else { + /* quirk #1, suppress this header */ + continue; + } } - else { - /* quirk #1, suppress this header */ - continue; + else if(!curlx_str_single(&ptr, ';')) { + curlx_str_passblanks(&ptr); + if(!*ptr) { + /* quirk #2, send an empty header */ + value = ""; + valuelen = 0; + } + else { + /* this may be used for something else in the future, + * ignore this for now */ + continue; + } } - } - else { - ptr = strchr(headers->data, ';'); - - if(!ptr) { - /* neither : nor ; in provided header value. We seem - * to ignore this silently */ + else + /* neither : nor ; in provided header value. We ignore this + * silently */ continue; - } - - name = headers->data; - namelen = ptr - headers->data; - ptr++; /* pass the semicolon */ - curlx_str_passblanks(&ptr); - if(!*ptr) { - /* quirk #2, send an empty header */ - value = ""; - valuelen = 0; - } - else { - /* this may be used for something else in the future, - * ignore this for now */ - continue; - } } + else + /* no name, move on */ + continue; - DEBUGASSERT(name && value); + DEBUGASSERT(curlx_strlen(&name) && value); if(data->state.aptr.host && /* a Host: header was sent already, do not pass on any custom Host: header as that will produce *two* in the same request! */ - hd_name_eq(name, namelen, STRCONST("Host:"))) - ; + curlx_str_casecompare(&name, "Host")); else if(data->state.httpreq == HTTPREQ_POST_FORM && /* this header (extended by formdata.c) is sent later */ - hd_name_eq(name, namelen, STRCONST("Content-Type:"))) - ; + curlx_str_casecompare(&name, "Content-Type")); else if(data->state.httpreq == HTTPREQ_POST_MIME && /* this header is sent later */ - hd_name_eq(name, namelen, STRCONST("Content-Type:"))) - ; + curlx_str_casecompare(&name, "Content-Type")); else if(data->req.authneg && /* while doing auth neg, do not allow the custom length since we will force length zero then */ - hd_name_eq(name, namelen, STRCONST("Content-Length:"))) - ; + curlx_str_casecompare(&name, "Content-Length")); else if((httpversion >= 20) && - hd_name_eq(name, namelen, STRCONST("Transfer-Encoding:"))) - /* HTTP/2 and HTTP/3 do not support chunked requests */ - ; - else if((hd_name_eq(name, namelen, STRCONST("Authorization:")) || - hd_name_eq(name, namelen, STRCONST("Cookie:"))) && + curlx_str_casecompare(&name, "Transfer-Encoding")); + /* HTTP/2 and HTTP/3 do not support chunked requests */ + else if((curlx_str_casecompare(&name, "Authorization") || + curlx_str_casecompare(&name, "Cookie")) && /* be careful of sending this potentially sensitive header to other hosts */ - !Curl_auth_allowed_to_host(data)) - ; + !Curl_auth_allowed_to_host(data)); else { - CURLcode result; - - result = Curl_dynhds_add(hds, name, namelen, value, valuelen); + CURLcode result = + Curl_dynhds_add(hds, curlx_str(&name), curlx_strlen(&name), + value, valuelen); if(result) return result; } diff --git a/lib/httpsrr.c b/lib/httpsrr.c index ae2c106bcef2..c0392d16c451 100644 --- a/lib/httpsrr.c +++ b/lib/httpsrr.c @@ -152,6 +152,7 @@ void Curl_httpsrr_cleanup(struct Curl_https_rrinfo *rrinfo) Curl_safefree(rrinfo->echconfiglist); Curl_safefree(rrinfo->ipv4hints); Curl_safefree(rrinfo->ipv6hints); + Curl_safefree(rrinfo->rrname); } @@ -166,7 +167,7 @@ static CURLcode httpsrr_opt(struct Curl_easy *data, unsigned short code; size_t len = 0; - code = ares_dns_rr_get_opt(rr, key, idx, &val, &len); + code = ares_dns_rr_get_opt(rr, key, idx, &val, &len); return Curl_httpsrr_set(data, hinfo, code, val, len); } @@ -206,6 +207,7 @@ CURLcode Curl_httpsrr_from_ares(struct Curl_easy *data, } } out: + Curl_safefree(hinfo->rrname); return result; } diff --git a/lib/httpsrr.h b/lib/httpsrr.h index 563d1c8e515b..9b7831f75cbc 100644 --- a/lib/httpsrr.h +++ b/lib/httpsrr.h @@ -38,6 +38,7 @@ struct Curl_easy; struct Curl_https_rrinfo { + char *rrname; /* if NULL, the same as the URL hostname */ /* * Fields from HTTPS RR. The only mandatory fields are priority and target. * See https://datatracker.ietf.org/doc/html/rfc9460#section-14.3.2 diff --git a/lib/imap.c b/lib/imap.c index 47757d3f2978..d23076a48f85 100644 --- a/lib/imap.c +++ b/lib/imap.c @@ -115,8 +115,8 @@ struct imap_conn { struct SASL sasl; /* SASL-related parameters */ struct dynbuf dyn; /* for the IMAP commands */ char *mailbox; /* The last selected mailbox */ - char *mailbox_uidvalidity; /* UIDVALIDITY parsed from select response */ imapstate state; /* Always use imap.c:state() to change state! */ + unsigned int mb_uidvalidity; /* UIDVALIDITY parsed from select response */ char resptag[5]; /* Response tag to wait for */ unsigned char preftype; /* Preferred authentication type */ unsigned char cmdid; /* Last used command ID */ @@ -125,6 +125,7 @@ struct imap_conn { BIT(tls_supported); /* StartTLS capability supported by server */ BIT(login_disabled); /* LOGIN command disabled by server */ BIT(ir_supported); /* Initial response supported by server */ + BIT(mb_uidvalidity_set); }; /* This IMAP struct is used in the Curl_easy. All IMAP data that is @@ -134,7 +135,6 @@ struct imap_conn { struct IMAP { curl_pp_transfer transfer; char *mailbox; /* Mailbox to select */ - char *uidvalidity; /* UIDVALIDITY to check in select */ char *uid; /* Message UID to fetch */ char *mindex; /* Index in mail box of mail to fetch */ char *section; /* Message SECTION to fetch */ @@ -142,6 +142,8 @@ struct IMAP { char *query; /* Query to search for */ char *custom; /* Custom request */ char *custom_params; /* Parameters for the custom request */ + unsigned int uidvalidity; /* UIDVALIDITY to check in select */ + BIT(uidvalidity_set); }; @@ -780,7 +782,6 @@ static CURLcode imap_perform_select(struct Curl_easy *data, /* Invalidate old information as we are switching mailboxes */ Curl_safefree(imapc->mailbox); - Curl_safefree(imapc->mailbox_uidvalidity); /* Check we have a mailbox */ if(!imap->mailbox) { @@ -1056,19 +1057,19 @@ static CURLcode imap_state_capability_resp(struct Curl_easy *data, wordlen++; /* Does the server support the STARTTLS capability? */ - if(wordlen == 8 && !memcmp(line, "STARTTLS", 8)) + if(wordlen == 8 && curl_strnequal(line, "STARTTLS", 8)) imapc->tls_supported = TRUE; /* Has the server explicitly disabled clear text authentication? */ - else if(wordlen == 13 && !memcmp(line, "LOGINDISABLED", 13)) + else if(wordlen == 13 && curl_strnequal(line, "LOGINDISABLED", 13)) imapc->login_disabled = TRUE; /* Does the server support the SASL-IR capability? */ - else if(wordlen == 7 && !memcmp(line, "SASL-IR", 7)) + else if(wordlen == 7 && curl_strnequal(line, "SASL-IR", 7)) imapc->ir_supported = TRUE; /* Do we have a SASL based authentication mechanism? */ - else if(wordlen > 5 && !memcmp(line, "AUTH=", 5)) { + else if(wordlen > 5 && curl_strnequal(line, "AUTH=", 5)) { size_t llen; unsigned short mechbit; @@ -1196,8 +1197,104 @@ static CURLcode imap_state_listsearch_resp(struct Curl_easy *data, (void)instate; - if(imapcode == '*') - result = Curl_client_write(data, CLIENTWRITE_BODY, line, len); + if(imapcode == '*') { + /* Check if this response contains a literal (e.g. FETCH responses with + body data). Literal syntax is {size}\r\n */ + const char *cr = memchr(line, '\r', len); + size_t line_len = cr ? (size_t)(cr - line) : len; + const char *ptr = memchr(line, '{', line_len); + if(ptr) { + curl_off_t size = 0; + bool parsed = FALSE; + ptr++; + if(!curlx_str_number(&ptr, &size, CURL_OFF_T_MAX) && + !curlx_str_single(&ptr, '}')) + parsed = TRUE; + + if(parsed) { + struct pingpong *pp = &imapc->pp; + size_t buffer_len = curlx_dyn_len(&pp->recvbuf); + size_t after_header = buffer_len - pp->nfinal; + + /* This is a literal response, setup to receive the body data */ + infof(data, "Found %" FMT_OFF_T " bytes to download", size); + /* Progress size includes both header line and literal body */ + Curl_pgrsSetDownloadSize(data, size + len); + + /* First write the header line */ + result = Curl_client_write(data, CLIENTWRITE_BODY, line, len); + if(result) + return result; + + /* Handle data already in buffer after the header line */ + if(after_header > 0) { + /* There is already data in the buffer that is part of the literal + body or subsequent responses */ + size_t chunk = after_header; + + /* Keep only the data after the header line */ + curlx_dyn_tail(&pp->recvbuf, chunk); + pp->nfinal = 0; /* done */ + + /* Limit chunk to the literal size */ + if(chunk > (size_t)size) + chunk = (size_t)size; + + if(chunk) { + /* Write the literal body data */ + result = Curl_client_write(data, CLIENTWRITE_BODY, + curlx_dyn_ptr(&pp->recvbuf), chunk); + if(result) + return result; + } + + /* Handle remaining data in buffer (either more literal data or + subsequent responses) */ + if(after_header > chunk) { + /* Keep the data after the literal body */ + pp->overflow = after_header - chunk; + curlx_dyn_tail(&pp->recvbuf, pp->overflow); + } + else { + pp->overflow = 0; + curlx_dyn_reset(&pp->recvbuf); + } + } + else { + /* No data in buffer yet, reset overflow */ + pp->overflow = 0; + } + + if((CURL_OFF_T_MAX - size) < (curl_off_t)len) + /* unlikely to actually be a transfer this big, but avoid integer + overflow */ + size = CURL_OFF_T_MAX; + else + size += len; + + if(data->req.bytecount == size) + /* All data already transferred (header + literal body) */ + Curl_xfer_setup_nop(data); + else { + /* Setup to receive the literal body data. + maxdownload and transfer size include both header line and + literal body */ + data->req.maxdownload = size; + Curl_xfer_setup_recv(data, FIRSTSOCKET, size); + } + /* End of DO phase */ + imap_state(data, imapc, IMAP_STOP); + } + else { + /* Failed to parse literal, just write the line */ + result = Curl_client_write(data, CLIENTWRITE_BODY, line, len); + } + } + else { + /* No literal, just write the line as-is */ + result = Curl_client_write(data, CLIENTWRITE_BODY, line, len); + } + } else if(imapcode != IMAP_RESP_OK) result = CURLE_QUOTE_ERROR; else @@ -1222,24 +1319,19 @@ static CURLcode imap_state_select_resp(struct Curl_easy *data, if(imapcode == '*') { /* See if this is an UIDVALIDITY response */ if(checkprefix("OK [UIDVALIDITY ", line + 2)) { - size_t len = 0; + curl_off_t value; const char *p = &line[2] + strlen("OK [UIDVALIDITY "); - while((len < 20) && p[len] && ISDIGIT(p[len])) - len++; - if(len && (p[len] == ']')) { - struct dynbuf uid; - curlx_dyn_init(&uid, 20); - if(curlx_dyn_addn(&uid, p, len)) - return CURLE_OUT_OF_MEMORY; - free(imapc->mailbox_uidvalidity); - imapc->mailbox_uidvalidity = curlx_dyn_ptr(&uid); + if(!curlx_str_number(&p, &value, UINT_MAX)) { + imapc->mb_uidvalidity = (unsigned int)value; + imapc->mb_uidvalidity_set = TRUE; } + } } else if(imapcode == IMAP_RESP_OK) { /* Check if the UIDVALIDITY has been specified and matches */ - if(imap->uidvalidity && imapc->mailbox_uidvalidity && - !curl_strequal(imap->uidvalidity, imapc->mailbox_uidvalidity)) { + if(imap->uidvalidity_set && imapc->mb_uidvalidity_set && + (imap->uidvalidity != imapc->mb_uidvalidity)) { failf(data, "Mailbox UIDVALIDITY has changed"); result = CURLE_REMOTE_FILE_NOT_FOUND; } @@ -1635,10 +1727,13 @@ static CURLcode imap_done(struct Curl_easy *data, CURLcode status, connclose(conn, "IMAP done with bad status"); /* marked for closure */ result = status; /* use the already set error code */ } - else if(!data->set.connect_only && !imap->custom && - (imap->uid || imap->mindex || data->state.upload || - IS_MIME_POST(data))) { - /* Handle responses after FETCH or APPEND transfer has finished */ + else if(!data->set.connect_only && + ((!imap->custom && (imap->uid || imap->mindex)) || + (imap->custom && data->req.maxdownload > 0) || + data->state.upload || IS_MIME_POST(data))) { + /* Handle responses after FETCH or APPEND transfer has finished. + For custom commands, check if we set up a download which indicates + a FETCH-like command with literal data. */ if(!data->state.upload && !IS_MIME_POST(data)) imap_state(data, imapc, IMAP_FETCH_FINAL); @@ -1690,8 +1785,8 @@ static CURLcode imap_perform(struct Curl_easy *data, bool *connected, has already been selected on this connection */ if(imap->mailbox && imapc->mailbox && curl_strequal(imap->mailbox, imapc->mailbox) && - (!imap->uidvalidity || !imapc->mailbox_uidvalidity || - curl_strequal(imap->uidvalidity, imapc->mailbox_uidvalidity))) + (!imap->uidvalidity_set || !imapc->mb_uidvalidity_set || + (imap->uidvalidity == imapc->mb_uidvalidity))) selected = TRUE; /* Start the first command in the DO phase */ @@ -1861,7 +1956,6 @@ static CURLcode imap_regular_transfer(struct Curl_easy *data, static void imap_easy_reset(struct IMAP *imap) { Curl_safefree(imap->mailbox); - Curl_safefree(imap->uidvalidity); Curl_safefree(imap->uid); Curl_safefree(imap->mindex); Curl_safefree(imap->section); @@ -1890,7 +1984,6 @@ static void imap_conn_dtor(void *key, size_t klen, void *entry) Curl_pp_disconnect(&imapc->pp); curlx_dyn_free(&imapc->dyn); Curl_safefree(imapc->mailbox); - Curl_safefree(imapc->mailbox_uidvalidity); free(imapc); } @@ -2177,54 +2270,45 @@ static CURLcode imap_parse_url_path(struct Curl_easy *data, DEBUGF(infof(data, "IMAP URL parameter '%s' = '%s'", name, value)); - /* Process the known hierarchical parameters (UIDVALIDITY, UID, SECTION and - PARTIAL) stripping of the trailing slash character if it is present. + /* Process the known hierarchical parameters (UIDVALIDITY, UID, SECTION + and PARTIAL) stripping of the trailing slash character if it is + present. Note: Unknown parameters trigger a URL_MALFORMAT error. */ - if(curl_strequal(name, "UIDVALIDITY") && !imap->uidvalidity) { - if(valuelen > 0 && value[valuelen - 1] == '/') - value[valuelen - 1] = '\0'; - - imap->uidvalidity = value; - value = NULL; - } - else if(curl_strequal(name, "UID") && !imap->uid) { - if(valuelen > 0 && value[valuelen - 1] == '/') - value[valuelen - 1] = '\0'; - - imap->uid = value; - value = NULL; - } - else if(curl_strequal(name, "MAILINDEX") && !imap->mindex) { - if(valuelen > 0 && value[valuelen - 1] == '/') - value[valuelen - 1] = '\0'; - - imap->mindex = value; - value = NULL; - } - else if(curl_strequal(name, "SECTION") && !imap->section) { - if(valuelen > 0 && value[valuelen - 1] == '/') - value[valuelen - 1] = '\0'; - - imap->section = value; - value = NULL; - } - else if(curl_strequal(name, "PARTIAL") && !imap->partial) { - if(valuelen > 0 && value[valuelen - 1] == '/') - value[valuelen - 1] = '\0'; - - imap->partial = value; - value = NULL; + if(valuelen > 0 && value[valuelen - 1] == '/') + value[valuelen - 1] = '\0'; + if(valuelen) { + if(curl_strequal(name, "UIDVALIDITY") && !imap->uidvalidity_set) { + curl_off_t num; + const char *p = (const char *)value; + if(!curlx_str_number(&p, &num, UINT_MAX)) { + imap->uidvalidity = (unsigned int)num; + imap->uidvalidity_set = TRUE; + } + free(value); + } + else if(curl_strequal(name, "UID") && !imap->uid) { + imap->uid = value; + } + else if(curl_strequal(name, "MAILINDEX") && !imap->mindex) { + imap->mindex = value; + } + else if(curl_strequal(name, "SECTION") && !imap->section) { + imap->section = value; + } + else if(curl_strequal(name, "PARTIAL") && !imap->partial) { + imap->partial = value; + } + else { + free(name); + free(value); + return CURLE_URL_MALFORMAT; + } } - else { - free(name); + else + /* blank? */ free(value); - - return CURLE_URL_MALFORMAT; - } - free(name); - free(value); } /* Does the URL contain a query parameter? Only valid when we have a mailbox diff --git a/lib/ldap.c b/lib/ldap.c index 0b475d07bbc4..f0bc2f2a3790 100644 --- a/lib/ldap.c +++ b/lib/ldap.c @@ -399,8 +399,8 @@ static CURLcode ldap_do(struct Curl_easy *data, bool *done) #ifdef LDAP_OPT_X_TLS if(conn->ssl_config.verifypeer) { /* OpenLDAP SDK supports BASE64 files. */ - if((data->set.ssl.cert_type) && - (!curl_strequal(data->set.ssl.cert_type, "PEM"))) { + if(data->set.ssl.cert_type && + !curl_strequal(data->set.ssl.cert_type, "PEM")) { failf(data, "LDAP local: ERROR OpenLDAP only supports PEM cert-type"); result = CURLE_SSL_CERTPROBLEM; goto quit; @@ -461,7 +461,7 @@ static CURLcode ldap_do(struct Curl_easy *data, bool *done) /* we should probably never come up to here since configure should check in first place if we can support LDAP SSL/TLS */ failf(data, "LDAP local: SSL/TLS not supported with this version " - "of the OpenLDAP toolkit\n"); + "of the OpenLDAP toolkit"); result = CURLE_SSL_CERTPROBLEM; goto quit; #endif /* LDAP_OPT_X_TLS */ @@ -623,7 +623,7 @@ static CURLcode ldap_do(struct Curl_easy *data, bool *done) } if((attr_len > 7) && - (strcmp(";binary", attr + (attr_len - 7)) == 0)) { + curl_strequal(";binary", attr + (attr_len - 7)) ) { /* Binary attribute, encode to base64. */ if(vals[i]->bv_len) { result = curlx_base64_encode(vals[i]->bv_val, vals[i]->bv_len, diff --git a/lib/md4.c b/lib/md4.c index 9db85786e125..d86a24628c46 100644 --- a/lib/md4.c +++ b/lib/md4.c @@ -28,7 +28,6 @@ #include -#include "strdup.h" #include "curl_md4.h" #include "curlx/warnless.h" @@ -51,14 +50,6 @@ #endif #endif -#ifdef USE_MBEDTLS -#include -#if MBEDTLS_VERSION_NUMBER < 0x03020000 - #error "mbedTLS 3.2.0 or later required" -#endif -#include -#endif /* USE_MBEDTLS */ - /* When OpenSSL or wolfSSL is available, we use their MD4 functions. */ #if defined(USE_WOLFSSL) && !defined(WOLFSSL_NO_MD4) #include @@ -78,8 +69,6 @@ #include #elif defined(USE_GNUTLS) #include -#elif(defined(USE_MBEDTLS) && defined(MBEDTLS_MD4_C)) -#include #endif /* The last 2 #include files should be in this order */ @@ -187,39 +176,6 @@ static void MD4_Final(unsigned char *result, MD4_CTX *ctx) md4_digest(ctx, MD4_DIGEST_SIZE, result); } -#elif(defined(USE_MBEDTLS) && defined(MBEDTLS_MD4_C)) - -struct md4_ctx { - void *data; - unsigned long size; -}; -typedef struct md4_ctx MD4_CTX; - -static int MD4_Init(MD4_CTX *ctx) -{ - ctx->data = NULL; - ctx->size = 0; - return 1; -} - -static void MD4_Update(MD4_CTX *ctx, const void *data, unsigned long size) -{ - if(!ctx->data) { - ctx->data = Curl_memdup(data, size); - if(ctx->data) - ctx->size = size; - } -} - -static void MD4_Final(unsigned char *result, MD4_CTX *ctx) -{ - if(ctx->data) { - mbedtls_md4(ctx->data, ctx->size, result); - Curl_safefree(ctx->data); - ctx->size = 0; - } -} - #else /* When no other crypto library is available, or the crypto library does not * support MD4, we use this code segment this implementation of it diff --git a/lib/md5.c b/lib/md5.c index 091924034055..d99554a4aac9 100644 --- a/lib/md5.c +++ b/lib/md5.c @@ -34,13 +34,6 @@ #include "curl_hmac.h" #include "curlx/warnless.h" -#ifdef USE_MBEDTLS -#include -#if MBEDTLS_VERSION_NUMBER < 0x03020000 - #error "mbedTLS 3.2.0 or later required" -#endif -#endif /* USE_MBEDTLS */ - #ifdef USE_OPENSSL #include #if !defined(OPENSSL_NO_MD5) && !defined(OPENSSL_NO_DEPRECATED_3_0) @@ -55,14 +48,25 @@ #endif #endif +#ifdef USE_MBEDTLS + #include + #if MBEDTLS_VERSION_NUMBER < 0x03020000 + #error "mbedTLS 3.2.0 or later required" + #endif + #include + #if defined(PSA_WANT_ALG_MD5) && PSA_WANT_ALG_MD5 /* mbedTLS 4+ */ + #define USE_MBEDTLS_MD5 + #endif +#endif + #ifdef USE_GNUTLS #include #elif defined(USE_OPENSSL_MD5) #include #elif defined(USE_WOLFSSL_MD5) #include -#elif defined(USE_MBEDTLS) -#include +#elif defined(USE_MBEDTLS_MD5) +#include #elif (defined(__MAC_OS_X_VERSION_MAX_ALLOWED) && \ (__MAC_OS_X_VERSION_MAX_ALLOWED >= 1040) && \ defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && \ @@ -152,13 +156,14 @@ static void my_md5_final(unsigned char *digest, void *ctx) (void)wolfSSL_MD5_Final(digest, ctx); } -#elif defined(USE_MBEDTLS) +#elif defined(USE_MBEDTLS_MD5) -typedef mbedtls_md5_context my_md5_ctx; +typedef psa_hash_operation_t my_md5_ctx; static CURLcode my_md5_init(void *ctx) { - if(mbedtls_md5_starts(ctx)) + memset(ctx, 0, sizeof(my_md5_ctx)); + if(psa_hash_setup(ctx, PSA_ALG_MD5) != PSA_SUCCESS) return CURLE_OUT_OF_MEMORY; return CURLE_OK; } @@ -167,12 +172,13 @@ static void my_md5_update(void *ctx, const unsigned char *data, unsigned int length) { - (void)mbedtls_md5_update(ctx, data, length); + (void)psa_hash_update(ctx, data, length); } static void my_md5_final(unsigned char *digest, void *ctx) { - (void)mbedtls_md5_finish(ctx, digest); + size_t actual_length; + (void)psa_hash_finish(ctx, digest, 16, &actual_length); } #elif defined(AN_APPLE_OS) diff --git a/lib/mime.c b/lib/mime.c index b403d29b1fd9..b1f432c0b044 100644 --- a/lib/mime.c +++ b/lib/mime.c @@ -703,14 +703,14 @@ static void mime_mem_free(void *ptr) /* Named file callbacks. */ /* Argument is a pointer to the mime part. */ -static int mime_open_file(curl_mimepart *part) +static bool mime_open_file(curl_mimepart *part) { /* Open a MIMEKIND_FILE part. */ if(part->fp) - return 0; + return FALSE; part->fp = fopen_read(part->data, "rb"); - return part->fp ? 0 : -1; + return part->fp ? FALSE : TRUE; } static size_t mime_file_read(char *buffer, size_t size, size_t nitems, @@ -737,7 +737,7 @@ static int mime_file_seek(void *instream, curl_off_t offset, int whence) if(mime_open_file(part)) return CURL_SEEKFUNC_FAIL; - return fseek(part->fp, (long) offset, whence) ? + return curlx_fseek(part->fp, offset, whence) ? CURL_SEEKFUNC_CANTSEEK : CURL_SEEKFUNC_OK; } @@ -1966,7 +1966,6 @@ static CURLcode cr_mime_read(struct Curl_easy *data, size_t nread; char tmp[256]; - /* Once we have errored, we will return the same error forever */ if(ctx->errored) { CURL_TRC_READ(data, "cr_mime_read(len=%zu) is errored -> %d, eos=0", diff --git a/lib/mqtt.c b/lib/mqtt.c index c76ce0a229b7..0bf956c05bd4 100644 --- a/lib/mqtt.c +++ b/lib/mqtt.c @@ -34,7 +34,6 @@ #include "progress.h" #include "mqtt.h" #include "select.h" -#include "strdup.h" #include "url.h" #include "escape.h" #include "curlx/warnless.h" diff --git a/lib/multi.c b/lib/multi.c index ca7c1bdd9542..efc240b4facc 100644 --- a/lib/multi.c +++ b/lib/multi.c @@ -1990,11 +1990,16 @@ static CURLMcode state_performing(struct Curl_easy *data, if(!newurl) /* typically for HTTP_1_1_REQUIRED error on first flight */ newurl = strdup(data->state.url); - /* if we are to retry, set the result to OK and consider the request - as done */ - retry = TRUE; - result = CURLE_OK; - data->req.done = TRUE; + if(!newurl) { + result = CURLE_OUT_OF_MEMORY; + } + else { + /* if we are to retry, set the result to OK and consider the request + as done */ + retry = TRUE; + result = CURLE_OK; + data->req.done = TRUE; + } } else result = ret; @@ -2579,7 +2584,7 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi, DEBUGASSERT(data->conn); if(data->conn->bits.multiplex) /* Check if we can move pending requests to send pipe */ - process_pending_handles(multi); /* multiplexed */ + process_pending_handles(multi); /* multiplexed */ /* Only perform the transfer if there is a good socket to work with. Having both BAD is a signal to skip immediately to DONE */ diff --git a/lib/netrc.c b/lib/netrc.c index f06dff8ed515..9c5c6c7f20c8 100644 --- a/lib/netrc.c +++ b/lib/netrc.c @@ -81,22 +81,27 @@ static NETRCcode file2memory(const char *filename, struct dynbuf *filebuf) curlx_dyn_init(&linebuf, MAX_NETRC_LINE); if(file) { + CURLcode result = CURLE_OK; + bool eof; ret = NETRC_OK; - while(Curl_get_line(&linebuf, file)) { - CURLcode result; - const char *line = curlx_dyn_ptr(&linebuf); - /* skip comments on load */ - curlx_str_passblanks(&line); - if(*line == '#') - continue; - result = curlx_dyn_add(filebuf, line); + do { + const char *line; + result = Curl_get_line(&linebuf, file, &eof); + if(!result) { + line = curlx_dyn_ptr(&linebuf); + /* skip comments on load */ + curlx_str_passblanks(&line); + if(*line == '#') + continue; + result = curlx_dyn_add(filebuf, line); + } if(result) { + curlx_dyn_free(filebuf); ret = curl2netrc(result); - goto done; + break; } - } + } while(!eof); } -done: curlx_dyn_free(&linebuf); if(file) curlx_fclose(file); @@ -357,6 +362,7 @@ static NETRCcode parsenetrc(struct store_netrc *store, } else { curlx_dyn_free(filebuf); + store->loaded = FALSE; if(!specific_login) free(login); free(password); diff --git a/lib/openldap.c b/lib/openldap.c index 1b26b6e1b4d9..9d6174defe37 100644 --- a/lib/openldap.c +++ b/lib/openldap.c @@ -662,11 +662,11 @@ static CURLcode oldap_connect(struct Curl_easy *data, bool *done) { ber_len_t max = 256*1024; Sockbuf *sb; - if(ldap_get_option(li->ld, LDAP_OPT_SOCKBUF, (void **)&sb) || + if((ldap_get_option(li->ld, LDAP_OPT_SOCKBUF, &sb) != LDAP_OPT_SUCCESS) || /* Set the maximum allowed size of an incoming message, which to OpenLDAP means that it will malloc() memory up to this size. If not set, there is no limit and we instead risk a malloc() failure. */ - ber_sockbuf_ctrl(sb, LBER_SB_OPT_SET_MAX_INCOMING, &max)) { + !ber_sockbuf_ctrl(sb, LBER_SB_OPT_SET_MAX_INCOMING, &max)) { result = CURLE_FAILED_INIT; goto out; } @@ -746,7 +746,7 @@ static CURLcode oldap_state_mechs_resp(struct Curl_easy *data, case LDAP_RES_SEARCH_RESULT: switch(code) { case LDAP_SIZELIMIT_EXCEEDED: - infof(data, "Too many authentication mechanisms\n"); + infof(data, "Too many authentication mechanisms"); FALLTHROUGH(); case LDAP_SUCCESS: case LDAP_NO_RESULTS_RETURNED: @@ -1096,7 +1096,6 @@ static CURLcode oldap_recv(struct Curl_easy *data, int sockindex, char *buf, BerElement *ber = NULL; struct timeval tv = {0, 0}; struct berval bv, *bvals; - bool binary = FALSE; CURLcode result = CURLE_AGAIN; int code; char *info = NULL; @@ -1167,6 +1166,7 @@ static CURLcode oldap_recv(struct Curl_easy *data, int sockindex, char *buf, rc == LDAP_SUCCESS; rc = ldap_get_attribute_ber(li->ld, msg, ber, &bv, &bvals)) { int i; + bool binary; if(!bv.bv_val) break; @@ -1180,7 +1180,7 @@ static CURLcode oldap_recv(struct Curl_easy *data, int sockindex, char *buf, } binary = bv.bv_len > 7 && - !strncmp(bv.bv_val + bv.bv_len - 7, ";binary", 7); + curl_strnequal(bv.bv_val + bv.bv_len - 7, ";binary", 7); for(i = 0; bvals[i].bv_val != NULL; i++) { bool binval = FALSE; @@ -1235,7 +1235,6 @@ static CURLcode oldap_recv(struct Curl_easy *data, int sockindex, char *buf, break; } - if(!result) result = client_write(data, STRCONST("\n"), NULL, 0, NULL, 0); if(!result) diff --git a/lib/parsedate.c b/lib/parsedate.c index b9429db7f67b..3fa5919c0536 100644 --- a/lib/parsedate.c +++ b/lib/parsedate.c @@ -362,7 +362,7 @@ static int parsedate(const char *date, time_t *output) time_t t = 0; int wdaynum = -1; /* day of the week number, 0-6 (mon-sun) */ int monnum = -1; /* month of the year number, 0-11 */ - int mdaynum = -1; /* day of month, 1 - 31 */ + int mdaynum = -1; /* day of month, 1 - 31 */ int hournum = -1; int minnum = -1; int secnum = -1; diff --git a/lib/pingpong.c b/lib/pingpong.c index 3f6da71eae2c..d0959470bea5 100644 --- a/lib/pingpong.c +++ b/lib/pingpong.c @@ -37,7 +37,6 @@ #include "pingpong.h" #include "multiif.h" #include "vtls/vtls.h" -#include "strdup.h" /* The last 2 #include files should be in this order */ #include "curl_memory.h" @@ -51,8 +50,8 @@ timediff_t Curl_pp_state_timeout(struct Curl_easy *data, struct pingpong *pp, bool disconnecting) { timediff_t timeout_ms; /* in milliseconds */ - timediff_t response_time = (data->set.server_response_timeout > 0) ? - data->set.server_response_timeout : pp->response_time; + timediff_t response_time = data->set.server_response_timeout ? + data->set.server_response_timeout : RESP_TIMEOUT; struct curltime now = curlx_now(); /* if CURLOPT_SERVER_RESPONSE_TIMEOUT is set, use that to determine @@ -64,7 +63,7 @@ timediff_t Curl_pp_state_timeout(struct Curl_easy *data, full response to arrive before we bail out */ timeout_ms = response_time - curlx_timediff(now, pp->response); - if((data->set.timeout > 0) && !disconnecting) { + if(data->set.timeout && !disconnecting) { /* if timeout is requested, find out how much overall remains */ timediff_t timeout2_ms = Curl_timeleft(data, &now, FALSE); /* pick the lowest number */ @@ -285,7 +284,7 @@ CURLcode Curl_pp_readresp(struct Curl_easy *data, size_t full = curlx_dyn_len(&pp->recvbuf); /* trim off the "final" leading part */ - curlx_dyn_tail(&pp->recvbuf, full - pp->nfinal); + curlx_dyn_tail(&pp->recvbuf, full - pp->nfinal); pp->nfinal = 0; /* now gone */ } diff --git a/lib/pingpong.h b/lib/pingpong.h index 5db96c4345f8..bd723b1c9bf4 100644 --- a/lib/pingpong.h +++ b/lib/pingpong.h @@ -53,8 +53,6 @@ struct pingpong { size_t sendsize; /* total size of the sendthis buffer */ struct curltime response; /* set to Curl_now() when a command has been sent off, used to time-out response reading */ - timediff_t response_time; /* When no timeout is given, this is the amount of - milliseconds we await for a server response. */ struct dynbuf sendbuf; struct dynbuf recvbuf; size_t overflow; /* number of bytes left after a final response line */ @@ -75,7 +73,6 @@ struct pingpong { #define PINGPONG_SETUP(pp,s,e) \ do { \ - (pp)->response_time = RESP_TIMEOUT; \ (pp)->statemachine = s; \ (pp)->endofresp = e; \ } while(0) diff --git a/lib/pop3.c b/lib/pop3.c index 2fd496cb3142..affd64276cd8 100644 --- a/lib/pop3.c +++ b/lib/pop3.c @@ -323,8 +323,10 @@ static bool pop3_endofresp(struct Curl_easy *data, struct connectdata *conn, /* Are we processing CAPA command responses? */ if(pop3c->state == POP3_CAPA) { - /* Do we have the terminating line? */ - if(len >= 1 && line[0] == '.') + /* Do we have the terminating line? Per RFC 2449 this is a line + containing only a single dot */ + if((len == 3 && line[0] == '.' && line[1] == '\r') || + (len == 2 && line[0] == '.' && line[1] == '\n')) /* Treat the response as a success */ *resp = '+'; else @@ -876,15 +878,15 @@ static CURLcode pop3_state_capa_resp(struct Curl_easy *data, int pop3code, /* Do we have an untagged continuation response? */ if(pop3code == '*') { /* Does the server support the STLS capability? */ - if(len >= 4 && !memcmp(line, "STLS", 4)) + if(len >= 4 && curl_strnequal(line, "STLS", 4)) pop3c->tls_supported = TRUE; /* Does the server support clear text authentication? */ - else if(len >= 4 && !memcmp(line, "USER", 4)) + else if(len >= 4 && curl_strnequal(line, "USER", 4)) pop3c->authtypes |= POP3_TYPE_CLEARTEXT; /* Does the server support SASL based authentication? */ - else if(len >= 5 && !memcmp(line, "SASL ", 5)) { + else if(len >= 5 && curl_strnequal(line, "SASL ", 5)) { pop3c->authtypes |= POP3_TYPE_SASL; /* Advance past the SASL keyword */ @@ -894,13 +896,10 @@ static CURLcode pop3_state_capa_resp(struct Curl_easy *data, int pop3code, /* Loop through the data line */ for(;;) { size_t llen; - size_t wordlen; + size_t wordlen = 0; unsigned short mechbit; - while(len && - (*line == ' ' || *line == '\t' || - *line == '\r' || *line == '\n')) { - + while(len && (ISBLANK(*line) || ISNEWLINE(*line))) { line++; len--; } @@ -909,9 +908,8 @@ static CURLcode pop3_state_capa_resp(struct Curl_easy *data, int pop3code, break; /* Extract the word */ - for(wordlen = 0; wordlen < len && line[wordlen] != ' ' && - line[wordlen] != '\t' && line[wordlen] != '\r' && - line[wordlen] != '\n';) + while(wordlen < len && !ISBLANK(line[wordlen]) && + !ISNEWLINE(line[wordlen])) wordlen++; /* Test the word for a matching authentication mechanism */ diff --git a/lib/request.c b/lib/request.c index 1fa568325bbf..9778a0c95372 100644 --- a/lib/request.c +++ b/lib/request.c @@ -64,7 +64,7 @@ CURLcode Curl_req_soft_reset(struct SingleRequest *req, req->header = FALSE; req->headerline = 0; req->headerbytecount = 0; - req->allheadercount = 0; + req->allheadercount = 0; req->deductheadercount = 0; req->httpversion_sent = 0; req->httpversion = 0; @@ -132,7 +132,7 @@ void Curl_req_hard_reset(struct SingleRequest *req, struct Curl_easy *data) req->writebytecount = 0; req->start = t0; req->headerbytecount = 0; - req->allheadercount = 0; + req->allheadercount = 0; req->deductheadercount = 0; req->headerline = 0; req->offset = 0; diff --git a/lib/rtsp.c b/lib/rtsp.c index 1f952a07cccb..95215b8d4bfa 100644 --- a/lib/rtsp.c +++ b/lib/rtsp.c @@ -298,7 +298,8 @@ static CURLcode rtsp_setup_body(struct Curl_easy *data, } else { if(data->set.postfields) { - size_t plen = strlen(data->set.postfields); + size_t plen = (data->set.postfieldsize >= 0) ? + (size_t)data->set.postfieldsize : strlen(data->set.postfields); req_clen = (curl_off_t)plen; result = Curl_creader_set_buf(data, data->set.postfields, plen); } diff --git a/lib/select.h b/lib/select.h index a23921ceb999..c1f975e9d79c 100644 --- a/lib/select.h +++ b/lib/select.h @@ -154,11 +154,12 @@ void Curl_pollset_move(struct easy_pollset *to, struct easy_pollset *from); */ CURLcode Curl_pollset_change(struct Curl_easy *data, struct easy_pollset *ps, curl_socket_t sock, - int add_flags, int remove_flags); + int add_flags, + int remove_flags) WARN_UNUSED_RESULT; CURLcode Curl_pollset_set(struct Curl_easy *data, struct easy_pollset *ps, curl_socket_t sock, - bool do_in, bool do_out); + bool do_in, bool do_out) WARN_UNUSED_RESULT; #define Curl_pollset_add_in(data, ps, sock) \ Curl_pollset_change((data), (ps), (sock), CURL_POLL_IN, 0) diff --git a/lib/sendf.c b/lib/sendf.c index c6d84127620b..f2c29956d1f5 100644 --- a/lib/sendf.c +++ b/lib/sendf.c @@ -50,7 +50,6 @@ #include "multiif.h" #include "strerror.h" #include "select.h" -#include "strdup.h" #include "http2.h" #include "progress.h" #include "curlx/warnless.h" @@ -1442,6 +1441,7 @@ CURLcode Curl_creader_unpause(struct Curl_easy *data) while(reader) { result = reader->crt->cntrl(data, reader, CURL_CRCNTRL_UNPAUSE); + CURL_TRC_READ(data, "unpausing %s -> %d", reader->crt->name, result); if(result) break; reader = reader->next; diff --git a/lib/setopt.c b/lib/setopt.c index 7097c7f7b015..3f385ed8a54a 100644 --- a/lib/setopt.c +++ b/lib/setopt.c @@ -870,7 +870,12 @@ static CURLcode value_range(long *value, long below_error, long min, long max) static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, long arg) { +#if !defined(CURL_DISABLE_PROXY) || \ + !defined(CURL_DISABLE_HTTP) || \ + defined(HAVE_GSSAPI) || \ + defined(USE_IPV6) unsigned long uarg = (unsigned long)arg; +#endif bool set = FALSE; CURLcode result = setopt_bool(data, option, arg, &set); struct UserDefined *s = &data->set; @@ -1097,7 +1102,7 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, #ifdef HAVE_GSSAPI case CURLOPT_GSSAPI_DELEGATION: - s->gssapi_delegation = (unsigned char)uarg& + s->gssapi_delegation = (unsigned char)uarg & (CURLGSSAPI_DELEGATION_POLICY_FLAG|CURLGSSAPI_DELEGATION_FLAG); break; #endif @@ -1154,7 +1159,6 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, s->connect_only_ws = (arg == 2); break; - #ifdef USE_SSH case CURLOPT_SSH_AUTH_TYPES: s->ssh_auth_types = (int)arg; @@ -1678,7 +1682,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, /* * A string with POST data. Makes curl HTTP POST. Even if it is NULL. * If needed, CURLOPT_POSTFIELDSIZE must have been set prior to - * CURLOPT_COPYPOSTFIELDS and not altered later. + * CURLOPT_COPYPOSTFIELDS and not altered later. */ if(!ptr || s->postfieldsize == -1) result = Curl_setstropt(&s->str[STRING_COPYPOSTFIELDS], ptr); diff --git a/lib/setup-vms.h b/lib/setup-vms.h index 0fd5e542b775..e3777ded6e10 100644 --- a/lib/setup-vms.h +++ b/lib/setup-vms.h @@ -257,7 +257,6 @@ static struct passwd *vms_getpwuid(uid_t uid) #endif #define PEM_read_X509 PEM_READ_X509 #define PEM_write_bio_X509 PEM_WRITE_BIO_X509 -#define PKCS12_PBE_add PKCS12_PBE_ADD #define PKCS12_free PKCS12_FREE #define PKCS12_parse PKCS12_PARSE #define RAND_add RAND_ADD diff --git a/lib/sha256.c b/lib/sha256.c index 2d0357189a0e..f7bb5456133d 100644 --- a/lib/sha256.c +++ b/lib/sha256.c @@ -32,16 +32,23 @@ #include "curl_sha256.h" #include "curl_hmac.h" +#ifdef USE_MBEDTLS + #include + #if MBEDTLS_VERSION_NUMBER < 0x03020000 + #error "mbedTLS 3.2.0 or later required" + #endif + #include + #if defined(PSA_WANT_ALG_SHA_256) && PSA_WANT_ALG_SHA_256 /* mbedTLS 4+ */ + #define USE_MBEDTLS_SHA256 + #endif +#endif + #ifdef USE_OPENSSL #include #elif defined(USE_GNUTLS) #include -#elif defined(USE_MBEDTLS) -#include -#if MBEDTLS_VERSION_NUMBER < 0x03020000 - #error "mbedTLS 3.2.0 or later required" -#endif -#include +#elif defined(USE_MBEDTLS_SHA256) +#include #elif (defined(__MAC_OS_X_VERSION_MAX_ALLOWED) && \ (__MAC_OS_X_VERSION_MAX_ALLOWED >= 1040)) || \ (defined(__IPHONE_OS_VERSION_MAX_ALLOWED) && \ @@ -126,13 +133,15 @@ static void my_sha256_final(unsigned char *digest, void *ctx) sha256_digest(ctx, SHA256_DIGEST_SIZE, digest); } -#elif defined(USE_MBEDTLS) +#elif defined(USE_MBEDTLS_SHA256) -typedef mbedtls_sha256_context my_sha256_ctx; +typedef psa_hash_operation_t my_sha256_ctx; static CURLcode my_sha256_init(void *ctx) { - (void)mbedtls_sha256_starts(ctx, 0); + memset(ctx, 0, sizeof(my_sha256_ctx)); + if(psa_hash_setup(ctx, PSA_ALG_SHA_256) != PSA_SUCCESS) + return CURLE_OUT_OF_MEMORY; return CURLE_OK; } @@ -140,12 +149,14 @@ static void my_sha256_update(void *ctx, const unsigned char *data, unsigned int length) { - (void)mbedtls_sha256_update(ctx, data, length); + (void)psa_hash_update(ctx, data, length); } static void my_sha256_final(unsigned char *digest, void *ctx) { - (void)mbedtls_sha256_finish(ctx, digest); + size_t actual_length; + (void)psa_hash_finish(ctx, digest, CURL_SHA256_DIGEST_LENGTH, + &actual_length); } #elif defined(AN_APPLE_OS) diff --git a/lib/smtp.c b/lib/smtp.c index 76ed4f280afd..f36459634ebb 100644 --- a/lib/smtp.c +++ b/lib/smtp.c @@ -1136,7 +1136,7 @@ static CURLcode smtp_state_command_resp(struct Curl_easy *data, if(!data->req.no_body) result = Curl_client_write(data, CLIENTWRITE_BODY, line, len); - if(smtpcode != 1) { + if(!result && (smtpcode != 1)) { if(smtp->rcpt) { smtp->rcpt = smtp->rcpt->next; @@ -1881,7 +1881,7 @@ static CURLcode smtp_parse_address(const char *fqma, char **address, /* Duplicate the fully qualified email address so we can manipulate it, ensuring it does not contain the delimiters if specified */ - char *dup = strdup(fqma[0] == '<' ? fqma + 1 : fqma); + char *dup = strdup(fqma[0] == '<' ? fqma + 1 : fqma); if(!dup) return CURLE_OUT_OF_MEMORY; @@ -1927,6 +1927,7 @@ struct cr_eob_ctx { size_t eob; /* Number of bytes of the EOB (End Of Body) that have been received so far */ BIT(read_eos); /* we read an EOS from the next reader */ + BIT(processed_eos); /* we read and processed an EOS */ BIT(eos); /* we have returned an EOS */ }; @@ -1967,6 +1968,8 @@ static CURLcode cr_eob_read(struct Curl_easy *data, if(!ctx->read_eos && Curl_bufq_is_empty(&ctx->buf)) { /* Get more and convert it when needed */ result = Curl_creader_read(data, reader->next, buf, blen, &nread, &eos); + CURL_TRC_SMTP(data, "cr_eob_read, next_read(len=%zu) -> %d, %zu eos=%d", + blen, result, nread, eos); if(result) return result; @@ -2010,31 +2013,34 @@ static CURLcode cr_eob_read(struct Curl_easy *data, return result; } } + } - if(ctx->read_eos) { - /* if we last matched a CRLF or if the data was empty, add ".\r\n" - * to end the body. If we sent something and it did not end with "\r\n", - * add "\r\n.\r\n" to end the body */ - const char *eob = SMTP_EOB; - switch(ctx->n_eob) { - case 2: - /* seen a CRLF at the end, just add the remainder */ - eob = &SMTP_EOB[2]; - break; - case 3: - /* ended with '\r\n.', we should escape the last '.' */ - eob = "." SMTP_EOB; - break; - default: - break; - } - result = Curl_bufq_cwrite(&ctx->buf, eob, strlen(eob), &n); - if(result) - return result; + *peos = FALSE; + + if(ctx->read_eos && !ctx->processed_eos) { + /* if we last matched a CRLF or if the data was empty, add ".\r\n" + * to end the body. If we sent something and it did not end with "\r\n", + * add "\r\n.\r\n" to end the body */ + const char *eob = SMTP_EOB; + CURL_TRC_SMTP(data, "auto-ending mail body with '\\r\\n.\\r\\n'"); + switch(ctx->n_eob) { + case 2: + /* seen a CRLF at the end, just add the remainder */ + eob = &SMTP_EOB[2]; + break; + case 3: + /* ended with '\r\n.', we should escape the last '.' */ + eob = "." SMTP_EOB; + break; + default: + break; } + result = Curl_bufq_cwrite(&ctx->buf, eob, strlen(eob), &n); + if(result) + return result; + ctx->processed_eos = TRUE; } - *peos = FALSE; if(!Curl_bufq_is_empty(&ctx->buf)) { result = Curl_bufq_cread(&ctx->buf, buf, blen, pnread); } @@ -2043,6 +2049,7 @@ static CURLcode cr_eob_read(struct Curl_easy *data, if(ctx->read_eos && Curl_bufq_is_empty(&ctx->buf)) { /* no more data, read all, done. */ + CURL_TRC_SMTP(data, "mail body complete, returning EOS"); ctx->eos = TRUE; } *peos = ctx->eos; diff --git a/lib/socks.c b/lib/socks.c index 10fca7b44c99..5daf5393cd14 100644 --- a/lib/socks.c +++ b/lib/socks.c @@ -331,6 +331,7 @@ static CURLproxycode socks4_resolving(struct socks_state *sx, if(sx->start_resolving) { /* need to resolve hostname to add destination address */ sx->start_resolving = FALSE; + DEBUGASSERT(sx->hostname && *sx->hostname); result = Curl_resolv(data, sx->hostname, sx->remote_port, cf->conn->ip_version, TRUE, &dns); @@ -527,7 +528,7 @@ static CURLproxycode socks4_connect(struct Curl_cfilter *cf, /* socks4a, not resolving locally, sends the hostname. * add an invalid address + user + hostname */ unsigned char buf[4] = { 0, 0, 0, 1 }; - size_t hlen = strlen(sx->hostname) + 1; /* including NUL */ + size_t hlen = strlen(sx->hostname) + 1; /* including NUL */ if(hlen > 255) { failf(data, "SOCKS4: too long hostname"); @@ -765,13 +766,12 @@ static CURLproxycode socks5_check_auth_resp(struct socks_state *sx, /* ignore the first (VER) byte */ auth_status = resp[1]; - Curl_bufq_skip(&sx->iobuf, 2); - if(auth_status) { failf(data, "User was rejected by the SOCKS5 server (%d %d).", resp[0], resp[1]); return CURLPX_USER_REJECTED; } + Curl_bufq_skip(&sx->iobuf, 2); return CURLPX_OK; } @@ -859,6 +859,7 @@ static CURLproxycode socks5_resolving(struct socks_state *sx, if(sx->start_resolving) { /* need to resolve hostname to add destination address */ sx->start_resolving = FALSE; + DEBUGASSERT(sx->hostname && *sx->hostname); result = Curl_resolv(data, sx->hostname, sx->remote_port, cf->conn->ip_version, TRUE, &dns); @@ -1247,8 +1248,10 @@ static CURLcode socks_proxy_cf_connect(struct Curl_cfilter *cf, if(!sx) { cf->ctx = sx = calloc(1, sizeof(*sx)); - if(!sx) - return CURLE_OUT_OF_MEMORY; + if(!sx) { + result = CURLE_OUT_OF_MEMORY; + goto out; + } /* for the secondary socket (FTP), use the "connect to host" * but ignore the "connect to port" (use the secondary port) diff --git a/lib/socks_gssapi.c b/lib/socks_gssapi.c index 5ad93441a830..30fefa5a6d3c 100644 --- a/lib/socks_gssapi.c +++ b/lib/socks_gssapi.c @@ -126,14 +126,12 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(struct Curl_cfilter *cf, gss_name_t server = GSS_C_NO_NAME; gss_name_t gss_client_name = GSS_C_NO_NAME; unsigned short us_length; - char *user = NULL; unsigned char socksreq[4]; /* room for GSS-API exchange header only */ const char *serviceptr = data->set.str[STRING_PROXY_SERVICE_NAME] ? data->set.str[STRING_PROXY_SERVICE_NAME] : "rcmd"; const size_t serviceptr_length = strlen(serviceptr); gss_ctx_id_t gss_context = GSS_C_NO_CONTEXT; - /* GSS-API request looks like * +----+------+-----+----------------+ * |VER | MTYP | LEN | TOKEN | @@ -166,7 +164,8 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(struct Curl_cfilter *cf, GSS_C_NT_HOSTBASED_SERVICE, &server); } - gss_release_buffer(&gss_status, &service); /* clear allocated memory */ + Curl_safefree(service.value); + service.length = 0; if(check_gss_err(data, gss_major_status, gss_minor_status, "gss_import_name()")) { @@ -191,8 +190,10 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(struct Curl_cfilter *cf, TRUE, &gss_ret_flags); - if(gss_token != GSS_C_NO_BUFFER) - gss_release_buffer(&gss_status, &gss_recv_token); + if(gss_token != GSS_C_NO_BUFFER) { + Curl_safefree(gss_recv_token.value); + gss_recv_token.length = 0; + } if(check_gss_err(data, gss_major_status, gss_minor_status, "gss_init_sec_context") || /* the size needs to fit in a 16 bit field */ @@ -276,7 +277,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(struct Curl_cfilter *cf, us_length = ntohs(us_length); gss_recv_token.length = us_length; - gss_recv_token.value = malloc(us_length); + gss_recv_token.value = malloc(gss_recv_token.length); if(!gss_recv_token.value) { failf(data, "Could not allocate memory for GSS-API authentication " @@ -292,7 +293,8 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(struct Curl_cfilter *cf, if(result || (actualread != us_length)) { failf(data, "Failed to receive GSS-API authentication token."); gss_release_name(&gss_status, &server); - gss_release_buffer(&gss_status, &gss_recv_token); + Curl_safefree(gss_recv_token.value); + gss_recv_token.length = 0; Curl_gss_delete_sec_context(&gss_status, &gss_context, NULL); return CURLE_COULDNT_CONNECT; } @@ -323,21 +325,12 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(struct Curl_cfilter *cf, failf(data, "Failed to determine username."); return CURLE_COULDNT_CONNECT; } - user = malloc(gss_send_token.length + 1); - if(!user) { - Curl_gss_delete_sec_context(&gss_status, &gss_context, NULL); - gss_release_name(&gss_status, &gss_client_name); - gss_release_buffer(&gss_status, &gss_send_token); - return CURLE_OUT_OF_MEMORY; - } - memcpy(user, gss_send_token.value, gss_send_token.length); - user[gss_send_token.length] = '\0'; + infof(data, "SOCKS5 server authenticated user %.*s with GSS-API.", + (int)gss_send_token.length, (char *)gss_send_token.value); + gss_release_name(&gss_status, &gss_client_name); gss_release_buffer(&gss_status, &gss_send_token); - infof(data, "SOCKS5 server authenticated user %s with GSS-API.",user); - free(user); - user = NULL; /* Do encryption */ socksreq[0] = 1; /* GSS-API subnegotiation version */ @@ -391,7 +384,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(struct Curl_cfilter *cf, } else { gss_send_token.length = 1; - gss_send_token.value = Curl_memdup(&gss_enc, 1); + gss_send_token.value = Curl_memdup(&gss_enc, gss_send_token.length); if(!gss_send_token.value) { Curl_gss_delete_sec_context(&gss_status, &gss_context, NULL); return CURLE_OUT_OF_MEMORY; @@ -402,13 +395,15 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(struct Curl_cfilter *cf, &gss_conf_state, &gss_w_token); if(check_gss_err(data, gss_major_status, gss_minor_status, "gss_wrap")) { - gss_release_buffer(&gss_status, &gss_send_token); + Curl_safefree(gss_send_token.value); + gss_send_token.length = 0; gss_release_buffer(&gss_status, &gss_w_token); Curl_gss_delete_sec_context(&gss_status, &gss_context, NULL); failf(data, "Failed to wrap GSS-API encryption value into token."); return CURLE_COULDNT_CONNECT; } - gss_release_buffer(&gss_status, &gss_send_token); + Curl_safefree(gss_send_token.value); + gss_send_token.length = 0; us_length = htons((unsigned short)gss_w_token.length); memcpy(socksreq + 2, &us_length, sizeof(short)); @@ -481,7 +476,8 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(struct Curl_cfilter *cf, if(result || (actualread != us_length)) { failf(data, "Failed to receive GSS-API encryption type."); - gss_release_buffer(&gss_status, &gss_recv_token); + Curl_safefree(gss_recv_token.value); + gss_recv_token.length = 0; Curl_gss_delete_sec_context(&gss_status, &gss_context, NULL); return CURLE_COULDNT_CONNECT; } @@ -492,13 +488,15 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(struct Curl_cfilter *cf, 0, GSS_C_QOP_DEFAULT); if(check_gss_err(data, gss_major_status, gss_minor_status, "gss_unwrap")) { - gss_release_buffer(&gss_status, &gss_recv_token); + Curl_safefree(gss_recv_token.value); + gss_recv_token.length = 0; gss_release_buffer(&gss_status, &gss_w_token); Curl_gss_delete_sec_context(&gss_status, &gss_context, NULL); failf(data, "Failed to unwrap GSS-API encryption value into token."); return CURLE_COULDNT_CONNECT; } - gss_release_buffer(&gss_status, &gss_recv_token); + Curl_safefree(gss_recv_token.value); + gss_recv_token.length = 0; if(gss_w_token.length != 1) { failf(data, "Invalid GSS-API encryption response length (%zu).", @@ -515,13 +513,15 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(struct Curl_cfilter *cf, if(gss_recv_token.length != 1) { failf(data, "Invalid GSS-API encryption response length (%zu).", gss_recv_token.length); - gss_release_buffer(&gss_status, &gss_recv_token); + Curl_safefree(gss_recv_token.value); + gss_recv_token.length = 0; Curl_gss_delete_sec_context(&gss_status, &gss_context, NULL); return CURLE_COULDNT_CONNECT; } memcpy(socksreq, gss_recv_token.value, gss_recv_token.length); - gss_release_buffer(&gss_status, &gss_recv_token); + Curl_safefree(gss_recv_token.value); + gss_recv_token.length = 0; } (void)curlx_nonblock(sock, TRUE); diff --git a/lib/socks_sspi.c b/lib/socks_sspi.c index 54049e8c9928..31645527a36f 100644 --- a/lib/socks_sspi.c +++ b/lib/socks_sspi.c @@ -37,7 +37,6 @@ #include "curl_sspi.h" #include "curlx/multibyte.h" #include "curlx/warnless.h" -#include "strdup.h" /* The last 2 #include files should be in this order */ #include "curl_memory.h" @@ -88,7 +87,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(struct Curl_cfilter *cf, unsigned long qop; unsigned char socksreq[4]; /* room for GSS-API exchange header only */ const char *service = data->set.str[STRING_PROXY_SERVICE_NAME] ? - data->set.str[STRING_PROXY_SERVICE_NAME] : "rcmd"; + data->set.str[STRING_PROXY_SERVICE_NAME] : "rcmd"; char *etbuf; size_t etbuf_size; @@ -157,7 +156,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(struct Curl_cfilter *cf, (void)curlx_nonblock(sock, FALSE); /* As long as we need to keep sending some context info, and there is no */ - /* errors, keep sending it... */ + /* errors, keep sending it... */ for(;;) { TCHAR *sname; @@ -506,7 +505,6 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(struct Curl_cfilter *cf, goto error; } - if(!data->set.socks5_gssapi_nec) { wrap_desc.cBuffers = 2; sspi_w_token[0].BufferType = SECBUFFER_STREAM; @@ -562,7 +560,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(struct Curl_cfilter *cf, } (void)curlx_nonblock(sock, TRUE); - infof(data, "SOCKS5 access with%s protection granted.", + infof(data, "SOCKS5 access with%s protection granted BUT NOT USED.", (socksreq[0] == 0) ? "out GSS-API data": ((socksreq[0] == 1) ? " GSS-API integrity" : " GSS-API confidentiality")); @@ -590,9 +588,12 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(struct Curl_cfilter *cf, Curl_pSecFn->FreeContextBuffer(sspi_send_token.pvBuffer); if(names.sUserName) Curl_pSecFn->FreeContextBuffer(names.sUserName); - free(sspi_w_token[0].pvBuffer); - free(sspi_w_token[1].pvBuffer); - free(sspi_w_token[2].pvBuffer); + if(sspi_w_token[0].pvBuffer) + Curl_pSecFn->FreeContextBuffer(sspi_w_token[0].pvBuffer); + if(sspi_w_token[1].pvBuffer) + Curl_pSecFn->FreeContextBuffer(sspi_w_token[1].pvBuffer); + if(sspi_w_token[2].pvBuffer) + Curl_pSecFn->FreeContextBuffer(sspi_w_token[2].pvBuffer); free(etbuf); return result; } diff --git a/lib/tftp.c b/lib/tftp.c index d9d978c24e90..ffea60f62190 100644 --- a/lib/tftp.c +++ b/lib/tftp.c @@ -477,7 +477,7 @@ static CURLcode tftp_send_first(struct tftp_conn *state, curl_msnprintf((char *)state->spacket.data + 2, state->blksize, - "%s%c%s%c", filename, '\0', mode, '\0'); + "%s%c%s%c", filename, '\0', mode, '\0'); sbytes = 4 + strlen(filename) + strlen(mode); /* optional addition of TFTP options */ diff --git a/lib/transfer.c b/lib/transfer.c index d7014aab87e5..0269a4c2505f 100644 --- a/lib/transfer.c +++ b/lib/transfer.c @@ -254,6 +254,7 @@ static CURLcode sendrecv_dl(struct Curl_easy *data, curl_off_t total_received = 0; bool is_multiplex = FALSE; bool rcvd_eagain = FALSE; + bool is_eos = FALSE; result = Curl_multi_xfer_buf_borrow(data, &xfer_buf, &xfer_blen); if(result) @@ -262,7 +263,6 @@ static CURLcode sendrecv_dl(struct Curl_easy *data, /* This is where we loop until we have read everything there is to read or we get a CURLE_AGAIN */ do { - bool is_eos = FALSE; size_t bytestoread; ssize_t nread; @@ -309,9 +309,14 @@ static CURLcode sendrecv_dl(struct Curl_easy *data, blen = (size_t)nread; is_eos = (blen == 0); - if(!blen) { - /* if we receive 0 or less here, either the data transfer is done or the - server closed the connection and we bail out from this! */ + if(!blen && (conn->recv[FIRSTSOCKET] == Curl_cf_recv)) { + /* if we receive 0 or less here and the protocol handler did not + replace the connection's `recv` callback, either the data transfer + is done or the server closed the connection and + we bail out from this! + With a `recv` replacement, we assume the protocol handler knows + what it is doing and a 0-length receive is fine. For example, + SFTP downloads of an empty file would show this. See #19165. */ if(is_multiplex) DEBUGF(infof(data, "nread == 0, stream closed, bailing")); else @@ -340,9 +345,9 @@ static CURLcode sendrecv_dl(struct Curl_easy *data, } while(maxloops--); - if(!Curl_xfer_is_blocked(data) && + if(!is_eos && !Curl_xfer_is_blocked(data) && (!rcvd_eagain || data_pending(data, rcvd_eagain))) { - /* Did not read until EAGAIN or there is still data pending + /* Did not read until EAGAIN/EOS or there is still data pending * in buffers. Mark as read-again via simulated SELECT results. */ Curl_multi_mark_dirty(data); CURL_TRC_M(data, "sendrecv_dl() no EAGAIN/pending data, mark as dirty"); @@ -662,9 +667,10 @@ CURLcode Curl_retry_request(struct Curl_easy *data, char **url) !(conn->handler->protocol&(PROTO_FAMILY_HTTP|CURLPROTO_RTSP))) return CURLE_OK; - if((data->req.bytecount + data->req.headerbytecount == 0) && - conn->bits.reuse && - (!data->req.no_body || (conn->handler->protocol & PROTO_FAMILY_HTTP)) + if(conn->bits.reuse && + (data->req.bytecount + data->req.headerbytecount == 0) && + ((!data->req.no_body && !data->req.done) || + (conn->handler->protocol & PROTO_FAMILY_HTTP)) #ifndef CURL_DISABLE_RTSP && (data->set.rtspreq != RTSPREQ_RECEIVE) #endif diff --git a/lib/url.c b/lib/url.c index f0fe7d3d4135..e816da442a16 100644 --- a/lib/url.c +++ b/lib/url.c @@ -2187,7 +2187,6 @@ static CURLcode parse_proxy(struct Curl_easy *data, bool is_unix_proxy = FALSE; #endif - if(!uhp) { result = CURLE_OUT_OF_MEMORY; goto error; diff --git a/lib/urldata.h b/lib/urldata.h index c7e19201fe88..f79ccca0aceb 100644 --- a/lib/urldata.h +++ b/lib/urldata.h @@ -127,7 +127,7 @@ typedef unsigned int curl_prot_t; #define MAX_IPADR_LEN sizeof("ffff:ffff:ffff:ffff:ffff:ffff:255.255.255.255") /* Default FTP/IMAP etc response timeout in milliseconds */ -#define RESP_TIMEOUT (120*1000) +#define RESP_TIMEOUT (60*1000) /* Max string input length is a precaution against abuse and to detect junk input easier and better. */ @@ -419,12 +419,12 @@ struct hostname { * Flags on the keepon member of the Curl_transfer_keeper */ -#define KEEP_NONE 0 -#define KEEP_RECV (1<<0) /* there is or may be data to read */ -#define KEEP_SEND (1<<1) /* there is or may be data to write */ -#define KEEP_RECV_HOLD (1<<2) /* when set, no reading should be done but there - might still be data to read */ -#define KEEP_SEND_HOLD (1<<3) /* when set, no writing should be done but there +#define KEEP_NONE 0 +#define KEEP_RECV (1<<0) /* there is or may be data to read */ +#define KEEP_SEND (1<<1) /* there is or may be data to write */ +#define KEEP_RECV_HOLD (1<<2) /* when set, no reading should be done but there + might still be data to read */ +#define KEEP_SEND_HOLD (1<<3) /* when set, no writing should be done but there might still be data to write */ #define KEEP_RECV_PAUSE (1<<4) /* reading is paused */ #define KEEP_SEND_PAUSE (1<<5) /* writing is paused */ @@ -543,10 +543,10 @@ struct Curl_handler { followtype type); int defport; /* Default port. */ - curl_prot_t protocol; /* See CURLPROTO_* - this needs to be the single - specific protocol bit */ - curl_prot_t family; /* single bit for protocol family; basically the - non-TLS name of the protocol this is */ + curl_prot_t protocol; /* See CURLPROTO_* - this needs to be the single + specific protocol bit */ + curl_prot_t family; /* single bit for protocol family; basically the + non-TLS name of the protocol this is */ unsigned int flags; /* Extra particular characteristics, see PROTOPT_* */ }; @@ -574,13 +574,13 @@ struct Curl_handler { #define PROTOPT_PROXY_AS_HTTP (1<<11) /* allow this non-HTTP scheme over a HTTP proxy as HTTP proxies may know this protocol and act as a gateway */ -#define PROTOPT_WILDCARD (1<<12) /* protocol supports wildcard matching */ +#define PROTOPT_WILDCARD (1<<12) /* protocol supports wildcard matching */ #define PROTOPT_USERPWDCTRL (1<<13) /* Allow "control bytes" (< 32 ASCII) in username and password */ -#define PROTOPT_NOTCPPROXY (1<<14) /* this protocol cannot proxy over TCP */ -#define PROTOPT_SSL_REUSE (1<<15) /* this protocol may reuse an existing - SSL connection in the same family - without having PROTOPT_SSL. */ +#define PROTOPT_NOTCPPROXY (1<<14) /* this protocol cannot proxy over TCP */ +#define PROTOPT_SSL_REUSE (1<<15) /* this protocol may reuse an existing + SSL connection in the same family + without having PROTOPT_SSL. */ #define CONNCHECK_NONE 0 /* No checks */ #define CONNCHECK_ISDEAD (1<<0) /* Check if the connection is dead. */ diff --git a/lib/vauth/cleartext.c b/lib/vauth/cleartext.c index dcfb13912d27..884ebce0f268 100644 --- a/lib/vauth/cleartext.c +++ b/lib/vauth/cleartext.c @@ -62,35 +62,24 @@ CURLcode Curl_auth_create_plain_message(const char *authzid, const char *passwd, struct bufref *out) { - char *plainauth; - size_t plainlen; - size_t zlen; - size_t clen; - size_t plen; + size_t len; + char *auth; - zlen = (authzid == NULL ? 0 : strlen(authzid)); - clen = strlen(authcid); - plen = strlen(passwd); + size_t zlen = (authzid == NULL ? 0 : strlen(authzid)); + size_t clen = strlen(authcid); + size_t plen = strlen(passwd); - /* Compute binary message length. Check for overflows. */ - if((zlen > SIZE_MAX/4) || (clen > SIZE_MAX/4) || - (plen > (SIZE_MAX/2 - 2))) - return CURLE_OUT_OF_MEMORY; - plainlen = zlen + clen + plen + 2; + if((zlen > CURL_MAX_INPUT_LENGTH) || (clen > CURL_MAX_INPUT_LENGTH) || + (plen > CURL_MAX_INPUT_LENGTH)) + return CURLE_TOO_LARGE; - plainauth = malloc(plainlen + 1); - if(!plainauth) - return CURLE_OUT_OF_MEMORY; + len = zlen + clen + plen + 2; - /* Calculate the reply */ - if(zlen) - memcpy(plainauth, authzid, zlen); - plainauth[zlen] = '\0'; - memcpy(plainauth + zlen + 1, authcid, clen); - plainauth[zlen + clen + 1] = '\0'; - memcpy(plainauth + zlen + clen + 2, passwd, plen); - plainauth[plainlen] = '\0'; - Curl_bufref_set(out, plainauth, plainlen, curl_free); + auth = curl_maprintf("%s%c%s%c%s", authzid ? authzid : "", '\0', + authcid, '\0', passwd); + if(!auth) + return CURLE_OUT_OF_MEMORY; + Curl_bufref_set(out, auth, len, curl_free); return CURLE_OK; } diff --git a/lib/vauth/digest_sspi.c b/lib/vauth/digest_sspi.c index 5bf37705653a..9441ee26fcca 100644 --- a/lib/vauth/digest_sspi.c +++ b/lib/vauth/digest_sspi.c @@ -629,24 +629,15 @@ CURLcode Curl_auth_create_digest_http_message(struct Curl_easy *data, Curl_sspi_free_identity(p_identity); } - resp = malloc(output_token_len + 1); + resp = Curl_memdup0((const char *)output_token, output_token_len); + free(output_token); if(!resp) { - free(output_token); - return CURLE_OUT_OF_MEMORY; } - /* Copy the generated response */ - memcpy(resp, output_token, output_token_len); - resp[output_token_len] = 0; - /* Return the response */ *outptr = resp; *outlen = output_token_len; - - /* Free the response buffer */ - free(output_token); - return CURLE_OK; } diff --git a/lib/vauth/gsasl.c b/lib/vauth/gsasl.c index 8fbb62af80d6..119c392cda13 100644 --- a/lib/vauth/gsasl.c +++ b/lib/vauth/gsasl.c @@ -48,7 +48,7 @@ bool Curl_auth_gsasl_is_supported(struct Curl_easy *data, res = gsasl_init(&gsasl->ctx); if(res != GSASL_OK) { - failf(data, "gsasl init: %s\n", gsasl_strerror(res)); + failf(data, "gsasl init: %s", gsasl_strerror(res)); return FALSE; } @@ -73,7 +73,7 @@ CURLcode Curl_auth_gsasl_start(struct Curl_easy *data, gsasl_property_set(gsasl->client, GSASL_AUTHID, userp); #if GSASL_VERSION_NUMBER >= 0x010b00 if(res != GSASL_OK) { - failf(data, "setting AUTHID failed: %s\n", gsasl_strerror(res)); + failf(data, "setting AUTHID failed: %s", gsasl_strerror(res)); return CURLE_OUT_OF_MEMORY; } #endif @@ -84,7 +84,7 @@ CURLcode Curl_auth_gsasl_start(struct Curl_easy *data, gsasl_property_set(gsasl->client, GSASL_PASSWORD, passwdp); #if GSASL_VERSION_NUMBER >= 0x010b00 if(res != GSASL_OK) { - failf(data, "setting PASSWORD failed: %s\n", gsasl_strerror(res)); + failf(data, "setting PASSWORD failed: %s", gsasl_strerror(res)); return CURLE_OUT_OF_MEMORY; } #endif @@ -107,7 +107,7 @@ CURLcode Curl_auth_gsasl_token(struct Curl_easy *data, (const char *) Curl_bufref_ptr(chlg), Curl_bufref_len(chlg), &response, &outlen); if(res != GSASL_OK && res != GSASL_NEEDS_MORE) { - failf(data, "GSASL step: %s\n", gsasl_strerror(res)); + failf(data, "GSASL step: %s", gsasl_strerror(res)); return CURLE_BAD_CONTENT_ENCODING; } diff --git a/lib/vauth/ntlm.c b/lib/vauth/ntlm.c index 791fc87d1153..1e9b629d8f49 100644 --- a/lib/vauth/ntlm.c +++ b/lib/vauth/ntlm.c @@ -40,7 +40,6 @@ #include "../curl_ntlm_core.h" #include "../curl_gethostname.h" #include "../curlx/multibyte.h" -#include "../curl_md5.h" #include "../curlx/warnless.h" #include "../rand.h" #include "../vtls/vtls.h" @@ -788,7 +787,8 @@ CURLcode Curl_auth_create_ntlm_type3_message(struct Curl_easy *data, /* ntresplen + size should not be risking an integer overflow here */ if(ntresplen + size > sizeof(ntlmbuf)) { failf(data, "incoming NTLM message too big"); - return CURLE_OUT_OF_MEMORY; + result = CURLE_TOO_LARGE; + goto error; } DEBUGASSERT(size == (size_t)ntrespoff); memcpy(&ntlmbuf[size], ptr_ntresp, ntresplen); @@ -799,8 +799,6 @@ CURLcode Curl_auth_create_ntlm_type3_message(struct Curl_easy *data, ntlm_print_hex(stderr, (char *)&ntlmbuf[ntrespoff], ntresplen); }); - free(ntlmv2resp);/* Free the dynamic buffer allocated for NTLMv2 */ - DEBUG_OUT({ curl_mfprintf(stderr, "\n flags=0x%02.2x%02.2x%02.2x%02.2x 0x%08.8x ", LONGQUARTET(ntlm->flags), ntlm->flags); @@ -811,8 +809,9 @@ CURLcode Curl_auth_create_ntlm_type3_message(struct Curl_easy *data, /* Make sure that the domain, user and host strings fit in the buffer before we copy them there. */ if(size + userlen + domlen + hostlen >= NTLM_BUFSIZE) { - failf(data, "user + domain + hostname too big"); - return CURLE_OUT_OF_MEMORY; + failf(data, "user + domain + hostname too big for NTLM"); + result = CURLE_TOO_LARGE; + goto error; } DEBUGASSERT(size == domoff); @@ -842,6 +841,9 @@ CURLcode Curl_auth_create_ntlm_type3_message(struct Curl_easy *data, /* Return the binary blob. */ result = Curl_bufref_memdup(out, ntlmbuf, size); +error: + free(ntlmv2resp); /* Free the dynamic buffer allocated for NTLMv2 */ + Curl_auth_cleanup_ntlm(ntlm); return result; diff --git a/lib/vauth/spnego_gssapi.c b/lib/vauth/spnego_gssapi.c index 4ed02a398ca3..4e9125ba4400 100644 --- a/lib/vauth/spnego_gssapi.c +++ b/lib/vauth/spnego_gssapi.c @@ -96,7 +96,9 @@ CURLcode Curl_auth_decode_spnego_message(struct Curl_easy *data, gss_buffer_desc input_token = GSS_C_EMPTY_BUFFER; gss_buffer_desc output_token = GSS_C_EMPTY_BUFFER; gss_channel_bindings_t chan_bindings = GSS_C_NO_CHANNEL_BINDINGS; +#ifdef CURL_GSSAPI_HAS_CHANNEL_BINDING struct gss_channel_bindings_struct chan; +#endif (void)user; (void)password; @@ -157,12 +159,14 @@ CURLcode Curl_auth_decode_spnego_message(struct Curl_easy *data, } /* Set channel binding data if available */ +#ifdef CURL_GSSAPI_HAS_CHANNEL_BINDING if(curlx_dyn_len(&nego->channel_binding_data)) { memset(&chan, 0, sizeof(struct gss_channel_bindings_struct)); chan.application_data.length = curlx_dyn_len(&nego->channel_binding_data); chan.application_data.value = curlx_dyn_ptr(&nego->channel_binding_data); chan_bindings = &chan; } +#endif /* Generate our challenge-response message */ major_status = Curl_gss_init_sec_context(data, diff --git a/lib/vauth/spnego_sspi.c b/lib/vauth/spnego_sspi.c index 935468f3a65e..9cf554d3b061 100644 --- a/lib/vauth/spnego_sspi.c +++ b/lib/vauth/spnego_sspi.c @@ -66,7 +66,6 @@ bool Curl_auth_is_spnego_supported(void) Curl_pSecFn->FreeContextBuffer(SecurityPackage); } - return status == SEC_E_OK; } diff --git a/lib/vauth/vauth.h b/lib/vauth/vauth.h index 9a33ca0c2317..2ba8e471dc00 100644 --- a/lib/vauth/vauth.h +++ b/lib/vauth/vauth.h @@ -306,7 +306,9 @@ struct negotiatedata { gss_ctx_id_t context; gss_name_t spn; gss_buffer_desc output_token; +#ifdef CURL_GSSAPI_HAS_CHANNEL_BINDING struct dynbuf channel_binding_data; +#endif #else #ifdef USE_WINDOWS_SSPI #ifdef SECPKG_ATTR_ENDPOINT_BINDINGS diff --git a/lib/vquic/curl_ngtcp2.c b/lib/vquic/curl_ngtcp2.c index 53665b1a3d1d..36bd28926d1e 100644 --- a/lib/vquic/curl_ngtcp2.c +++ b/lib/vquic/curl_ngtcp2.c @@ -50,7 +50,6 @@ #include "../url.h" #include "../uint-hash.h" #include "../sendf.h" -#include "../strdup.h" #include "../rand.h" #include "../multiif.h" #include "../cfilters.h" @@ -300,6 +299,7 @@ static CURLcode h3_data_setup(struct Curl_cfilter *cf, return CURLE_OK; } +#if NGTCP2_VERSION_NUM < 0x011100 struct cf_ngtcp2_sfind_ctx { curl_int64_t stream_id; struct h3_stream_ctx *stream; @@ -328,6 +328,20 @@ cf_ngtcp2_get_stream(struct cf_ngtcp2_ctx *ctx, curl_int64_t stream_id) Curl_uint_hash_visit(&ctx->streams, cf_ngtcp2_sfind, &fctx); return fctx.stream; } +#else +static struct h3_stream_ctx *cf_ngtcp2_get_stream(struct cf_ngtcp2_ctx *ctx, + curl_int64_t stream_id) +{ + struct Curl_easy *data = + ngtcp2_conn_get_stream_user_data(ctx->qconn, stream_id); + + if(!data) { + return NULL; + } + + return H3_STREAM_CTX(ctx, data); +} +#endif static void cf_ngtcp2_stream_close(struct Curl_cfilter *cf, struct Curl_easy *data, @@ -443,17 +457,6 @@ static void quic_settings(struct cf_ngtcp2_ctx *ctx, struct Curl_easy *data, struct pkt_io_ctx *pktx) { -#ifdef NGTCP2_SETTINGS_V2x -static uint16_t mtu_probes[] = { - 1472, /* what h2o offers */ - 1452, /* what Caddy offers */ - 1454 - 48, /* The well known MTU used by a domestic optic fiber - service in Japan. */ - 1390 - 48, /* Typical Tunneled MTU */ - 1280 - 48, /* IPv6 minimum MTU */ - 1492 - 48, /* PPPoE */ -}; -#endif ngtcp2_settings *s = &ctx->settings; ngtcp2_transport_params *t = &ctx->transport_params; @@ -471,12 +474,11 @@ static uint16_t mtu_probes[] = { s->max_window = 100 * ctx->max_stream_window; s->max_stream_window = 10 * ctx->max_stream_window; s->no_pmtud = FALSE; -#ifdef NGTCP2_SETTINGS_V2x - s->pmtud_probes = mtu_probes; - s->pmtud_probeslen = CURL_ARRAYSIZE(mtu_probes); - s->max_tx_udp_payload_size = 64 * 1024; /* mtu_probes[0]; */ +#ifdef NGTCP2_SETTINGS_V3 + /* try ten times the ngtcp2 defaults here for problems with Caddy */ + s->glitch_ratelim_burst = 1000 * 10; + s->glitch_ratelim_rate = 33 * 10; #endif - t->initial_max_data = 10 * ctx->max_stream_window; t->initial_max_stream_data_bidi_local = ctx->max_stream_window; t->initial_max_stream_data_bidi_remote = ctx->max_stream_window; @@ -511,6 +513,7 @@ static int cf_ngtcp2_handshake_completed(ngtcp2_conn *tconn, void *user_data) ctx->tls_vrfy_result = Curl_vquic_tls_verify_peer(&ctx->tls, cf, data, &ctx->peer); +#ifndef CURL_DISABLE_VERBOSE_STRINGS if(Curl_trc_is_verbose(data)) { const ngtcp2_transport_params *rp; rp = ngtcp2_conn_get_remote_transport_params(ctx->qconn); @@ -522,6 +525,7 @@ static int cf_ngtcp2_handshake_completed(ngtcp2_conn *tconn, void *user_data) (curl_uint64_t)rp->max_udp_payload_size, (curl_uint64_t)rp->initial_max_data); } +#endif /* In case of earlydata, where we simulate being connected, update * the handshake time when we really did connect */ @@ -1018,8 +1022,12 @@ static void h3_xfer_write_resp_hd(struct Curl_cfilter *cf, struct h3_stream_ctx *stream, const char *buf, size_t blen, bool eos) { - - /* If we already encountered an error, skip further writes */ + /* This function returns no error intentionally, but records + * the result at the stream, skipping further writes once the + * `result` of the transfer is known. + * The stream is subsequently cancelled "higher up" in the filter's + * send/recv callbacks. Closing the stream here leads to SEND/RECV + * errors in other places that then overwrite the transfer's result. */ if(!stream->xfer_result) { stream->xfer_result = Curl_xfer_write_resp_hd(data, buf, blen, eos); if(stream->xfer_result) @@ -1033,8 +1041,12 @@ static void h3_xfer_write_resp(struct Curl_cfilter *cf, struct h3_stream_ctx *stream, const char *buf, size_t blen, bool eos) { - - /* If we already encountered an error, skip further writes */ + /* This function returns no error intentionally, but records + * the result at the stream, skipping further writes once the + * `result` of the transfer is known. + * The stream is subsequently cancelled "higher up" in the filter's + * send/recv callbacks. Closing the stream here leads to SEND/RECV + * errors in other places that then overwrite the transfer's result. */ if(!stream->xfer_result) { stream->xfer_result = Curl_xfer_write_resp(data, buf, blen, eos); /* If the transfer write is errored, we do not want any more data */ @@ -1202,7 +1214,8 @@ static int cb_h3_stop_sending(nghttp3_conn *conn, int64_t stream_id, static int cb_h3_reset_stream(nghttp3_conn *conn, int64_t sid, uint64_t app_error_code, void *user_data, - void *stream_user_data) { + void *stream_user_data) +{ struct Curl_cfilter *cf = user_data; struct cf_ngtcp2_ctx *ctx = cf->ctx; curl_int64_t stream_id = (curl_int64_t)sid; @@ -1723,37 +1736,43 @@ static CURLcode cf_ngtcp2_send(struct Curl_cfilter *cf, struct Curl_easy *data, return result; } -static CURLcode recv_pkt(const unsigned char *pkt, size_t pktlen, - struct sockaddr_storage *remote_addr, - socklen_t remote_addrlen, int ecn, - void *userp) +static CURLcode cf_ngtcp2_recv_pkts(const unsigned char *buf, size_t buflen, + size_t gso_size, + struct sockaddr_storage *remote_addr, + socklen_t remote_addrlen, int ecn, + void *userp) { struct pkt_io_ctx *pktx = userp; struct cf_ngtcp2_ctx *ctx = pktx->cf->ctx; ngtcp2_pkt_info pi; ngtcp2_path path; + size_t offset, pktlen; int rv; if(ecn) - CURL_TRC_CF(pktx->data, pktx->cf, "vquic_recv(len=%zu, ecn=%x)", - pktlen, ecn); + CURL_TRC_CF(pktx->data, pktx->cf, "vquic_recv(len=%zu, gso=%zu, ecn=%x)", + buflen, gso_size, ecn); ngtcp2_addr_init(&path.local, (struct sockaddr *)&ctx->q.local_addr, (socklen_t)ctx->q.local_addrlen); ngtcp2_addr_init(&path.remote, (struct sockaddr *)remote_addr, remote_addrlen); pi.ecn = (uint8_t)ecn; - rv = ngtcp2_conn_read_pkt(ctx->qconn, &path, &pi, pkt, pktlen, pktx->ts); - if(rv) { - CURL_TRC_CF(pktx->data, pktx->cf, "ingress, read_pkt -> %s (%d)", - ngtcp2_strerror(rv), rv); - cf_ngtcp2_err_set(pktx->cf, pktx->data, rv); - - if(rv == NGTCP2_ERR_CRYPTO) - /* this is a "TLS problem", but a failed certificate verification - is a common reason for this */ - return CURLE_PEER_FAILED_VERIFICATION; - return CURLE_RECV_ERROR; + for(offset = 0; offset < buflen; offset += gso_size) { + pktlen = ((offset + gso_size) <= buflen) ? gso_size : (buflen - offset); + rv = ngtcp2_conn_read_pkt(ctx->qconn, &path, &pi, + buf + offset, pktlen, pktx->ts); + if(rv) { + CURL_TRC_CF(pktx->data, pktx->cf, "ingress, read_pkt -> %s (%d)", + ngtcp2_strerror(rv), rv); + cf_ngtcp2_err_set(pktx->cf, pktx->data, rv); + + if(rv == NGTCP2_ERR_CRYPTO) + /* this is a "TLS problem", but a failed certificate verification + is a common reason for this */ + return CURLE_PEER_FAILED_VERIFICATION; + return CURLE_RECV_ERROR; + } } return CURLE_OK; } @@ -1779,7 +1798,8 @@ static CURLcode cf_progress_ingress(struct Curl_cfilter *cf, if(result) return result; - return vquic_recv_packets(cf, data, &ctx->q, 1000, recv_pkt, pktx); + return vquic_recv_packets(cf, data, &ctx->q, 1000, + cf_ngtcp2_recv_pkts, pktx); } /** @@ -1873,7 +1893,7 @@ static CURLcode read_pkt_to_send(void *userp, /* we add the amount of data bytes to the flow windows */ int rv = nghttp3_conn_add_write_offset(ctx->h3conn, stream_id, ndatalen); if(rv) { - failf(x->data, "nghttp3_conn_add_write_offset returned error: %s\n", + failf(x->data, "nghttp3_conn_add_write_offset returned error: %s", nghttp3_strerror(rv)); return CURLE_SEND_ERROR; } @@ -2353,7 +2373,6 @@ static CURLcode cf_ngtcp2_tls_ctx_setup(struct Curl_cfilter *cf, void *user_data) { struct curl_tls_ctx *ctx = user_data; - struct ssl_config_data *ssl_config = Curl_ssl_cf_get_config(cf, data); #ifdef USE_OPENSSL #if defined(OPENSSL_IS_BORINGSSL) || defined(OPENSSL_IS_AWSLC) @@ -2370,7 +2389,7 @@ static CURLcode cf_ngtcp2_tls_ctx_setup(struct Curl_cfilter *cf, return CURLE_FAILED_INIT; } #endif /* !OPENSSL_IS_BORINGSSL && !OPENSSL_IS_AWSLC */ - if(ssl_config->primary.cache_session) { + if(Curl_ssl_scache_use(cf, data)) { /* Enable the session cache because it is a prerequisite for the * "new session" callback. Use the "external storage" mode to prevent * OpenSSL from creating an internal session cache. @@ -2386,7 +2405,7 @@ static CURLcode cf_ngtcp2_tls_ctx_setup(struct Curl_cfilter *cf, failf(data, "ngtcp2_crypto_gnutls_configure_client_session failed"); return CURLE_FAILED_INIT; } - if(ssl_config->primary.cache_session) { + if(Curl_ssl_scache_use(cf, data)) { gnutls_handshake_set_hook_function(ctx->gtls.session, GNUTLS_HANDSHAKE_ANY, GNUTLS_HOOK_POST, quic_gtls_handshake_cb); @@ -2397,7 +2416,7 @@ static CURLcode cf_ngtcp2_tls_ctx_setup(struct Curl_cfilter *cf, failf(data, "ngtcp2_crypto_wolfssl_configure_client_context failed"); return CURLE_FAILED_INIT; } - if(ssl_config->primary.cache_session) { + if(Curl_ssl_scache_use(cf, data)) { /* Register to get notified when a new session is received */ wolfSSL_CTX_sess_set_new_cb(ctx->wssl.ssl_ctx, wssl_quic_new_session_cb); } diff --git a/lib/vquic/curl_osslq.c b/lib/vquic/curl_osslq.c index a49074346270..50051041df36 100644 --- a/lib/vquic/curl_osslq.c +++ b/lib/vquic/curl_osslq.c @@ -35,7 +35,6 @@ #include "../urldata.h" #include "../hash.h" #include "../sendf.h" -#include "../strdup.h" #include "../rand.h" #include "../multiif.h" #include "../cfilters.h" @@ -952,7 +951,8 @@ static int cb_h3_stop_sending(nghttp3_conn *conn, int64_t sid, static int cb_h3_reset_stream(nghttp3_conn *conn, int64_t sid, uint64_t app_error_code, void *user_data, - void *stream_user_data) { + void *stream_user_data) +{ struct Curl_cfilter *cf = user_data; struct cf_osslq_ctx *ctx = cf->ctx; struct Curl_easy *data = stream_user_data; @@ -1661,14 +1661,14 @@ static CURLcode h3_send_streams(struct Curl_cfilter *cf, ctx->q.last_io = curlx_now(); rv = nghttp3_conn_add_write_offset(ctx->h3.conn, s->id, acked_len); if(rv && rv != NGHTTP3_ERR_STREAM_NOT_FOUND) { - failf(data, "nghttp3_conn_add_write_offset returned error: %s\n", + failf(data, "nghttp3_conn_add_write_offset returned error: %s", nghttp3_strerror(rv)); result = CURLE_SEND_ERROR; goto out; } rv = nghttp3_conn_add_ack_offset(ctx->h3.conn, s->id, acked_len); if(rv && rv != NGHTTP3_ERR_STREAM_NOT_FOUND) { - failf(data, "nghttp3_conn_add_ack_offset returned error: %s\n", + failf(data, "nghttp3_conn_add_ack_offset returned error: %s", nghttp3_strerror(rv)); result = CURLE_SEND_ERROR; goto out; diff --git a/lib/vquic/curl_quiche.c b/lib/vquic/curl_quiche.c index 55f6e79ebefc..fc1c55526e47 100644 --- a/lib/vquic/curl_quiche.c +++ b/lib/vquic/curl_quiche.c @@ -34,7 +34,6 @@ #include "../cfilters.h" #include "../cf-socket.h" #include "../sendf.h" -#include "../strdup.h" #include "../rand.h" #include "../multiif.h" #include "../connect.h" @@ -625,58 +624,63 @@ struct recv_ctx { int pkts; }; -static CURLcode recv_pkt(const unsigned char *pkt, size_t pktlen, - struct sockaddr_storage *remote_addr, - socklen_t remote_addrlen, int ecn, - void *userp) +static CURLcode cf_quiche_recv_pkts(const unsigned char *buf, size_t buflen, + size_t gso_size, + struct sockaddr_storage *remote_addr, + socklen_t remote_addrlen, int ecn, + void *userp) { struct recv_ctx *r = userp; struct cf_quiche_ctx *ctx = r->cf->ctx; quiche_recv_info recv_info; + size_t pktlen, offset; ssize_t nread; (void)ecn; - ++r->pkts; recv_info.to = (struct sockaddr *)&ctx->q.local_addr; recv_info.to_len = ctx->q.local_addrlen; recv_info.from = (struct sockaddr *)remote_addr; recv_info.from_len = remote_addrlen; - nread = quiche_conn_recv(ctx->qconn, - (unsigned char *)CURL_UNCONST(pkt), pktlen, - &recv_info); - if(nread < 0) { - if(QUICHE_ERR_DONE == nread) { - if(quiche_conn_is_draining(ctx->qconn)) { - CURL_TRC_CF(r->data, r->cf, "ingress, connection is draining"); - return CURLE_RECV_ERROR; + for(offset = 0; offset < buflen; offset += gso_size) { + pktlen = ((offset + gso_size) <= buflen) ? gso_size : (buflen - offset); + nread = quiche_conn_recv(ctx->qconn, + (unsigned char *)CURL_UNCONST(buf + offset), + pktlen, &recv_info); + if(nread < 0) { + if(QUICHE_ERR_DONE == nread) { + if(quiche_conn_is_draining(ctx->qconn)) { + CURL_TRC_CF(r->data, r->cf, "ingress, connection is draining"); + return CURLE_RECV_ERROR; + } + if(quiche_conn_is_closed(ctx->qconn)) { + CURL_TRC_CF(r->data, r->cf, "ingress, connection is closed"); + return CURLE_RECV_ERROR; + } + CURL_TRC_CF(r->data, r->cf, "ingress, quiche is DONE"); + return CURLE_OK; } - if(quiche_conn_is_closed(ctx->qconn)) { - CURL_TRC_CF(r->data, r->cf, "ingress, connection is closed"); + else if(QUICHE_ERR_TLS_FAIL == nread) { + long verify_ok = SSL_get_verify_result(ctx->tls.ossl.ssl); + if(verify_ok != X509_V_OK) { + failf(r->data, "SSL certificate problem: %s", + X509_verify_cert_error_string(verify_ok)); + return CURLE_PEER_FAILED_VERIFICATION; + } + failf(r->data, "ingress, quiche reports TLS fail"); return CURLE_RECV_ERROR; } - CURL_TRC_CF(r->data, r->cf, "ingress, quiche is DONE"); - return CURLE_OK; - } - else if(QUICHE_ERR_TLS_FAIL == nread) { - long verify_ok = SSL_get_verify_result(ctx->tls.ossl.ssl); - if(verify_ok != X509_V_OK) { - failf(r->data, "SSL certificate problem: %s", - X509_verify_cert_error_string(verify_ok)); - return CURLE_PEER_FAILED_VERIFICATION; + else { + failf(r->data, "quiche reports error %zd on receive", nread); + return CURLE_RECV_ERROR; } - failf(r->data, "ingress, quiche reports TLS fail"); - return CURLE_RECV_ERROR; } - else { - failf(r->data, "quiche reports error %zd on receive", nread); - return CURLE_RECV_ERROR; + else if((size_t)nread < pktlen) { + CURL_TRC_CF(r->data, r->cf, "ingress, quiche only read %zd/%zu bytes", + nread, pktlen); } - } - else if((size_t)nread < pktlen) { - CURL_TRC_CF(r->data, r->cf, "ingress, quiche only read %zd/%zu bytes", - nread, pktlen); + ++r->pkts; } return CURLE_OK; @@ -698,7 +702,8 @@ static CURLcode cf_process_ingress(struct Curl_cfilter *cf, rctx.data = data; rctx.pkts = 0; - result = vquic_recv_packets(cf, data, &ctx->q, 1000, recv_pkt, &rctx); + result = vquic_recv_packets(cf, data, &ctx->q, 1000, + cf_quiche_recv_pkts, &rctx); if(result) return result; @@ -864,7 +869,6 @@ static CURLcode cf_quiche_recv(struct Curl_cfilter *cf, struct Curl_easy *data, if(!stream) return CURLE_RECV_ERROR; - if(!Curl_bufq_is_empty(&stream->recvbuf)) { result = Curl_bufq_cread(&stream->recvbuf, buf, len, pnread); CURL_TRC_CF(data, cf, "[%" FMT_PRIu64 "] read recvbuf(len=%zu) " diff --git a/lib/vquic/vquic-tls.c b/lib/vquic/vquic-tls.c index fa89c0b80967..f4ef06c33b72 100644 --- a/lib/vquic/vquic-tls.c +++ b/lib/vquic/vquic-tls.c @@ -178,12 +178,17 @@ CURLcode Curl_vquic_tls_verify_peer(struct curl_tls_ctx *ctx, #elif defined(USE_WOLFSSL) (void)data; if(conn_config->verifyhost) { - char *snihost = peer->sni ? peer->sni : peer->hostname; WOLFSSL_X509* cert = wolfSSL_get_peer_certificate(ctx->wssl.ssl); - if(wolfSSL_X509_check_host(cert, snihost, strlen(snihost), 0, NULL) - == WOLFSSL_FAILURE) { + if(!cert) + result = CURLE_OUT_OF_MEMORY; + else if(peer->sni && + (wolfSSL_X509_check_host(cert, peer->sni, strlen(peer->sni), 0, NULL) + == WOLFSSL_FAILURE)) + result = CURLE_PEER_FAILED_VERIFICATION; + else if(!peer->sni && + (wolfSSL_X509_check_ip_asc(cert, peer->hostname, 0) + == WOLFSSL_FAILURE)) result = CURLE_PEER_FAILED_VERIFICATION; - } wolfSSL_X509_free(cert); } if(!result) diff --git a/lib/vquic/vquic.c b/lib/vquic/vquic.c index 30917b835af0..33f7fe092ba0 100644 --- a/lib/vquic/vquic.c +++ b/lib/vquic/vquic.c @@ -155,7 +155,6 @@ static CURLcode do_sendmsg(struct Curl_cfilter *cf, } #endif - while((sent = sendmsg(qctx->sockfd, &msg, 0)) == -1 && SOCKERRNO == SOCKEINTR) ; @@ -378,9 +377,16 @@ static CURLcode recvmmsg_packets(struct Curl_cfilter *cf, struct Curl_easy *data, struct cf_quic_ctx *qctx, size_t max_pkts, - vquic_recv_pkt_cb *recv_cb, void *userp) + vquic_recv_pkts_cb *recv_cb, void *userp) { +#if defined(__linux__) && defined(UDP_GRO) #define MMSG_NUM 16 +#define UDP_GRO_CNT_MAX 64 +#else +#define MMSG_NUM 64 +#define UDP_GRO_CNT_MAX 1 +#endif +#define MSG_BUF_SIZE (UDP_GRO_CNT_MAX * 1500) struct iovec msg_iov[MMSG_NUM]; struct mmsghdr mmsg[MMSG_NUM]; uint8_t msg_ctrl[MMSG_NUM * CMSG_SPACE(sizeof(int))]; @@ -390,17 +396,15 @@ static CURLcode recvmmsg_packets(struct Curl_cfilter *cf, char errstr[STRERROR_LEN]; CURLcode result = CURLE_OK; size_t gso_size; - size_t pktlen; - size_t offset, to; char *sockbuf = NULL; - uint8_t (*bufs)[64*1024] = NULL; + uint8_t (*bufs)[MSG_BUF_SIZE] = NULL; DEBUGASSERT(max_pkts > 0); - result = Curl_multi_xfer_sockbuf_borrow(data, MMSG_NUM * sizeof(bufs[0]), + result = Curl_multi_xfer_sockbuf_borrow(data, MMSG_NUM * MSG_BUF_SIZE, &sockbuf); if(result) goto out; - bufs = (uint8_t (*)[64*1024])sockbuf; + bufs = (uint8_t (*)[MSG_BUF_SIZE])sockbuf; total_nread = 0; while(pkts < max_pkts) { @@ -449,22 +453,12 @@ static CURLcode recvmmsg_packets(struct Curl_cfilter *cf, gso_size = mmsg[i].msg_len; } - for(offset = 0; offset < mmsg[i].msg_len; offset = to) { - ++pkts; - - to = offset + gso_size; - if(to > mmsg[i].msg_len) { - pktlen = mmsg[i].msg_len - offset; - } - else { - pktlen = gso_size; - } - - result = recv_cb(bufs[i] + offset, pktlen, mmsg[i].msg_hdr.msg_name, - mmsg[i].msg_hdr.msg_namelen, 0, userp); - if(result) - goto out; - } + result = recv_cb(bufs[i], mmsg[i].msg_len, gso_size, + mmsg[i].msg_hdr.msg_name, + mmsg[i].msg_hdr.msg_namelen, 0, userp); + if(result) + goto out; + pkts += (mmsg[i].msg_len + gso_size - 1) / gso_size; } } @@ -481,7 +475,7 @@ static CURLcode recvmsg_packets(struct Curl_cfilter *cf, struct Curl_easy *data, struct cf_quic_ctx *qctx, size_t max_pkts, - vquic_recv_pkt_cb *recv_cb, void *userp) + vquic_recv_pkts_cb *recv_cb, void *userp) { struct iovec msg_iov; struct msghdr msg; @@ -494,8 +488,6 @@ static CURLcode recvmsg_packets(struct Curl_cfilter *cf, CURLcode result = CURLE_OK; uint8_t msg_ctrl[CMSG_SPACE(sizeof(int))]; size_t gso_size; - size_t pktlen; - size_t offset, to; DEBUGASSERT(max_pkts > 0); for(pkts = 0, total_nread = 0, calls = 0; pkts < max_pkts;) { @@ -542,20 +534,11 @@ static CURLcode recvmsg_packets(struct Curl_cfilter *cf, gso_size = nread; } - for(offset = 0; offset < nread; offset = to) { - ++pkts; - - to = offset + gso_size; - if(to > nread) - pktlen = nread - offset; - else - pktlen = gso_size; - - result = - recv_cb(buf + offset, pktlen, msg.msg_name, msg.msg_namelen, 0, userp); - if(result) - goto out; - } + result = recv_cb(buf, nread, gso_size, + msg.msg_name, msg.msg_namelen, 0, userp); + if(result) + goto out; + pkts += (nread + gso_size - 1) / gso_size; } out: @@ -570,7 +553,7 @@ static CURLcode recvfrom_packets(struct Curl_cfilter *cf, struct Curl_easy *data, struct cf_quic_ctx *qctx, size_t max_pkts, - vquic_recv_pkt_cb *recv_cb, void *userp) + vquic_recv_pkts_cb *recv_cb, void *userp) { uint8_t buf[64*1024]; int bufsize = (int)sizeof(buf); @@ -611,8 +594,8 @@ static CURLcode recvfrom_packets(struct Curl_cfilter *cf, ++pkts; ++calls; total_nread += (size_t)nread; - result = recv_cb(buf, (size_t)nread, &remote_addr, remote_addrlen, - 0, userp); + result = recv_cb(buf, (size_t)nread, (size_t)nread, + &remote_addr, remote_addrlen, 0, userp); if(result) goto out; } @@ -629,7 +612,7 @@ CURLcode vquic_recv_packets(struct Curl_cfilter *cf, struct Curl_easy *data, struct cf_quic_ctx *qctx, size_t max_pkts, - vquic_recv_pkt_cb *recv_cb, void *userp) + vquic_recv_pkts_cb *recv_cb, void *userp) { CURLcode result; #ifdef HAVE_SENDMMSG diff --git a/lib/vquic/vquic_int.h b/lib/vquic/vquic_int.h index 38189beb7038..4e5959a4f803 100644 --- a/lib/vquic/vquic_int.h +++ b/lib/vquic/vquic_int.h @@ -78,16 +78,17 @@ CURLcode vquic_flush(struct Curl_cfilter *cf, struct Curl_easy *data, struct cf_quic_ctx *qctx); -typedef CURLcode vquic_recv_pkt_cb(const unsigned char *pkt, size_t pktlen, - struct sockaddr_storage *remote_addr, - socklen_t remote_addrlen, int ecn, - void *userp); +typedef CURLcode vquic_recv_pkts_cb(const unsigned char *buf, size_t buflen, + size_t gso_size, + struct sockaddr_storage *remote_addr, + socklen_t remote_addrlen, int ecn, + void *userp); CURLcode vquic_recv_packets(struct Curl_cfilter *cf, struct Curl_easy *data, struct cf_quic_ctx *qctx, size_t max_pkts, - vquic_recv_pkt_cb *recv_cb, void *userp); + vquic_recv_pkts_cb *recv_cb, void *userp); #endif /* !USE_HTTP3 */ diff --git a/lib/vssh/curl_path.c b/lib/vssh/curl_path.c index 7a0e5bffef20..a6d572520fac 100644 --- a/lib/vssh/curl_path.c +++ b/lib/vssh/curl_path.c @@ -28,6 +28,7 @@ #include "curl_path.h" #include +#include "../curlx/strparse.h" #include "../curl_memory.h" #include "../escape.h" #include "../memdebug.h" @@ -105,32 +106,11 @@ CURLcode Curl_getworkingpath(struct Curl_easy *data, return CURLE_OK; } -/* The original get_pathname() function came from OpenSSH sftp.c version - 4.6p1. */ -/* - * Copyright (c) 2001-2004 Damien Miller - * - * Permission to use, copy, modify, and distribute this software for any - * purpose with or without fee is hereby granted, provided that the above - * copyright notice and this permission notice appear in all copies. - * - * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES - * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR - * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES - * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN - * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF - * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. - */ - #define MAX_PATHLENGTH 65535 /* arbitrary long */ CURLcode Curl_get_pathname(const char **cpp, char **path, const char *homedir) { - const char *cp = *cpp, *end; - char quot; - unsigned int i; - static const char WHITESPACE[] = " \t\r\n"; + const char *cp = *cpp; struct dynbuf out; CURLcode result; @@ -143,48 +123,37 @@ CURLcode Curl_get_pathname(const char **cpp, char **path, const char *homedir) curlx_dyn_init(&out, MAX_PATHLENGTH); /* Ignore leading whitespace */ - cp += strspn(cp, WHITESPACE); + curlx_str_passblanks(&cp); /* Check for quoted filenames */ if(*cp == '\"' || *cp == '\'') { - quot = *cp++; + char quot = *cp++; /* Search for terminating quote, unescape some chars */ - for(i = 0; i <= strlen(cp); i++) { - if(cp[i] == quot) { /* Found quote */ - i++; - break; - } - if(cp[i] == '\0') { /* End of string */ + while(*cp != quot) { + if(!*cp) /* End of string */ goto fail; - } - if(cp[i] == '\\') { /* Escaped characters */ - i++; - if(cp[i] != '\'' && cp[i] != '\"' && - cp[i] != '\\') { + + if(*cp == '\\') { /* Escaped characters */ + cp++; + if(*cp != '\'' && *cp != '\"' && *cp != '\\') goto fail; - } } - result = curlx_dyn_addn(&out, &cp[i], 1); + result = curlx_dyn_addn(&out, cp, 1); if(result) return result; + cp++; } + cp++; /* pass the end quote */ if(!curlx_dyn_len(&out)) goto fail; - /* return pointer to second parameter if it exists */ - *cpp = &cp[i] + strspn(&cp[i], WHITESPACE); } else { - /* Read to end of filename - either to whitespace or terminator */ - end = strpbrk(cp, WHITESPACE); - if(!end) - end = strchr(cp, '\0'); - - /* return pointer to second parameter if it exists */ - *cpp = end + strspn(end, WHITESPACE); - + struct Curl_str word; + bool content = FALSE; + int rc; /* Handling for relative path - prepend home directory */ if(cp[0] == '/' && cp[1] == '~' && cp[2] == '/') { result = curlx_dyn_add(&out, homedir); @@ -193,12 +162,32 @@ CURLcode Curl_get_pathname(const char **cpp, char **path, const char *homedir) if(result) return result; cp += 3; + content = TRUE; + } + /* Read to end of filename - either to whitespace or terminator */ + rc = curlx_str_word(&cp, &word, MAX_PATHLENGTH); + if(rc) { + if(rc == STRE_BIG) { + curlx_dyn_free(&out); + return CURLE_TOO_LARGE; + } + else if(!content) + /* no path, no word, this is incorrect */ + goto fail; + } + else { + /* append the word */ + result = curlx_dyn_addn(&out, curlx_str(&word), curlx_strlen(&word)); + if(result) + return result; } - /* Copy path name up until first "whitespace" */ - result = curlx_dyn_addn(&out, cp, (end - cp)); - if(result) - return result; } + /* skip whitespace */ + curlx_str_passblanks(&cp); + + /* return pointer to second parameter if it exists */ + *cpp = cp; + *path = curlx_dyn_ptr(&out); return CURLE_OK; diff --git a/lib/vssh/libssh.c b/lib/vssh/libssh.c index 3741db20dc63..f5de9f3e84fb 100644 --- a/lib/vssh/libssh.c +++ b/lib/vssh/libssh.c @@ -51,13 +51,10 @@ #include "../hostip.h" #include "../progress.h" #include "../transfer.h" -#include "../escape.h" #include "../http.h" /* for HTTP proxy tunnel stuff */ #include "ssh.h" #include "../url.h" #include "../speedcheck.h" -#include "../getinfo.h" -#include "../strdup.h" #include "../vtls/vtls.h" #include "../cfilters.h" #include "../connect.h" @@ -300,7 +297,6 @@ static void myssh_set_state(struct Curl_easy *data, "QUIT" }; - if(sshc->state != nowstate) { infof(data, "SSH %p state change from %s to %s (line %d)", (void *) sshc, names[sshc->state], names[nowstate], @@ -613,6 +609,7 @@ static int myssh_in_SFTP_READDIR(struct Curl_easy *data, if(result) { myssh_to(data, sshc, SSH_STOP); + sshc->actualcode = result; return SSH_NO_ERROR; } @@ -1981,13 +1978,15 @@ static CURLcode myssh_statemach_act(struct Curl_easy *data, rc = myssh_in_SFTP_REALPATH(data, sshc); break; case SSH_SFTP_QUOTE_INIT: - rc = myssh_in_SFTP_QUOTE_INIT(data, sshc, sshp); + rc = sshp ? myssh_in_SFTP_QUOTE_INIT(data, sshc, sshp) : + CURLE_FAILED_INIT; break; case SSH_SFTP_POSTQUOTE_INIT: rc = myssh_in_SFTP_POSTQUOTE_INIT(data, sshc); break; case SSH_SFTP_QUOTE: - rc = myssh_in_SFTP_QUOTE(data, sshc, sshp); + rc = sshp ? myssh_in_SFTP_QUOTE(data, sshc, sshp) : + CURLE_FAILED_INIT; break; case SSH_SFTP_NEXT_QUOTE: rc = myssh_in_SFTP_NEXT_QUOTE(data, sshc); @@ -2117,7 +2116,10 @@ static CURLcode myssh_statemach_act(struct Curl_easy *data, case SSH_SFTP_FILETIME: { sftp_attributes attrs; - + if(!sshp) { + result = CURLE_FAILED_INIT; + break; + } attrs = sftp_stat(sshc->sftp_session, sshp->path); if(attrs) { data->info.filetime = attrs->mtime; @@ -2131,20 +2133,27 @@ static CURLcode myssh_statemach_act(struct Curl_easy *data, case SSH_SFTP_TRANS_INIT: if(data->state.upload) myssh_to(data, sshc, SSH_SFTP_UPLOAD_INIT); - else { + else if(sshp) { if(sshp->path[strlen(sshp->path)-1] == '/') myssh_to(data, sshc, SSH_SFTP_READDIR_INIT); else myssh_to(data, sshc, SSH_SFTP_DOWNLOAD_INIT); } + else + result = CURLE_FAILED_INIT; break; case SSH_SFTP_UPLOAD_INIT: - rc = myssh_in_UPLOAD_INIT(data, sshc, sshp); + rc = sshp ? myssh_in_UPLOAD_INIT(data, sshc, sshp) : + CURLE_FAILED_INIT; break; case SSH_SFTP_CREATE_DIRS_INIT: - if(strlen(sshp->path) > 1) { + if(!sshp) { + result = CURLE_FAILED_INIT; + break; + } + else if(strlen(sshp->path) > 1) { sshc->slash_pos = sshp->path + 1; /* ignore the leading '/' */ myssh_to(data, sshc, SSH_SFTP_CREATE_DIRS); } @@ -2155,7 +2164,11 @@ static CURLcode myssh_statemach_act(struct Curl_easy *data, case SSH_SFTP_CREATE_DIRS: sshc->slash_pos = strchr(sshc->slash_pos, '/'); - if(sshc->slash_pos) { + if(!sshp) { + result = CURLE_FAILED_INIT; + break; + } + else if(sshc->slash_pos) { *sshc->slash_pos = 0; infof(data, "Creating directory '%s'", sshp->path); @@ -2167,6 +2180,10 @@ static CURLcode myssh_statemach_act(struct Curl_easy *data, case SSH_SFTP_CREATE_DIRS_MKDIR: /* 'mode' - parameter is preliminary - default to 0644 */ + if(!sshp) { + result = CURLE_FAILED_INIT; + break; + } rc = sftp_mkdir(sshc->sftp_session, sshp->path, (mode_t)data->set.new_directory_perms); *sshc->slash_pos = '/'; @@ -2190,10 +2207,12 @@ static CURLcode myssh_statemach_act(struct Curl_easy *data, break; case SSH_SFTP_READDIR_INIT: - rc = myssh_in_SFTP_READDIR_INIT(data, sshc, sshp); + rc = sshp ? myssh_in_SFTP_READDIR_INIT(data, sshc, sshp) : + CURLE_FAILED_INIT; break; case SSH_SFTP_READDIR: - rc = myssh_in_SFTP_READDIR(data, sshc, sshp); + rc = sshp ? myssh_in_SFTP_READDIR(data, sshc, sshp) : + CURLE_FAILED_INIT; break; case SSH_SFTP_READDIR_LINK: rc = myssh_in_SFTP_READDIR_LINK(data, sshc); @@ -2205,19 +2224,25 @@ static CURLcode myssh_statemach_act(struct Curl_easy *data, rc = myssh_in_SFTP_READDIR_DONE(data, sshc); break; case SSH_SFTP_DOWNLOAD_INIT: - rc = myssh_in_SFTP_DOWNLOAD_INIT(data, sshc, sshp); + rc = sshp ? myssh_in_SFTP_DOWNLOAD_INIT(data, sshc, sshp) : + CURLE_FAILED_INIT; break; case SSH_SFTP_DOWNLOAD_STAT: rc = myssh_in_SFTP_DOWNLOAD_STAT(data, sshc); break; case SSH_SFTP_CLOSE: - rc = myssh_in_SFTP_CLOSE(data, sshc, sshp); + rc = sshp ? myssh_in_SFTP_CLOSE(data, sshc, sshp) : + CURLE_FAILED_INIT; break; case SSH_SFTP_SHUTDOWN: rc = myssh_in_SFTP_SHUTDOWN(data, sshc); break; case SSH_SCP_TRANS_INIT: + if(!sshp) { + result = CURLE_FAILED_INIT; + break; + } result = Curl_getworkingpath(data, sshc->homedir, &sshp->path); if(result) { sshc->actualcode = result; @@ -2254,7 +2279,10 @@ static CURLcode myssh_statemach_act(struct Curl_easy *data, break; case SSH_SCP_UPLOAD_INIT: - + if(!sshp) { + result = CURLE_FAILED_INIT; + break; + } rc = ssh_scp_init(sshc->scp_session); if(rc != SSH_OK) { err_msg = ssh_get_error(sshc->ssh_session); @@ -2410,7 +2438,6 @@ static CURLcode myssh_statemach_act(struct Curl_easy *data, } } while(!rc && (sshc->state != SSH_STOP)); - if(rc == SSH_AGAIN) { /* we would block, we need to wait for the socket to be ready (in the right direction too)! */ @@ -2834,11 +2861,9 @@ static CURLcode scp_disconnect(struct Curl_easy *data, struct SSHPROTO *sshp = Curl_meta_get(data, CURL_META_SSH_EASY); (void)dead_connection; - if(sshc && sshc->ssh_session && sshp) { + if(sshc && sshc->ssh_session) { /* only if there is a session still around to use! */ - myssh_to(data, sshc, SSH_SESSION_DISCONNECT); - result = myssh_block_statemach(data, sshc, sshp, TRUE); } @@ -3014,7 +3039,7 @@ static CURLcode sftp_disconnect(struct Curl_easy *data, DEBUGF(infof(data, "SSH DISCONNECT starts now")); - if(sshc && sshc->ssh_session && sshp) { + if(sshc && sshc->ssh_session) { /* only if there is a session still around to use! */ myssh_to(data, sshc, SSH_SFTP_SHUTDOWN); result = myssh_block_statemach(data, sshc, sshp, TRUE); diff --git a/lib/vssh/libssh2.c b/lib/vssh/libssh2.c index f9160944befe..ee82396753c9 100644 --- a/lib/vssh/libssh2.c +++ b/lib/vssh/libssh2.c @@ -50,13 +50,10 @@ #include "../hostip.h" #include "../progress.h" #include "../transfer.h" -#include "../escape.h" #include "../http.h" /* for HTTP proxy tunnel stuff */ #include "ssh.h" #include "../url.h" #include "../speedcheck.h" -#include "../getinfo.h" -#include "../strdup.h" #include "../vtls/vtls.h" #include "../cfilters.h" #include "../connect.h" @@ -69,7 +66,6 @@ #include "curl_path.h" #include "../curlx/strparse.h" #include "../curlx/base64.h" /* for base64 encoding/decoding */ -#include "../curl_sha256.h" /* The last 2 #include files should be in this order */ #include "../curl_memory.h" @@ -830,7 +826,7 @@ static CURLcode ssh_force_knownhost_key_type(struct Curl_easy *data, char *errmsg = NULL; int errlen; libssh2_session_last_error(sshc->ssh_session, &errmsg, &errlen, 0); - failf(data, "libssh2: %s", errmsg); + failf(data, "libssh2 method '%s' failed: %s", hostkey_method, errmsg); result = libssh2_session_error_to_CURLE(rc); } } @@ -2725,11 +2721,13 @@ static CURLcode ssh_statemachine(struct Curl_easy *data, break; case SSH_SFTP_REALPATH: - result = ssh_state_sftp_realpath(data, sshc, sshp); + result = sshp ? ssh_state_sftp_realpath(data, sshc, sshp) : + CURLE_FAILED_INIT; break; case SSH_SFTP_QUOTE_INIT: - result = ssh_state_sftp_quote_init(data, sshc, sshp); + result = sshp ? ssh_state_sftp_quote_init(data, sshc, sshp) : + CURLE_FAILED_INIT; break; case SSH_SFTP_POSTQUOTE_INIT: @@ -2737,7 +2735,8 @@ static CURLcode ssh_statemachine(struct Curl_easy *data, break; case SSH_SFTP_QUOTE: - result = ssh_state_sftp_quote(data, sshc, sshp); + result = sshp ? ssh_state_sftp_quote(data, sshc, sshp) : + CURLE_FAILED_INIT; break; case SSH_SFTP_NEXT_QUOTE: @@ -2745,11 +2744,13 @@ static CURLcode ssh_statemachine(struct Curl_easy *data, break; case SSH_SFTP_QUOTE_STAT: - result = ssh_state_sftp_quote_stat(data, sshc, sshp, block); + result = sshp ? ssh_state_sftp_quote_stat(data, sshc, sshp, block) : + CURLE_FAILED_INIT; break; case SSH_SFTP_QUOTE_SETSTAT: - result = ssh_state_sftp_quote_setstat(data, sshc, sshp); + result = sshp ? ssh_state_sftp_quote_setstat(data, sshc, sshp) : + CURLE_FAILED_INIT; break; case SSH_SFTP_QUOTE_SYMLINK: @@ -2788,10 +2789,15 @@ static CURLcode ssh_statemachine(struct Curl_easy *data, case SSH_SFTP_FILETIME: { LIBSSH2_SFTP_ATTRIBUTES attrs; + int rc; - int rc = libssh2_sftp_stat_ex(sshc->sftp_session, sshp->path, - curlx_uztoui(strlen(sshp->path)), - LIBSSH2_SFTP_STAT, &attrs); + if(!sshp) { + result = CURLE_FAILED_INIT; + break; + } + rc = libssh2_sftp_stat_ex(sshc->sftp_session, sshp->path, + curlx_uztoui(strlen(sshp->path)), + LIBSSH2_SFTP_STAT, &attrs); if(rc == LIBSSH2_ERROR_EAGAIN) { result = CURLE_AGAIN; break; @@ -2807,16 +2813,19 @@ static CURLcode ssh_statemachine(struct Curl_easy *data, case SSH_SFTP_TRANS_INIT: if(data->state.upload) myssh_state(data, sshc, SSH_SFTP_UPLOAD_INIT); - else { + else if(sshp) { if(sshp->path[strlen(sshp->path)-1] == '/') myssh_state(data, sshc, SSH_SFTP_READDIR_INIT); else myssh_state(data, sshc, SSH_SFTP_DOWNLOAD_INIT); } + else + result = CURLE_FAILED_INIT; break; case SSH_SFTP_UPLOAD_INIT: - result = sftp_upload_init(data, sshc, sshp, block); + result = sshp ? sftp_upload_init(data, sshc, sshp, block) : + CURLE_FAILED_INIT; if(result) { myssh_state(data, sshc, SSH_SFTP_CLOSE); sshc->nextstate = SSH_NO_STATE; @@ -2824,7 +2833,9 @@ static CURLcode ssh_statemachine(struct Curl_easy *data, break; case SSH_SFTP_CREATE_DIRS_INIT: - if(strlen(sshp->path) > 1) { + if(!sshp) + result = CURLE_FAILED_INIT; + else if(strlen(sshp->path) > 1) { sshc->slash_pos = sshp->path + 1; /* ignore the leading '/' */ myssh_state(data, sshc, SSH_SFTP_CREATE_DIRS); } @@ -2834,6 +2845,10 @@ static CURLcode ssh_statemachine(struct Curl_easy *data, break; case SSH_SFTP_CREATE_DIRS: + if(!sshp) { + result = CURLE_FAILED_INIT; + break; + } sshc->slash_pos = strchr(sshc->slash_pos, '/'); if(sshc->slash_pos) { *sshc->slash_pos = 0; @@ -2846,25 +2861,33 @@ static CURLcode ssh_statemachine(struct Curl_easy *data, break; case SSH_SFTP_CREATE_DIRS_MKDIR: - result = ssh_state_sftp_create_dirs_mkdir(data, sshc, sshp); + result = sshp ? ssh_state_sftp_create_dirs_mkdir(data, sshc, sshp) : + CURLE_FAILED_INIT; break; case SSH_SFTP_READDIR_INIT: - result = ssh_state_sftp_readdir_init(data, sshc, sshp); + result = sshp ? ssh_state_sftp_readdir_init(data, sshc, sshp) : + CURLE_FAILED_INIT; break; case SSH_SFTP_READDIR: - result = sftp_readdir(data, sshc, sshp, block); + result = sshp ? sftp_readdir(data, sshc, sshp, block) : + CURLE_FAILED_INIT; if(result) { myssh_state(data, sshc, SSH_SFTP_CLOSE); } break; case SSH_SFTP_READDIR_LINK: - result = ssh_state_sftp_readdir_link(data, sshc, sshp); + result = sshp ? ssh_state_sftp_readdir_link(data, sshc, sshp) : + CURLE_FAILED_INIT; break; case SSH_SFTP_READDIR_BOTTOM: + if(!sshp) { + result = CURLE_FAILED_INIT; + break; + } result = curlx_dyn_addn(&sshp->readdir, "\n", 1); if(!result) result = Curl_client_write(data, CLIENTWRITE_BODY, @@ -2894,11 +2917,13 @@ static CURLcode ssh_statemachine(struct Curl_easy *data, break; case SSH_SFTP_DOWNLOAD_INIT: - result = ssh_state_sftp_download_init(data, sshc, sshp); + result = sshp ? ssh_state_sftp_download_init(data, sshc, sshp) : + CURLE_FAILED_INIT; break; case SSH_SFTP_DOWNLOAD_STAT: - result = sftp_download_stat(data, sshc, sshp, block); + result = sshp ? sftp_download_stat(data, sshc, sshp, block) : + CURLE_FAILED_INIT; if(result) { myssh_state(data, sshc, SSH_SFTP_CLOSE); sshc->nextstate = SSH_NO_STATE; @@ -2906,7 +2931,8 @@ static CURLcode ssh_statemachine(struct Curl_easy *data, break; case SSH_SFTP_CLOSE: - result = ssh_state_sftp_close(data, sshc, sshp); + result = sshp ? ssh_state_sftp_close(data, sshc, sshp) : + CURLE_FAILED_INIT; break; case SSH_SFTP_SHUTDOWN: @@ -2914,7 +2940,8 @@ static CURLcode ssh_statemachine(struct Curl_easy *data, break; case SSH_SCP_TRANS_INIT: - result = Curl_getworkingpath(data, sshc->homedir, &sshp->path); + result = sshp ? Curl_getworkingpath(data, sshc->homedir, &sshp->path) : + CURLE_FAILED_INIT; if(result) { myssh_state(data, sshc, SSH_STOP); break; @@ -2935,11 +2962,13 @@ static CURLcode ssh_statemachine(struct Curl_easy *data, break; case SSH_SCP_UPLOAD_INIT: - result = ssh_state_scp_upload_init(data, sshc, sshp); + result = sshp ? ssh_state_scp_upload_init(data, sshc, sshp) : + CURLE_FAILED_INIT; break; case SSH_SCP_DOWNLOAD_INIT: - result = ssh_state_scp_download_init(data, sshc, sshp); + result = sshp ? ssh_state_scp_download_init(data, sshc, sshp) : + CURLE_FAILED_INIT; break; case SSH_SCP_DONE: @@ -3544,9 +3573,9 @@ static CURLcode ssh_do(struct Curl_easy *data, bool *done) Curl_pgrsSetDownloadSize(data, -1); if(conn->handler->protocol & CURLPROTO_SCP) - result = scp_perform(data, &connected, done); + result = scp_perform(data, &connected, done); else - result = sftp_perform(data, &connected, done); + result = sftp_perform(data, &connected, done); return result; } @@ -3563,9 +3592,6 @@ static CURLcode sshc_cleanup(struct ssh_conn *sshc, struct Curl_easy *data, if(sshc->ssh_agent) { rc = libssh2_agent_disconnect(sshc->ssh_agent); - if(!block && (rc == LIBSSH2_ERROR_EAGAIN)) - return CURLE_AGAIN; - if((rc < 0) && data) { char *err_msg = NULL; (void)libssh2_session_last_error(sshc->ssh_session, @@ -3573,6 +3599,9 @@ static CURLcode sshc_cleanup(struct ssh_conn *sshc, struct Curl_easy *data, infof(data, "Failed to disconnect from libssh2 agent: %d %s", rc, err_msg); } + if(!block && (rc == LIBSSH2_ERROR_EAGAIN)) + return CURLE_AGAIN; + libssh2_agent_free(sshc->ssh_agent); sshc->ssh_agent = NULL; @@ -3584,23 +3613,20 @@ static CURLcode sshc_cleanup(struct ssh_conn *sshc, struct Curl_easy *data, if(sshc->sftp_handle) { rc = libssh2_sftp_close(sshc->sftp_handle); - if(!block && (rc == LIBSSH2_ERROR_EAGAIN)) - return CURLE_AGAIN; - if((rc < 0) && data) { char *err_msg = NULL; (void)libssh2_session_last_error(sshc->ssh_session, &err_msg, NULL, 0); infof(data, "Failed to close libssh2 file: %d %s", rc, err_msg); } + if(!block && (rc == LIBSSH2_ERROR_EAGAIN)) + return CURLE_AGAIN; + sshc->sftp_handle = NULL; } if(sshc->ssh_channel) { rc = libssh2_channel_free(sshc->ssh_channel); - if(!block && (rc == LIBSSH2_ERROR_EAGAIN)) - return CURLE_AGAIN; - if((rc < 0) && data) { char *err_msg = NULL; (void)libssh2_session_last_error(sshc->ssh_session, @@ -3608,30 +3634,37 @@ static CURLcode sshc_cleanup(struct ssh_conn *sshc, struct Curl_easy *data, infof(data, "Failed to free libssh2 scp subsystem: %d %s", rc, err_msg); } + if(!block && (rc == LIBSSH2_ERROR_EAGAIN)) + return CURLE_AGAIN; + sshc->ssh_channel = NULL; } if(sshc->sftp_session) { rc = libssh2_sftp_shutdown(sshc->sftp_session); + if((rc < 0) && data) { + char *err_msg = NULL; + (void)libssh2_session_last_error(sshc->ssh_session, + &err_msg, NULL, 0); + infof(data, "Failed to stop libssh2 sftp subsystem: %d %s", rc, err_msg); + } if(!block && (rc == LIBSSH2_ERROR_EAGAIN)) return CURLE_AGAIN; - if((rc < 0) && data) - infof(data, "Failed to stop libssh2 sftp subsystem"); sshc->sftp_session = NULL; } if(sshc->ssh_session) { rc = libssh2_session_free(sshc->ssh_session); - if(!block && (rc == LIBSSH2_ERROR_EAGAIN)) - return CURLE_AGAIN; - if((rc < 0) && data) { char *err_msg = NULL; (void)libssh2_session_last_error(sshc->ssh_session, &err_msg, NULL, 0); infof(data, "Failed to free libssh2 session: %d %s", rc, err_msg); } + if(!block && (rc == LIBSSH2_ERROR_EAGAIN)) + return CURLE_AGAIN; + sshc->ssh_session = NULL; } @@ -3665,7 +3698,7 @@ static CURLcode scp_disconnect(struct Curl_easy *data, struct SSHPROTO *sshp = Curl_meta_get(data, CURL_META_SSH_EASY); (void)dead_connection; - if(sshc && sshc->ssh_session && sshp) { + if(sshc && sshc->ssh_session) { /* only if there is a session still around to use! */ myssh_state(data, sshc, SSH_SESSION_DISCONNECT); result = ssh_block_statemach(data, sshc, sshp, TRUE); @@ -3837,18 +3870,16 @@ static CURLcode sftp_disconnect(struct Curl_easy *data, struct SSHPROTO *sshp = Curl_meta_get(data, CURL_META_SSH_EASY); (void)dead_connection; - DEBUGF(infof(data, "SSH DISCONNECT starts now")); - - if(sshc && sshc->ssh_session && sshp) { - /* only if there is a session still around to use! */ - myssh_state(data, sshc, SSH_SFTP_SHUTDOWN); - result = ssh_block_statemach(data, sshc, sshp, TRUE); - } - - DEBUGF(infof(data, "SSH DISCONNECT is done")); - if(sshc) + if(sshc) { + if(sshc->ssh_session) { + /* only if there is a session still around to use! */ + DEBUGF(infof(data, "SSH DISCONNECT starts now")); + myssh_state(data, sshc, SSH_SFTP_SHUTDOWN); + result = ssh_block_statemach(data, sshc, sshp, TRUE); + DEBUGF(infof(data, "SSH DISCONNECT is done -> %d", result)); + } sshc_cleanup(sshc, data, TRUE); - + } return result; } diff --git a/lib/vtls/gtls.c b/lib/vtls/gtls.c index 1c0a6fb2d610..f3d6abb23cac 100644 --- a/lib/vtls/gtls.c +++ b/lib/vtls/gtls.c @@ -72,7 +72,6 @@ static void tls_log_func(int level, const char *str) curl_mfprintf(stderr, "|<%d>| %s", level, str); } #endif -static bool gtls_inited = FALSE; #if !defined(GNUTLS_VERSION_NUMBER) || (GNUTLS_VERSION_NUMBER < 0x03010a) #error "too old GnuTLS version" @@ -149,33 +148,31 @@ static ssize_t gtls_pull(void *s, void *buf, size_t blen) return (ssize_t)nread; } -/* gtls_init() +/** + * gtls_init() * * Global GnuTLS init, called from Curl_ssl_init(). This calls functions that - * are not thread-safe and thus this function itself is not thread-safe and - * must only be called from within curl_global_init() to keep the thread - * situation under control! + * are not thread-safe (It is thread safe since GnuTLS 3.3.0) and thus this + * function itself is not thread-safe and must only be called from within + * curl_global_init() to keep the thread situation under control! + * + * @retval 0 error initializing SSL + * @retval 1 SSL initialized successfully */ static int gtls_init(void) { int ret = 1; - if(!gtls_inited) { - ret = gnutls_global_init() ? 0 : 1; + ret = gnutls_global_init() ? 0 : 1; #ifdef GTLSDEBUG - gnutls_global_set_log_function(tls_log_func); - gnutls_global_set_log_level(2); + gnutls_global_set_log_function(tls_log_func); + gnutls_global_set_log_level(2); #endif - gtls_inited = TRUE; - } return ret; } static void gtls_cleanup(void) { - if(gtls_inited) { - gnutls_global_deinit(); - gtls_inited = FALSE; - } + gnutls_global_deinit(); } #ifndef CURL_DISABLE_VERBOSE_STRINGS @@ -239,8 +236,8 @@ static void unload_file(gnutls_datum_t data) /* this function does an SSL/TLS (re-)handshake */ -static CURLcode handshake(struct Curl_cfilter *cf, - struct Curl_easy *data) +static CURLcode cf_gtls_handshake(struct Curl_cfilter *cf, + struct Curl_easy *data) { struct ssl_connect_data *connssl = cf->ctx; struct gtls_ssl_backend_data *backend = @@ -636,7 +633,6 @@ CURLcode Curl_gtls_client_trust_setup(struct Curl_cfilter *cf, CURLcode result; int rc; - /* Consider the X509 store cacheable if it comes exclusively from a CAfile, or no source is provided and we are falling back to OpenSSL's built-in default. */ @@ -684,14 +680,13 @@ CURLcode Curl_gtls_cache_session(struct Curl_cfilter *cf, unsigned char *quic_tp, size_t quic_tp_len) { - struct ssl_config_data *ssl_config = Curl_ssl_cf_get_config(cf, data); struct Curl_ssl_session *sc_session; unsigned char *sdata, *qtp_clone = NULL; size_t sdata_len = 0; size_t earlydata_max = 0; CURLcode result = CURLE_OK; - if(!ssl_config->primary.cache_session) + if(!Curl_ssl_scache_use(cf, data)) return CURLE_OK; /* we always unconditionally get the session id here, as even if we @@ -862,20 +857,15 @@ static CURLcode gtls_client_init(struct Curl_cfilter *cf, struct ssl_config_data *ssl_config = Curl_ssl_cf_get_config(cf, data); unsigned int init_flags; int rc; - bool sni = TRUE; /* default is SNI enabled */ const char *prioritylist; bool tls13support; CURLcode result; - if(!gtls_inited) - gtls_init(); - - if(config->version == CURL_SSLVERSION_SSLv2) { - failf(data, "GnuTLS does not support SSLv2"); + if(config->version == CURL_SSLVERSION_SSLv2 || + config->version == CURL_SSLVERSION_SSLv3) { + failf(data, "GnuTLS does not support SSLv2 or SSLv3"); return CURLE_SSL_CONNECT_ERROR; } - else if(config->version == CURL_SSLVERSION_SSLv3) - sni = FALSE; /* SSLv3 has no SNI */ /* allocate a shared creds struct */ result = Curl_gtls_shared_creds_create(data, >ls->shared_creds); @@ -887,7 +877,12 @@ static CURLcode gtls_client_init(struct Curl_cfilter *cf, infof(data, "Using TLS-SRP username: %s", config->username); rc = gnutls_srp_allocate_client_credentials(>ls->srp_client_cred); - if(rc != GNUTLS_E_SUCCESS) { + if(rc == GNUTLS_E_UNIMPLEMENTED_FEATURE) { + failf(data, "GnuTLS: TLS-SRP support not built in: %s", + gnutls_strerror(rc)); + return CURLE_NOT_BUILT_IN; + } + else if(rc != GNUTLS_E_SUCCESS) { failf(data, "gnutls_srp_allocate_client_cred() failed: %s", gnutls_strerror(rc)); return CURLE_OUT_OF_MEMORY; @@ -942,7 +937,7 @@ static CURLcode gtls_client_init(struct Curl_cfilter *cf, return CURLE_SSL_CONNECT_ERROR; } - if(sni && peer->sni) { + if(peer->sni) { if(gnutls_server_name_set(gtls->session, GNUTLS_NAME_DNS, peer->sni, strlen(peer->sni)) < 0) { failf(data, "Failed to set SNI"); @@ -958,16 +953,6 @@ static CURLcode gtls_client_init(struct Curl_cfilter *cf, /* "In GnuTLS 3.6.5, TLS 1.3 is enabled by default" */ tls13support = !!gnutls_check_version("3.6.5"); - /* Ensure +SRP comes at the *end* of all relevant strings so that it can be - * removed if a runtime error indicates that SRP is not supported by this - * GnuTLS version */ - - if(config->version == CURL_SSLVERSION_SSLv2 || - config->version == CURL_SSLVERSION_SSLv3) { - failf(data, "GnuTLS does not support SSLv2 or SSLv3"); - return CURLE_SSL_CONNECT_ERROR; - } - if(config->version == CURL_SSLVERSION_TLSv1_3) { if(!tls13support) { failf(data, "This GnuTLS installation does not support TLS 1.3"); @@ -1161,7 +1146,7 @@ CURLcode Curl_gtls_ctx_init(struct gtls_ctx *gctx, if(sess_reuse_cb) { result = sess_reuse_cb(cf, data, &alpns, scs, &do_early_data); if(result) - goto out; + goto out; } if(do_early_data) { /* We only try the ALPN protocol the session used before, @@ -1292,8 +1277,10 @@ static CURLcode pkp_pin_peer_pubkey(struct Curl_easy *data, do { int ret; - /* Begin Gyrations to get the public key */ - gnutls_pubkey_init(&key); + /* Begin Gyrations to get the public key */ + ret = gnutls_pubkey_init(&key); + if(ret < 0) + break; /* failed */ ret = gnutls_pubkey_import_x509(key, cert, 0); if(ret < 0) @@ -1452,7 +1439,12 @@ static CURLcode gtls_verify_ocsp_status(struct Curl_easy *data, goto out; } - gnutls_ocsp_resp_init(&ocsp_resp); + rc = gnutls_ocsp_resp_init(&ocsp_resp); + if(rc < 0) { + failf(data, "Failed to initialize OCSP response object"); + result = CURLE_SSL_INVALIDCERTSTATUS; + goto out; + } rc = gnutls_ocsp_resp_import(ocsp_resp, &status_request); if(rc < 0) { @@ -1968,7 +1960,8 @@ static CURLcode gtls_send_earlydata(struct Curl_cfilter *cf, */ static CURLcode gtls_connect_common(struct Curl_cfilter *cf, struct Curl_easy *data, - bool *done) { + bool *done) +{ struct ssl_connect_data *connssl = cf->ctx; struct gtls_ssl_backend_data *backend = (struct gtls_ssl_backend_data *)connssl->backend; @@ -2005,7 +1998,7 @@ static CURLcode gtls_connect_common(struct Curl_cfilter *cf, DEBUGASSERT((connssl->earlydata_state == ssl_earlydata_none) || (connssl->earlydata_state == ssl_earlydata_sent)); #endif - result = handshake(cf, data); + result = cf_gtls_handshake(cf, data); if(result) goto out; connssl->connecting_state = ssl_connect_3; @@ -2265,11 +2258,10 @@ static CURLcode gtls_recv(struct Curl_cfilter *cf, goto out; } else if(nread == GNUTLS_E_REHANDSHAKE) { - /* BLOCKING call, this is bad but a work-around for now. Fixing this "the - proper way" takes a whole lot of work. */ - result = handshake(cf, data); + /* Either TLSv1.2 renegotiate or a TLSv1.3 session key update. */ + result = cf_gtls_handshake(cf, data); if(!result) - result = CURLE_AGAIN; /* then return as if this was a wouldblock */ + result = CURLE_AGAIN; /* make us get called again. */ goto out; } else { diff --git a/lib/vtls/mbedtls.c b/lib/vtls/mbedtls.c index 3ff131b441a0..4e8a0c3cf799 100644 --- a/lib/vtls/mbedtls.c +++ b/lib/vtls/mbedtls.c @@ -40,14 +40,21 @@ #if MBEDTLS_VERSION_NUMBER < 0x03020000 #error "mbedTLS 3.2.0 or later required" #endif +#include #include #include #include +#include + +#if MBEDTLS_VERSION_NUMBER < 0x04000000 +#define CURL_MBEDTLS_DRBG +#endif #include +#ifdef CURL_MBEDTLS_DRBG #include #include -#include +#endif #ifdef MBEDTLS_DEBUG #include #endif @@ -66,6 +73,7 @@ #include "../multiif.h" #include "mbedtls_threadlock.h" #include "../strdup.h" +#include "../curl_sha256.h" /* The last 2 #include files should be in this order */ #include "../curl_memory.h" @@ -77,8 +85,10 @@ #endif struct mbed_ssl_backend_data { +#ifdef CURL_MBEDTLS_DRBG mbedtls_ctr_drbg_context ctr_drbg; mbedtls_entropy_context entropy; +#endif mbedtls_ssl_context ssl; mbedtls_x509_crt cacert; mbedtls_x509_crt clicert; @@ -106,7 +116,7 @@ struct mbed_ssl_backend_data { #define mbedtls_strerror(a,b,c) b[0] = 0 #endif -#ifdef HAS_THREADING_SUPPORT +#if defined(CURL_MBEDTLS_DRBG) && defined(HAS_THREADING_SUPPORT) static mbedtls_entropy_context ts_entropy; static int entropy_init_initialized = 0; @@ -144,7 +154,7 @@ static int entropy_func_mutex(void *data, unsigned char *output, size_t len) return ret; } -#endif /* HAS_THREADING_SUPPORT */ +#endif /* CURL_MBEDTLS_DRBG && HAS_THREADING_SUPPORT */ #ifdef MBEDTLS_DEBUG static void mbed_debug(void *context, int level, const char *f_name, @@ -538,6 +548,7 @@ mbed_connect_step1(struct Curl_cfilter *cf, struct Curl_easy *data) return CURLE_NOT_BUILT_IN; } +#ifdef CURL_MBEDTLS_DRBG #ifdef HAS_THREADING_SUPPORT mbedtls_ctr_drbg_init(&backend->ctr_drbg); @@ -562,6 +573,7 @@ mbed_connect_step1(struct Curl_cfilter *cf, struct Curl_easy *data) return CURLE_FAILED_INIT; } #endif /* HAS_THREADING_SUPPORT */ +#endif /* CURL_MBEDTLS_DRBG */ /* Load the trusted CA */ mbedtls_x509_crt_init(&backend->cacert); @@ -665,6 +677,17 @@ mbed_connect_step1(struct Curl_cfilter *cf, struct Curl_easy *data) if(ssl_config->key || ssl_config->key_blob) { if(ssl_config->key) { #ifdef MBEDTLS_FS_IO +#if MBEDTLS_VERSION_NUMBER >= 0x04000000 + ret = mbedtls_pk_parse_keyfile(&backend->pk, ssl_config->key, + ssl_config->key_passwd); + if(ret == 0 && !(mbedtls_pk_can_do_psa(&backend->pk, + PSA_ALG_RSA_PKCS1V15_SIGN(PSA_ALG_ANY_HASH), + PSA_KEY_USAGE_SIGN_HASH) || + mbedtls_pk_can_do_psa(&backend->pk, + MBEDTLS_PK_ALG_ECDSA(PSA_ALG_ANY_HASH), + PSA_KEY_USAGE_SIGN_HASH))) + ret = MBEDTLS_ERR_PK_TYPE_MISMATCH; +#else ret = mbedtls_pk_parse_keyfile(&backend->pk, ssl_config->key, ssl_config->key_passwd, mbedtls_ctr_drbg_random, @@ -672,6 +695,7 @@ mbed_connect_step1(struct Curl_cfilter *cf, struct Curl_easy *data) if(ret == 0 && !(mbedtls_pk_can_do(&backend->pk, MBEDTLS_PK_RSA) || mbedtls_pk_can_do(&backend->pk, MBEDTLS_PK_ECKEY))) ret = MBEDTLS_ERR_PK_TYPE_MISMATCH; +#endif if(ret) { mbedtls_strerror(ret, errorbuf, sizeof(errorbuf)); @@ -689,6 +713,18 @@ mbed_connect_step1(struct Curl_cfilter *cf, struct Curl_easy *data) const unsigned char *key_data = (const unsigned char *)ssl_key_blob->data; const char *passwd = ssl_config->key_passwd; +#if MBEDTLS_VERSION_NUMBER >= 0x04000000 + ret = mbedtls_pk_parse_key(&backend->pk, key_data, ssl_key_blob->len, + (const unsigned char *)passwd, + passwd ? strlen(passwd) : 0); + if(ret == 0 && !(mbedtls_pk_can_do_psa(&backend->pk, + PSA_ALG_RSA_PKCS1V15_SIGN(PSA_ALG_ANY_HASH), + PSA_KEY_USAGE_SIGN_HASH) || + mbedtls_pk_can_do_psa(&backend->pk, + MBEDTLS_PK_ALG_ECDSA(PSA_ALG_ANY_HASH), + PSA_KEY_USAGE_SIGN_HASH))) + ret = MBEDTLS_ERR_PK_TYPE_MISMATCH; +#else ret = mbedtls_pk_parse_key(&backend->pk, key_data, ssl_key_blob->len, (const unsigned char *)passwd, passwd ? strlen(passwd) : 0, @@ -697,6 +733,7 @@ mbed_connect_step1(struct Curl_cfilter *cf, struct Curl_easy *data) if(ret == 0 && !(mbedtls_pk_can_do(&backend->pk, MBEDTLS_PK_RSA) || mbedtls_pk_can_do(&backend->pk, MBEDTLS_PK_ECKEY))) ret = MBEDTLS_ERR_PK_TYPE_MISMATCH; +#endif if(ret) { mbedtls_strerror(ret, errorbuf, sizeof(errorbuf)); @@ -746,8 +783,10 @@ mbed_connect_step1(struct Curl_cfilter *cf, struct Curl_easy *data) return CURLE_SSL_CONNECT_ERROR; } -#ifdef MBEDTLS_SSL_SESSION_TICKETS - /* New in mbedTLS 3.6.1, need to enable, default is now disabled */ +#if defined(MBEDTLS_SSL_SESSION_TICKETS) && \ + MBEDTLS_VERSION_NUMBER >= 0x03060100 && MBEDTLS_VERSION_NUMBER < 0x04000000 + /* New in mbedTLS 3.6.1, need to enable, default is now disabled. + 4.0.0 enabled it by default for TLSv1.3. */ mbedtls_ssl_conf_tls13_enable_signal_new_session_tickets(&backend->config, MBEDTLS_SSL_TLS1_3_SIGNAL_NEW_SESSION_TICKETS_ENABLED); #endif @@ -769,8 +808,10 @@ mbed_connect_step1(struct Curl_cfilter *cf, struct Curl_easy *data) if(ret != CURLE_OK) return ret; +#ifdef CURL_MBEDTLS_DRBG mbedtls_ssl_conf_rng(&backend->config, mbedtls_ctr_drbg_random, &backend->ctr_drbg); +#endif ret = mbedtls_ssl_setup(&backend->ssl, &backend->config); if(ret) { @@ -806,7 +847,6 @@ mbed_connect_step1(struct Curl_cfilter *cf, struct Curl_easy *data) mbedtls_ssl_list_ciphersuites()); } - #ifdef MBEDTLS_SSL_RENEGOTIATION mbedtls_ssl_conf_renegotiation(&backend->config, MBEDTLS_SSL_RENEGOTIATION_ENABLED); @@ -818,7 +858,7 @@ mbed_connect_step1(struct Curl_cfilter *cf, struct Curl_easy *data) #endif /* Check if there is a cached ID we can/should use here! */ - if(ssl_config->primary.cache_session) { + if(Curl_ssl_scache_use(cf, data)) { struct Curl_ssl_session *sc_session = NULL; CURLcode result; @@ -1045,7 +1085,6 @@ mbed_new_session(struct Curl_cfilter *cf, struct Curl_easy *data) struct ssl_connect_data *connssl = cf->ctx; struct mbed_ssl_backend_data *backend = (struct mbed_ssl_backend_data *)connssl->backend; - struct ssl_config_data *ssl_config = Curl_ssl_cf_get_config(cf, data); mbedtls_ssl_session session; bool msession_alloced = FALSE; struct Curl_ssl_session *sc_session = NULL; @@ -1056,7 +1095,7 @@ mbed_new_session(struct Curl_cfilter *cf, struct Curl_easy *data) int ret; DEBUGASSERT(backend); - if(!ssl_config->primary.cache_session) + if(!Curl_ssl_scache_use(cf, data)) return CURLE_OK; mbedtls_ssl_session_init(&session); @@ -1272,10 +1311,12 @@ static void mbedtls_close(struct Curl_cfilter *cf, struct Curl_easy *data) Curl_safefree(backend->ciphersuites); mbedtls_ssl_config_free(&backend->config); mbedtls_ssl_free(&backend->ssl); +#ifdef CURL_MBEDTLS_DRBG mbedtls_ctr_drbg_free(&backend->ctr_drbg); #ifndef HAS_THREADING_SUPPORT mbedtls_entropy_free(&backend->entropy); -#endif /* HAS_THREADING_SUPPORT */ +#endif /* !HAS_THREADING_SUPPORT */ +#endif backend->initialized = FALSE; } } @@ -1346,33 +1387,12 @@ static size_t mbedtls_version(char *buffer, size_t size) static CURLcode mbedtls_random(struct Curl_easy *data, unsigned char *entropy, size_t length) { -#ifdef MBEDTLS_CTR_DRBG_C - int ret; - mbedtls_entropy_context ctr_entropy; - mbedtls_ctr_drbg_context ctr_drbg; - mbedtls_entropy_init(&ctr_entropy); - mbedtls_ctr_drbg_init(&ctr_drbg); + psa_status_t status; (void)data; - ret = mbedtls_ctr_drbg_seed(&ctr_drbg, mbedtls_entropy_func, - &ctr_entropy, NULL, 0); - - if(!ret) - ret = mbedtls_ctr_drbg_random(&ctr_drbg, entropy, length); + status = psa_generate_random(entropy, length); - mbedtls_ctr_drbg_free(&ctr_drbg); - mbedtls_entropy_free(&ctr_entropy); - - return ret == 0 ? CURLE_OK : CURLE_FAILED_INIT; -#elif defined(MBEDTLS_HAVEGE_C) - mbedtls_havege_state hs; - mbedtls_havege_init(&hs); - mbedtls_havege_random(&hs, entropy, length); - mbedtls_havege_free(&hs); - return CURLE_OK; -#else - return CURLE_NOT_BUILT_IN; -#endif + return status == PSA_SUCCESS ? CURLE_OK : CURLE_FAILED_INIT; } static CURLcode mbedtls_connect(struct Curl_cfilter *cf, @@ -1432,34 +1452,25 @@ static CURLcode mbedtls_connect(struct Curl_cfilter *cf, */ static int mbedtls_init(void) { + psa_status_t status; + status = psa_crypto_init(); + if(status != PSA_SUCCESS) + return 0; if(!Curl_mbedtlsthreadlock_thread_setup()) return 0; -#ifdef HAS_THREADING_SUPPORT +#if defined(CURL_MBEDTLS_DRBG) && defined(HAS_THREADING_SUPPORT) entropy_init_mutex(&ts_entropy); #endif -#ifdef MBEDTLS_USE_PSA_CRYPTO /* requires mbedTLS 3.6.0+ */ - { - int ret; -#ifdef HAS_THREADING_SUPPORT - Curl_mbedtlsthreadlock_lock_function(0); -#endif - ret = psa_crypto_init(); -#ifdef HAS_THREADING_SUPPORT - Curl_mbedtlsthreadlock_unlock_function(0); -#endif - if(ret != PSA_SUCCESS) - return 0; - } -#endif /* MBEDTLS_USE_PSA_CRYPTO */ return 1; } static void mbedtls_cleanup(void) { -#ifdef HAS_THREADING_SUPPORT +#if defined(CURL_MBEDTLS_DRBG) && defined(HAS_THREADING_SUPPORT) entropy_cleanup_mutex(&ts_entropy); #endif (void)Curl_mbedtlsthreadlock_thread_cleanup(); + mbedtls_psa_crypto_free(); } static bool mbedtls_data_pending(struct Curl_cfilter *cf, @@ -1479,11 +1490,19 @@ static CURLcode mbedtls_sha256sum(const unsigned char *input, unsigned char *sha256sum, size_t sha256len) { - (void)sha256len; - /* returns 0 on success, otherwise failure */ - if(mbedtls_sha256(input, inputlen, sha256sum, 0) != 0) +#if defined(PSA_WANT_ALG_SHA_256) && PSA_WANT_ALG_SHA_256 /* mbedTLS 4+ */ + psa_status_t status; + size_t sha256len_actual; + status = psa_hash_compute(PSA_ALG_SHA_256, input, inputlen, + sha256sum, sha256len, + &sha256len_actual); + if(status != PSA_SUCCESS) return CURLE_BAD_FUNCTION_ARGUMENT; return CURLE_OK; +#else + (void)sha256len; + return Curl_sha256it(sha256sum, input, inputlen); +#endif } static void *mbedtls_get_internals(struct ssl_connect_data *connssl, diff --git a/lib/vtls/openssl.c b/lib/vtls/openssl.c index 533acdaf8db7..87b00cc252a9 100644 --- a/lib/vtls/openssl.c +++ b/lib/vtls/openssl.c @@ -349,6 +349,8 @@ static CURLcode X509V3_ext(struct Curl_easy *data, return result; } +#define MAX_ALLOWED_CERT_AMOUNT 100 + static CURLcode ossl_certchain(struct Curl_easy *data, SSL *ssl) { CURLcode result; @@ -364,6 +366,11 @@ static CURLcode ossl_certchain(struct Curl_easy *data, SSL *ssl) return CURLE_SSL_CONNECT_ERROR; numcerts = sk_X509_num(sk); + if(numcerts > MAX_ALLOWED_CERT_AMOUNT) { + failf(data, "%d certificates is more than allowed (%u)", (int)numcerts, + MAX_ALLOWED_CERT_AMOUNT); + return CURLE_SSL_CONNECT_ERROR; + } result = Curl_ssl_init_certinfo(data, (int)numcerts); if(result) @@ -1244,7 +1251,7 @@ static int enginecheck(struct Curl_easy *data, UI_METHOD *ui_method = UI_create_method(OSSL_UI_METHOD_CAST("curl user interface")); if(!ui_method) { - failf(data, "unable do create " OSSL_PACKAGE " user-interface method"); + failf(data, "unable to create " OSSL_PACKAGE " user-interface method"); return 0; } UI_method_set_opener(ui_method, UI_method_get_opener(UI_OpenSSL())); @@ -1306,7 +1313,7 @@ static int providercheck(struct Curl_easy *data, UI_METHOD *ui_method = UI_create_method(OSSL_UI_METHOD_CAST("curl user interface")); if(!ui_method) { - failf(data, "unable do create " OSSL_PACKAGE " user-interface method"); + failf(data, "unable to create " OSSL_PACKAGE " user-interface method"); return 0; } UI_method_set_opener(ui_method, UI_method_get_opener(UI_OpenSSL())); @@ -1321,6 +1328,7 @@ static int providercheck(struct Curl_easy *data, failf(data, "Failed to open OpenSSL store: %s", ossl_strerror(ERR_get_error(), error_buffer, sizeof(error_buffer))); + UI_destroy_method(ui_method); return 0; } if(OSSL_STORE_expect(store, OSSL_STORE_INFO_PKEY) != 1) { @@ -1466,6 +1474,8 @@ static int providerload(struct Curl_easy *data, OSSL_STORE_CTX *store = OSSL_STORE_open_ex(cert_file, data->state.libctx, NULL, NULL, NULL, NULL, NULL, NULL); + int rc; + if(!store) { failf(data, "Failed to open OpenSSL store: %s", ossl_strerror(ERR_get_error(), error_buffer, @@ -1494,13 +1504,15 @@ static int providerload(struct Curl_easy *data, return 0; } - if(SSL_CTX_use_certificate(ctx, cert) != 1) { + rc = SSL_CTX_use_certificate(ctx, cert); + X509_free(cert); /* we do not need the handle any more... */ + + if(rc != 1) { failf(data, "unable to set client certificate [%s]", ossl_strerror(ERR_get_error(), error_buffer, sizeof(error_buffer))); return 0; } - X509_free(cert); /* we do not need the handle any more... */ } else { failf(data, "crypto provider not set, cannot load certificate"); @@ -1566,8 +1578,6 @@ static int pkcs12load(struct Curl_easy *data, return 0; } - PKCS12_PBE_add(); - if(!PKCS12_parse(p12, key_passwd, &pri, &x509, &ca)) { failf(data, "could not parse PKCS12 file, check password, " OSSL_PACKAGE @@ -1709,12 +1719,12 @@ static CURLcode client_cert(struct Curl_easy *data, break; case SSL_FILETYPE_ENGINE: - if(!engineload(data, ctx, cert_file)) + if(!cert_file || !engineload(data, ctx, cert_file)) return CURLE_SSL_CERTPROBLEM; break; case SSL_FILETYPE_PROVIDER: - if(!providerload(data, ctx, cert_file)) + if(!cert_file || !providerload(data, ctx, cert_file)) return CURLE_SSL_CERTPROBLEM; break; @@ -2894,6 +2904,8 @@ ossl_set_ssl_version_min_max(struct Curl_cfilter *cf, SSL_CTX *ctx, long ossl_ssl_version_min = 0; long ossl_ssl_version_max = 0; #endif + /* it cannot be default here */ + DEBUGASSERT(curl_ssl_version_min != CURL_SSLVERSION_DEFAULT); switch(curl_ssl_version_min) { case CURL_SSLVERSION_TLSv1: /* TLS 1.x */ case CURL_SSLVERSION_TLSv1_0: @@ -2914,18 +2926,6 @@ ossl_set_ssl_version_min_max(struct Curl_cfilter *cf, SSL_CTX *ctx, #endif } - /* CURL_SSLVERSION_DEFAULT means that no option was selected. - We do not want to pass 0 to SSL_CTX_set_min_proto_version as - it would enable all versions down to the lowest supported by - the library. - So we skip this, and stay with the library default - */ - if(curl_ssl_version_min != CURL_SSLVERSION_DEFAULT) { - if(!SSL_CTX_set_min_proto_version(ctx, ossl_ssl_version_min)) { - return CURLE_SSL_CONNECT_ERROR; - } - } - /* ... then, TLS max version */ curl_ssl_version_max = (long)conn_config->version_max; @@ -2955,9 +2955,9 @@ ossl_set_ssl_version_min_max(struct Curl_cfilter *cf, SSL_CTX *ctx, break; } - if(!SSL_CTX_set_max_proto_version(ctx, ossl_ssl_version_max)) { + if(!SSL_CTX_set_min_proto_version(ctx, ossl_ssl_version_min) || + !SSL_CTX_set_max_proto_version(ctx, ossl_ssl_version_max)) return CURLE_SSL_CONNECT_ERROR; - } return CURLE_OK; } @@ -3046,7 +3046,6 @@ CURLcode Curl_ossl_add_session(struct Curl_cfilter *cf, unsigned char *quic_tp, size_t quic_tp_len) { - const struct ssl_config_data *config; unsigned char *der_session_buf = NULL; unsigned char *qtp_clone = NULL; CURLcode result = CURLE_OK; @@ -3054,8 +3053,7 @@ CURLcode Curl_ossl_add_session(struct Curl_cfilter *cf, if(!cf || !data) goto out; - config = Curl_ssl_cf_get_config(cf, data); - if(config->primary.cache_session) { + if(Curl_ssl_scache_use(cf, data)) { struct Curl_ssl_session *sc_session = NULL; size_t der_session_size; unsigned char *der_session_ptr; @@ -3488,6 +3486,7 @@ static CURLcode ossl_populate_x509_store(struct Curl_cfilter *cf, CURLcode result = CURLE_OK; X509_LOOKUP *lookup = NULL; const char * const ssl_crlfile = ssl_config->primary.CRLfile; + unsigned long x509flags = 0; CURL_TRC_CF(data, cf, "configuring OpenSSL's x509 trust store"); if(!store) @@ -3513,8 +3512,7 @@ static CURLcode ossl_populate_x509_store(struct Curl_cfilter *cf, failf(data, "error loading CRL file: %s", ssl_crlfile); return CURLE_SSL_CRL_BADFILE; } - X509_STORE_set_flags(store, - X509_V_FLAG_CRL_CHECK|X509_V_FLAG_CRL_CHECK_ALL); + x509flags = X509_V_FLAG_CRL_CHECK|X509_V_FLAG_CRL_CHECK_ALL; infof(data, " CRLfile: %s", ssl_crlfile); } @@ -3524,18 +3522,20 @@ static CURLcode ossl_populate_x509_store(struct Curl_cfilter *cf, determine that in a reliable manner. https://web.archive.org/web/20190422050538/rt.openssl.org/Ticket/Display.html?id=3621 */ - X509_STORE_set_flags(store, X509_V_FLAG_TRUSTED_FIRST); + x509flags |= X509_V_FLAG_TRUSTED_FIRST; + if(!ssl_config->no_partialchain && !ssl_crlfile) { /* Have intermediate certificates in the trust store be treated as - trust-anchors, in the same way as self-signed root CA certificates - are. This allows users to verify servers using the intermediate cert - only, instead of needing the whole chain. + trust-anchors, in the same way as self-signed root CA certificates are. + This allows users to verify servers using the intermediate cert only, + instead of needing the whole chain. Due to OpenSSL bug https://github.com/openssl/openssl/issues/5081 we cannot do partial chains with a CRL check. */ - X509_STORE_set_flags(store, X509_V_FLAG_PARTIAL_CHAIN); + x509flags |= X509_V_FLAG_PARTIAL_CHAIN; } + (void)X509_STORE_set_flags(store, x509flags); return result; } @@ -3745,7 +3745,7 @@ ossl_init_session_and_alpns(struct ossl_ctx *octx, Curl_alpn_copy(&alpns, alpns_requested); octx->reused_session = FALSE; - if(ssl_config->primary.cache_session && !conn_cfg->verifystatus) { + if(Curl_ssl_scache_use(cf, data) && !conn_cfg->verifystatus) { struct Curl_ssl_session *scs = NULL; result = Curl_ssl_scache_take(cf, data, peer->scache_key, &scs); @@ -3787,6 +3787,7 @@ ossl_init_session_and_alpns(struct ossl_ctx *octx, } } #else + (void)ssl_config; (void)sess_reuse_cb; #endif } @@ -4039,6 +4040,7 @@ static CURLcode ossl_init_method(struct Curl_cfilter *cf, case TRNSPRT_QUIC: *pssl_version_min = CURL_SSLVERSION_TLSv1_3; if(conn_config->version_max && + (conn_config->version_max != CURL_SSLVERSION_MAX_DEFAULT) && (conn_config->version_max != CURL_SSLVERSION_MAX_TLSv1_3)) { failf(data, "QUIC needs at least TLS version 1.3"); return CURLE_SSL_CONNECT_ERROR; @@ -4234,6 +4236,7 @@ CURLcode Curl_ossl_ctx_init(struct ossl_ctx *octx, const char *ciphers13 = conn_config->cipher_list13; if(ciphers13 && (!conn_config->version_max || + (conn_config->version_max == CURL_SSLVERSION_MAX_DEFAULT) || (conn_config->version_max >= CURL_SSLVERSION_MAX_TLSv1_3))) { if(!SSL_CTX_set_ciphersuites(octx->ssl_ctx, ciphers13)) { failf(data, "failed setting TLS 1.3 cipher suite: %s", ciphers13); @@ -4845,6 +4848,8 @@ static void infof_certstack(struct Curl_easy *data, const SSL *ssl) certstack = SSL_get_peer_cert_chain(ssl); else certstack = SSL_get0_verified_chain(ssl); + if(!certstack) + return; num_cert_levels = sk_X509_num(certstack); for(cert_level = 0; cert_level < num_cert_levels; cert_level++) { @@ -4860,12 +4865,17 @@ static void infof_certstack(struct Curl_easy *data, const SSL *ssl) const char *type_name; current_cert = sk_X509_value(certstack, cert_level); + if(!current_cert) + continue; + + current_pkey = X509_get0_pubkey(current_cert); + if(!current_pkey) + continue; X509_get0_signature(NULL, &palg_cert, current_cert); X509_ALGOR_get0(&paobj_cert, NULL, NULL, palg_cert); OBJ_obj2txt(cert_algorithm, sizeof(cert_algorithm), paobj_cert, 0); - current_pkey = X509_get0_pubkey(current_cert); key_bits = EVP_PKEY_bits(current_pkey); #ifndef HAVE_OPENSSL3 #define EVP_PKEY_get_security_bits EVP_PKEY_security_bits @@ -4879,7 +4889,7 @@ static void infof_certstack(struct Curl_easy *data, const SSL *ssl) curl_msnprintf(group_name_final, sizeof(group_name_final), "/%s", group_name); } - type_name = current_pkey ? EVP_PKEY_get0_type_name(current_pkey) : NULL; + type_name = EVP_PKEY_get0_type_name(current_pkey); #else get_group_name = 0; type_name = NULL; @@ -5092,12 +5102,6 @@ static CURLcode ossl_apple_verify(struct Curl_cfilter *cf, { struct ssl_primary_config *conn_config = Curl_ssl_cf_get_primary_config(cf); struct ossl_certs_ctx chain; - long ocsp_len = 0; -#ifdef HAVE_BORINGSSL_LIKE - const uint8_t *ocsp_data = NULL; -#else - unsigned char *ocsp_data = NULL; -#endif CURLcode result; memset(&chain, 0, sizeof(chain)); @@ -5109,13 +5113,24 @@ static CURLcode ossl_apple_verify(struct Curl_cfilter *cf, failf(data, "SSL: could not get peer certificate"); result = CURLE_PEER_FAILED_VERIFICATION; } + else { +#ifdef HAVE_BORINGSSL_LIKE + const uint8_t *ocsp_data = NULL; +#else + unsigned char *ocsp_data = NULL; +#endif + long ocsp_len = 0; + if(conn_config->verifystatus && !octx->reused_session) + ocsp_len = (long)SSL_get_tlsext_status_ocsp_resp(octx->ssl, &ocsp_data); - if(conn_config->verifystatus && !octx->reused_session) - ocsp_len = (long)SSL_get_tlsext_status_ocsp_resp(octx->ssl, &ocsp_data); - - result = Curl_vtls_apple_verify(cf, data, peer, chain.num_certs, - ossl_chain_get_der, &chain, - ocsp_data, ocsp_len); + /* SSL_get_tlsext_status_ocsp_resp() returns the length of the OCSP + response data or -1 if there is no OCSP response data. */ + if(ocsp_len < 0) + ocsp_len = 0; /* no data available */ + result = Curl_vtls_apple_verify(cf, data, peer, chain.num_certs, + ossl_chain_get_der, &chain, + ocsp_data, ocsp_len); + } *pverified = !result; return result; } @@ -5134,6 +5149,9 @@ CURLcode Curl_ossl_check_peer_cert(struct Curl_cfilter *cf, bool strict = (conn_config->verifypeer || conn_config->verifyhost); X509 *server_cert; bool verified = FALSE; +#ifdef USE_APPLE_SECTRUST + bool sectrust_verified = FALSE; +#endif if(data->set.ssl.certinfo && !octx->reused_session) { /* asked to gather certificate info. Reused sessions don't have cert @@ -5186,6 +5204,7 @@ CURLcode Curl_ossl_check_peer_cert(struct Curl_cfilter *cf, if(verified) { infof(data, "SSL certificate verified via Apple SecTrust."); ssl_config->certverifyresult = X509_V_OK; + sectrust_verified = TRUE; } } #endif @@ -5201,7 +5220,13 @@ CURLcode Curl_ossl_check_peer_cert(struct Curl_cfilter *cf, } #if !defined(OPENSSL_NO_TLSEXT) && !defined(OPENSSL_NO_OCSP) - if(conn_config->verifystatus && !octx->reused_session) { + if(conn_config->verifystatus && +#ifdef USE_APPLE_SECTRUST + !sectrust_verified && /* already verified via apple sectrust, cannot + * verifystate via OpenSSL in that case as it + * does not have the trust anchors */ +#endif + !octx->reused_session) { /* do not do this after Session ID reuse */ result = verifystatus(cf, data, octx); if(result) @@ -5649,10 +5674,8 @@ static CURLcode ossl_get_channel_binding(struct Curl_easy *data, int sockindex, break; } - if(cf->next) - cf = cf->next; - - } while(cf->next); + cf = cf->next; + } while(cf); if(!octx) { failf(data, "Failed to find the SSL filter"); diff --git a/lib/vtls/rustls.c b/lib/vtls/rustls.c index ff2dea82b606..ecf4d0315253 100644 --- a/lib/vtls/rustls.c +++ b/lib/vtls/rustls.c @@ -404,8 +404,8 @@ read_file_into(const char *filename, for(;;) { uint8_t buf[256]; const size_t rr = fread(buf, 1, sizeof(buf), f); - if(rr == 0 || - CURLE_OK != curlx_dyn_addn(out, buf, rr)) { + if((!rr && !feof(f)) || + curlx_dyn_addn(out, buf, rr)) { curlx_fclose(f); return 0; } @@ -518,7 +518,7 @@ cr_keylog_log_cb(struct rustls_str label, (void)client_random_len; DEBUGASSERT(client_random_len == CLIENT_RANDOM_SIZE); /* Turning a "rustls_str" into a null delimited "c" string */ - curl_msnprintf(clabel, label.len + 1, "%.*s", (int)label.len, label.data); + curl_msnprintf(clabel, sizeof(clabel), "%.*s", (int)label.len, label.data); Curl_tls_keylog_write(clabel, client_random, secret, secret_len); } @@ -657,7 +657,8 @@ init_config_builder(struct Curl_easy *data, static void init_config_builder_alpn(struct Curl_easy *data, const struct ssl_connect_data *connssl, - struct rustls_client_config_builder *config_builder) { + struct rustls_client_config_builder *config_builder) +{ struct alpn_proto_buf proto; rustls_slice_bytes alpn[ALPN_ENTRIES_MAX]; size_t i; @@ -709,7 +710,8 @@ init_config_builder_verifier(struct Curl_easy *data, struct rustls_client_config_builder *builder, const struct ssl_primary_config *conn_config, const struct curl_blob *ca_info_blob, - const char * const ssl_cafile) { + const char * const ssl_cafile) +{ const struct rustls_root_cert_store *roots = NULL; struct rustls_root_cert_store_builder *roots_builder = NULL; struct rustls_web_pki_server_cert_verifier_builder *verifier_builder = NULL; @@ -746,6 +748,9 @@ init_config_builder_verifier(struct Curl_easy *data, if(rr != RUSTLS_RESULT_OK) { rustls_failf(data, rr, "failed to build trusted root certificate store"); result = CURLE_SSL_CACERT_BADFILE; + if(result) { + goto cleanup; + } } verifier_builder = rustls_web_pki_server_cert_verifier_builder_new(roots); @@ -754,7 +759,7 @@ init_config_builder_verifier(struct Curl_easy *data, result = init_config_builder_verifier_crl(data, conn_config, verifier_builder); - if(result != CURLE_OK) { + if(result) { goto cleanup; } } diff --git a/lib/vtls/schannel.c b/lib/vtls/schannel.c index ae5834d84342..f9d697bbb844 100644 --- a/lib/vtls/schannel.c +++ b/lib/vtls/schannel.c @@ -58,6 +58,7 @@ #include "../rand.h" #include "../curlx/strparse.h" #include "../progress.h" +#include "../curl_sha256.h" /* The last #include file should be: */ #include "../curl_memory.h" @@ -580,6 +581,8 @@ schannel_acquire_credential_handle(struct Curl_cfilter *cf, " for %s", blob ? "(memory blob)" : data->set.ssl.primary.clientcert); curlx_unicodefree(cert_path); + if(fInCert) + curlx_fclose(fInCert); return CURLE_SSL_CERTPROBLEM; } @@ -818,6 +821,8 @@ schannel_acquire_credential_handle(struct Curl_cfilter *cf, result = set_ssl_ciphers(&schannel_cred, ciphers, algIds); if(result) { failf(data, "schannel: Failed setting algorithm cipher list"); + if(client_certs[0]) + CertFreeCertificateContext(client_certs[0]); return result; } } @@ -845,7 +850,6 @@ schannel_acquire_credential_handle(struct Curl_cfilter *cf, char buffer[STRERROR_LEN]; failf(data, "schannel: AcquireCredentialsHandle failed: %s", Curl_sspi_strerror(sspi_status, buffer, sizeof(buffer))); - Curl_safefree(backend->cred); switch(sspi_status) { case SEC_E_INSUFFICIENT_MEMORY: return CURLE_OUT_OF_MEMORY; @@ -925,7 +929,7 @@ schannel_connect_step1(struct Curl_cfilter *cf, struct Curl_easy *data) backend->cred = NULL; /* check for an existing reusable credential handle */ - if(ssl_config->primary.cache_session) { + if(Curl_ssl_scache_use(cf, data)) { struct Curl_schannel_cred *old_cred; Curl_ssl_scache_lock(data); old_cred = Curl_ssl_scache_get_obj(cf, data, connssl->peer.scache_key); @@ -1111,6 +1115,41 @@ schannel_connect_step1(struct Curl_cfilter *cf, struct Curl_easy *data) return CURLE_OK; } +static CURLcode schannel_error(struct Curl_easy *data, + SECURITY_STATUS sspi_status) +{ + char buffer[STRERROR_LEN]; + switch(sspi_status) { + case SEC_E_INSUFFICIENT_MEMORY: + failf(data, "schannel: next InitializeSecurityContext failed: %s", + Curl_sspi_strerror(sspi_status, buffer, sizeof(buffer))); + return CURLE_OUT_OF_MEMORY; + case SEC_E_WRONG_PRINCIPAL: + failf(data, "schannel: SNI or certificate check failed: %s", + Curl_sspi_strerror(sspi_status, buffer, sizeof(buffer))); + return CURLE_PEER_FAILED_VERIFICATION; + case SEC_E_UNTRUSTED_ROOT: + failf(data, "schannel: %s", + Curl_sspi_strerror(sspi_status, buffer, sizeof(buffer))); + return CURLE_PEER_FAILED_VERIFICATION; +#if 0 + case SEC_E_INVALID_HANDLE: + case SEC_E_INVALID_TOKEN: + case SEC_E_LOGON_DENIED: + case SEC_E_TARGET_UNKNOWN: + case SEC_E_NO_AUTHENTICATING_AUTHORITY: + case SEC_E_INTERNAL_ERROR: + case SEC_E_NO_CREDENTIALS: + case SEC_E_UNSUPPORTED_FUNCTION: + case SEC_E_APPLICATION_PROTOCOL_MISMATCH: +#endif + default: + failf(data, "schannel: next InitializeSecurityContext failed: %s", + Curl_sspi_strerror(sspi_status, buffer, sizeof(buffer))); + return CURLE_SSL_CONNECT_ERROR; + } +} + static CURLcode schannel_connect_step2(struct Curl_cfilter *cf, struct Curl_easy *data) { @@ -1264,28 +1303,18 @@ schannel_connect_step2(struct Curl_cfilter *cf, struct Curl_easy *data) Curl_safefree(inbuf[0].pvBuffer); /* check if the handshake was incomplete */ - if(sspi_status == SEC_E_INCOMPLETE_MESSAGE) { + switch(sspi_status) { + case SEC_E_INCOMPLETE_MESSAGE: backend->encdata_is_incomplete = TRUE; connssl->io_need = CURL_SSL_IO_NEED_RECV; DEBUGF(infof(data, "schannel: received incomplete message, need more data")); return CURLE_OK; - } - /* If the server has requested a client certificate, attempt to continue - the handshake without one. This will allow connections to servers which - request a client certificate but do not require it. */ - if(sspi_status == SEC_I_INCOMPLETE_CREDENTIALS && - !(backend->req_flags & ISC_REQ_USE_SUPPLIED_CREDS)) { - backend->req_flags |= ISC_REQ_USE_SUPPLIED_CREDS; - connssl->io_need = CURL_SSL_IO_NEED_SEND; - DEBUGF(infof(data, - "schannel: a client certificate has been requested")); - return CURLE_OK; - } - - /* check if the handshake needs to be continued */ - if(sspi_status == SEC_I_CONTINUE_NEEDED || sspi_status == SEC_E_OK) { + case SEC_I_CONTINUE_NEEDED: + case SEC_E_OK: + /* check if the handshake needs to be continued */ + result = CURLE_OK; for(i = 0; i < 3; i++) { /* search for handshake tokens that need to be send */ if(outbuf[i].BufferType == SECBUFFER_TOKEN && outbuf[i].cbBuffer > 0) { @@ -1299,47 +1328,35 @@ schannel_connect_step2(struct Curl_cfilter *cf, struct Curl_easy *data) if(result || (outbuf[i].cbBuffer != written)) { failf(data, "schannel: failed to send next handshake data: " "sent %zu of %lu bytes", written, outbuf[i].cbBuffer); - return CURLE_SSL_CONNECT_ERROR; + result = CURLE_SSL_CONNECT_ERROR; } } - + } + for(i = 0; i < 3; i++) { /* free obsolete buffer */ - if(outbuf[i].pvBuffer) { + if(outbuf[i].pvBuffer) Curl_pSecFn->FreeContextBuffer(outbuf[i].pvBuffer); - } } - } - else { - char buffer[STRERROR_LEN]; - switch(sspi_status) { - case SEC_E_INSUFFICIENT_MEMORY: - failf(data, "schannel: next InitializeSecurityContext failed: %s", - Curl_sspi_strerror(sspi_status, buffer, sizeof(buffer))); - return CURLE_OUT_OF_MEMORY; - case SEC_E_WRONG_PRINCIPAL: - failf(data, "schannel: SNI or certificate check failed: %s", - Curl_sspi_strerror(sspi_status, buffer, sizeof(buffer))); - return CURLE_PEER_FAILED_VERIFICATION; - case SEC_E_UNTRUSTED_ROOT: - failf(data, "schannel: %s", - Curl_sspi_strerror(sspi_status, buffer, sizeof(buffer))); - return CURLE_PEER_FAILED_VERIFICATION; -#if 0 - case SEC_E_INVALID_HANDLE: - case SEC_E_INVALID_TOKEN: - case SEC_E_LOGON_DENIED: - case SEC_E_TARGET_UNKNOWN: - case SEC_E_NO_AUTHENTICATING_AUTHORITY: - case SEC_E_INTERNAL_ERROR: - case SEC_E_NO_CREDENTIALS: - case SEC_E_UNSUPPORTED_FUNCTION: - case SEC_E_APPLICATION_PROTOCOL_MISMATCH: -#endif - default: - failf(data, "schannel: next InitializeSecurityContext failed: %s", - Curl_sspi_strerror(sspi_status, buffer, sizeof(buffer))); - return CURLE_SSL_CONNECT_ERROR; + if(result) + return result; + break; + + case SEC_I_INCOMPLETE_CREDENTIALS: + if(!(backend->req_flags & ISC_REQ_USE_SUPPLIED_CREDS)) { + /* If the server has requested a client certificate, attempt to + continue the handshake without one. This will allow connections to + servers which request a client certificate but do not require + it. */ + backend->req_flags |= ISC_REQ_USE_SUPPLIED_CREDS; + connssl->io_need = CURL_SSL_IO_NEED_SEND; + DEBUGF(infof(data, + "schannel: a client certificate has been requested")); + return CURLE_OK; } + FALLTHROUGH(); + + default: + return schannel_error(data, sspi_status); } /* check if there was additional remaining encrypted data */ @@ -1515,7 +1532,6 @@ schannel_connect_step3(struct Curl_cfilter *cf, struct Curl_easy *data) struct ssl_connect_data *connssl = cf->ctx; struct schannel_ssl_backend_data *backend = (struct schannel_ssl_backend_data *)connssl->backend; - struct ssl_config_data *ssl_config = Curl_ssl_cf_get_config(cf, data); CURLcode result = CURLE_OK; SECURITY_STATUS sspi_status = SEC_E_OK; CERT_CONTEXT *ccert_context = NULL; @@ -1583,7 +1599,7 @@ schannel_connect_step3(struct Curl_cfilter *cf, struct Curl_easy *data) #endif /* save the current session data for possible reuse */ - if(ssl_config->primary.cache_session) { + if(Curl_ssl_scache_use(cf, data)) { Curl_ssl_scache_lock(data); /* Up ref count since call takes ownership */ backend->cred->refcount++; @@ -1689,6 +1705,8 @@ enum schannel_renegotiate_caller_t { SCH_RENEG_CALLER_IS_SEND }; +#define MAX_RENEG_BLOCK_TIME (7 * 1000) /* 7 seconds in milliseconds */ + /* This function renegotiates the connection due to a server request received by schannel_recv. This function returns CURLE_AGAIN if the renegotiation is incomplete. In that case, we remain in the renegotiation (connecting) stage @@ -1700,7 +1718,6 @@ schannel_recv_renegotiate(struct Curl_cfilter *cf, struct Curl_easy *data, { CURLcode result; curl_socket_t sockfd; - const timediff_t max_renegotiate_ms = 5 * 60 * 1000; /* 5 minutes */ struct ssl_connect_data *connssl = cf->ctx; struct schannel_ssl_backend_data *backend = (struct schannel_ssl_backend_data *)connssl->backend; @@ -1710,15 +1727,11 @@ schannel_recv_renegotiate(struct Curl_cfilter *cf, struct Curl_easy *data, failf(data, "schannel: unexpected call to schannel_recv_renegotiate"); return CURLE_SSL_CONNECT_ERROR; } - + DEBUGASSERT(caller <= SCH_RENEG_CALLER_IS_SEND); if(caller == SCH_RENEG_CALLER_IS_RECV) SCH_DEV(infof(data, "schannel: renegotiation caller is schannel_recv")); - else if(caller == SCH_RENEG_CALLER_IS_SEND) + else SCH_DEV(infof(data, "schannel: renegotiation caller is schannel_send")); - else { - failf(data, "schannel: unknown caller for schannel_recv_renegotiate"); - return CURLE_SSL_CONNECT_ERROR; - } sockfd = Curl_conn_cf_get_socket(cf, data); @@ -1745,7 +1758,7 @@ schannel_recv_renegotiate(struct Curl_cfilter *cf, struct Curl_easy *data, timediff_t elapsed; elapsed = curlx_timediff(curlx_now(), rs->start_time); - if(elapsed >= max_renegotiate_ms) { + if(elapsed >= MAX_RENEG_BLOCK_TIME) { failf(data, "schannel: renegotiation timeout"); result = CURLE_SSL_CONNECT_ERROR; break; @@ -1812,12 +1825,12 @@ schannel_recv_renegotiate(struct Curl_cfilter *cf, struct Curl_easy *data, } elapsed = curlx_timediff(curlx_now(), rs->start_time); - if(elapsed >= max_renegotiate_ms) { + if(elapsed >= MAX_RENEG_BLOCK_TIME) { failf(data, "schannel: renegotiation timeout"); result = CURLE_SSL_CONNECT_ERROR; break; } - remaining = max_renegotiate_ms - elapsed; + remaining = MAX_RENEG_BLOCK_TIME - elapsed; if(blocking) { timeout = Curl_timeleft(data, NULL, FALSE); @@ -2633,7 +2646,6 @@ static CURLcode schannel_pkp_pin_peer_pubkey(struct Curl_cfilter *cf, break; /* failed */ } - if(!(((pCertContextServer->dwCertEncodingType & X509_ASN_ENCODING) != 0) && (pCertContextServer->cbCertEncoded > 0))) break; diff --git a/lib/vtls/schannel_int.h b/lib/vtls/schannel_int.h index f9adb5829440..05116dfa1a92 100644 --- a/lib/vtls/schannel_int.h +++ b/lib/vtls/schannel_int.h @@ -29,6 +29,7 @@ #ifdef USE_SCHANNEL #include "vtls.h" +#include "../curl_sha256.h" #if defined(_MSC_VER) && (_MSC_VER <= 1600) /* Workaround for warning: diff --git a/lib/vtls/schannel_verify.c b/lib/vtls/schannel_verify.c index d72790e9df57..a5084944846f 100644 --- a/lib/vtls/schannel_verify.c +++ b/lib/vtls/schannel_verify.c @@ -576,7 +576,7 @@ CURLcode Curl_verify_host(struct Curl_cfilter *cf, conn_hostname, strlen(conn_hostname))) { infof(data, "schannel: connection hostname (%s) validated " - "against certificate name (%s)\n", + "against certificate name (%s)", conn_hostname, cert_hostname); result = CURLE_OK; } diff --git a/lib/vtls/vtls.c b/lib/vtls/vtls.c index 7ee9699dbf0b..3b7a095c8b75 100644 --- a/lib/vtls/vtls.c +++ b/lib/vtls/vtls.c @@ -67,7 +67,6 @@ #include "../multiif.h" #include "../curlx/fopen.h" #include "../curlx/timeval.h" -#include "../curl_md5.h" #include "../curl_sha256.h" #include "../curlx/warnless.h" #include "../curlx/base64.h" @@ -75,8 +74,8 @@ #include "../connect.h" #include "../select.h" #include "../setopt.h" -#include "../strdup.h" #include "../rand.h" +#include "../strdup.h" #ifdef USE_APPLE_SECTRUST #include @@ -1365,6 +1364,15 @@ static CURLcode ssl_cf_connect(struct Curl_cfilter *cf, DEBUGASSERT(connssl); *done = FALSE; + + if(!connssl->prefs_checked) { + if(!ssl_prefs_check(data)) { + result = CURLE_SSL_CONNECT_ERROR; + goto out; + } + connssl->prefs_checked = TRUE; + } + if(!connssl->peer.hostname) { char tls_id[80]; connssl->ssl_impl->version(tls_id, sizeof(tls_id) - 1); @@ -1373,12 +1381,6 @@ static CURLcode ssl_cf_connect(struct Curl_cfilter *cf, goto out; } - if(!connssl->prefs_checked) { - if(!ssl_prefs_check(data)) - return CURLE_SSL_CONNECT_ERROR; - connssl->prefs_checked = TRUE; - } - result = connssl->ssl_impl->do_connect(cf, data, done); if(!result && *done) { @@ -1856,7 +1858,8 @@ static CURLcode vtls_shutdown_blocking(struct Curl_cfilter *cf, if(timeout_ms < 0) { /* no need to continue if time is already up */ failf(data, "SSL shutdown timeout"); - return CURLE_OPERATION_TIMEDOUT; + result = CURLE_OPERATION_TIMEDOUT; + goto out; } result = connssl->ssl_impl->shut_down(cf, data, send_shutdown, done); @@ -1949,7 +1952,7 @@ CURLcode Curl_alpn_to_proto_buf(struct alpn_proto_buf *buf, len = strlen(spec->entries[i]); if(len >= ALPN_NAME_MAX) return CURLE_FAILED_INIT; - blen = (unsigned char)len; + blen = (unsigned char)len; if(off + blen + 1 >= (int)sizeof(buf->data)) return CURLE_FAILED_INIT; buf->data[off++] = blen; @@ -2059,11 +2062,9 @@ CURLcode Curl_alpn_set_negotiated(struct Curl_cfilter *cf, result = CURLE_SSL_CONNECT_ERROR; goto out; } - connssl->negotiated.alpn = malloc(proto_len + 1); + connssl->negotiated.alpn = Curl_memdup0((const char *)proto, proto_len); if(!connssl->negotiated.alpn) return CURLE_OUT_OF_MEMORY; - memcpy(connssl->negotiated.alpn, proto, proto_len); - connssl->negotiated.alpn[proto_len] = 0; } if(proto && proto_len) { diff --git a/lib/vtls/vtls.h b/lib/vtls/vtls.h index c62b8ae25842..180333e63cc8 100644 --- a/lib/vtls/vtls.h +++ b/lib/vtls/vtls.h @@ -99,10 +99,6 @@ CURLsslset Curl_init_sslset_nolock(curl_sslbackend id, const char *name, #define MAX_PINNED_PUBKEY_SIZE 1048576 /* 1MB */ #endif -#ifndef CURL_SHA256_DIGEST_LENGTH -#define CURL_SHA256_DIGEST_LENGTH 32 /* fixed size */ -#endif - curl_sslbackend Curl_ssl_backend(void); /** diff --git a/lib/vtls/vtls_scache.c b/lib/vtls/vtls_scache.c index 763b474cfc7d..b9abc6e3faed 100644 --- a/lib/vtls/vtls_scache.c +++ b/lib/vtls/vtls_scache.c @@ -46,7 +46,6 @@ #include "../curl_sha256.h" #include "../rand.h" #include "../curlx/warnless.h" -#include "../strdup.h" /* The last #include files should be: */ #include "../curl_memory.h" @@ -354,6 +353,15 @@ void Curl_ssl_scache_destroy(struct Curl_ssl_scache *scache) } } +bool Curl_ssl_scache_use(struct Curl_cfilter *cf, struct Curl_easy *data) +{ + if(cf_ssl_scache_get(data)) { + struct ssl_config_data *ssl_config = Curl_ssl_cf_get_config(cf, data); + return ssl_config ? ssl_config->primary.cache_session : FALSE; + } + return FALSE; +} + /* Lock shared SSL session data */ void Curl_ssl_scache_lock(struct Curl_easy *data) { diff --git a/lib/vtls/vtls_scache.h b/lib/vtls/vtls_scache.h index deedccfe8c66..445f21054937 100644 --- a/lib/vtls/vtls_scache.h +++ b/lib/vtls/vtls_scache.h @@ -65,6 +65,12 @@ CURLcode Curl_ssl_peer_key_make(struct Curl_cfilter *cf, const char *tls_id, char **ppeer_key); +/* Return if there is a session cache shall be used. + * An ssl session might not be configured or not available for + * "connect-only" transfers. + */ +bool Curl_ssl_scache_use(struct Curl_cfilter *cf, struct Curl_easy *data); + /* Lock session cache mutex. * Call this before calling other Curl_ssl_*session* functions * Caller should unlock this mutex as soon as possible, as it may block diff --git a/lib/vtls/wolfssl.c b/lib/vtls/wolfssl.c index d4a0e066fa03..19e8c5558aec 100644 --- a/lib/vtls/wolfssl.c +++ b/lib/vtls/wolfssl.c @@ -357,7 +357,7 @@ static int wssl_bio_cf_in_read(WOLFSSL_BIO *bio, char *buf, int blen) struct ssl_connect_data *connssl = cf->ctx; struct wssl_ctx *wssl = (struct wssl_ctx *)connssl->backend; struct Curl_easy *data = CF_DATA_CURRENT(cf); - size_t nread; + size_t nread = 0; CURLcode result = CURLE_OK; DEBUGASSERT(data); @@ -578,7 +578,7 @@ wssl_setup_session(struct Curl_cfilter *cf, if(sess_reuse_cb) { result = sess_reuse_cb(cf, data, alpns, scs, &do_early_data); if(result) - goto out; + goto out; } #ifdef WOLFSSL_EARLY_DATA if(do_early_data) { @@ -1257,7 +1257,7 @@ CURLcode Curl_wssl_ctx_init(struct wssl_ctx *wctx, } #endif - if(ssl_config->primary.cache_session && (transport != TRNSPRT_QUIC)) { + if(Curl_ssl_scache_use(cf, data) && (transport != TRNSPRT_QUIC)) { /* Register to get notified when a new session is received */ wolfSSL_CTX_sess_set_new_cb(wctx->ssl_ctx, wssl_vtls_new_session_cb); } @@ -1316,7 +1316,7 @@ CURLcode Curl_wssl_ctx_init(struct wssl_ctx *wctx, #endif /* Check if there is a cached ID we can/should use here! */ - if(ssl_config->primary.cache_session) { + if(Curl_ssl_scache_use(cf, data)) { /* Set session from cache if there is one */ (void)wssl_setup_session(cf, data, wctx, &alpns, peer->scache_key, sess_reuse_cb); @@ -1491,11 +1491,10 @@ wssl_connect_step1(struct Curl_cfilter *cf, struct Curl_easy *data) } #endif - /* Enable RFC2818 checks */ - if(conn_config->verifyhost) { - char *snihost = connssl->peer.sni ? - connssl->peer.sni : connssl->peer.hostname; - if(wolfSSL_check_domain_name(wssl->ssl, snihost) != + /* Enable RFC2818 checks on domain names. This cannot check + * IP addresses which we need to do extra after the handshake. */ + if(conn_config->verifyhost && connssl->peer.sni) { + if(wolfSSL_check_domain_name(wssl->ssl, connssl->peer.sni) != WOLFSSL_SUCCESS) { return CURLE_SSL_CONNECT_ERROR; } @@ -1546,6 +1545,8 @@ CURLcode Curl_wssl_verify_pinned(struct Curl_cfilter *cf, struct Curl_easy *data, struct wssl_ctx *wssl) { + WOLFSSL_X509 *x509 = NULL; + CURLcode result = CURLE_OK; #ifndef CURL_DISABLE_PROXY const char * const pinnedpubkey = Curl_ssl_cf_is_proxy(cf) ? data->set.str[STRING_SSL_PINNEDPUBLICKEY_PROXY] : @@ -1557,50 +1558,48 @@ CURLcode Curl_wssl_verify_pinned(struct Curl_cfilter *cf, if(pinnedpubkey) { #ifdef KEEP_PEER_CERT - WOLFSSL_X509 *x509; const char *x509_der; int x509_der_len; struct Curl_X509certificate x509_parsed; struct Curl_asn1Element *pubkey; - CURLcode result; + + result = CURLE_SSL_PINNEDPUBKEYNOTMATCH; x509 = wolfSSL_get_peer_certificate(wssl->ssl); if(!x509) { failf(data, "SSL: failed retrieving server certificate"); - return CURLE_SSL_PINNEDPUBKEYNOTMATCH; + goto end; } x509_der = (const char *)wolfSSL_X509_get_der(x509, &x509_der_len); if(!x509_der) { failf(data, "SSL: failed retrieving ASN.1 server certificate"); - return CURLE_SSL_PINNEDPUBKEYNOTMATCH; + goto end; } memset(&x509_parsed, 0, sizeof(x509_parsed)); if(Curl_parseX509(&x509_parsed, x509_der, x509_der + x509_der_len)) - return CURLE_SSL_PINNEDPUBKEYNOTMATCH; + goto end; pubkey = &x509_parsed.subjectPublicKeyInfo; if(!pubkey->header || pubkey->end <= pubkey->header) { failf(data, "SSL: failed retrieving public key from server certificate"); - return CURLE_SSL_PINNEDPUBKEYNOTMATCH; + goto end; } - result = Curl_pin_peer_pubkey(data, - pinnedpubkey, + result = Curl_pin_peer_pubkey(data, pinnedpubkey, (const unsigned char *)pubkey->header, (size_t)(pubkey->end - pubkey->header)); - wolfSSL_FreeX509(x509); - if(result) { + if(result) failf(data, "SSL: public key does not match pinned public key"); - return result; - } #else failf(data, "Library lacks pinning support built-in"); return CURLE_NOT_BUILT_IN; #endif } - return CURLE_OK; +end: + wolfSSL_FreeX509(x509); + return result; } #ifdef WOLFSSL_EARLY_DATA @@ -1719,6 +1718,25 @@ static CURLcode wssl_handshake(struct Curl_cfilter *cf, detail = wolfSSL_get_error(wssl->ssl, ret); CURL_TRC_CF(data, cf, "wolfSSL_connect() -> %d, detail=%d", ret, detail); + /* On a successful handshake with an IP address, do an extra check + * on the peer certificate */ + if(ret == WOLFSSL_SUCCESS && + conn_config->verifyhost && + !connssl->peer.sni) { + /* we have an IP address as host name. */ + WOLFSSL_X509* cert = wolfSSL_get_peer_certificate(wssl->ssl); + if(!cert) { + failf(data, "unable to get peer certificate"); + return CURLE_PEER_FAILED_VERIFICATION; + } + ret = wolfSSL_X509_check_ip_asc(cert, connssl->peer.hostname, 0); + CURL_TRC_CF(data, cf, "check peer certificate for IP match on %s -> %d", + connssl->peer.hostname, ret); + if(ret != WOLFSSL_SUCCESS) + detail = DOMAIN_NAME_MISMATCH; + wolfSSL_X509_free(cert); + } + if(ret == WOLFSSL_SUCCESS) { return CURLE_OK; } diff --git a/lib/vtls/x509asn1.c b/lib/vtls/x509asn1.c index c5fc86351524..96eb512b9038 100644 --- a/lib/vtls/x509asn1.c +++ b/lib/vtls/x509asn1.c @@ -191,7 +191,7 @@ static const char *getASN1Element_(struct Curl_asn1Element *elem, if an error occurs. */ if(!beg || !end || beg >= end || !*beg || ((size_t)(end - beg) > CURL_ASN1_MAX) || - lvl >= CURL_ASN1_MAX_RECURSIONS) + lvl >= CURL_ASN1_MAX_RECURSIONS) return NULL; /* Process header byte. */ diff --git a/lib/ws.c b/lib/ws.c index ec7923555030..891a53dbb458 100644 --- a/lib/ws.c +++ b/lib/ws.c @@ -990,7 +990,7 @@ static CURLcode ws_enc_add_pending(struct Curl_easy *data, (curl_off_t)ws->pending.payload_len, &ws->sendbuf); if(result) { - CURL_TRC_WS(data, "ws_enc_cntrl(), error addiong head: %d", + CURL_TRC_WS(data, "ws_enc_cntrl(), error adding head: %d", result); goto out; } @@ -1560,7 +1560,6 @@ CURLcode curl_ws_recv(CURL *d, void *buffer, return CURLE_BAD_FUNCTION_ARGUMENT; } - memset(&ctx, 0, sizeof(ctx)); ctx.data = data; ctx.ws = ws; diff --git a/m4/curl-apple-sectrust.m4 b/m4/curl-apple-sectrust.m4 index 7ed2aa1e5bff..d42fe860a5fa 100644 --- a/m4/curl-apple-sectrust.m4 +++ b/m4/curl-apple-sectrust.m4 @@ -41,10 +41,10 @@ if test "x$OPT_APPLE_SECTRUST" = xyes; then ],[ build_for_apple="no" ]) - if test "x$build_for_apple" == "xno"; then + if test "x$build_for_apple" = "xno"; then AC_MSG_ERROR([Apple SecTrust can only be enabled for Apple OS targets]) fi - if test "x$OPENSSL_ENABLED" == "x1" -o "x$GNUTLS_ENABLED" == "x1"; then + if test "x$OPENSSL_ENABLED" = "x1" -o "x$GNUTLS_ENABLED" = "x1"; then AC_MSG_RESULT(yes) AC_DEFINE(USE_APPLE_SECTRUST, 1, [enable Apple OS certificate validation]) APPLE_SECTRUST_ENABLED=1 diff --git a/m4/curl-gnutls.m4 b/m4/curl-gnutls.m4 index fb98f8d8fbb4..e934f870dd6b 100644 --- a/m4/curl-gnutls.m4 +++ b/m4/curl-gnutls.m4 @@ -137,11 +137,10 @@ if test "x$OPT_GNUTLS" != xno; then test -z "$ssl_msg" || ssl_backends="${ssl_backends:+$ssl_backends, }$ssl_msg" fi -dnl --- -dnl Check which crypto backend GnuTLS uses -dnl --- - if test "$GNUTLS_ENABLED" = "1"; then + dnl --- + dnl Check which crypto backend GnuTLS uses + dnl --- USE_GNUTLS_NETTLE= # First check if we can detect either crypto library via transitive linking AC_CHECK_LIB(gnutls, nettle_MD5Init, [ USE_GNUTLS_NETTLE=1 ]) @@ -154,17 +153,17 @@ if test "$GNUTLS_ENABLED" = "1"; then AC_MSG_ERROR([GnuTLS found, but nettle was not found]) fi LIBS="-lnettle $LIBS" -fi -dnl --- -dnl We require GnuTLS with SRP support. -dnl --- -if test "$GNUTLS_ENABLED" = "1"; then + dnl --- + dnl We require GnuTLS with SRP support. + dnl + dnl In GnuTLS 3.8.0 (2023-02-10) and upper, this check always succeeds. + dnl Detecting actual TLS-SRP support needs poking the API at runtime. + dnl --- AC_CHECK_LIB(gnutls, gnutls_srp_verifier, [ AC_DEFINE(HAVE_GNUTLS_SRP, 1, [if you have the function gnutls_srp_verifier]) HAVE_GNUTLS_SRP=1 ]) fi - ]) diff --git a/m4/curl-mbedtls.m4 b/m4/curl-mbedtls.m4 index 519c29d79a69..573db4c3ab8f 100644 --- a/m4/curl-mbedtls.m4 +++ b/m4/curl-mbedtls.m4 @@ -106,6 +106,12 @@ if test "x$OPT_MBEDTLS" != xno; then if false; then LIBCURL_PC_REQUIRES_PRIVATE="$LIBCURL_PC_REQUIRES_PRIVATE mbedtls mbedx509 mbedcrypto" fi + + dnl Check DES support in mbedTLS <4. + AC_CHECK_FUNCS(mbedtls_des_crypt_ecb) + if test "$ac_cv_func_mbedtls_des_crypt_ecb" = 'yes'; then + HAVE_MBEDTLS_DES_CRYPT_ECB=1 + fi fi fi dnl mbedTLS not disabled diff --git a/m4/curl-openssl.m4 b/m4/curl-openssl.m4 index 56245c9c2a9e..18c929e2b27e 100644 --- a/m4/curl-openssl.m4 +++ b/m4/curl-openssl.m4 @@ -340,10 +340,31 @@ if test X"$OPT_OPENSSL" != Xno && AC_MSG_ERROR([--with-openssl was given but OpenSSL could not be detected]) fi -dnl --- -dnl We require OpenSSL with SRP support. -dnl --- if test "$OPENSSL_ENABLED" = "1"; then + dnl --- + dnl We check OpenSSL for DES support. + dnl --- + AC_MSG_CHECKING([for DES support in OpenSSL]) + AC_LINK_IFELSE([ + AC_LANG_PROGRAM([[ + #ifndef OPENSSL_SUPPRESS_DEPRECATED + #define OPENSSL_SUPPRESS_DEPRECATED + #endif + #include + ]],[[ + DES_ecb_encrypt(0, 0, 0, DES_ENCRYPT); + ]]) + ],[ + AC_MSG_RESULT([yes]) + AC_DEFINE(HAVE_DES_ECB_ENCRYPT, 1, [if you have the function DES_ecb_encrypt]) + HAVE_DES_ECB_ENCRYPT=1 + ],[ + AC_MSG_RESULT([no]) + ]) + + dnl --- + dnl We require OpenSSL with SRP support. + dnl --- AC_MSG_CHECKING([for SRP support in OpenSSL]) AC_LINK_IFELSE([ AC_LANG_PROGRAM([[ @@ -362,12 +383,10 @@ if test "$OPENSSL_ENABLED" = "1"; then ],[ AC_MSG_RESULT([no]) ]) -fi -dnl --- -dnl Whether the OpenSSL configuration will be loaded automatically -dnl --- -if test X"$OPENSSL_ENABLED" = X"1"; then + dnl --- + dnl Whether the OpenSSL configuration will be loaded automatically + dnl --- AC_ARG_ENABLE(openssl-auto-load-config, AS_HELP_STRING([--enable-openssl-auto-load-config],[Enable automatic loading of OpenSSL configuration]) AS_HELP_STRING([--disable-openssl-auto-load-config],[Disable automatic loading of OpenSSL configuration]), @@ -376,12 +395,10 @@ AS_HELP_STRING([--disable-openssl-auto-load-config],[Disable automatic loading o AC_DEFINE(CURL_DISABLE_OPENSSL_AUTO_LOAD_CONFIG, 1, [if the OpenSSL configuration won't be loaded automatically]) fi ]) -fi -dnl --- -dnl We may use OpenSSL QUIC. -dnl --- -if test "$OPENSSL_ENABLED" = "1"; then + dnl --- + dnl We may use OpenSSL QUIC. + dnl --- AC_MSG_CHECKING([for QUIC support and OpenSSL >= 3.3]) AC_LINK_IFELSE([ AC_LANG_PROGRAM([[ diff --git a/packages/vms/curl_crtl_init.c b/packages/vms/curl_crtl_init.c index 90bcb4c3599c..1c90847cd25d 100644 --- a/packages/vms/curl_crtl_init.c +++ b/packages/vms/curl_crtl_init.c @@ -173,7 +173,7 @@ static int sys_crelnm(const char *logname, } - /* Start of DECC RTL Feature handling */ +/* Start of DECC RTL Feature handling */ /* ** Sets default value for a feature @@ -213,7 +213,6 @@ static void set_features(void) /* We always want the new parse style */ set_feature_default("DECC$ARGV_PARSE_STYLE", ENABLE); - /* Unless we are in POSIX compliant mode, we want the old POSIX root * enabled. */ @@ -244,7 +243,7 @@ static void set_features(void) /* Gets rid of output logs with single character lines in them. */ set_feature_default("DECC$STDIO_CTX_EOL", ENABLE); - /* Fix mv aa.bb aa */ + /* Fix mv aa.bb aa */ set_feature_default("DECC$RENAME_NO_INHERIT", ENABLE); if(use_unix_settings) { @@ -283,7 +282,7 @@ static void set_features(void) /* Set strtol to proper behavior */ set_feature_default("DECC$STRTOL_ERANGE", ENABLE); - /* Commented here to prevent future bugs: A program or user should */ + /* Commented here to prevent future bugs: A program or user should */ /* never ever enable DECC$POSIX_STYLE_UID. */ /* It will probably break all code that accesses UIDs */ /* do_not_set_default ("DECC$POSIX_STYLE_UID", TRUE); */ diff --git a/packages/vms/curl_gnv_build_steps.txt b/packages/vms/curl_gnv_build_steps.txt index b7ea95219b51..46c2c6e0a617 100644 --- a/packages/vms/curl_gnv_build_steps.txt +++ b/packages/vms/curl_gnv_build_steps.txt @@ -48,7 +48,7 @@ VMS_ROOT: is for the source files that are specific to OpenVMS. Note, you should create the VMS_ROOT: directory tree even if it is initially empty. This is where you should put edits if you are making changes. -LCL_ROOT: is manually created to have the same base and sub-directories as +LCL_ROOT: is manually created to have the same base and subdirectories as SRC_ROOT: and VMS_ROOT: The logical name REF_ROOT: may be defined to be a search list for diff --git a/scripts/checksrc.pl b/scripts/checksrc.pl index 7059d6857500..5dcad3e31526 100755 --- a/scripts/checksrc.pl +++ b/scripts/checksrc.pl @@ -131,6 +131,7 @@ 'DOBRACE' => 'A single space between do and open brace', 'EMPTYLINEBRACE' => 'Empty line before the open brace', 'EQUALSNOSPACE' => 'equals sign without following space', + 'EQUALSPACE' => 'equals sign with too many spaces following', 'EQUALSNULL' => 'if/while comparison with == NULL', 'ERRNOVAR' => 'use of bare errno define', 'EXCLAMATIONSPACE' => 'Whitespace after exclamation mark in expression', @@ -1039,6 +1040,12 @@ sub scanfile { $line, length($1)+1, $file, $ol, "no space before equals sign"); } + # check for equals sign with more than one space after it + elsif($l =~ /(.*)[a-z0-9] \= /i) { + checkwarn("EQUALSPACE", + $line, length($1)+3, $file, $ol, + "more than one space after equals sign"); + } # check for plus signs without spaces next to it if($nostr =~ /(.*)[^+]\+[a-z0-9]/i) { diff --git a/scripts/singleuse.pl b/scripts/singleuse.pl index b4cbe3ff4a12..3ce5dda4423b 100755 --- a/scripts/singleuse.pl +++ b/scripts/singleuse.pl @@ -36,7 +36,7 @@ use strict; use warnings; -my $unittests; +my $unittests=""; if(@ARGV && $ARGV[0] eq "--unit") { $unittests = "tests/unit "; shift @ARGV; diff --git a/scripts/wcurl b/scripts/wcurl index 1014779e131b..56c04ba9a4ee 100755 --- a/scripts/wcurl +++ b/scripts/wcurl @@ -29,7 +29,7 @@ # Stop on errors and on usage of unset variables. set -eu -VERSION="2025.09.27" +VERSION="2025.11.04" PROGRAM_NAME="$(basename "$0")" readonly PROGRAM_NAME @@ -65,7 +65,7 @@ Options: multiple times, only the last value is considered. --no-decode-filename: Don't percent-decode the output filename, even if the percent-encoding in - the URL was done by wcurl, e.g.: The URL contained whitespaces. + the URL was done by wcurl, e.g.: The URL contained whitespace. --dry-run: Don't actually execute curl, just print what would be invoked. @@ -77,7 +77,7 @@ Options: instead forwarded to the curl invocation. : URL to be downloaded. Anything that is not a parameter is considered - an URL. Whitespaces are percent-encoded and the URL is passed to curl, which + an URL. Whitespace is percent-encoded and the URL is passed to curl, which then performs the parsing. May be specified more than once. _EOF_ } @@ -113,6 +113,13 @@ readonly PER_URL_PARAMETERS="\ --remote-time \ --retry 5 " +# Valid percent-encode codes that are considered unsafe to be decoded. +# This is a list of space-separated percent-encoded uppercase +# characters. +# 2F = / +# 5C = \ +readonly UNSAFE_PERCENT_ENCODE="2F 5C" + # Whether to invoke curl or not. DRY_RUN="false" @@ -137,6 +144,20 @@ is_subset_of() esac } +# Indicate via exit code whether the HTML code given in the first +# parameter is safe to be decoded. +is_safe_percent_encode() +{ + upper_str=$(printf "%s" "${1}" | tr "[:lower:]" "[:upper:]") + for unsafe in ${UNSAFE_PERCENT_ENCODE}; do + if [ "${unsafe}" = "${upper_str}" ]; then + return 1 + fi + done + + return 0 +} + # Print the given string percent-decoded. percent_decode() { @@ -151,9 +172,10 @@ percent_decode() decode_out="${decode_out}${decode_hex2}" # Skip decoding if this is a control character (00-1F). # Skip decoding if DECODE_FILENAME is not "true". - if is_subset_of "${decode_hex1}" "23456789abcdefABCDEF" \ + if [ "${DECODE_FILENAME}" = "true" ] \ + && is_subset_of "${decode_hex1}" "23456789abcdefABCDEF" \ && is_subset_of "${decode_hex2}" "0123456789abcdefABCDEF" \ - && [ "${DECODE_FILENAME}" = "true" ]; then + && is_safe_percent_encode "${decode_out}"; then # Use printf to decode it into octal and then decode it to the final format. decode_out="$(printf "%b" "\\$(printf %o "0x${decode_hex1}${decode_hex2}")")" fi @@ -301,7 +323,7 @@ while [ -n "${1-}" ]; do # This is the start of the list of URLs. shift for url in "$@"; do - # Encode whitespaces into %20, since wget supports those URLs. + # Encode whitespace into %20, since wget supports those URLs. newurl=$(printf "%s\n" "${url}" | sed 's/ /%20/g') URLS="${URLS} ${newurl}" done @@ -314,7 +336,7 @@ while [ -n "${1-}" ]; do *) # This must be a URL. - # Encode whitespaces into %20, since wget supports those URLs. + # Encode whitespace into %20, since wget supports those URLs. newurl=$(printf "%s\n" "${1}" | sed 's/ /%20/g') URLS="${URLS} ${newurl}" ;; diff --git a/src/tool_cb_rea.c b/src/tool_cb_rea.c index b7bd9a722732..b5c614384521 100644 --- a/src/tool_cb_rea.c +++ b/src/tool_cb_rea.c @@ -26,6 +26,11 @@ #ifdef HAVE_SYS_SELECT_H #include #endif +#ifdef HAVE_POLL_H +#include +#elif defined(HAVE_SYS_POLL_H) +#include +#endif #include "tool_cfgable.h" #include "tool_cb_rea.h" @@ -35,6 +40,49 @@ #include "memdebug.h" /* keep this as LAST include */ +#ifndef _WIN32 +/* Wait up to a number of milliseconds for socket activity. This function + waits on read activity on a file descriptor that is not a socket which + makes it not work with select() or poll() on Windows. */ +static bool waitfd(int waitms, int fd) +{ +#ifdef HAVE_POLL + struct pollfd set; + + set.fd = fd; + set.events = POLLIN; + set.revents = 0; + if(poll(&set, 1, (int)waitms)) + return TRUE; /* timeout */ + return FALSE; +#else + fd_set bits; + struct timeval timeout; + + if(fd >= FD_SETSIZE) + /* can't wait! */ + return FALSE; + + /* wait this long at the most */ + timeout.tv_sec = waitms / 1000; + timeout.tv_usec = (int)((waitms % 1000) * 1000); + + FD_ZERO(&bits); +#ifdef __DJGPP__ +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Warith-conversion" +#endif + FD_SET(fd, &bits); +#ifdef __DJGPP__ +#pragma GCC diagnostic pop +#endif + if(!select(fd + 1, &bits, NULL, NULL, &timeout)) + return TRUE; /* timeout */ + return FALSE; +#endif +} +#endif + /* ** callback for CURLOPT_READFUNCTION */ @@ -59,28 +107,11 @@ size_t tool_read_cb(char *buffer, size_t sz, size_t nmemb, void *userdata) /* timeout */ return 0; #ifndef _WIN32 - /* this logic waits on read activity on a file descriptor that is not a - socket which makes it not work with select() on Windows */ else { - fd_set bits; - struct timeval timeout; - long wait = config->timeout_ms - msdelta; - - /* wait this long at the most */ - timeout.tv_sec = wait/1000; - timeout.tv_usec = (int)((wait%1000)*1000); - - FD_ZERO(&bits); -#ifdef __DJGPP__ -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Warith-conversion" -#endif - FD_SET(per->infd, &bits); -#ifdef __DJGPP__ -#pragma GCC diagnostic pop -#endif - if(!select(per->infd + 1, &bits, NULL, NULL, &timeout)) - return 0; /* timeout */ + long w = config->timeout_ms - msdelta; + if(w > INT_MAX) + w = INT_MAX; + waitfd((int)w, per->infd); } #endif } @@ -154,22 +185,7 @@ int tool_readbusy_cb(void *clientp, if(config->readbusy) { if(ulprev == ulnow) { #ifndef _WIN32 - fd_set bits; - struct timeval timeout; - /* wait this long at the most */ - timeout.tv_sec = 0; - timeout.tv_usec = 1000; - - FD_ZERO(&bits); -#ifdef __DJGPP__ -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Warith-conversion" -#endif - FD_SET(per->infd, &bits); -#ifdef __DJGPP__ -#pragma GCC diagnostic pop -#endif - select(per->infd + 1, &bits, NULL, NULL, &timeout); + waitfd(1, per->infd); #else /* sleep */ curlx_wait_ms(1); diff --git a/src/tool_cfgable.c b/src/tool_cfgable.c index 48148a88ad5b..29d5ecc78220 100644 --- a/src/tool_cfgable.c +++ b/src/tool_cfgable.c @@ -184,8 +184,6 @@ static void free_config_fields(struct OperationConfig *config) tool_safefree(config->ftp_account); tool_safefree(config->ftp_alternative_to_user); tool_safefree(config->aws_sigv4); - tool_safefree(config->proto_str); - tool_safefree(config->proto_redir_str); tool_safefree(config->ech); tool_safefree(config->ech_config); tool_safefree(config->ech_public); diff --git a/src/tool_filetime.c b/src/tool_filetime.c index 6dc2fbbe4234..041cc4dbd6cb 100644 --- a/src/tool_filetime.c +++ b/src/tool_filetime.c @@ -96,13 +96,17 @@ void setfiletime(curl_off_t filetime, const char *filename) HANDLE hfile; TCHAR *tchar_filename = curlx_convert_UTF8_to_tchar(filename); - /* 910670515199 is the maximum Unix filetime that can be used as a - Windows FILETIME without overflow: 30827-12-31T23:59:59. */ + /* 910670515199 is the maximum Unix filetime that can be used as a Windows + FILETIME without overflow: 30827-12-31T23:59:59. */ if(filetime > 910670515199) { - warnf("Failed to set filetime %" CURL_FORMAT_CURL_OFF_T - " on outfile: overflow", filetime); - curlx_unicodefree(tchar_filename); - return; + filetime = 910670515199; + warnf("Capping set filetime to max to avoid overflow"); + } + else if(filetime < -6857222400) { + /* dates before 14 september 1752 (pre-Gregorian calendar) are not + accurate */ + filetime = -6857222400; + warnf("Capping set filetime to minimum to avoid overflow"); } hfile = CreateFile(tchar_filename, FILE_WRITE_ATTRIBUTES, diff --git a/src/tool_formparse.c b/src/tool_formparse.c index cd3cf52e3ebd..004ad6ff4c70 100644 --- a/src/tool_formparse.c +++ b/src/tool_formparse.c @@ -28,6 +28,7 @@ #include "tool_getparam.h" #include "tool_paramhlp.h" #include "tool_formparse.h" +#include "tool_parsecfg.h" #include "memdebug.h" /* keep this as LAST include */ @@ -248,7 +249,7 @@ int tool_mime_stdin_seek(void *instream, curl_off_t offset, int whence) if(offset < 0) return CURL_SEEKFUNC_CANTSEEK; if(!sip->data) { - if(fseek(stdin, (long) (offset + sip->origin), SEEK_SET)) + if(curlx_fseek(stdin, offset + sip->origin, SEEK_SET)) return CURL_SEEKFUNC_CANTSEEK; } sip->curpos = offset; @@ -417,65 +418,63 @@ static int slist_append(struct curl_slist **plist, const char *data) } /* Read headers from a file and append to list. */ -static int read_field_headers(const char *filename, FILE *fp, - struct curl_slist **pheaders) +static int read_field_headers(FILE *fp, struct curl_slist **pheaders) { - size_t hdrlen = 0; - size_t pos = 0; - bool incomment = FALSE; - int lineno = 1; - char hdrbuf[999] = ""; /* Max. header length + 1. */ - - for(;;) { - int c = getc(fp); - if(c == EOF || (!pos && !ISSPACE(c))) { - /* Strip and flush the current header. */ - while(hdrlen && ISSPACE(hdrbuf[hdrlen - 1])) - hdrlen--; - if(hdrlen) { - hdrbuf[hdrlen] = '\0'; - if(slist_append(pheaders, hdrbuf)) { - errorf("Out of memory for field headers"); - return -1; - } - hdrlen = 0; - } - } - - switch(c) { - case EOF: - if(ferror(fp)) { - char errbuf[STRERROR_LEN]; - errorf("Header file %s read error: %s", filename, - curlx_strerror(errno, errbuf, sizeof(errbuf))); - return -1; - } - return 0; /* Done. */ - case '\r': - continue; /* Ignore. */ - case '\n': - pos = 0; - incomment = FALSE; - lineno++; + struct dynbuf line; + bool error = FALSE; + int err = 0; + + curlx_dyn_init(&line, 8092); + while(my_get_line(fp, &line, &error)) { + const char *ptr = curlx_dyn_ptr(&line); + size_t len = curlx_dyn_len(&line); + bool folded = FALSE; + if(ptr[0] == '#') /* comment */ continue; - case '#': - if(!pos) - incomment = TRUE; - break; - } + else if(ptr[0] == ' ') /* a continuation from the line before */ + folded = TRUE; + /* trim off trailing CRLFs and whitespaces */ + while(len && (ISNEWLINE(ptr[len -1]) || ISBLANK(ptr[len - 1]))) + len--; - pos++; - if(!incomment) { - if(hdrlen == sizeof(hdrbuf) - 1) { - warnf("File %s line %d: header too long (truncated)", - filename, lineno); - c = ' '; + if(!len) + continue; + curlx_dyn_setlen(&line, len); /* set the new length */ + + if(folded && *pheaders) { + /* append this new line onto the previous line */ + struct dynbuf amend; + struct curl_slist *l = *pheaders; + curlx_dyn_init(&amend, 8092); + /* find the last node */ + while(l && l->next) + l = l->next; + /* add both parts */ + if(curlx_dyn_add(&amend, l->data) || curlx_dyn_addn(&amend, ptr, len)) { + err = -1; + break; } - if(hdrlen <= sizeof(hdrbuf) - 1) - hdrbuf[hdrlen++] = (char) c; + curl_free(l->data); + /* we use maprintf here to make it a libcurl alloc, to match the previous + curl_slist_append */ + l->data = curl_maprintf("%s", curlx_dyn_ptr(&amend)); + curlx_dyn_free(&amend); + if(!l->data) { + errorf("Out of memory for field headers"); + err = 1; + } + } + else { + err = slist_append(pheaders, ptr); + } + if(err) { + errorf("Out of memory for field headers"); + err = -1; + break; } } - /* NOTREACHED */ + curlx_dyn_free(&line); + return err; } static int get_param_part(char endchar, @@ -572,7 +571,7 @@ static int get_param_part(char endchar, curlx_strerror(errno, errbuf, sizeof(errbuf))); } else { - int i = read_field_headers(hdrfile, fp, &headers); + int i = read_field_headers(fp, &headers); curlx_fclose(fp); if(i) { diff --git a/src/tool_getparam.c b/src/tool_getparam.c index 0cff5b558d9b..5624d3cd761d 100644 --- a/src/tool_getparam.c +++ b/src/tool_getparam.c @@ -2167,7 +2167,8 @@ static ParameterError opt_bool(struct OperationConfig *config, /* opt_file handles file options */ static ParameterError opt_file(struct OperationConfig *config, const struct LongShort *a, - const char *nextarg) + const char *nextarg, + int max_recursive) { ParameterError err = PARAM_OK; if((nextarg[0] == '-') && nextarg[1]) { @@ -2189,9 +2190,13 @@ static ParameterError opt_file(struct OperationConfig *config, GetFileAndPassword(nextarg, &config->cert, &config->key_passwd); break; case C_CONFIG: /* --config */ - if(parseconfig(nextarg)) { - errorf("cannot read config from '%s'", nextarg); - err = PARAM_READ_ERROR; + if(--max_recursive < 0) { + errorf("Max config file recursion level reached (%u)", + CONFIG_MAX_LEVELS); + err = PARAM_BAD_USE; + } + else { + err = parseconfig(nextarg, max_recursive); } break; case C_CRLFILE: /* --crlfile */ @@ -2831,7 +2836,8 @@ ParameterError getparameter(const char *flag, /* f or -long-flag */ const char *nextarg, /* NULL if unset */ bool *usedarg, /* set to TRUE if the arg has been used */ - struct OperationConfig *config) + struct OperationConfig *config, + int max_recursive) { const char *parse = NULL; bool longopt = FALSE; @@ -2962,7 +2968,7 @@ ParameterError getparameter(const char *flag, /* f or -long-flag */ "Maybe ASCII was intended?", nextarg); } if(ARGTYPE(a->desc) == ARG_FILE) - err = opt_file(config, a, nextarg); + err = opt_file(config, a, nextarg, max_recursive); else /* if(ARGTYPE(a->desc) == ARG_STRG) */ err = opt_string(config, a, nextarg); if(a->desc & ARG_CLEAR) @@ -3020,7 +3026,8 @@ ParameterError parse_args(int argc, argv_item_t argv[]) } } - result = getparameter(orig_opt, nextarg, &passarg, config); + result = getparameter(orig_opt, nextarg, &passarg, config, + CONFIG_MAX_LEVELS); unicodefree(nextarg); config = global->last; @@ -3056,7 +3063,7 @@ ParameterError parse_args(int argc, argv_item_t argv[]) bool used; /* Just add the URL please */ - result = getparameter("--url", orig_opt, &used, config); + result = getparameter("--url", orig_opt, &used, config, 0); } if(!result) { diff --git a/src/tool_getparam.h b/src/tool_getparam.h index 6b97b9c11f45..6b37cc50ebe7 100644 --- a/src/tool_getparam.h +++ b/src/tool_getparam.h @@ -335,7 +335,6 @@ struct LongShort { typedef enum { PARAM_OK = 0, - PARAM_OPTION_AMBIGUOUS, PARAM_OPTION_UNKNOWN, PARAM_REQUIRES_PARAMETER, PARAM_BAD_USE, @@ -358,6 +357,7 @@ typedef enum { PARAM_EXPAND_ERROR, /* --expand problem */ PARAM_BLANK_STRING, PARAM_VAR_SYNTAX, /* --variable syntax error */ + PARAM_RECURSION, PARAM_LAST } ParameterError; @@ -368,7 +368,8 @@ const struct LongShort *findshortopt(char letter); ParameterError getparameter(const char *flag, const char *nextarg, bool *usedarg, - struct OperationConfig *config); + struct OperationConfig *config, + int max_recursive); #ifdef UNITTESTS void parse_cert_parameter(const char *cert_parameter, diff --git a/src/tool_help.c b/src/tool_help.c index 7a3a4a3bf430..4509fa2b949d 100644 --- a/src/tool_help.c +++ b/src/tool_help.c @@ -87,14 +87,18 @@ static void print_category(unsigned int category, unsigned int cols) if(len > longdesc) longdesc = len; } - if(longopt + longdesc > cols) + + if(longdesc > cols) + longopt = 0; /* avoid wrap-around */ + else if(longopt + longdesc > cols) longopt = cols - longdesc; for(i = 0; helptext[i].opt; ++i) if(helptext[i].categories & category) { size_t opt = longopt; size_t desclen = strlen(helptext[i].desc); - if(opt + desclen >= (cols - 2)) { + /* avoid wrap-around */ + if(cols >= 2 && opt + desclen >= (cols - 2)) { if(desclen < (cols - 2)) opt = (cols - 3) - desclen; else diff --git a/src/tool_helpers.c b/src/tool_helpers.c index fbf3f1c932e0..b36bd4af1d87 100644 --- a/src/tool_helpers.c +++ b/src/tool_helpers.c @@ -40,8 +40,6 @@ const char *param2text(ParameterError error) return "had unsupported trailing garbage"; case PARAM_OPTION_UNKNOWN: return "is unknown"; - case PARAM_OPTION_AMBIGUOUS: - return "is ambiguous"; case PARAM_REQUIRES_PARAMETER: return "requires parameter"; case PARAM_BAD_USE: diff --git a/src/tool_ipfs.c b/src/tool_ipfs.c index 13124133eaf3..89d12fc1c6a5 100644 --- a/src/tool_ipfs.c +++ b/src/tool_ipfs.c @@ -30,100 +30,70 @@ #include "tool_ipfs.h" #include "memdebug.h" /* keep this as LAST include */ -/* ensure input ends in slash */ -static CURLcode ensure_trailing_slash(char **input) +/* input string ends in slash? */ +static bool has_trailing_slash(const char *input) { - if(*input && **input) { - size_t len = strlen(*input); - if(((*input)[len - 1] != '/')) { - struct dynbuf dyn; - curlx_dyn_init(&dyn, len + 2); - - if(curlx_dyn_addn(&dyn, *input, len)) { - tool_safefree(*input); - return CURLE_OUT_OF_MEMORY; - } - - tool_safefree(*input); - - if(curlx_dyn_addn(&dyn, "/", 1)) - return CURLE_OUT_OF_MEMORY; - - *input = curlx_dyn_ptr(&dyn); - } - } - - return CURLE_OK; + size_t len = strlen(input); + return (len && input[len - 1] == '/'); } static char *ipfs_gateway(void) { - char *ipfs_path = NULL; - char *gateway_composed_file_path = NULL; - FILE *gateway_file = NULL; - char *gateway = curl_getenv("IPFS_GATEWAY"); + char *ipfs_path_c = NULL; + char *gateway_composed_c = NULL; + FILE *gfile = NULL; + char *gateway_env = getenv("IPFS_GATEWAY"); - /* Gateway is found from environment variable. */ - if(gateway) { - if(ensure_trailing_slash(&gateway)) - goto fail; - return gateway; - } + if(gateway_env) + return strdup(gateway_env); /* Try to find the gateway in the IPFS data folder. */ - ipfs_path = curl_getenv("IPFS_PATH"); + ipfs_path_c = curl_getenv("IPFS_PATH"); - if(!ipfs_path) { + if(!ipfs_path_c) { char *home = getenv("HOME"); - if(home && *home) - ipfs_path = curl_maprintf("%s/.ipfs/", home); /* fallback to "~/.ipfs", as that is the default location. */ + if(home && *home) + ipfs_path_c = curl_maprintf("%s/.ipfs/", home); + if(!ipfs_path_c) + goto fail; } - if(!ipfs_path || ensure_trailing_slash(&ipfs_path)) - goto fail; - - gateway_composed_file_path = curl_maprintf("%sgateway", ipfs_path); + gateway_composed_c = + curl_maprintf("%s%sgateway", ipfs_path_c, + has_trailing_slash(ipfs_path_c) ? "" : "/"); - if(!gateway_composed_file_path) + if(!gateway_composed_c) goto fail; - gateway_file = curlx_fopen(gateway_composed_file_path, FOPEN_READTEXT); - tool_safefree(gateway_composed_file_path); + gfile = curlx_fopen(gateway_composed_c, FOPEN_READTEXT); + curl_free(gateway_composed_c); - if(gateway_file) { + if(gfile) { int c; struct dynbuf dyn; + char *gateway = NULL; curlx_dyn_init(&dyn, MAX_GATEWAY_URL_LEN); /* get the first line of the gateway file, ignore the rest */ - while((c = getc(gateway_file)) != EOF && c != '\n' && c != '\r') { + while((c = getc(gfile)) != EOF && c != '\n' && c != '\r') { char c_char = (char)c; if(curlx_dyn_addn(&dyn, &c_char, 1)) goto fail; } - curlx_fclose(gateway_file); - gateway_file = NULL; - if(curlx_dyn_len(&dyn)) gateway = curlx_dyn_ptr(&dyn); - if(gateway) - ensure_trailing_slash(&gateway); - - if(!gateway) - goto fail; - - tool_safefree(ipfs_path); + curl_free(ipfs_path_c); + curlx_fclose(gfile); return gateway; } fail: - if(gateway_file) - curlx_fclose(gateway_file); - tool_safefree(gateway); - tool_safefree(ipfs_path); + if(gfile) + curlx_fclose(gfile); + curl_free(ipfs_path_c); return NULL; } @@ -161,20 +131,13 @@ CURLcode ipfs_url_rewrite(CURLU *uh, const char *protocol, char **url, * if we do have something but if it is an invalid url. */ if(config->ipfs_gateway) { - /* ensure the gateway ends in a trailing / */ - if(ensure_trailing_slash(&config->ipfs_gateway) != CURLE_OK) { - result = CURLE_OUT_OF_MEMORY; - goto clean; - } - if(!curl_url_set(gatewayurl, CURLUPART_URL, config->ipfs_gateway, - CURLU_GUESS_SCHEME)) { + CURLU_GUESS_SCHEME)) { gateway = strdup(config->ipfs_gateway); if(!gateway) { result = CURLE_URL_MALFORMAT; goto clean; } - } else { result = CURLE_BAD_FUNCTION_ARGUMENT; @@ -182,7 +145,6 @@ CURLcode ipfs_url_rewrite(CURLU *uh, const char *protocol, char **url, } } else { - /* this is ensured to end in a trailing / within ipfs_gateway() */ gateway = ipfs_gateway(); if(!gateway) { result = CURLE_FILE_COULDNT_READ_FILE; @@ -203,21 +165,15 @@ CURLcode ipfs_url_rewrite(CURLU *uh, const char *protocol, char **url, } /* get gateway parts */ - if(curl_url_get(gatewayurl, CURLUPART_HOST, - &gwhost, CURLU_URLDECODE)) { + if(curl_url_get(gatewayurl, CURLUPART_HOST, &gwhost, CURLU_URLDECODE) || + curl_url_get(gatewayurl, CURLUPART_SCHEME, &gwscheme, CURLU_URLDECODE) || + curl_url_get(gatewayurl, CURLUPART_PORT, &gwport, CURLU_URLDECODE) || + curl_url_get(gatewayurl, CURLUPART_PATH, &gwpath, CURLU_URLDECODE)) goto clean; - } - - if(curl_url_get(gatewayurl, CURLUPART_SCHEME, - &gwscheme, CURLU_URLDECODE)) { - goto clean; - } - - curl_url_get(gatewayurl, CURLUPART_PORT, &gwport, CURLU_URLDECODE); - curl_url_get(gatewayurl, CURLUPART_PATH, &gwpath, CURLU_URLDECODE); /* get the path from user input */ - curl_url_get(uh, CURLUPART_PATH, &inputpath, CURLU_URLDECODE); + if(curl_url_get(uh, CURLUPART_PATH, &inputpath, CURLU_URLDECODE)) + goto clean; /* inputpath might be NULL or a valid pointer now */ /* set gateway parts in input url */ @@ -230,18 +186,13 @@ CURLcode ipfs_url_rewrite(CURLU *uh, const char *protocol, char **url, if(inputpath && (inputpath[0] == '/') && !inputpath[1]) *inputpath = '\0'; - /* ensure the gateway path ends with a trailing slash */ - ensure_trailing_slash(&gwpath); - - pathbuffer = curl_maprintf("%s%s/%s%s", gwpath, protocol, cid, + pathbuffer = curl_maprintf("%s%s%s/%s%s", gwpath, + has_trailing_slash(gwpath) ? "" : "/", + protocol, cid, inputpath ? inputpath : ""); - if(!pathbuffer) { + if(!pathbuffer || + curl_url_set(uh, CURLUPART_PATH, pathbuffer, CURLU_URLENCODE)) goto clean; - } - - if(curl_url_set(uh, CURLUPART_PATH, pathbuffer, CURLU_URLENCODE)) { - goto clean; - } /* Free whatever it has now, rewriting is next */ tool_safefree(*url); diff --git a/src/tool_operate.c b/src/tool_operate.c index c7d01bb59af2..e1f61a2ba519 100644 --- a/src/tool_operate.c +++ b/src/tool_operate.c @@ -584,10 +584,8 @@ static CURLcode retrycheck(struct OperationConfig *config, rc = fseek(outs->stream, 0, SEEK_END); #else /* ftruncate is not available, so just reposition the file - to the location we would have truncated it. This will not - work properly with large files on 32-bit systems, but - most of those will have ftruncate. */ - rc = fseek(outs->stream, (long)outs->init, SEEK_SET); + to the location we would have truncated it. */ + rc = curlx_fseek(outs->stream, outs->init, SEEK_SET); #endif if(rc) { errorf("Failed seeking to end of file"); @@ -1551,6 +1549,7 @@ static void on_uv_socket(uv_poll_t *req, int status, int events) curl_multi_socket_action(c->uv->s->multi, c->sockfd, flags, &c->uv->s->still_running); + progress_meter(c->uv->s->multi, &c->uv->s->start, FALSE); } /* callback from libuv when timeout expires */ @@ -1563,6 +1562,7 @@ static void on_uv_timeout(uv_timer_t *req) if(uv && uv->s) { curl_multi_socket_action(uv->s->multi, CURL_SOCKET_TIMEOUT, 0, &uv->s->still_running); + progress_meter(uv->s->multi, &uv->s->start, FALSE); } } @@ -1735,7 +1735,6 @@ static CURLcode check_finished(struct parastate *s) int rc; CURLMsg *msg; bool checkmore = FALSE; - progress_meter(s->multi, &s->start, FALSE); do { msg = curl_multi_info_read(s->multi, &rc); if(msg) { @@ -1877,6 +1876,8 @@ static CURLcode parallel_transfers(CURLSH *share) s->mcode = curl_multi_poll(s->multi, NULL, 0, 1000, NULL); if(!s->mcode) s->mcode = curl_multi_perform(s->multi, &s->still_running); + + progress_meter(s->multi, &s->start, FALSE); } (void)progress_meter(s->multi, &s->start, TRUE); @@ -2034,35 +2035,54 @@ static CURLcode is_using_schannel(int *pusing) * environment-specified filename is found then check for CA bundle default * filename curl-ca-bundle.crt in the user's PATH. * + * If the user has set a CA cert/path or disabled peer verification (including + * for DoH, so completely disabled) then these locations are ignored. + * * If Schannel is the selected SSL backend then these locations are ignored. * We allow setting CA location for Schannel only when explicitly specified by * the user via CURLOPT_CAINFO / --cacert. */ - static CURLcode cacertpaths(struct OperationConfig *config) { - CURLcode result = CURLE_OUT_OF_MEMORY; - char *env = curl_getenv("CURL_CA_BUNDLE"); + char *env; + CURLcode result; + int using_schannel; + + if(!feature_ssl || config->cacert || config->capath || + (config->insecure_ok && (!config->doh_url || config->doh_insecure_ok))) + return CURLE_OK; + + result = is_using_schannel(&using_schannel); + if(result || using_schannel) + return result; + + env = curl_getenv("CURL_CA_BUNDLE"); if(env) { config->cacert = strdup(env); curl_free(env); - if(!config->cacert) + if(!config->cacert) { + result = CURLE_OUT_OF_MEMORY; goto fail; + } } else { env = curl_getenv("SSL_CERT_DIR"); if(env) { config->capath = strdup(env); curl_free(env); - if(!config->capath) + if(!config->capath) { + result = CURLE_OUT_OF_MEMORY; goto fail; + } } env = curl_getenv("SSL_CERT_FILE"); if(env) { config->cacert = strdup(env); curl_free(env); - if(!config->cacert) + if(!config->cacert) { + result = CURLE_OUT_OF_MEMORY; goto fail; + } } } @@ -2074,6 +2094,10 @@ static CURLcode cacertpaths(struct OperationConfig *config) if(cafile) { curlx_fclose(cafile); config->cacert = strdup(cacert); + if(!config->cacert) { + result = CURLE_OUT_OF_MEMORY; + goto fail; + } } #elif !defined(CURL_WINDOWS_UWP) && !defined(UNDER_CE) && \ !defined(CURL_DISABLE_CA_SEARCH) @@ -2085,7 +2109,7 @@ static CURLcode cacertpaths(struct OperationConfig *config) #endif return CURLE_OK; fail: - free(config->capath); + Curl_safefree(config->capath); return result; } @@ -2095,44 +2119,21 @@ static CURLcode transfer_per_config(struct OperationConfig *config, bool *added, bool *skipped) { - CURLcode result = CURLE_OK; + CURLcode result; *added = FALSE; /* Check we have a url */ if(!config->url_list || !config->url_list->url) { helpf("(%d) no URL specified", CURLE_FAILED_INIT); - return CURLE_FAILED_INIT; + result = CURLE_FAILED_INIT; } - - /* On Windows we cannot set the path to curl-ca-bundle.crt at compile time. - * We look for the file in two ways: - * 1: look at the environment variable CURL_CA_BUNDLE for a path - * 2: if #1 is not found, use the Windows API function SearchPath() - * to find it along the app's path (includes app's dir and CWD) - * - * We support the environment variable thing for non-Windows platforms - * too. Just for the sake of it. - */ - if(feature_ssl && - !config->cacert && - !config->capath && - (!config->insecure_ok || (config->doh_url && !config->doh_insecure_ok))) { - int using_schannel = -1; - - result = is_using_schannel(&using_schannel); - - /* With the addition of CAINFO support for Schannel, this search could - * find a certificate bundle that was previously ignored. To maintain - * backward compatibility, only perform this search if not using Schannel. - */ - if(!result && !using_schannel) - result = cacertpaths(config); - } - - if(!result) { - result = single_transfer(config, share, added, skipped); - if(!*added || result) - single_transfer_cleanup(); + else { + result = cacertpaths(config); + if(!result) { + result = single_transfer(config, share, added, skipped); + if(!*added || result) + single_transfer_cleanup(); + } } return result; @@ -2195,7 +2196,6 @@ static CURLcode run_all_transfers(CURLSH *share, global->noprogress = orig_noprogress; global->isatty = orig_isatty; - return result; } @@ -2219,7 +2219,7 @@ CURLcode operate(int argc, argv_item_t argv[]) if((argc == 1) || (first_arg && strncmp(first_arg, "-q", 2) && strcmp(first_arg, "--disable"))) { - parseconfig(NULL); /* ignore possible failure */ + parseconfig(NULL, CONFIG_MAX_LEVELS); /* ignore possible failure */ /* If we had no arguments then make sure a url was specified in .curlrc */ if((argc < 2) && (!global->first->url_list)) { diff --git a/src/tool_paramhlp.c b/src/tool_paramhlp.c index 85c24f2ea355..008f0fc388c1 100644 --- a/src/tool_paramhlp.c +++ b/src/tool_paramhlp.c @@ -119,19 +119,6 @@ ParameterError file2string(char **bufp, FILE *file) return PARAM_OK; } -static int myfseek(void *stream, curl_off_t offset, int whence) -{ -#if defined(_WIN32) && defined(USE_WIN32_LARGE_FILES) - return _fseeki64(stream, (__int64)offset, whence); -#elif defined(HAVE_FSEEKO) && defined(HAVE_DECL_FSEEKO) - return fseeko(stream, (off_t)offset, whence); -#else - if(offset > LONG_MAX) - return -1; - return fseek(stream, (long)offset, whence); -#endif -} - ParameterError file2memory_range(char **bufp, size_t *size, FILE *file, curl_off_t starto, curl_off_t endo) { @@ -143,7 +130,7 @@ ParameterError file2memory_range(char **bufp, size_t *size, FILE *file, if(starto) { if(file != stdin) { - if(myfseek(file, starto, SEEK_SET)) + if(curlx_fseek(file, starto, SEEK_SET)) return PARAM_READ_ERROR; offset = starto; } @@ -410,7 +397,7 @@ ParameterError proto2num(const char * const *val, char **ostr, const char *str) const char **protoset; struct dynbuf obuf; size_t proto; - CURLcode result; + CURLcode result = CURLE_OK; curlx_dyn_init(&obuf, MAX_PROTOSTRING); @@ -509,15 +496,19 @@ ParameterError proto2num(const char * const *val, char **ostr, const char *str) qsort((char *) protoset, protoset_index(protoset, NULL), sizeof(*protoset), struplocompare4sort); - result = curlx_dyn_addn(&obuf, "", 0); for(proto = 0; protoset[proto] && !result; proto++) - result = curlx_dyn_addf(&obuf, "%s,", protoset[proto]); + result = curlx_dyn_addf(&obuf, "%s%s", curlx_dyn_len(&obuf) ? "," : "", + protoset[proto]); free((char *) protoset); - curlx_dyn_setlen(&obuf, curlx_dyn_len(&obuf) - 1); + if(result) + return PARAM_NO_MEM; + if(!curlx_dyn_len(&obuf)) { + curlx_dyn_free(&obuf); + return PARAM_BAD_USE; + } free(*ostr); *ostr = curlx_dyn_ptr(&obuf); - - return *ostr ? PARAM_OK : PARAM_NO_MEM; + return PARAM_OK; } /** @@ -728,7 +719,7 @@ CURLcode get_args(struct OperationConfig *config, const size_t i) /* * Parse the string and modify ssl_version in the val argument. Return PARAM_OK - * on success, otherwise a parameter error enum. ONLY ACCEPTS POSITIVE NUMBERS! + * on success, otherwise a parameter error enum. * * Since this function gets called with the 'nextarg' pointer from within the * getparameter a lot, we must check it for NULL before accessing the str diff --git a/src/tool_parsecfg.c b/src/tool_parsecfg.c index 5cf3527ce2a5..03f9930c5d8c 100644 --- a/src/tool_parsecfg.c +++ b/src/tool_parsecfg.c @@ -81,11 +81,11 @@ static int unslashquote(const char *line, struct dynbuf *param) #define MAX_CONFIG_LINE_LENGTH (10*1024*1024) /* return 0 on everything-is-fine, and non-zero otherwise */ -int parseconfig(const char *filename) +ParameterError parseconfig(const char *filename, int max_recursive) { FILE *file = NULL; bool usedarg = FALSE; - int rc = 0; + ParameterError err = PARAM_OK; struct OperationConfig *config = global->last; char *pathalloc = NULL; @@ -96,7 +96,7 @@ int parseconfig(const char *filename) file = curlx_fopen(curlrc, FOPEN_READTEXT); if(!file) { free(curlrc); - return 1; + return PARAM_READ_ERROR; } filename = pathalloc = curlrc; } @@ -133,12 +133,12 @@ int parseconfig(const char *filename) curlx_dyn_init(&pbuf, MAX_CONFIG_LINE_LENGTH); DEBUGASSERT(filename); - while(!rc && my_get_line(file, &buf, &fileerror)) { + while(!err && my_get_line(file, &buf, &fileerror)) { ParameterError res; lineno++; line = curlx_dyn_ptr(&buf); if(!line) { - rc = 1; /* out of memory */ + err = PARAM_NO_MEM; /* out of memory */ break; } @@ -166,9 +166,11 @@ int parseconfig(const char *filename) /* the parameter starts here (unless quoted) */ if(*line == '\"') { /* quoted parameter, do the quote dance */ - rc = unslashquote(++line, &pbuf); - if(rc) + int rc = unslashquote(++line, &pbuf); + if(rc) { + err = PARAM_BAD_USE; break; + } param = curlx_dyn_len(&pbuf) ? curlx_dyn_ptr(&pbuf) : CURL_UNCONST(""); } else { @@ -206,7 +208,7 @@ int parseconfig(const char *filename) #ifdef DEBUG_CONFIG curl_mfprintf(tool_stderr, "PARAM: \"%s\"\n",(param ? param : "(null)")); #endif - res = getparameter(option, param, &usedarg, config); + res = getparameter(option, param, &usedarg, config, max_recursive); config = global->last; if(!res && param && *param && !usedarg) @@ -240,10 +242,12 @@ int parseconfig(const char *filename) res != PARAM_VERSION_INFO_REQUESTED && res != PARAM_ENGINES_REQUESTED && res != PARAM_CA_EMBED_REQUESTED) { - const char *reason = param2text(res); - errorf("%s:%d: '%s' %s", - filename, lineno, option, reason); - rc = (int)res; + /* only show error in the first level config call */ + if(max_recursive == CONFIG_MAX_LEVELS) { + const char *reason = param2text(res); + errorf("%s:%d: '%s' %s", filename, lineno, option, reason); + } + err = res; } } } @@ -252,13 +256,16 @@ int parseconfig(const char *filename) if(file != stdin) curlx_fclose(file); if(fileerror) - rc = 1; + err = PARAM_READ_ERROR; } else - rc = 1; /* could not open the file */ + err = PARAM_READ_ERROR; /* could not open the file */ + + if((err == PARAM_READ_ERROR) && filename) + errorf("cannot read config from '%s'", filename); free(pathalloc); - return rc; + return err; } diff --git a/src/tool_parsecfg.h b/src/tool_parsecfg.h index 46977d8eddc9..3aad9bdd9cbd 100644 --- a/src/tool_parsecfg.h +++ b/src/tool_parsecfg.h @@ -25,7 +25,9 @@ ***************************************************************************/ #include "tool_setup.h" -int parseconfig(const char *filename); +/* only allow this many levels of recursive --config use */ +#define CONFIG_MAX_LEVELS 5 +ParameterError parseconfig(const char *filename, int max_recursive); bool my_get_line(FILE *fp, struct dynbuf *db, bool *error); #endif /* HEADER_CURL_TOOL_PARSECFG_H */ diff --git a/src/tool_progress.c b/src/tool_progress.c index 2fcc7ff85e3d..ad4cd98eb7f5 100644 --- a/src/tool_progress.c +++ b/src/tool_progress.c @@ -253,7 +253,6 @@ bool progress_meter(CURLM *multi, speed = dls > uls ? dls : uls; } - if(dlknown && speed) { curl_off_t est = all_dltotal / speed; curl_off_t left = (all_dltotal - all_dlnow) / speed; diff --git a/src/var.c b/src/var.c index 79c8307248f1..94d79695acc9 100644 --- a/src/var.c +++ b/src/var.c @@ -362,6 +362,7 @@ static ParameterError addvariable(const char *name, p = calloc(1, sizeof(struct tool_var) + nlen); if(p) { memcpy(p->name, name, nlen); + /* the null termination byte is already present from above */ p->content = contalloc ? content : memdup0(content, clen); if(p->content) { @@ -446,11 +447,8 @@ ParameterError setvariable(const char *input) /* read from file or stdin */ FILE *file; bool use_stdin; - struct dynbuf fname; line++; - curlx_dyn_init(&fname, MAX_FILENAME); - use_stdin = !strcmp(line, "-"); if(use_stdin) file = stdin; @@ -469,7 +467,6 @@ ParameterError setvariable(const char *input) if(clen) contalloc = TRUE; } - curlx_dyn_free(&fname); if(!use_stdin && file) curlx_fclose(file); if(err) diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 2b12cef83b21..dd8c274a33ad 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -120,15 +120,15 @@ configure_file( "${CMAKE_CURRENT_SOURCE_DIR}/configurehelp.pm.in" "${CMAKE_CURRENT_BINARY_DIR}/configurehelp.pm" @ONLY) -curl_add_runtests(tests "") # Avoid 'test', which is a reserved target name in CMake -curl_add_runtests(test-quiet "-a -s") -curl_add_runtests(test-am "-a -am") -curl_add_runtests(test-full "-a -p -r") +curl_add_runtests(tests "-a -w") # Avoid 'test', which is a reserved target name in CMake +curl_add_runtests(test-quiet "-a -w -s") +curl_add_runtests(test-am "-a -w -am") +curl_add_runtests(test-full "-a -w -p -r") # ~flaky means that it ignores results of tests using the flaky keyword -curl_add_runtests(test-nonflaky "-a -p ~flaky ~timing-dependent") +curl_add_runtests(test-nonflaky "-a -w -p ~flaky ~timing-dependent") curl_add_runtests(test-ci "-a -p ~flaky ~timing-dependent -r --retry=5 -j20 --buildinfo") -curl_add_runtests(test-torture "-a -t -j20") -curl_add_runtests(test-event "-a -e") +curl_add_runtests(test-torture "-a -w -t -j20") +curl_add_runtests(test-event "-a -w -e") curl_add_pytests(curl-pytest "-n auto") curl_add_pytests(curl-pytest-ci "-n auto -v") diff --git a/tests/Makefile.am b/tests/Makefile.am index 639da3380960..12fdc29cdaec 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -118,18 +118,18 @@ TEST_COMMON += !documentation endif TEST = srcdir=$(srcdir) @PERL@ $(PERLFLAGS) $(srcdir)/runtests.pl $(TEST_COMMON) -TEST_Q = -a -s -TEST_AM = -a -am -TEST_F = -a -p -r -TEST_T = -a -t -j20 -TEST_E = -a -e +TEST_Q = -a -w -s +TEST_AM = -a -w -am +TEST_F = -a -w -p -r +TEST_T = -a -w -t -j20 +TEST_E = -a -w -e # ~ means that it will run all tests matching the keyword, but will # ignore their results (since these ones are likely to fail for no good reason) -TEST_NF = -a -p ~flaky ~timing-dependent +TEST_NF = -a -w -p ~flaky ~timing-dependent -# special CI target derived from nonflaky with CI-specific flags -TEST_CI = $(TEST_NF) -r --retry=5 -j20 --buildinfo +# special target for CI use +TEST_CI = -a -p ~flaky ~timing-dependent -r --retry=5 -j20 --buildinfo PYTEST = pytest endif @@ -178,8 +178,6 @@ checksrc: (cd unit && $(MAKE) checksrc) (cd tunit && $(MAKE) checksrc) (cd server && $(MAKE) checksrc) - (cd client && $(MAKE) checksrc) - (cd http && $(MAKE) checksrc) all-local: $(MANFILES) build-certs diff --git a/tests/data/Makefile.am b/tests/data/Makefile.am index 99c287507f76..bbd97853a33b 100644 --- a/tests/data/Makefile.am +++ b/tests/data/Makefile.am @@ -110,7 +110,7 @@ test736 test737 test738 test739 test740 test741 test742 test743 test744 \ test745 test746 test747 test748 test749 test750 test751 test752 test753 \ test754 test755 test756 test757 test758 test759 test760 test761 test762 \ test763 test764 test765 test766 test767 test768 test769 test770 test771 \ -\ +test772 test773 test774 test775 test776 \ test780 test781 test782 test783 test784 test785 test786 test787 test788 \ test789 test790 test791 test792 test793 test794 test796 test797 \ \ @@ -209,7 +209,7 @@ test1548 test1549 test1550 test1551 test1552 test1553 test1554 test1555 \ test1556 test1557 test1558 test1559 test1560 test1561 test1562 test1563 \ test1564 test1565 test1566 test1567 test1568 test1569 test1570 test1571 \ test1572 test1573 test1574 test1575 test1576 test1577 test1578 test1579 \ -test1580 test1581 test1582 \ +test1580 test1581 test1582 test1583 test1584 test1585 \ \ test1590 test1591 test1592 test1593 test1594 test1595 test1596 test1597 \ test1598 test1599 test1600 test1601 test1602 test1603 test1604 test1605 \ @@ -230,7 +230,7 @@ test1680 test1681 test1682 test1683 \ test1700 test1701 test1702 test1703 test1704 test1705 test1706 test1707 \ test1708 test1709 test1710 test1711 \ \ -test1800 test1801 \ +test1800 test1801 test1802 \ \ test1900 test1901 test1902 test1903 test1904 test1905 test1906 test1907 \ test1908 test1909 test1910 test1911 test1912 test1913 test1914 test1915 \ @@ -279,7 +279,7 @@ test3032 test3033 test3034 test3035 \ \ test3100 test3101 test3102 test3103 test3104 test3105 \ \ -test3200 test3201 test3202 test3203 test3204 test3205 test3207 test3208 \ +test3200 test3201 test3202 test3203 test3204 test3205 test3206 test3207 test3208 \ test3209 test3210 test3211 test3212 test3213 test3214 test3215 \ test4000 test4001 diff --git a/tests/data/test1 b/tests/data/test1 index 4368eb78be3e..ee0b63404884 100644 --- a/tests/data/test1 +++ b/tests/data/test1 @@ -9,7 +9,7 @@ HTTP GET # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -42,7 +42,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION @@ -50,7 +50,7 @@ Accept: */* -Allocations: 135 +Allocations: 120 Maximum allocated: 136000 diff --git a/tests/data/test10 b/tests/data/test10 index ac1486ec0911..89cc509bc41a 100644 --- a/tests/data/test10 +++ b/tests/data/test10 @@ -43,13 +43,13 @@ the # Verify data after the test has been "shot" - -PUT /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 78 - + +PUT /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 78 + Weird file to diff --git a/tests/data/test100 b/tests/data/test100 index b7554383ea30..152633ba8016 100644 --- a/tests/data/test100 +++ b/tests/data/test100 @@ -41,15 +41,15 @@ ftp://%HOSTIP:%FTPPORT/test-%TESTNUMBER/ # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD test-%TESTNUMBER -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD test-%TESTNUMBER +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test1000 b/tests/data/test1000 index fe94010ac313..e679207d304c 100644 --- a/tests/data/test1000 +++ b/tests/data/test1000 @@ -31,12 +31,12 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER/ -I # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD %TESTNUMBER +QUIT diff --git a/tests/data/test1001 b/tests/data/test1001 index 6755e7a1ec3f..6359b145446a 100644 --- a/tests/data/test1001 +++ b/tests/data/test1001 @@ -13,45 +13,45 @@ CUSTOMREQUEST # Server-side - -HTTP/1.1 100 Continue -Server: Microsoft-IIS/5.0 -Date: Sun, 03 Apr 2005 14:57:45 GMT -X-Powered-By: ASP.NET - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - + +HTTP/1.1 100 Continue +Server: Microsoft-IIS/5.0 +Date: Sun, 03 Apr 2005 14:57:45 GMT +X-Powered-By: ASP.NET + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok - -HTTP/1.1 100 Continue -Server: Microsoft-IIS/5.0 -Date: Sun, 03 Apr 2005 14:57:45 GMT -X-Powered-By: ASP.NET - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 100 Continue +Server: Microsoft-IIS/5.0 +Date: Sun, 03 Apr 2005 14:57:45 GMT +X-Powered-By: ASP.NET + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok @@ -82,24 +82,24 @@ test # Verify data after the test has been "shot" - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Content-Range: bytes 2-4/5 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 0 - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="6af4d89c952f4dd4cc215a6878dc499d" -Content-Range: bytes 2-4/5 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 3 - + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Content-Range: bytes 2-4/5 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 0 + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="6af4d89c952f4dd4cc215a6878dc499d" +Content-Range: bytes 2-4/5 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 3 + st diff --git a/tests/data/test1002 b/tests/data/test1002 index de08c0e72283..20e878db562e 100644 --- a/tests/data/test1002 +++ b/tests/data/test1002 @@ -12,45 +12,45 @@ CUSTOMREQUEST - -HTTP/1.1 100 Continue -Server: Microsoft-IIS/5.0 -Date: Sun, 03 Apr 2005 14:57:45 GMT -X-Powered-By: ASP.NET - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - + +HTTP/1.1 100 Continue +Server: Microsoft-IIS/5.0 +Date: Sun, 03 Apr 2005 14:57:45 GMT +X-Powered-By: ASP.NET + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok - -HTTP/1.1 100 Continue -Server: Microsoft-IIS/5.0 -Date: Sun, 03 Apr 2005 14:57:45 GMT -X-Powered-By: ASP.NET - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 100 Continue +Server: Microsoft-IIS/5.0 +Date: Sun, 03 Apr 2005 14:57:45 GMT +X-Powered-By: ASP.NET + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok @@ -81,42 +81,42 @@ test # Verify data after the test has been "shot" - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER.upload1 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Content-Range: bytes 2-4/5 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 0 - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER.upload1 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER.upload1", response="198aa9b6acb4b0c71d02a197a5e41f54" -Content-Range: bytes 2-4/5 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 3 - + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER.upload1 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Content-Range: bytes 2-4/5 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 0 + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER.upload1 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER.upload1", response="198aa9b6acb4b0c71d02a197a5e41f54" +Content-Range: bytes 2-4/5 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 3 + st -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER.upload2 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Content-Range: bytes 2-4/5 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 0 - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER.upload2 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER.upload2", response="d711f0d2042786d930de635ba0d1a1d0" -Content-Range: bytes 2-4/5 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 3 - +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER.upload2 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Content-Range: bytes 2-4/5 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 0 + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER.upload2 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER.upload2", response="d711f0d2042786d930de635ba0d1a1d0" +Content-Range: bytes 2-4/5 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 3 + st diff --git a/tests/data/test1003 b/tests/data/test1003 index 06cfbb61b0ac..a4104d216bc2 100644 --- a/tests/data/test1003 +++ b/tests/data/test1003 @@ -14,7 +14,7 @@ mooo # a ~17000 bytes response string to CWD to make sure the ftp parser deals # with it nicely -REPLY CWD 250 CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB +REPLY CWD 250 C%repeat[16998 x A]%B @@ -33,16 +33,16 @@ ftp://%HOSTIP:%FTPPORT/path/%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1004 b/tests/data/test1004 index 33faaafb197b..f7c25cafdd80 100644 --- a/tests/data/test1004 +++ b/tests/data/test1004 @@ -46,12 +46,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --proxy "" # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1005 b/tests/data/test1005 index 28af85f40e1e..356de5a55636 100644 --- a/tests/data/test1005 +++ b/tests/data/test1005 @@ -14,7 +14,7 @@ mooo # a long set of response strings to CWD to make sure the ftp parser deals # with it nicely -REPLY CWD 250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250 Finally, here is the response +REPLY CWD %repeat[226 x 250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n]%250 Finally, here is the response @@ -33,16 +33,16 @@ ftp://%HOSTIP:%FTPPORT/path/%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1006 b/tests/data/test1006 index b3d093672428..a714a899bc1c 100644 --- a/tests/data/test1006 +++ b/tests/data/test1006 @@ -15,7 +15,7 @@ mooo # with it nicely. The length hits a boundary condition that may make curl # hang. -REPLY CWD 250-AAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250 Finally, here is the response +REPLY CWD 250-AAAAAAAAAAAAAAAAAAAAAAAAA\r\n%repeat[218 x 250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n]%250 Finally, here is the response @@ -34,16 +34,16 @@ ftp://%HOSTIP:%FTPPORT/path/%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1008 b/tests/data/test1008 index fee52702fbab..6d4d80079a8f 100644 --- a/tests/data/test1008 +++ b/tests/data/test1008 @@ -18,26 +18,26 @@ connection-monitor # this is returned first since we get no proxy-auth - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Transfer-Encoding: chunked - -20 -And you should ignore this data. -FA0 -XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -0 - + +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Transfer-Encoding: chunked + +20 +And you should ignore this data. +FA0 +%repeat[4000 x X]% +0 + # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine in proxy land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 - + +HTTP/1.1 200 Things are fine in proxy land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 + # this is returned when we get a GET! @@ -54,21 +54,21 @@ daniel # then this is returned when we get proxy-auth -HTTP/1.1 200 OK swsbounce +HTTP/1.1 200 OK swsbounce%CR Server: no - +%CR Nice proxy auth sir! -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Transfer-Encoding: chunked - -HTTP/1.1 200 Things are fine in proxy land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 - +HTTP/1.1 407 Authorization Required to proxy me my dear%CR +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==%CR +Transfer-Encoding: chunked%CR +%CR +HTTP/1.1 200 Things are fine in proxy land%CR +Server: Microsoft-IIS/5.0%CR +Content-Type: text/html; charset=iso-8859-1%CR +%CR HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Content-Length: 7 @@ -101,24 +101,24 @@ http://test.remote.example.com.%TESTNUMBER:%HTTPPORT/path/%TESTNUMBER0002 --prox # Verify data after the test has been "shot" - -CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT -Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - -CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT -Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - -GET /path/%TESTNUMBER0002 HTTP/1.1 -Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT +Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT +Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +GET /path/%TESTNUMBER0002 HTTP/1.1 +Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + [DISCONNECT] diff --git a/tests/data/test101 b/tests/data/test101 index 3febc5e72aa5..6f0d79efce0e 100644 --- a/tests/data/test101 +++ b/tests/data/test101 @@ -43,14 +43,14 @@ ftp://%HOSTIP:%FTPPORT/ -P %CLIENTIP ^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3} ^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\| - -USER anonymous -PASS ftp@example.com -PWD -PORT 127,0,0,1,243,212 -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +PORT 127,0,0,1,243,212 +TYPE A +LIST +QUIT diff --git a/tests/data/test1010 b/tests/data/test1010 index d45efdc8a5e4..7f5701d32e73 100644 --- a/tests/data/test1010 +++ b/tests/data/test1010 @@ -42,16 +42,16 @@ ftp://%HOSTIP:%FTPPORT//list/this/path/%TESTNUMBER/ ftp://%HOSTIP:%FTPPORT//list # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE A -LIST /list/this/path/%TESTNUMBER -EPSV -LIST /list/this/path/%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE A +LIST /list/this/path/%TESTNUMBER +EPSV +LIST /list/this/path/%TESTNUMBER +QUIT diff --git a/tests/data/test1011 b/tests/data/test1011 index d6a3d1aa7d07..f4de4df6a20a 100644 --- a/tests/data/test1011 +++ b/tests/data/test1011 @@ -9,32 +9,32 @@ followlocation # # Server-side - -HTTP/1.1 301 OK -Location: moo.html&testcase=/%TESTNUMBER0002 -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 0 - + +HTTP/1.1 301 OK +Location: moo.html&testcase=/%TESTNUMBER0002 +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 0 + - -HTTP/1.1 200 OK swsclose -Location: this should be ignored -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.1 200 OK swsclose +Location: this should be ignored +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + body - -HTTP/1.1 301 OK -Location: moo.html&testcase=/%TESTNUMBER0002 -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 0 - -HTTP/1.1 200 OK swsclose -Location: this should be ignored -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.1 301 OK +Location: moo.html&testcase=/%TESTNUMBER0002 +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 0 + +HTTP/1.1 200 OK swsclose +Location: this should be ignored +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + body @@ -56,19 +56,19 @@ http://%HOSTIP:%HTTPPORT/blah/%TESTNUMBER -L -d "moo" # # Verify data after the test has been "shot" - -POST /blah/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 3 -Content-Type: application/x-www-form-urlencoded - -mooGET /blah/moo.html&testcase=/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +POST /blah/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 3 +Content-Type: application/x-www-form-urlencoded + +mooGET /blah/moo.html&testcase=/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1012 b/tests/data/test1012 index da6ec61922d0..d15e10f28e19 100644 --- a/tests/data/test1012 +++ b/tests/data/test1012 @@ -9,32 +9,32 @@ followlocation # # Server-side - -HTTP/1.1 301 OK swsclose -Location: moo.html&testcase=/%TESTNUMBER0002 -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.1 301 OK swsclose +Location: moo.html&testcase=/%TESTNUMBER0002 +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + - -HTTP/1.1 200 OK swsclose -Location: this should be ignored -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.1 200 OK swsclose +Location: this should be ignored +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + body - -HTTP/1.1 301 OK swsclose -Location: moo.html&testcase=/%TESTNUMBER0002 -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - -HTTP/1.1 200 OK swsclose -Location: this should be ignored -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.1 301 OK swsclose +Location: moo.html&testcase=/%TESTNUMBER0002 +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + +HTTP/1.1 200 OK swsclose +Location: this should be ignored +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + body @@ -56,21 +56,21 @@ http://%HOSTIP:%HTTPPORT/blah/%TESTNUMBER -L -d "moo" --post301 # # Verify data after the test has been "shot" - -POST /blah/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 3 -Content-Type: application/x-www-form-urlencoded - -mooPOST /blah/moo.html&testcase=/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 3 -Content-Type: application/x-www-form-urlencoded - + +POST /blah/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 3 +Content-Type: application/x-www-form-urlencoded + +mooPOST /blah/moo.html&testcase=/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 3 +Content-Type: application/x-www-form-urlencoded + moo diff --git a/tests/data/test1015 b/tests/data/test1015 index fc26149121d6..beabcd1b9017 100644 --- a/tests/data/test1015 +++ b/tests/data/test1015 @@ -10,11 +10,11 @@ HTTP POST # # Server-side - -HTTP/1.1 200 I am cool swsclose -Server: Cool server/10.0 -Content-Length: 0 - + +HTTP/1.1 200 I am cool swsclose +Server: Cool server/10.0 +Content-Length: 0 + @@ -38,14 +38,14 @@ content to _?!#$'|<> # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 119 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 119 +Content-Type: application/x-www-form-urlencoded + my+name+is+moo%5B%5D&y e s=s_i_r&v_alue=content+to+_%3F%21%23%24%27%7C%3C%3E%0A&content+to+_%3F%21%23%24%27%7C%3C%3E%0A diff --git a/tests/data/test102 b/tests/data/test102 index 7037986f46a9..99fda2dcc9cd 100644 --- a/tests/data/test102 +++ b/tests/data/test102 @@ -37,16 +37,16 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -PASV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +PASV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1021 b/tests/data/test1021 index bb34615fd611..87a4432645db 100644 --- a/tests/data/test1021 +++ b/tests/data/test1021 @@ -13,31 +13,31 @@ NTLM # Server-side - -HTTP/1.1 407 Authorization Required to proxy me my dear swsclose -Proxy-Authenticate: NTLM -Content-Length: 16 -Connection: close - + +HTTP/1.1 407 Authorization Required to proxy me my dear swsclose +Proxy-Authenticate: NTLM +Content-Length: 16 +Connection: close + data to discard # this is returned first since we get no proxy-auth - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Content-Length: 28 - + +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Content-Length: 28 + 27 bytes and newline to ign # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine in proxy land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 - + +HTTP/1.1 200 Things are fine in proxy land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 + # this is returned when we get a GET! @@ -54,26 +54,26 @@ daniel # then this is returned when we get proxy-auth -HTTP/1.1 200 OK swsbounce +HTTP/1.1 200 OK swsbounce%CR Server: no - +%CR Nice proxy auth sir! -HTTP/1.1 407 Authorization Required to proxy me my dear swsclose -Proxy-Authenticate: NTLM -Content-Length: 16 -Connection: close - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Content-Length: 28 - -HTTP/1.1 200 Things are fine in proxy land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 - +HTTP/1.1 407 Authorization Required to proxy me my dear swsclose%CR +Proxy-Authenticate: NTLM%CR +Content-Length: 16%CR +Connection: close%CR +%CR +HTTP/1.1 407 Authorization Required to proxy me my dear%CR +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==%CR +Content-Length: 28%CR +%CR +HTTP/1.1 200 Things are fine in proxy land%CR +Server: Microsoft-IIS/5.0%CR +Content-Type: text/html; charset=iso-8859-1%CR +%CR HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Content-Length: 7 @@ -106,29 +106,29 @@ http://test.remote.example.com.%TESTNUMBER:%HTTPPORT/path/%TESTNUMBER0002 --prox # Verify data after the test has been "shot" - -CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - -CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT -Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - -CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT -Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - -GET /path/%TESTNUMBER0002 HTTP/1.1 -Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT +Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT +Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +GET /path/%TESTNUMBER0002 HTTP/1.1 +Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1024 b/tests/data/test1024 index 55deec98bbdb..7e7f20aa7407 100644 --- a/tests/data/test1024 +++ b/tests/data/test1024 @@ -10,57 +10,57 @@ cookies # Server-side - -HTTP/1.1 301 This is a weirdo text message -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Location: ../data/%TESTNUMBER0002.txt -Set-Cookie: firstcookie=want; path=/want/ -Content-Length: 69 - + +HTTP/1.1 301 This is a weirdo text message +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Location: ../data/%TESTNUMBER0002.txt +Set-Cookie: firstcookie=want; path=/want/ +Content-Length: 69 + This server reply is for testing a Location: following with cookies - -HTTP/1.1 301 This is a weirdo text message -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Location: ../want/%TESTNUMBER0003.txt -Set-Cookie: nextcookie=data; path=/data/ -Content-Length: 69 - + +HTTP/1.1 301 This is a weirdo text message +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Location: ../want/%TESTNUMBER0003.txt +Set-Cookie: nextcookie=data; path=/data/ +Content-Length: 69 + This server reply is for testing a Location: following with cookies - -HTTP/1.1 200 Followed here fine -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 52 - + +HTTP/1.1 200 Followed here fine +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 52 + If this is received, the location following worked - -HTTP/1.1 301 This is a weirdo text message -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Location: ../data/%TESTNUMBER0002.txt -Set-Cookie: firstcookie=want; path=/want/ -Content-Length: 69 - -HTTP/1.1 301 This is a weirdo text message -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Location: ../want/%TESTNUMBER0003.txt -Set-Cookie: nextcookie=data; path=/data/ -Content-Length: 69 - -HTTP/1.1 200 Followed here fine -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 52 - + +HTTP/1.1 301 This is a weirdo text message +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Location: ../data/%TESTNUMBER0002.txt +Set-Cookie: firstcookie=want; path=/want/ +Content-Length: 69 + +HTTP/1.1 301 This is a weirdo text message +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Location: ../want/%TESTNUMBER0003.txt +Set-Cookie: nextcookie=data; path=/data/ +Content-Length: 69 + +HTTP/1.1 200 Followed here fine +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 52 + If this is received, the location following worked @@ -84,23 +84,23 @@ cookies # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /data/%TESTNUMBER0002.txt HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /want/%TESTNUMBER0003.txt HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Cookie: firstcookie=want - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /data/%TESTNUMBER0002.txt HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /want/%TESTNUMBER0003.txt HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Cookie: firstcookie=want + diff --git a/tests/data/test1025 b/tests/data/test1025 index 762e34a8354e..fb1787605554 100644 --- a/tests/data/test1025 +++ b/tests/data/test1025 @@ -10,57 +10,57 @@ cookies # Server-side - -HTTP/1.1 301 This is a weirdo text message -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Location: ../data/%TESTNUMBER0002.txt -Set-Cookie: firstcookie=want; path=/want/ -Content-Length: 69 - + +HTTP/1.1 301 This is a weirdo text message +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Location: ../data/%TESTNUMBER0002.txt +Set-Cookie: firstcookie=want; path=/want/ +Content-Length: 69 + This server reply is for testing a Location: following with cookies - -HTTP/1.1 301 This is a weirdo text message -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Location: ../want/%TESTNUMBER0003.txt -Set-Cookie: nextcookie=data; path=/data/ -Content-Length: 69 - + +HTTP/1.1 301 This is a weirdo text message +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Location: ../want/%TESTNUMBER0003.txt +Set-Cookie: nextcookie=data; path=/data/ +Content-Length: 69 + This server reply is for testing a Location: following with cookies - -HTTP/1.1 200 Followed here fine -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 52 - + +HTTP/1.1 200 Followed here fine +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 52 + If this is received, the location following worked - -HTTP/1.1 301 This is a weirdo text message -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Location: ../data/%TESTNUMBER0002.txt -Set-Cookie: firstcookie=want; path=/want/ -Content-Length: 69 - -HTTP/1.1 301 This is a weirdo text message -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Location: ../want/%TESTNUMBER0003.txt -Set-Cookie: nextcookie=data; path=/data/ -Content-Length: 69 - -HTTP/1.1 200 Followed here fine -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 52 - + +HTTP/1.1 301 This is a weirdo text message +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Location: ../data/%TESTNUMBER0002.txt +Set-Cookie: firstcookie=want; path=/want/ +Content-Length: 69 + +HTTP/1.1 301 This is a weirdo text message +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Location: ../want/%TESTNUMBER0003.txt +Set-Cookie: nextcookie=data; path=/data/ +Content-Length: 69 + +HTTP/1.1 200 Followed here fine +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 52 + If this is received, the location following worked @@ -84,25 +84,25 @@ cookies # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Cookie: forcedcookie=yes - -GET /data/%TESTNUMBER0002.txt HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Cookie: forcedcookie=yes - -GET /want/%TESTNUMBER0003.txt HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Cookie: firstcookie=want; forcedcookie=yes - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Cookie: forcedcookie=yes + +GET /data/%TESTNUMBER0002.txt HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Cookie: forcedcookie=yes + +GET /want/%TESTNUMBER0003.txt HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Cookie: firstcookie=want; forcedcookie=yes + diff --git a/tests/data/test1028 b/tests/data/test1028 index 3e36597322fd..30dafb720d8d 100644 --- a/tests/data/test1028 +++ b/tests/data/test1028 @@ -13,16 +13,16 @@ FILE # # Server-side - -HTTP/1.1 302 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Content-Type: text/html -Funny-head: yesyes -Location: ftp://%HOSTIP:%FTPPORT/%TESTNUMBER0002 -Content-Length: 0 -Connection: close - + +HTTP/1.1 302 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/html +Funny-head: yesyes +Location: ftp://%HOSTIP:%FTPPORT/%TESTNUMBER0002 +Content-Length: 0 +Connection: close + data @@ -52,31 +52,31 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER0001 -L # # Verify data after the test has been "shot" - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER0002 -RETR %TESTNUMBER0002 -QUIT + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER0002 +RETR %TESTNUMBER0002 +QUIT - -HTTP/1.1 302 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Content-Type: text/html -Funny-head: yesyes -Location: ftp://%HOSTIP:%FTPPORT/%TESTNUMBER0002 -Content-Length: 0 -Connection: close - + +HTTP/1.1 302 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/html +Funny-head: yesyes +Location: ftp://%HOSTIP:%FTPPORT/%TESTNUMBER0002 +Content-Length: 0 +Connection: close + data to see diff --git a/tests/data/test1029 b/tests/data/test1029 index da393cb41b82..2004791cd847 100644 --- a/tests/data/test1029 +++ b/tests/data/test1029 @@ -11,12 +11,12 @@ followlocation # Server-side - -HTTP/1.1 301 This is a weirdo text message swsclose -Location: data/%TESTNUMBER0002.txt?coolsite=yes -Content-Length: 62 -Connection: close - + +HTTP/1.1 301 This is a weirdo text message swsclose +Location: data/%TESTNUMBER0002.txt?coolsite=yes +Content-Length: 62 +Connection: close + This server reply is for testing a simple Location: following @@ -36,21 +36,21 @@ http://%HOSTIP:%HTTPPORT/we/want/our/%TESTNUMBER -w '%{redirect_url} %{url} %{ex # Verify data after the test has been "shot" - -GET /we/want/our/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/our/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 301 This is a weirdo text message swsclose -Location: data/%TESTNUMBER0002.txt?coolsite=yes -Content-Length: 62 -Connection: close - + +HTTP/1.1 301 This is a weirdo text message swsclose +Location: data/%TESTNUMBER0002.txt?coolsite=yes +Content-Length: 62 +Connection: close + This server reply is for testing a simple Location: following -http://%HOSTIP:%HTTPPORT/we/want/our/data/%TESTNUMBER0002.txt?coolsite=yes http://%HOSTIP:%HTTPPORT/we/want/our/%TESTNUMBER 0 +http://%HOSTIP:%HTTPPORT/we/want/our/data/%TESTNUMBER0002.txt?coolsite=yes http://%HOSTIP:%HTTPPORT/we/want/our/%TESTNUMBER 0%SP diff --git a/tests/data/test103 b/tests/data/test103 index 52e5645bc0ea..d6283c62bb5e 100644 --- a/tests/data/test103 +++ b/tests/data/test103 @@ -38,17 +38,17 @@ ftp://%HOSTIP:%FTPPORT/a/path/%TESTNUMBER -P - ^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3} ^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\| - -USER anonymous -PASS ftp@example.com -PWD -CWD a -CWD path -PORT 127,0,0,1,0,0 -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD a +CWD path +PORT 127,0,0,1,0,0 +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1030 b/tests/data/test1030 index 200bd72b3c0f..3265e60ba644 100644 --- a/tests/data/test1030 +++ b/tests/data/test1030 @@ -10,45 +10,45 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 Authorization Required -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" -Content-Length: 26 -Content-Type: text/html; charset=iso-8859-1 - + +HTTP/1.1 401 Authorization Required +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" +Content-Length: 26 +Content-Type: text/html; charset=iso-8859-1 + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 200 OK -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 -Connection: close - + +HTTP/1.1 200 OK +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 +Connection: close + This IS the real page! - -HTTP/1.1 401 Authorization Required -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" -Content-Length: 26 -Content-Type: text/html; charset=iso-8859-1 - -HTTP/1.1 200 OK -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 -Connection: close - + +HTTP/1.1 401 Authorization Required +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" +Content-Length: 26 +Content-Type: text/html; charset=iso-8859-1 + +HTTP/1.1 200 OK +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 +Connection: close + This IS the real page! @@ -80,24 +80,24 @@ four is the number of lines # Verify data after the test has been "shot" - -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 85 - + +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 85 + This is data we upload with PUT a second line line three four is the number of lines -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/%TESTNUMBER", response="01cb59db1ddaac246b072d5f5f0716d9" -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 85 - +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/%TESTNUMBER", response="01cb59db1ddaac246b072d5f5f0716d9" +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 85 + This is data we upload with PUT a second line line three diff --git a/tests/data/test1031 b/tests/data/test1031 index 305a0f7eb57e..6ae80e789bbc 100644 --- a/tests/data/test1031 +++ b/tests/data/test1031 @@ -59,17 +59,17 @@ http://%HOSTIP:%HTTPPORT/want/this/%TESTNUMBER -L # Verify data after the test has been "shot" - -GET /want/this/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /want/this/%TESTNUMBER?coolsite=yes/%TESTNUMBER0002.txt HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/this/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /want/this/%TESTNUMBER?coolsite=yes/%TESTNUMBER0002.txt HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1032 b/tests/data/test1032 index 5456542ae3ed..48832de9618a 100644 --- a/tests/data/test1032 +++ b/tests/data/test1032 @@ -42,13 +42,13 @@ HTTP HEAD with --range # # Verify data after the test has been "shot" - -HEAD /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=1-3 -User-Agent: curl/%VERSION -Accept: */* - + +HEAD /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=1-3 +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1033 b/tests/data/test1033 index b19bf1ce96fd..179d36cf79dc 100644 --- a/tests/data/test1033 +++ b/tests/data/test1033 @@ -47,12 +47,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1034 b/tests/data/test1034 index 2dab1ab44110..b99368fb9fa0 100644 --- a/tests/data/test1034 +++ b/tests/data/test1034 @@ -1,4 +1,4 @@ - + diff --git a/tests/data/test1036 b/tests/data/test1036 index f777a6ff7dd7..b5aeea8dd998 100644 --- a/tests/data/test1036 +++ b/tests/data/test1036 @@ -40,17 +40,17 @@ This is the start!! # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -PASV -TYPE I -SIZE %TESTNUMBER -REST 20 -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +PASV +TYPE I +SIZE %TESTNUMBER +REST 20 +RETR %TESTNUMBER +QUIT This is the start!! diff --git a/tests/data/test1037 b/tests/data/test1037 index 18c9e5266a40..d540a003737d 100644 --- a/tests/data/test1037 +++ b/tests/data/test1037 @@ -39,16 +39,16 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -C - # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -PASV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +PASV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1038 b/tests/data/test1038 index c2e60a0a4994..294c7b94c16b 100644 --- a/tests/data/test1038 +++ b/tests/data/test1038 @@ -34,15 +34,15 @@ worx? # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -APPE %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +APPE %TESTNUMBER +QUIT cr@p******** that we're gonna upload diff --git a/tests/data/test1039 b/tests/data/test1039 index a032c2f9ab5c..6637c5721bd5 100644 --- a/tests/data/test1039 +++ b/tests/data/test1039 @@ -34,15 +34,15 @@ worx? # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -STOR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +STOR %TESTNUMBER +QUIT this is the *****cr@p******** that we're gonna upload diff --git a/tests/data/test104 b/tests/data/test104 index 3674f1da0a8d..fda73d0ee55a 100644 --- a/tests/data/test104 +++ b/tests/data/test104 @@ -27,17 +27,17 @@ ftp://%HOSTIP:%FTPPORT/a/path/%TESTNUMBER --head # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD a -CWD path -MDTM %TESTNUMBER -TYPE I -SIZE %TESTNUMBER -REST 0 -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD a +CWD path +MDTM %TESTNUMBER +TYPE I +SIZE %TESTNUMBER +REST 0 +QUIT diff --git a/tests/data/test1040 b/tests/data/test1040 index bd1e5b0e3238..9c06cc11ab82 100644 --- a/tests/data/test1040 +++ b/tests/data/test1040 @@ -10,11 +10,11 @@ Resume # Server-side - -HTTP/1.1 416 Invalid range -Connection: close -Content-Length: 0 - + +HTTP/1.1 416 Invalid range +Connection: close +Content-Length: 0 + # The file data that exists at the start of the test must be included in @@ -30,10 +30,10 @@ Content-Length: 0 012345678 012345678 012345678 -HTTP/1.1 416 Invalid range -Connection: close -Content-Length: 0 - +HTTP/1.1 416 Invalid range%CR +Connection: close%CR +Content-Length: 0%CR +%CR @@ -65,13 +65,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -C - # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=100- -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=100- +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1041 b/tests/data/test1041 index bb793d51ead8..68ec259d6fbc 100644 --- a/tests/data/test1041 +++ b/tests/data/test1041 @@ -11,15 +11,15 @@ Content-Range # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Accept-Ranges: bytes -Content-Length: 0 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Accept-Ranges: bytes +Content-Length: 0 +Connection: close +Content-Type: text/html + @@ -52,14 +52,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -T%LOGDIR/test%TESTNUMBER.txt -C - # curl doesn't do a HEAD request on the remote file so it has no idea whether # it can skip part of the file or not. Instead, it sends the entire file. - -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Content-Range: bytes 0-99/100 -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 100 - + +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Content-Range: bytes 0-99/100 +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 100 + 012345678 012345678 012345678 diff --git a/tests/data/test1042 b/tests/data/test1042 index a2a5c62f36c2..53fe88e0feed 100644 --- a/tests/data/test1042 +++ b/tests/data/test1042 @@ -11,12 +11,12 @@ FAILURE # Server-side # Some servers (e.g. Apache 1.2) respond this way to an invalid byte range - -HTTP/1.1 200 OK -Connection: close -Content-Length: 100 -Content-Type: text/plain - + +HTTP/1.1 200 OK +Connection: close +Content-Length: 100 +Content-Type: text/plain + 012345678 012345678 012345678 @@ -42,11 +42,11 @@ Content-Type: text/plain 012345678 012345678 012345678 -HTTP/1.1 200 OK -Connection: close -Content-Length: 100 -Content-Type: text/plain - +HTTP/1.1 200 OK%CR +Connection: close%CR +Content-Length: 100%CR +Content-Type: text/plain%CR +%CR @@ -80,13 +80,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -C 200 33 - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=200- -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=200- +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1043 b/tests/data/test1043 index ea850a1f97df..66de6eb81a41 100644 --- a/tests/data/test1043 +++ b/tests/data/test1043 @@ -9,14 +9,14 @@ Resume # Server-side - -HTTP/1.1 206 Partial Content -Date: Mon, 13 Nov 2007 13:41:09 GMT -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -Accept-Ranges: bytes -Content-Length: 60 -Content-Range: bytes 40-99/100 - + +HTTP/1.1 206 Partial Content +Date: Mon, 13 Nov 2007 13:41:09 GMT +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +Accept-Ranges: bytes +Content-Length: 60 +Content-Range: bytes 40-99/100 + 012345678 012345678 012345678 @@ -32,13 +32,13 @@ Content-Range: bytes 40-99/100 012345678 012345678 012345678 -HTTP/1.1 206 Partial Content -Date: Mon, 13 Nov 2007 13:41:09 GMT -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -Accept-Ranges: bytes -Content-Length: 60 -Content-Range: bytes 40-99/100 - +HTTP/1.1 206 Partial Content%CR +Date: Mon, 13 Nov 2007 13:41:09 GMT%CR +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT%CR +Accept-Ranges: bytes%CR +Content-Length: 60%CR +Content-Range: bytes 40-99/100%CR +%CR 012345678 012345678 012345678 @@ -70,13 +70,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -C - # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=40- -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=40- +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1044 b/tests/data/test1044 index 471f099a3f1d..38ca5f007d50 100644 --- a/tests/data/test1044 +++ b/tests/data/test1044 @@ -38,21 +38,21 @@ ftp://%HOSTIP:%FTPPORT/blalbla/%TESTNUMBER -I # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD blalbla -MDTM %TESTNUMBER -TYPE I -SIZE %TESTNUMBER -REST 0 -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD blalbla +MDTM %TESTNUMBER +TYPE I +SIZE %TESTNUMBER +REST 0 +QUIT - -Last-Modified: Sat, 26 Jul 2008 10:26:59 GMT -Content-Length: 9999999999 -Accept-ranges: bytes + +Last-Modified: Sat, 26 Jul 2008 10:26:59 GMT +Content-Length: 9999999999 +Accept-ranges: bytes diff --git a/tests/data/test1045 b/tests/data/test1045 index e8745bf2de36..f7d019f0d201 100644 --- a/tests/data/test1045 +++ b/tests/data/test1045 @@ -10,14 +10,14 @@ HTTP GET # # Server-side - -HTTP/1.1 200 OK -Date: Mon, 28 Jul 2008 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/plain - + +HTTP/1.1 200 OK +Date: Mon, 28 Jul 2008 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/plain + -foo- @@ -39,12 +39,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --interface %CLIENTIP # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1046 b/tests/data/test1046 index fd05b3d5357b..77b924e3f241 100644 --- a/tests/data/test1046 +++ b/tests/data/test1046 @@ -11,14 +11,14 @@ IPv6 # # Server-side - -HTTP/1.1 200 OK -Date: Mon, 28 Jul 2008 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/plain - + +HTTP/1.1 200 OK +Date: Mon, 28 Jul 2008 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/plain + -foo- @@ -43,12 +43,12 @@ HTTP-IPv6 GET with numeric localhost --interface # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOST6IP:%HTTP6PORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOST6IP:%HTTP6PORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1047 b/tests/data/test1047 index b863bd0061bd..772cd4d17bf6 100644 --- a/tests/data/test1047 +++ b/tests/data/test1047 @@ -43,14 +43,14 @@ ftp://%HOSTIP:%FTPPORT/ --interface %CLIENTIP # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test1048 b/tests/data/test1048 index cf90020fef74..3a58d7b51e86 100644 --- a/tests/data/test1048 +++ b/tests/data/test1048 @@ -48,14 +48,14 @@ FTP-IPv6 dir list PASV with localhost --interface # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test105 b/tests/data/test105 index 2a26ac7ecafb..f0a5e4bc2aa7 100644 --- a/tests/data/test105 +++ b/tests/data/test105 @@ -37,15 +37,15 @@ ftp://userdude:passfellow@%HOSTIP:%FTPPORT/%TESTNUMBER --use-ascii # Verify data after the test has been "shot" - -USER userdude -PASS passfellow -PWD -EPSV -PASV -TYPE A -RETR %TESTNUMBER -QUIT + +USER userdude +PASS passfellow +PWD +EPSV +PASV +TYPE A +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1050 b/tests/data/test1050 index 3aa2f017e37f..4accd71baa46 100644 --- a/tests/data/test1050 +++ b/tests/data/test1050 @@ -46,16 +46,16 @@ FTP-IPv6 dir list, EPRT with specified IP # Strip all valid kinds of EPRT that curl can send -s/^(EPRT \|2\|::1\|)(.*)/$1/ +s/^(EPRT \|2\|::1\|)(\S*)/$1/ - -USER anonymous -PASS ftp@example.com -PWD + +USER anonymous +PASS ftp@example.com +PWD EPRT |2|::1| -TYPE A -LIST -QUIT +TYPE A +LIST +QUIT diff --git a/tests/data/test1051 b/tests/data/test1051 index 921aaeb780c1..56db0655f295 100644 --- a/tests/data/test1051 +++ b/tests/data/test1051 @@ -9,40 +9,40 @@ followlocation # Server-side - -HTTP/1.1 301 Redirect swsclose -Date: Thu, 29 Jul 2008 14:49:00 GMT -Server: test-server/fake -Location: data/%TESTNUMBER0002.txt?coolsite=yes -Content-Length: 0 -Connection: close - + +HTTP/1.1 301 Redirect swsclose +Date: Thu, 29 Jul 2008 14:49:00 GMT +Server: test-server/fake +Location: data/%TESTNUMBER0002.txt?coolsite=yes +Content-Length: 0 +Connection: close + - -HTTP/1.1 100 Continue - -HTTP/1.1 200 Followed here fine swsclose -Date: Thu, 29 Jul 2008 14:49:00 GMT -Server: test-server/fake -Content-Length: 51 - + +HTTP/1.1 100 Continue + +HTTP/1.1 200 Followed here fine swsclose +Date: Thu, 29 Jul 2008 14:49:00 GMT +Server: test-server/fake +Content-Length: 51 + If this is received, the location following worked - -HTTP/1.1 301 Redirect swsclose -Date: Thu, 29 Jul 2008 14:49:00 GMT -Server: test-server/fake -Location: data/%TESTNUMBER0002.txt?coolsite=yes -Content-Length: 0 -Connection: close - -HTTP/1.1 100 Continue - -HTTP/1.1 200 Followed here fine swsclose -Date: Thu, 29 Jul 2008 14:49:00 GMT -Server: test-server/fake -Content-Length: 51 - + +HTTP/1.1 301 Redirect swsclose +Date: Thu, 29 Jul 2008 14:49:00 GMT +Server: test-server/fake +Location: data/%TESTNUMBER0002.txt?coolsite=yes +Content-Length: 0 +Connection: close + +HTTP/1.1 100 Continue + +HTTP/1.1 200 Followed here fine swsclose +Date: Thu, 29 Jul 2008 14:49:00 GMT +Server: test-server/fake +Content-Length: 51 + If this is received, the location following worked @@ -79,13 +79,13 @@ the # including the full request-body before it responds. So in this test the # server says 301 and 100 _after_ the entire PUT body has been sent. - -PUT /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 78 - + +PUT /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 78 + Weird file to @@ -95,12 +95,12 @@ for the PUT feature -PUT /want/data/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 78 - +PUT /want/data/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 78 + Weird file to diff --git a/tests/data/test1052 b/tests/data/test1052 index ade77bde5568..c3b62cc12f40 100644 --- a/tests/data/test1052 +++ b/tests/data/test1052 @@ -9,36 +9,36 @@ followlocation # Server-side - -HTTP/1.0 301 Redirect swsclose -Date: Thu, 29 Jul 2008 14:49:00 GMT -Server: test-server/fake -Location: data/%TESTNUMBER0002.txt?coolsite=yes -Content-Length: 0 -Connection: close - + +HTTP/1.0 301 Redirect swsclose +Date: Thu, 29 Jul 2008 14:49:00 GMT +Server: test-server/fake +Location: data/%TESTNUMBER0002.txt?coolsite=yes +Content-Length: 0 +Connection: close + - -HTTP/1.0 200 Followed here fine swsclose -Date: Thu, 29 Jul 2008 14:49:00 GMT -Server: test-server/fake -Content-Length: 51 - + +HTTP/1.0 200 Followed here fine swsclose +Date: Thu, 29 Jul 2008 14:49:00 GMT +Server: test-server/fake +Content-Length: 51 + If this is received, the location following worked - -HTTP/1.0 301 Redirect swsclose -Date: Thu, 29 Jul 2008 14:49:00 GMT -Server: test-server/fake -Location: data/%TESTNUMBER0002.txt?coolsite=yes -Content-Length: 0 -Connection: close - -HTTP/1.0 200 Followed here fine swsclose -Date: Thu, 29 Jul 2008 14:49:00 GMT -Server: test-server/fake -Content-Length: 51 - + +HTTP/1.0 301 Redirect swsclose +Date: Thu, 29 Jul 2008 14:49:00 GMT +Server: test-server/fake +Location: data/%TESTNUMBER0002.txt?coolsite=yes +Content-Length: 0 +Connection: close + +HTTP/1.0 200 Followed here fine swsclose +Date: Thu, 29 Jul 2008 14:49:00 GMT +Server: test-server/fake +Content-Length: 51 + If this is received, the location following worked @@ -74,13 +74,13 @@ the # the test HTTP server is blocking until it has read the entire request, # including the full request-body before it responds. So in this test the # server says 301 and 200 _after_ the entire PUT body has been sent. - -PUT /want/%TESTNUMBER HTTP/1.0 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 78 - + +PUT /want/%TESTNUMBER HTTP/1.0 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 78 + Weird file to @@ -90,12 +90,12 @@ for the PUT feature -PUT /want/data/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.0 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 78 - +PUT /want/data/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.0 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 78 + Weird file to diff --git a/tests/data/test1053 b/tests/data/test1053 index 30ca83ab2d67..4f6266d196cc 100644 --- a/tests/data/test1053 +++ b/tests/data/test1053 @@ -11,39 +11,39 @@ followlocation # Server-side - -HTTP/1.1 307 Redirect swsclose -Date: Thu, 29 Jul 2008 14:49:00 GMT -Server: test-server/fake -Location: data/%TESTNUMBER0002.txt?coolsite=yes -Content-Length: 0 -Connection: close - + +HTTP/1.1 307 Redirect swsclose +Date: Thu, 29 Jul 2008 14:49:00 GMT +Server: test-server/fake +Location: data/%TESTNUMBER0002.txt?coolsite=yes +Content-Length: 0 +Connection: close + - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 11 -Connection: close - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 11 +Connection: close + blablabla - -HTTP/1.1 307 Redirect swsclose -Date: Thu, 29 Jul 2008 14:49:00 GMT -Server: test-server/fake -Location: data/%TESTNUMBER0002.txt?coolsite=yes -Content-Length: 0 -Connection: close - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 11 -Connection: close - + +HTTP/1.1 307 Redirect swsclose +Date: Thu, 29 Jul 2008 14:49:00 GMT +Server: test-server/fake +Location: data/%TESTNUMBER0002.txt?coolsite=yes +Content-Length: 0 +Connection: close + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 11 +Connection: close + blablabla @@ -77,54 +77,54 @@ bar ^(Content-Type: multipart/form-data;|------------).* -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 434 -Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763 - -------------------------------9ef8d6205763 -Content-Disposition: form-data; name="name" - -daniel -------------------------------9ef8d6205763 -Content-Disposition: form-data; name="tool" - -curl -------------------------------9ef8d6205763 -Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt" -Content-Type: text/plain - +POST /we/want/%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Content-Length: 434%CR +Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763%CR +%CR +------------------------------9ef8d6205763%CR +Content-Disposition: form-data; name="name"%CR +%CR +daniel%CR +------------------------------9ef8d6205763%CR +Content-Disposition: form-data; name="tool"%CR +%CR +curl%CR +------------------------------9ef8d6205763%CR +Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt"%CR +Content-Type: text/plain%CR +%CR foo- This is a moo- bar - -------------------------------9ef8d6205763-- -POST /we/want/data/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 434 -Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763 - -------------------------------9ef8d6205763 -Content-Disposition: form-data; name="name" - -daniel -------------------------------9ef8d6205763 -Content-Disposition: form-data; name="tool" - -curl -------------------------------9ef8d6205763 -Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt" -Content-Type: text/plain - +%CR +------------------------------9ef8d6205763--%CR +POST /we/want/data/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Content-Length: 434%CR +Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763%CR +%CR +------------------------------9ef8d6205763%CR +Content-Disposition: form-data; name="name"%CR +%CR +daniel%CR +------------------------------9ef8d6205763%CR +Content-Disposition: form-data; name="tool"%CR +%CR +curl%CR +------------------------------9ef8d6205763%CR +Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt"%CR +Content-Type: text/plain%CR +%CR foo- This is a moo- bar - -------------------------------9ef8d6205763-- +%CR +------------------------------9ef8d6205763--%CR diff --git a/tests/data/test1054 b/tests/data/test1054 index b0425e545c92..be45c816c847 100644 --- a/tests/data/test1054 +++ b/tests/data/test1054 @@ -10,30 +10,30 @@ followlocation # # Server-side - -HTTP/1.1 301 OK swsclose -Location: moo/testcase/%TESTNUMBER0002 -Date: Thu, 31 Jul 2008 14:49:00 GMT -Connection: close - + +HTTP/1.1 301 OK swsclose +Location: moo/testcase/%TESTNUMBER0002 +Date: Thu, 31 Jul 2008 14:49:00 GMT +Connection: close + - -HTTP/1.1 200 OK swsclose -Date: Thu, 31 Jul 2008 14:49:00 GMT -Connection: close - + +HTTP/1.1 200 OK swsclose +Date: Thu, 31 Jul 2008 14:49:00 GMT +Connection: close + body - -HTTP/1.1 301 OK swsclose -Location: moo/testcase/%TESTNUMBER0002 -Date: Thu, 31 Jul 2008 14:49:00 GMT -Connection: close - -HTTP/1.1 200 OK swsclose -Date: Thu, 31 Jul 2008 14:49:00 GMT -Connection: close - + +HTTP/1.1 301 OK swsclose +Location: moo/testcase/%TESTNUMBER0002 +Date: Thu, 31 Jul 2008 14:49:00 GMT +Connection: close + +HTTP/1.1 200 OK swsclose +Date: Thu, 31 Jul 2008 14:49:00 GMT +Connection: close + body @@ -58,21 +58,21 @@ http://%HOSTIP:%HTTPPORT/blah/%TESTNUMBER -L -d @%LOGDIR/test%TESTNUMBER.txt --p # # Verify data after the test has been "shot" - -POST /blah/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 10 -Content-Type: application/x-www-form-urlencoded - -field=dataPOST /blah/moo/testcase/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 10 -Content-Type: application/x-www-form-urlencoded - + +POST /blah/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 10 +Content-Type: application/x-www-form-urlencoded + +field=dataPOST /blah/moo/testcase/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 10 +Content-Type: application/x-www-form-urlencoded + field=data diff --git a/tests/data/test1055 b/tests/data/test1055 index 2d1c604b4dc0..6305ff017b37 100644 --- a/tests/data/test1055 +++ b/tests/data/test1055 @@ -13,15 +13,15 @@ STOR # # Server-side - -HTTP/1.1 307 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Content-Type: text/html -Location: ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -Content-Length: 0 -Connection: close - + +HTTP/1.1 307 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/html +Location: ftp://%HOSTIP:%FTPPORT/%TESTNUMBER +Content-Length: 0 +Connection: close + @@ -55,12 +55,12 @@ the # Verify data after the test has been "shot" -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 78 - +PUT /%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Content-Length: 78%CR +%CR Weird file to @@ -70,13 +70,13 @@ for the PUT feature -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -STOR %TESTNUMBER -QUIT +USER anonymous%CR +PASS ftp@example.com%CR +PWD%CR +EPSV%CR +TYPE I%CR +STOR %TESTNUMBER%CR +QUIT%CR Weird diff --git a/tests/data/test1056 b/tests/data/test1056 index 302b9c541276..babb2d6e02d7 100644 --- a/tests/data/test1056 +++ b/tests/data/test1056 @@ -11,30 +11,30 @@ IPv6 # # Server-side - -HTTP/1.1 302 OK swsclose -Location: http://[::1%259999]:%HTTP6PORT/moo/%TESTNUMBER0002 -Date: Thu, 31 Jul 2008 14:49:00 GMT -Connection: close - + +HTTP/1.1 302 OK swsclose +Location: http://[::1%259999]:%HTTP6PORT/moo/%TESTNUMBER0002 +Date: Thu, 31 Jul 2008 14:49:00 GMT +Connection: close + - -HTTP/1.1 200 OK swsclose -Date: Thu, 31 Jul 2008 14:49:00 GMT -Connection: close - + +HTTP/1.1 200 OK swsclose +Date: Thu, 31 Jul 2008 14:49:00 GMT +Connection: close + body - -HTTP/1.1 302 OK swsclose -Location: http://[::1%259999]:%HTTP6PORT/moo/%TESTNUMBER0002 -Date: Thu, 31 Jul 2008 14:49:00 GMT -Connection: close - -HTTP/1.1 200 OK swsclose -Date: Thu, 31 Jul 2008 14:49:00 GMT -Connection: close - + +HTTP/1.1 302 OK swsclose +Location: http://[::1%259999]:%HTTP6PORT/moo/%TESTNUMBER0002 +Date: Thu, 31 Jul 2008 14:49:00 GMT +Connection: close + +HTTP/1.1 200 OK swsclose +Date: Thu, 31 Jul 2008 14:49:00 GMT +Connection: close + body @@ -66,17 +66,17 @@ http://%HOSTIP:%HTTPPORT/we/are/all/twits/%TESTNUMBER -L # # Verify data after the test has been "shot" - -GET /we/are/all/twits/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /moo/%TESTNUMBER0002 HTTP/1.1 -Host: %HOST6IP:%HTTP6PORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/are/all/twits/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /moo/%TESTNUMBER0002 HTTP/1.1 +Host: %HOST6IP:%HTTP6PORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1057 b/tests/data/test1057 index a7cb3bc61ef2..0a6f1bcd09d6 100644 --- a/tests/data/test1057 +++ b/tests/data/test1057 @@ -36,17 +36,17 @@ FTP retrieve a byte-range relative to end of file # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -REST 52 -RETR %TESTNUMBER -ABOR -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +REST 52 +RETR %TESTNUMBER +ABOR +QUIT diff --git a/tests/data/test1058 b/tests/data/test1058 index 794d2ef22a7f..38234e2a957c 100644 --- a/tests/data/test1058 +++ b/tests/data/test1058 @@ -9,15 +9,15 @@ Content-Range # Server-side - -HTTP/1.1 206 Partial Content -Date: Thu, 31 Jul 2008 13:41:09 GMT -Accept-Ranges: bytes -Content-Length: 101 -Content-Range: bytes 100-200/201 -Connection: close -Content-Type: text/html - + +HTTP/1.1 206 Partial Content +Date: Thu, 31 Jul 2008 13:41:09 GMT +Accept-Ranges: bytes +Content-Length: 101 +Content-Range: bytes 100-200/201 +Connection: close +Content-Type: text/html + ..partial data returned from the server as a result of setting an explicit byte range in the request @@ -39,13 +39,13 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER -r -101 # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=-101 -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=-101 +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1059 b/tests/data/test1059 index 5da753e59459..688b92850a43 100644 --- a/tests/data/test1059 +++ b/tests/data/test1059 @@ -12,12 +12,12 @@ FAILURE # # Server-side - -HTTP/1.1 501 Method not implemented swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close -Content-Length: 0 - + +HTTP/1.1 501 Method not implemented swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close +Content-Length: 0 + @@ -46,12 +46,12 @@ ftp://test-number:%TESTNUMBER/wanted/page -p -x %HOSTIP:%HTTPPORT 56 - -CONNECT test-number:%TESTNUMBER HTTP/1.1 -Host: test-number:%TESTNUMBER -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT test-number:%TESTNUMBER HTTP/1.1 +Host: test-number:%TESTNUMBER +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test106 b/tests/data/test106 index b5e1e6929b3a..3e1784c1d603 100644 --- a/tests/data/test106 +++ b/tests/data/test106 @@ -35,17 +35,17 @@ FTP GET with type=A style ASCII URL using %20 codes # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD / -CWD path with spaces -CWD and things2 -EPSV -TYPE A -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD / +CWD path with spaces +CWD and things2 +EPSV +TYPE A +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1060 b/tests/data/test1060 index 50ce55a87f11..25abe3622557 100644 --- a/tests/data/test1060 +++ b/tests/data/test1060 @@ -14,812 +14,13 @@ HTTP proxy Digest auth # this is returned first since we get no proxy-auth - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" -Content-Length: 40000 -X-tra-long-header: %repeat[16080 x a]% - -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" +Content-Length: 35701 +X-tra-long-header: %repeat[16080 x a]% + +%repeat[700 x And you should ignore this data. aaaaaaaaaaaaaaaa %0a]% # this is returned when we get a GET! @@ -836,20 +37,20 @@ daniel # then this is returned when we get proxy-auth -HTTP/1.1 200 OK +HTTP/1.1 200 OK%CR Server: no - +%CR -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" -Content-Length: 40000 -X-tra-long-header: %repeat[16080 x a]% - -HTTP/1.1 200 OK +HTTP/1.1 407 Authorization Required to proxy me my dear%CR +Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345"%CR +Content-Length: 35701%CR +X-tra-long-header: %repeat[16080 x a]%%CR +%CR +HTTP/1.1 200 OK%CR Server: no - +%CR HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Content-Length: 7 @@ -882,23 +83,23 @@ http://test.remote.haxx.se.%TESTNUMBER:8990/path/%TESTNUMBER0002 --proxy http:// # Verify data after the test has been "shot" - -CONNECT test.remote.haxx.se.%TESTNUMBER:8990 HTTP/1.1 -Host: test.remote.haxx.se.%TESTNUMBER:8990 -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - -CONNECT test.remote.haxx.se.%TESTNUMBER:8990 HTTP/1.1 -Host: test.remote.haxx.se.%TESTNUMBER:8990 -Proxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="test.remote.haxx.se.%TESTNUMBER:8990", response="e1fbed39c26f4efe284adc0e576ff638" -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - -GET /path/%TESTNUMBER0002 HTTP/1.1 -Host: test.remote.haxx.se.%TESTNUMBER:8990 -User-Agent: curl/%VERSION -Accept: */* - + +CONNECT test.remote.haxx.se.%TESTNUMBER:8990 HTTP/1.1 +Host: test.remote.haxx.se.%TESTNUMBER:8990 +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +CONNECT test.remote.haxx.se.%TESTNUMBER:8990 HTTP/1.1 +Host: test.remote.haxx.se.%TESTNUMBER:8990 +Proxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="test.remote.haxx.se.%TESTNUMBER:8990", response="e1fbed39c26f4efe284adc0e576ff638" +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +GET /path/%TESTNUMBER0002 HTTP/1.1 +Host: test.remote.haxx.se.%TESTNUMBER:8990 +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1061 b/tests/data/test1061 index 9e2402a58494..94e0c205ade8 100644 --- a/tests/data/test1061 +++ b/tests/data/test1061 @@ -16,815 +16,16 @@ HTTP proxy Digest auth # this is returned first since we get no proxy-auth -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" -Transfer-Encoding: chunked -X-tra-long-header: %repeat[16080 x a]% - -9c40 -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -And you should ignore this data. aaaaaaaaaaaaaaaa -end of 1 KB aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa - -0 - +HTTP/1.1 407 Authorization Required to proxy me my dear%CR +Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345"%CR +Transfer-Encoding: chunked%CR +X-tra-long-header: %repeat[16080 x a]%%CR +%CR +9c41%CR +%repeat[800 x And you should ignore this data. aaaaaaaaaaaaaaa %0a]% +%CR +0%CR +%CR # this is returned when we get a GET! @@ -841,20 +42,20 @@ daniel # then this is returned when we get proxy-auth -HTTP/1.1 200 OK +HTTP/1.1 200 OK%CR Server: no - +%CR -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" -Transfer-Encoding: chunked -X-tra-long-header: %repeat[16080 x a]% - -HTTP/1.1 200 OK +HTTP/1.1 407 Authorization Required to proxy me my dear%CR +Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345"%CR +Transfer-Encoding: chunked%CR +X-tra-long-header: %repeat[16080 x a]%%CR +%CR +HTTP/1.1 200 OK%CR Server: no - +%CR HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Content-Length: 7 @@ -887,23 +88,23 @@ http://test.remote.haxx.se.%TESTNUMBER:8990/path/%TESTNUMBER0002 --proxy http:// # Verify data after the test has been "shot" - -CONNECT test.remote.haxx.se.%TESTNUMBER:8990 HTTP/1.1 -Host: test.remote.haxx.se.%TESTNUMBER:8990 -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - -CONNECT test.remote.haxx.se.%TESTNUMBER:8990 HTTP/1.1 -Host: test.remote.haxx.se.%TESTNUMBER:8990 -Proxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="test.remote.haxx.se.%TESTNUMBER:8990", response="4e23449fa93224834299e7282a70472c" -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - -GET /path/%TESTNUMBER0002 HTTP/1.1 -Host: test.remote.haxx.se.%TESTNUMBER:8990 -User-Agent: curl/%VERSION -Accept: */* - + +CONNECT test.remote.haxx.se.%TESTNUMBER:8990 HTTP/1.1 +Host: test.remote.haxx.se.%TESTNUMBER:8990 +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +CONNECT test.remote.haxx.se.%TESTNUMBER:8990 HTTP/1.1 +Host: test.remote.haxx.se.%TESTNUMBER:8990 +Proxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="test.remote.haxx.se.%TESTNUMBER:8990", response="4e23449fa93224834299e7282a70472c" +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +GET /path/%TESTNUMBER0002 HTTP/1.1 +Host: test.remote.haxx.se.%TESTNUMBER:8990 +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1062 b/tests/data/test1062 index 31a27a9473b0..5b8c36f55fac 100644 --- a/tests/data/test1062 +++ b/tests/data/test1062 @@ -15,7 +15,7 @@ mooo # a long set of response strings to CWD to make sure the ftp parser deals # with it nicely -REPLY CWD 250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n250-A Exactly fill curl's buffer\r\n250 Finally, here is the response, boundary condition +REPLY CWD %repeat[218 x 250-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\r\n]%250-A Exactly fill curl's buffer\r\n250 Finally, here is the response, boundary condition @@ -34,16 +34,16 @@ ftp://%HOSTIP:%FTPPORT/path/%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1064 b/tests/data/test1064 index 55eeb38dac4a..e3872a8dfc40 100644 --- a/tests/data/test1064 +++ b/tests/data/test1064 @@ -7,20 +7,20 @@ HTTP PUT - -HTTP/1.1 200 A OK -Server: curl test -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 200 A OK +Server: curl test +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok - -HTTP/1.1 200 A OK -Server: curl test -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 9 - + +HTTP/1.1 200 A OK +Server: curl test +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 9 + still ok @@ -44,34 +44,34 @@ test # Verify data after the test has been "shot" - -PUT /%TESTNUMBER.upload1 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 5 - + +PUT /%TESTNUMBER.upload1 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 5 + test -PUT /%TESTNUMBER0002.upload2 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 5 - +PUT /%TESTNUMBER0002.upload2 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 5 + test - -HTTP/1.1 200 A OK -Server: curl test -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 200 A OK +Server: curl test +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok -HTTP/1.1 200 A OK -Server: curl test -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 9 - +HTTP/1.1 200 A OK +Server: curl test +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 9 + still ok diff --git a/tests/data/test1065 b/tests/data/test1065 index 3b1c652b585e..bcdabbb39403 100644 --- a/tests/data/test1065 +++ b/tests/data/test1065 @@ -8,20 +8,20 @@ HTTP GET - -HTTP/1.1 200 A OK -Server: curl test -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 200 A OK +Server: curl test +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok - -HTTP/1.1 200 A OK -Server: curl test -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 9 - + +HTTP/1.1 200 A OK +Server: curl test +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 9 + still ok @@ -45,32 +45,32 @@ test # Verify data after the test has been "shot" - -PUT /%TESTNUMBER.upload1 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 5 - + +PUT /%TESTNUMBER.upload1 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 5 + test -GET /%TESTNUMBER0002.url2 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - +GET /%TESTNUMBER0002.url2 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 A OK -Server: curl test -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 200 A OK +Server: curl test +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok -HTTP/1.1 200 A OK -Server: curl test -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 9 - +HTTP/1.1 200 A OK +Server: curl test +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 9 + still ok diff --git a/tests/data/test1066 b/tests/data/test1066 index 5b2b178f0969..fbd74c40af0e 100644 --- a/tests/data/test1066 +++ b/tests/data/test1066 @@ -8,20 +8,20 @@ HTTP GET # Server-side - -HTTP/1.1 200 OK -Server: thebest/1.0 -Content-Type: text/plain -Content-Length: 6 - + +HTTP/1.1 200 OK +Server: thebest/1.0 +Content-Type: text/plain +Content-Length: 6 + first - -HTTP/1.1 200 OK -Server: thebest/1.0 -Content-Type: text/plain -Content-Length: 7 - + +HTTP/1.1 200 OK +Server: thebest/1.0 +Content-Type: text/plain +Content-Length: 7 + second @@ -41,40 +41,40 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER http://%HOSTIP:%HTTPPORT/want/%TESTNUM # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /want/%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /want/%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + -HTTP/1.1 200 OK -HTTP/1.1 200 OK -Server: thebest/1.0 -Server: thebest/1.0 -Content-Type: text/plain -Content-Type: text/plain -Content-Length: 6 -Content-Length: 6 - - +HTTP/1.1 200 OK%CR +HTTP/1.1 200 OK%CR +Server: thebest/1.0%CR +Server: thebest/1.0%CR +Content-Type: text/plain%CR +Content-Type: text/plain%CR +Content-Length: 6%CR +Content-Length: 6%CR +%CR +%CR first -HTTP/1.1 200 OK -HTTP/1.1 200 OK -Server: thebest/1.0 -Server: thebest/1.0 -Content-Type: text/plain -Content-Type: text/plain -Content-Length: 7 -Content-Length: 7 - - +HTTP/1.1 200 OK%CR +HTTP/1.1 200 OK%CR +Server: thebest/1.0%CR +Server: thebest/1.0%CR +Content-Type: text/plain%CR +Content-Type: text/plain%CR +Content-Length: 7%CR +Content-Length: 7%CR +%CR +%CR second diff --git a/tests/data/test1067 b/tests/data/test1067 index 8bb2233e36e5..7085c6012146 100644 --- a/tests/data/test1067 +++ b/tests/data/test1067 @@ -59,19 +59,19 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER --silent --location --referer "firston # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Referer: firstone.html - -GET /want/data/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Referer: http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Referer: firstone.html + +GET /want/data/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Referer: http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER + |http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER| diff --git a/tests/data/test1068 b/tests/data/test1068 index 982385400ed6..7c1be009ac18 100644 --- a/tests/data/test1068 +++ b/tests/data/test1068 @@ -10,11 +10,11 @@ chunked Transfer-Encoding # Server-side - -HTTP/1.0 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake - + +HTTP/1.0 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake + blablabla @@ -39,18 +39,18 @@ more than one byte # Verify data after the test has been "shot" -PUT /bzz/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Transfer-Encoding: chunked -Expect: 100-continue - -13 +PUT /bzz/%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Transfer-Encoding: chunked%CR +Expect: 100-continue%CR +%CR +13%CR more than one byte - -0 - +%CR +0%CR +%CR diff --git a/tests/data/test107 b/tests/data/test107 index a741b7667f8b..48ef6cc7c429 100644 --- a/tests/data/test107 +++ b/tests/data/test107 @@ -38,14 +38,14 @@ that FTP works so does it? - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -STOR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +STOR %TESTNUMBER +QUIT diff --git a/tests/data/test1070 b/tests/data/test1070 index 18c2df3adcd2..3305b7b2b2a8 100644 --- a/tests/data/test1070 +++ b/tests/data/test1070 @@ -8,13 +8,13 @@ HTTP POST # # Server-side - -HTTP/1.1 403 Go away and swsclose -Server: test-server/fake -Content-Type: text/html -Content-Length: 55 -Connection: close - + +HTTP/1.1 403 Go away and swsclose +Server: test-server/fake +Content-Type: text/html +Content-Length: 55 +Connection: close + you are not supposed to be allowed to send things here @@ -41,23 +41,23 @@ rather large (larger than your typical TCP packet) so that not all of it can nor will be sent in one go as that is kind of the point of this test! Here's 2000 x 'O': -OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO +%repeat[2000 x O]% # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Expect: 100-continue -Content-Length: 2313 -Content-Type: application/x-www-form-urlencoded - -This creates + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Expect: 100-continue +Content-Length: 2313 +Content-Type: application/x-www-form-urlencoded + +This creates%SP diff --git a/tests/data/test1071 b/tests/data/test1071 index 1b320c2bfa02..50b8a460ebbf 100644 --- a/tests/data/test1071 +++ b/tests/data/test1071 @@ -14,47 +14,47 @@ HTTP/1.0 # Server-side - -HTTP/1.0 401 Authorization Required swsclose -Server: testcurl -WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" -Content-Type: text/plain -Content-Length: 35 -Connection: close - + +HTTP/1.0 401 Authorization Required swsclose +Server: testcurl +WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" +Content-Type: text/plain +Content-Length: 35 +Connection: close + Try again on this HTTP 1.0 server! # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.0 200 OK swsclose -Server: testcurl -Content-Type: text/plain -Content-Length: 23 -Connection: close - + +HTTP/1.0 200 OK swsclose +Server: testcurl +Content-Type: text/plain +Content-Length: 23 +Connection: close + This IS the real page! - -HTTP/1.0 401 Authorization Required swsclose -Server: testcurl -WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" -Content-Type: text/plain -Content-Length: 35 -Connection: close - -HTTP/1.0 200 OK swsclose -Server: testcurl -Content-Type: text/plain -Content-Length: 23 -Connection: close - + +HTTP/1.0 401 Authorization Required swsclose +Server: testcurl +WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" +Content-Type: text/plain +Content-Length: 35 +Connection: close + +HTTP/1.0 200 OK swsclose +Server: testcurl +Content-Type: text/plain +Content-Length: 23 +Connection: close + This IS the real page! @@ -86,24 +86,24 @@ four is the number of lines # Verify data after the test has been "shot" - -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 85 - + +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 85 + This is data we upload with PUT a second line line three four is the number of lines -PUT /%TESTNUMBER HTTP/1.0 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/%TESTNUMBER", response="df4cef6b52a30e65d472dd848d2055a1" -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 85 - +PUT /%TESTNUMBER HTTP/1.0 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/%TESTNUMBER", response="df4cef6b52a30e65d472dd848d2055a1" +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 85 + This is data we upload with PUT a second line line three diff --git a/tests/data/test1072 b/tests/data/test1072 index 49d2c4f9feb3..7f8bba0d3505 100644 --- a/tests/data/test1072 +++ b/tests/data/test1072 @@ -15,16 +15,16 @@ chunked Transfer-Encoding # Server-side - -HTTP/1.0 401 Authorization Required swsclose -Server: testcurl -WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" -Content-Type: text/plain -Content-Length: 0 -Connection: close - + +HTTP/1.0 401 Authorization Required swsclose +Server: testcurl +WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" +Content-Type: text/plain +Content-Length: 0 +Connection: close + @@ -56,21 +56,21 @@ which is impossible in HTTP/1.0 25 -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Transfer-Encoding: chunked -Expect: 100-continue - -7a +PUT /%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Transfer-Encoding: chunked%CR +Expect: 100-continue%CR +%CR +7a%CR This is data we upload with PUT it comes from stdin so MUST be sent with chunked encoding which is impossible in HTTP/1.0 - -0 - +%CR +0%CR +%CR diff --git a/tests/data/test1073 b/tests/data/test1073 index f415f0b271e1..0f79a81fae36 100644 --- a/tests/data/test1073 +++ b/tests/data/test1073 @@ -14,14 +14,14 @@ chunked Transfer-Encoding # Server-side - -HTTP/1.0 301 Redirect swsclose -Server: testcurl -Content-Type: text/plain -Location: /newlocation/%TESTNUMBER0002 -Content-Length: 0 -Connection: close - + +HTTP/1.0 301 Redirect swsclose +Server: testcurl +Content-Type: text/plain +Location: /newlocation/%TESTNUMBER0002 +Content-Length: 0 +Connection: close + @@ -50,21 +50,21 @@ which is impossible in HTTP/1.0 25 -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Transfer-Encoding: chunked -Expect: 100-continue - -7a +PUT /%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Transfer-Encoding: chunked%CR +Expect: 100-continue%CR +%CR +7a%CR This is data we upload with PUT it comes from stdin so MUST be sent with chunked encoding which is impossible in HTTP/1.0 - -0 - +%CR +0%CR +%CR diff --git a/tests/data/test1074 b/tests/data/test1074 index 183d51a571d0..cbdd5cafacde 100644 --- a/tests/data/test1074 +++ b/tests/data/test1074 @@ -10,19 +10,19 @@ DELAY # Server-side - -HTTP/1.0 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 9 -Connection: Keep-Alive - + +HTTP/1.0 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 9 +Connection: Keep-Alive + surprise - -HTTP/1.0 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.0 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + surprise2 @@ -46,31 +46,31 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER http://%HOSTIP:%HTTPPORT/wantmore/%TES # Verify data after the test has been "shot" - -HTTP/1.0 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 9 -Connection: Keep-Alive - + +HTTP/1.0 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 9 +Connection: Keep-Alive + surprise -HTTP/1.0 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - +HTTP/1.0 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + surprise2 - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /wantmore/%TESTNUMBER0001 HTTP/1.0 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /wantmore/%TESTNUMBER0001 HTTP/1.0 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1075 b/tests/data/test1075 index 37230e1aa10a..8ab8e21cf4c6 100644 --- a/tests/data/test1075 +++ b/tests/data/test1075 @@ -13,33 +13,33 @@ HTTP Basic auth # The test server provides no way to respond differently to a subsequent # Basic authenticated request (we really want to respond with 200 for # the second), so just respond with 401 for both and let curl deal with it. - -HTTP/1.1 401 Authorization Required -Server: testcurl -WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" -WWW-Authenticate: X-bogus-auth realm="gimme all yer s3cr3ts" -Content-Type: text/plain -Content-Length: 0 - + +HTTP/1.1 401 Authorization Required +Server: testcurl +WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" +WWW-Authenticate: X-bogus-auth realm="gimme all yer s3cr3ts" +Content-Type: text/plain +Content-Length: 0 + - -HTTP/1.1 401 Authorization Required -Server: testcurl -WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" -WWW-Authenticate: X-bogus-auth realm="gimme all yer s3cr3ts" -Content-Type: text/plain -Content-Length: 0 - -HTTP/1.1 401 Authorization Required -Server: testcurl -WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" -WWW-Authenticate: X-bogus-auth realm="gimme all yer s3cr3ts" -Content-Type: text/plain -Content-Length: 0 - + +HTTP/1.1 401 Authorization Required +Server: testcurl +WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" +WWW-Authenticate: X-bogus-auth realm="gimme all yer s3cr3ts" +Content-Type: text/plain +Content-Length: 0 + +HTTP/1.1 401 Authorization Required +Server: testcurl +WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" +WWW-Authenticate: X-bogus-auth realm="gimme all yer s3cr3ts" +Content-Type: text/plain +Content-Length: 0 + @@ -64,24 +64,24 @@ four is the number of lines # Verify data after the test has been "shot" - -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 85 - + +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 85 + This is data we upload with PUT a second line line three four is the number of lines -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[testuser:testpass]b64% -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 85 - +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[testuser:testpass]b64% +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 85 + This is data we upload with PUT a second line line three diff --git a/tests/data/test1076 b/tests/data/test1076 index 258d14e6a8fd..8613a9a92229 100644 --- a/tests/data/test1076 +++ b/tests/data/test1076 @@ -56,21 +56,21 @@ http://%HOSTIP:%HTTPPORT/blah/%TESTNUMBER -L -d "moo" --post302 # # Verify data after the test has been "shot" - -POST /blah/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 3 -Content-Type: application/x-www-form-urlencoded - -mooPOST /blah/moo.html&testcase=/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 3 -Content-Type: application/x-www-form-urlencoded - + +POST /blah/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 3 +Content-Type: application/x-www-form-urlencoded + +mooPOST /blah/moo.html&testcase=/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 3 +Content-Type: application/x-www-form-urlencoded + moo diff --git a/tests/data/test1077 b/tests/data/test1077 index 5162eb3420a6..fd2d5fcd6cc5 100644 --- a/tests/data/test1077 +++ b/tests/data/test1077 @@ -12,26 +12,26 @@ HTTP proxy # # Server-side - -HTTP/1.0 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Type: text/plain -Content-Length: 9 -Funny-head: yesyes -Proxy-Connection: Keep-Alive - + +HTTP/1.0 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Type: text/plain +Content-Length: 9 +Funny-head: yesyes +Proxy-Connection: Keep-Alive + contents - -HTTP/1.0 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Type: text/plain -Content-Length: 9 -Funny-head: yesyes -Proxy-Connection: Keep-Alive - + +HTTP/1.0 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Type: text/plain +Content-Length: 9 +Funny-head: yesyes +Proxy-Connection: Keep-Alive + contents @@ -57,19 +57,19 @@ FTP over HTTP proxy with downgrade to HTTP 1.0 # # Verify data after the test has been "shot" - -GET ftp://%HOSTIP:%HTTPPORT/we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET ftp://%HOSTIP:%HTTPPORT/we/want/that/page/%TESTNUMBER0002 HTTP/1.0 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET ftp://%HOSTIP:%HTTPPORT/we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET ftp://%HOSTIP:%HTTPPORT/we/want/that/page/%TESTNUMBER0002 HTTP/1.0 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1078 b/tests/data/test1078 index 97b30853fc0c..58923ee5218a 100644 --- a/tests/data/test1078 +++ b/tests/data/test1078 @@ -13,21 +13,21 @@ proxytunnel # # Server-side - -HTTP/1.1 200 Mighty fine indeed -Server: test tunnel 2000 - + +HTTP/1.1 200 Mighty fine indeed +Server: test tunnel 2000 + - -HTTP/1.0 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Type: text/html -Funny-head: yesyes -Content-Length: 9 -Connection: keep-alive - + +HTTP/1.0 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Type: text/html +Funny-head: yesyes +Content-Length: 9 +Connection: keep-alive + contents @@ -53,46 +53,46 @@ proxy # # Verify data after the test has been "shot" - -CONNECT %HOSTIP:%HTTPPORT HTTP/1.0 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT %HOSTIP:%HTTPPORT HTTP/1.0 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + - -GET /we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /we/want/that/page/%TESTNUMBER HTTP/1.0 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /we/want/that/page/%TESTNUMBER HTTP/1.0 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 Mighty fine indeed -Server: test tunnel 2000 - -HTTP/1.0 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Type: text/html -Funny-head: yesyes -Content-Length: 9 -Connection: keep-alive - + +HTTP/1.1 200 Mighty fine indeed +Server: test tunnel 2000 + +HTTP/1.0 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Type: text/html +Funny-head: yesyes +Content-Length: 9 +Connection: keep-alive + contents -HTTP/1.0 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Type: text/html -Funny-head: yesyes -Content-Length: 9 -Connection: keep-alive - +HTTP/1.0 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Type: text/html +Funny-head: yesyes +Content-Length: 9 +Connection: keep-alive + contents diff --git a/tests/data/test1079 b/tests/data/test1079 index 83de2aedbf35..2ed82bd65073 100644 --- a/tests/data/test1079 +++ b/tests/data/test1079 @@ -9,13 +9,13 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -Content-Type: text/plain; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +Content-Type: text/plain; charset=iso-8859-1 +Content-Length: 26 + This is not the real page @@ -25,13 +25,13 @@ This is not the real page - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -Content-Type: text/plain; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +Content-Type: text/plain; charset=iso-8859-1 +Content-Length: 26 + @@ -59,18 +59,18 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --digest 52 - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER", response="e340c7cdca0950462070f46ee139e9f7" -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER", response="e340c7cdca0950462070f46ee139e9f7" +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test108 b/tests/data/test108 index 20ef6577ed5b..b639781b59bf 100644 --- a/tests/data/test108 +++ b/tests/data/test108 @@ -36,17 +36,17 @@ Moooooooooooo ^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3} ^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\| - -USER anonymous -PASS ftp@example.com -PWD -CWD CWD -CWD STOR -CWD RETR -PORT 127,0,0,1,5,109 -TYPE I -STOR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD CWD +CWD STOR +CWD RETR +PORT 127,0,0,1,5,109 +TYPE I +STOR %TESTNUMBER +QUIT Moooooooooooo diff --git a/tests/data/test1080 b/tests/data/test1080 index 6b9dd5a136dd..504f3651d347 100644 --- a/tests/data/test1080 +++ b/tests/data/test1080 @@ -11,12 +11,12 @@ followlocation # Server-side - -HTTP/1.1 301 This is a weirdo text message swsclose -Location: data/%TESTNUMBER0002.txt?coolsite=yes -Content-Length: 62 -Connection: close - + +HTTP/1.1 301 This is a weirdo text message swsclose +Location: data/%TESTNUMBER0002.txt?coolsite=yes +Content-Length: 62 +Connection: close + This server reply is for testing a simple Location: following @@ -36,31 +36,31 @@ http://%HOSTIP:%HTTPPORT/we/want/our/%TESTNUMBER http://%HOSTIP:%HTTPPORT/we/wan # Verify data after the test has been "shot" - -GET /we/want/our/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /we/want/our/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/our/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /we/want/our/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 301 This is a weirdo text message swsclose -Location: data/%TESTNUMBER0002.txt?coolsite=yes -Content-Length: 62 -Connection: close - + +HTTP/1.1 301 This is a weirdo text message swsclose +Location: data/%TESTNUMBER0002.txt?coolsite=yes +Content-Length: 62 +Connection: close + This server reply is for testing a simple Location: following http://%HOSTIP:%HTTPPORT/we/want/our/data/%TESTNUMBER0002.txt?coolsite=yes -HTTP/1.1 301 This is a weirdo text message swsclose -Location: data/%TESTNUMBER0002.txt?coolsite=yes -Content-Length: 62 -Connection: close - +HTTP/1.1 301 This is a weirdo text message swsclose +Location: data/%TESTNUMBER0002.txt?coolsite=yes +Content-Length: 62 +Connection: close + This server reply is for testing a simple Location: following http://%HOSTIP:%HTTPPORT/we/want/our/data/%TESTNUMBER0002.txt?coolsite=yes diff --git a/tests/data/test1081 b/tests/data/test1081 index 557be4fe65a3..3059b0acfcdc 100644 --- a/tests/data/test1081 +++ b/tests/data/test1081 @@ -11,20 +11,20 @@ followlocation # Server-side - -HTTP/1.1 301 This is a weirdo text message swsclose -Location: data/%TESTNUMBER0099.txt?coolsite=yes -Content-Length: 62 -Connection: close - + +HTTP/1.1 301 This is a weirdo text message swsclose +Location: data/%TESTNUMBER0099.txt?coolsite=yes +Content-Length: 62 +Connection: close + This server reply is for testing a simple Location: following - -HTTP/1.1 200 Followed here fine swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 41 - + +HTTP/1.1 200 Followed here fine swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 41 + This second URL does not have a location @@ -44,31 +44,31 @@ http://%HOSTIP:%HTTPPORT/we/want/our/%TESTNUMBER http://%HOSTIP:%HTTPPORT/we/wan # Verify data after the test has been "shot" - -GET /we/want/our/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /we/want/our/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/our/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /we/want/our/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 301 This is a weirdo text message swsclose -Location: data/%TESTNUMBER0099.txt?coolsite=yes -Content-Length: 62 -Connection: close - + +HTTP/1.1 301 This is a weirdo text message swsclose +Location: data/%TESTNUMBER0099.txt?coolsite=yes +Content-Length: 62 +Connection: close + This server reply is for testing a simple Location: following http://%HOSTIP:%HTTPPORT/we/want/our/data/%TESTNUMBER0099.txt?coolsite=yes -HTTP/1.1 200 Followed here fine swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 41 - +HTTP/1.1 200 Followed here fine swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 41 + This second URL does not have a location diff --git a/tests/data/test1082 b/tests/data/test1082 index 40e7b6a70c06..cf2cb09ca4b7 100644 --- a/tests/data/test1082 +++ b/tests/data/test1082 @@ -10,14 +10,14 @@ HTTP GET # # Server-side - -HTTP/1.1 200 OK -Date: Mon, 28 Jul 2008 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/plain - + +HTTP/1.1 200 OK +Date: Mon, 28 Jul 2008 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/plain + -foo- @@ -42,12 +42,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -4 --interface 127.0.0.1 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1083 b/tests/data/test1083 index dae302b110d4..b2bf5c01f95f 100644 --- a/tests/data/test1083 +++ b/tests/data/test1083 @@ -11,14 +11,14 @@ IPv6 # # Server-side - -HTTP/1.1 200 OK -Date: Mon, 28 Jul 2008 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/plain - + +HTTP/1.1 200 OK +Date: Mon, 28 Jul 2008 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/plain + -foo- @@ -46,12 +46,12 @@ HTTP-IPv6 GET with ip6-localhost --interface # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOST6IP:%HTTP6PORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOST6IP:%HTTP6PORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1086 b/tests/data/test1086 index ae5e7a093ee7..562ebbad9298 100644 --- a/tests/data/test1086 +++ b/tests/data/test1086 @@ -23,56 +23,7 @@ REPLY PWD 257 "/" REPLY TYPE 200 OK -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. +%repeat[50 x Long chunk of data that couldn't possibly be sent in the time allotted.%0a]% @@ -98,14 +49,14 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -m 5 28 - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER diff --git a/tests/data/test1087 b/tests/data/test1087 index daf4c8094956..fe1b1f753a0f 100644 --- a/tests/data/test1087 +++ b/tests/data/test1087 @@ -13,57 +13,57 @@ followlocation # # Server-side - -HTTP/1.1 401 Authorization Required -WWW-Authenticate: Basic -Content-Type: text/plain -Content-Length: 0 - + +HTTP/1.1 401 Authorization Required +WWW-Authenticate: Basic +Content-Type: text/plain +Content-Length: 0 + - -HTTP/1.1 302 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Content-Type: text/plain -Funny-head: yesyes -Location: http://goto.second.host.now/%TESTNUMBER1002 -Content-Length: 0 -Connection: close - + +HTTP/1.1 302 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/plain +Funny-head: yesyes +Location: http://goto.second.host.now/%TESTNUMBER1002 +Content-Length: 0 +Connection: close + - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Content-Type: text/plain -Funny-head: yesyes -Content-Length: 9 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/plain +Funny-head: yesyes +Content-Length: 9 + contents - -HTTP/1.1 401 Authorization Required -WWW-Authenticate: Basic -Content-Type: text/plain -Content-Length: 0 - -HTTP/1.1 302 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Content-Type: text/plain -Funny-head: yesyes -Location: http://goto.second.host.now/%TESTNUMBER1002 -Content-Length: 0 -Connection: close - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Content-Type: text/plain -Funny-head: yesyes -Content-Length: 9 - + +HTTP/1.1 401 Authorization Required +WWW-Authenticate: Basic +Content-Type: text/plain +Content-Length: 0 + +HTTP/1.1 302 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/plain +Funny-head: yesyes +Location: http://goto.second.host.now/%TESTNUMBER1002 +Content-Length: 0 +Connection: close + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/plain +Funny-head: yesyes +Content-Length: 9 + contents @@ -88,26 +88,26 @@ proxy # # Verify data after the test has been "shot" - -GET http://first.host.it.is/we/want/that/page/%TESTNUMBER1000 HTTP/1.1 -Host: first.host.it.is -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://first.host.it.is/we/want/that/page/%TESTNUMBER1000 HTTP/1.1 -Host: first.host.it.is -Authorization: Basic %b64[iam:myself]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://goto.second.host.now/%TESTNUMBER1002 HTTP/1.1 -Host: goto.second.host.now -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://first.host.it.is/we/want/that/page/%TESTNUMBER1000 HTTP/1.1 +Host: first.host.it.is +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://first.host.it.is/we/want/that/page/%TESTNUMBER1000 HTTP/1.1 +Host: first.host.it.is +Authorization: Basic %b64[iam:myself]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://goto.second.host.now/%TESTNUMBER1002 HTTP/1.1 +Host: goto.second.host.now +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1088 b/tests/data/test1088 index 11a88fc40ab0..8b262052ee6a 100644 --- a/tests/data/test1088 +++ b/tests/data/test1088 @@ -14,57 +14,57 @@ followlocation # # Server-side - -HTTP/1.1 401 Authorization Required -WWW-Authenticate: Basic -Content-Type: text/plain -Content-Length: 0 - + +HTTP/1.1 401 Authorization Required +WWW-Authenticate: Basic +Content-Type: text/plain +Content-Length: 0 + - -HTTP/1.1 302 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Content-Type: text/plain -Funny-head: yesyes -Location: http://goto.second.host.now/%TESTNUMBER1002 -Content-Length: 0 -Connection: close - + +HTTP/1.1 302 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/plain +Funny-head: yesyes +Location: http://goto.second.host.now/%TESTNUMBER1002 +Content-Length: 0 +Connection: close + - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Content-Type: text/plain -Funny-head: yesyes -Content-Length: 9 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/plain +Funny-head: yesyes +Content-Length: 9 + contents - -HTTP/1.1 401 Authorization Required -WWW-Authenticate: Basic -Content-Type: text/plain -Content-Length: 0 - -HTTP/1.1 302 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Content-Type: text/plain -Funny-head: yesyes -Location: http://goto.second.host.now/%TESTNUMBER1002 -Content-Length: 0 -Connection: close - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Content-Type: text/plain -Funny-head: yesyes -Content-Length: 9 - + +HTTP/1.1 401 Authorization Required +WWW-Authenticate: Basic +Content-Type: text/plain +Content-Length: 0 + +HTTP/1.1 302 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/plain +Funny-head: yesyes +Location: http://goto.second.host.now/%TESTNUMBER1002 +Content-Length: 0 +Connection: close + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/plain +Funny-head: yesyes +Content-Length: 9 + contents @@ -89,27 +89,27 @@ proxy # # Verify data after the test has been "shot" - -GET http://first.host.it.is/we/want/that/page/%TESTNUMBER1000 HTTP/1.1 -Host: first.host.it.is -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://first.host.it.is/we/want/that/page/%TESTNUMBER1000 HTTP/1.1 -Host: first.host.it.is -Authorization: Basic %b64[iam:myself]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://goto.second.host.now/%TESTNUMBER1002 HTTP/1.1 -Host: goto.second.host.now -Authorization: Basic %b64[iam:myself]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://first.host.it.is/we/want/that/page/%TESTNUMBER1000 HTTP/1.1 +Host: first.host.it.is +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://first.host.it.is/we/want/that/page/%TESTNUMBER1000 HTTP/1.1 +Host: first.host.it.is +Authorization: Basic %b64[iam:myself]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://goto.second.host.now/%TESTNUMBER1002 HTTP/1.1 +Host: goto.second.host.now +Authorization: Basic %b64[iam:myself]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1089 b/tests/data/test1089 index c36f21cbbe09..82ff880ff0bf 100644 --- a/tests/data/test1089 +++ b/tests/data/test1089 @@ -11,23 +11,23 @@ followlocation # # Server-side - -HTTP/1.1 302 OK swsbounce swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 8 -Connection: close -Content-Type: text/plain -Location: ./%TESTNUMBER0001 - + +HTTP/1.1 302 OK swsbounce swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 8 +Connection: close +Content-Type: text/plain +Location: ./%TESTNUMBER0001 + monster - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 15 -Connection: close -Content-Type: text/plain; charset=us-ascii - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 15 +Connection: close +Content-Type: text/plain; charset=us-ascii + bigger monster @@ -50,33 +50,33 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -w "%{num_connects}\n%{num_redirects}\n%{si # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 302 OK swsbounce swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 8 -Connection: close -Content-Type: text/plain -Location: ./%TESTNUMBER0001 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 15 -Connection: close -Content-Type: text/plain; charset=us-ascii - + +HTTP/1.1 302 OK swsbounce swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 8 +Connection: close +Content-Type: text/plain +Location: ./%TESTNUMBER0001 + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 15 +Connection: close +Content-Type: text/plain; charset=us-ascii + bigger monster 2 1 diff --git a/tests/data/test109 b/tests/data/test109 index d466437f2135..19e22caf822b 100644 --- a/tests/data/test109 +++ b/tests/data/test109 @@ -31,14 +31,14 @@ Moooooooooooo # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -APPE %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +APPE %TESTNUMBER +QUIT Moooooooooooo diff --git a/tests/data/test1090 b/tests/data/test1090 index ffd81bc610bb..0e3879c68c8f 100644 --- a/tests/data/test1090 +++ b/tests/data/test1090 @@ -12,30 +12,30 @@ chunked Transfer-Encoding # # Server-side - -HTTP/1.1 302 OK swsbounce swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 8 -Connection: close -Content-Type: text/plain -Location: ./%TESTNUMBER0001 - + +HTTP/1.1 302 OK swsbounce swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 8 +Connection: close +Content-Type: text/plain +Location: ./%TESTNUMBER0001 + monster - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Transfer-Encoding: chunked -Connection: close -Content-Type: text/plain; charset=us-ascii - -0007 -bigger -0008 + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Transfer-Encoding: chunked +Connection: close +Content-Type: text/plain; charset=us-ascii + +0007 +bigger%SP +0008 monster - -0 - + +0 + @@ -57,33 +57,33 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -w "%{num_connects}\n%{num_redirects}\n%{si # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 302 OK swsbounce swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 8 -Connection: close -Content-Type: text/plain -Location: ./%TESTNUMBER0001 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Transfer-Encoding: chunked -Connection: close -Content-Type: text/plain; charset=us-ascii - + +HTTP/1.1 302 OK swsbounce swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 8 +Connection: close +Content-Type: text/plain +Location: ./%TESTNUMBER0001 + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Transfer-Encoding: chunked +Connection: close +Content-Type: text/plain; charset=us-ascii + bigger monster 2 1 diff --git a/tests/data/test1091 b/tests/data/test1091 index 445d31655f73..47eb46a11288 100644 --- a/tests/data/test1091 +++ b/tests/data/test1091 @@ -30,18 +30,18 @@ FTP URL with type=i # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD / -CWD tmp -CWD moo -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD / +CWD tmp +CWD moo +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1092 b/tests/data/test1092 index 3d7b741ea746..34dffac34ebb 100644 --- a/tests/data/test1092 +++ b/tests/data/test1092 @@ -43,13 +43,13 @@ FTP with type=i over HTTP proxy # # Verify data after the test has been "shot" - -GET ftp://%HOSTIP:%HTTPPORT/we/want/that/page/%TESTNUMBER;type=i HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET ftp://%HOSTIP:%HTTPPORT/we/want/that/page/%TESTNUMBER;type=i HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1094 b/tests/data/test1094 index ec1728976bdc..32e09309639c 100644 --- a/tests/data/test1094 +++ b/tests/data/test1094 @@ -16,11 +16,11 @@ data returned to client - -a chunk of -data -returned - to client + +a chunk of +data +returned + to client diff --git a/tests/data/test1095 b/tests/data/test1095 index 8e23ae6a3a16..86cab2c8fbaf 100644 --- a/tests/data/test1095 +++ b/tests/data/test1095 @@ -8,39 +8,39 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="test \"this\" realm!!", nonce="1053604145" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="test \"this\" realm!!", nonce="1053604145" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="test \"this\" realm!!", nonce="1053604145" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="test \"this\" realm!!", nonce="1053604145" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! @@ -66,18 +66,18 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --digest # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="test \"this\" realm!!", nonce="1053604145", uri="/%TESTNUMBER", response="df3246f44d2bc8de0e9f8fc4d7cf6e95" -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="test \"this\" realm!!", nonce="1053604145", uri="/%TESTNUMBER", response="df3246f44d2bc8de0e9f8fc4d7cf6e95" +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1096 b/tests/data/test1096 index e7b16392473d..6a3818c07390 100644 --- a/tests/data/test1096 +++ b/tests/data/test1096 @@ -33,19 +33,19 @@ ftp://%HOSTIP:%FTPPORT/dir/%TESTNUMBER ftp://%HOSTIP:%FTPPORT/dir/%TESTNUMBER 78 - -USER anonymous -PASS ftp@example.com -PWD -CWD dir -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -EPSV -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD dir +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +EPSV +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1097 b/tests/data/test1097 index 106a8537b879..4405ba0883e2 100644 --- a/tests/data/test1097 +++ b/tests/data/test1097 @@ -11,29 +11,29 @@ HTTP proxy NTLM auth # Server-side - -HTTP/1.1 200 We are fine and cool -Server: Apache/1.3.27 (Dorw1n) PHP/44.1.2 -Content-Length: 27 - + +HTTP/1.1 200 We are fine and cool +Server: Apache/1.3.27 (Dorw1n) PHP/44.1.2 +Content-Length: 27 + This is all fine and dandy # This is the CONNECT response - -HTTP/1.1 200 We are fine and cool -Server: Apache/1.3.27 (Dorw1n) PHP/44.1.2 - + +HTTP/1.1 200 We are fine and cool +Server: Apache/1.3.27 (Dorw1n) PHP/44.1.2 + - -HTTP/1.1 200 We are fine and cool -Server: Apache/1.3.27 (Dorw1n) PHP/44.1.2 - -HTTP/1.1 200 We are fine and cool -Server: Apache/1.3.27 (Dorw1n) PHP/44.1.2 -Content-Length: 27 - + +HTTP/1.1 200 We are fine and cool +Server: Apache/1.3.27 (Dorw1n) PHP/44.1.2 + +HTTP/1.1 200 We are fine and cool +Server: Apache/1.3.27 (Dorw1n) PHP/44.1.2 +Content-Length: 27 + This is all fine and dandy @@ -59,20 +59,20 @@ http://test.a.galaxy.far.far.away.%TESTNUMBER:%HTTPPORT/%TESTNUMBER --proxy http # Verify data after the test has been "shot" - -CONNECT test.a.galaxy.far.far.away.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: test.a.galaxy.far.far.away.%TESTNUMBER:%HTTPPORT -Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - -POST /%TESTNUMBER HTTP/1.1 -Host: test.a.galaxy.far.far.away.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 11 -Content-Type: application/x-www-form-urlencoded - + +CONNECT test.a.galaxy.far.far.away.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: test.a.galaxy.far.far.away.%TESTNUMBER:%HTTPPORT +Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +POST /%TESTNUMBER HTTP/1.1 +Host: test.a.galaxy.far.far.away.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 11 +Content-Type: application/x-www-form-urlencoded + dummy=value diff --git a/tests/data/test1098 b/tests/data/test1098 index dac208949aca..6249587c1792 100644 --- a/tests/data/test1098 +++ b/tests/data/test1098 @@ -10,11 +10,11 @@ CURLOPT_PROXY # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 + hello @@ -43,30 +43,30 @@ ftp://ftp-site/moo/%TESTNUMBER ftp://ftp-site/moo/%TESTNUMBER --proxy http://%HO # # Verify data after the test has been "shot" - -GET ftp://ftp-site/moo/%TESTNUMBER HTTP/1.1 -Host: ftp-site:21 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET ftp://ftp-site/moo/%TESTNUMBER HTTP/1.1 -Host: ftp-site:21 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET ftp://ftp-site/moo/%TESTNUMBER HTTP/1.1 +Host: ftp-site:21 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET ftp://ftp-site/moo/%TESTNUMBER HTTP/1.1 +Host: ftp-site:21 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 + hello -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 - +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 + hello diff --git a/tests/data/test11 b/tests/data/test11 index 5affc6bde28d..6f4d82f73d60 100644 --- a/tests/data/test11 +++ b/tests/data/test11 @@ -59,17 +59,17 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER -L # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /want/data/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /want/data/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test110 b/tests/data/test110 index e53fcd1377af..f8418fbbcacc 100644 --- a/tests/data/test110 +++ b/tests/data/test110 @@ -36,17 +36,17 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -C 20 # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -PASV -TYPE I -SIZE %TESTNUMBER -REST 20 -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +PASV +TYPE I +SIZE %TESTNUMBER +REST 20 +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1100 b/tests/data/test1100 index 13eaeb3177b5..8ba9bbf53531 100644 --- a/tests/data/test1100 +++ b/tests/data/test1100 @@ -9,51 +9,51 @@ HTTP NTLM auth # Server-side - -HTTP/1.1 200 Thanks for this! swsclose -Content-Length: 25 - + +HTTP/1.1 200 Thanks for this! swsclose +Content-Length: 25 + This is the final page ! - -HTTP/1.1 401 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + This is not the real page either! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 302 Thanks for this, but we want to redir you! -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Location: /%TESTNUMBER -Content-Length: 34 - + +HTTP/1.1 302 Thanks for this, but we want to redir you! +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Location: /%TESTNUMBER +Content-Length: 34 + This is not the real page either! - -HTTP/1.1 401 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - -HTTP/1.1 302 Thanks for this, but we want to redir you! -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Location: /%TESTNUMBER -Content-Length: 34 - -HTTP/1.1 200 Thanks for this! swsclose -Content-Length: 25 - + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + +HTTP/1.1 302 Thanks for this, but we want to redir you! +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Location: /%TESTNUMBER +Content-Length: 34 + +HTTP/1.1 200 Thanks for this! swsclose +Content-Length: 25 + This is the final page ! @@ -80,26 +80,28 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --ntlm -L -d "stuff to # Verify data after the test has been "shot" -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 0 -Content-Type: application/x-www-form-urlencoded - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyY3VybGhvc3Q= -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 18 -Content-Type: application/x-www-form-urlencoded - -stuff to send awayGET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 0 +Content-Type: application/x-www-form-urlencoded + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 18 +Content-Type: application/x-www-form-urlencoded + +stuff to send awayGET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + + diff --git a/tests/data/test1101 b/tests/data/test1101 index e70f256abc50..a6471a4a6488 100644 --- a/tests/data/test1101 +++ b/tests/data/test1101 @@ -11,13 +11,13 @@ NO_PROXY # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 4 -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 4 +Content-Type: text/html + boo @@ -42,13 +42,13 @@ http://user:secret@%HOSTIP:%HTTPPORT/gimme/%TESTNUMBER # Verify data after the test has been "shot" - -GET /gimme/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[user:secret]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /gimme/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[user:secret]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1102 b/tests/data/test1102 index 16994d953340..aacb15690383 100644 --- a/tests/data/test1102 +++ b/tests/data/test1102 @@ -34,18 +34,18 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -SYST -SITE NAMEFMT 1 -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +SYST +SITE NAMEFMT 1 +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1103 b/tests/data/test1103 index a53b504bdc07..604178710760 100644 --- a/tests/data/test1103 +++ b/tests/data/test1103 @@ -33,16 +33,16 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -SYST -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +SYST +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1104 b/tests/data/test1104 index 9c5d659bc337..e4dcf803669c 100644 --- a/tests/data/test1104 +++ b/tests/data/test1104 @@ -69,20 +69,20 @@ proxy # Verify data after the test has been "shot" - -GET http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://%HOSTIP:%HTTPPORT/want/data/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Cookie: test2=true - + +GET http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://%HOSTIP:%HTTPPORT/want/data/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Cookie: test2=true + diff --git a/tests/data/test1105 b/tests/data/test1105 index 68922dc770ca..d23b92f560f5 100644 --- a/tests/data/test1105 +++ b/tests/data/test1105 @@ -10,19 +10,19 @@ cookiejar # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Type: text/html -Funny-head: yesyes swsclose -Set-Cookie: foobar=name; -Set-Cookie: mismatch=this; domain=127.0.0.1; path="/silly/"; -Set-Cookie: partmatch=present; domain=.0.0.1; path=/; -Set-Cookie: foo bar=barfoo -Set-Cookie: bar foo= -Set-Cookie: bar=foo bar - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Type: text/html +Funny-head: yesyes swsclose +Set-Cookie: foobar=name; +Set-Cookie: mismatch=this; domain=127.0.0.1; path="/silly/"; +Set-Cookie: partmatch=present; domain=.0.0.1; path=/; +Set-Cookie: foo%TABbar=barfoo +Set-Cookie: bar%TABfoo= +Set-Cookie: bar=foo%TABbar + @@ -45,14 +45,14 @@ local-http # Verify data after the test has been "shot" - -POST /we/want/%TESTNUMBER?parm1=this*that/other/thing&parm2=foobar/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 33 -Content-Type: application/x-www-form-urlencoded - + +POST /we/want/%TESTNUMBER?parm1=this*that/other/thing&parm2=foobar/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 33 +Content-Type: application/x-www-form-urlencoded + userid=myname&password=mypassword diff --git a/tests/data/test1106 b/tests/data/test1106 index e3acdac16be5..32d73ef5f6b1 100644 --- a/tests/data/test1106 +++ b/tests/data/test1106 @@ -9,13 +9,13 @@ HTTP proxy # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Accept-Ranges: bytes -Content-Length: 6 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Accept-Ranges: bytes +Content-Length: 6 + hello @@ -44,13 +44,13 @@ ftp://%HOSTIP:23456/%TESTNUMBER # Verify data after the test has been "shot" - -GET ftp://%HOSTIP:23456/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:23456 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET ftp://%HOSTIP:23456/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:23456 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1107 b/tests/data/test1107 index 8b31c76f8397..3eeb0457e4e1 100644 --- a/tests/data/test1107 +++ b/tests/data/test1107 @@ -38,16 +38,16 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER --ftp-pret # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -PRET RETR %TESTNUMBER -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +PRET RETR %TESTNUMBER +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1108 b/tests/data/test1108 index c6008af30059..107ef8d55caa 100644 --- a/tests/data/test1108 +++ b/tests/data/test1108 @@ -31,11 +31,11 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER --ftp-pret # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -PRET RETR %TESTNUMBER + +USER anonymous +PASS ftp@example.com +PWD +PRET RETR %TESTNUMBER # we expect that the server doesn't understand PRET diff --git a/tests/data/test1109 b/tests/data/test1109 index 93aa9e4dbce9..043e22cd0829 100644 --- a/tests/data/test1109 +++ b/tests/data/test1109 @@ -33,12 +33,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER#test # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test111 b/tests/data/test111 index a46f7aef1d24..4044fdd41d83 100644 --- a/tests/data/test111 +++ b/tests/data/test111 @@ -32,14 +32,14 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -C 2000 36 - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +QUIT diff --git a/tests/data/test1110 b/tests/data/test1110 index 165a8acd8621..2d57e49d61e1 100644 --- a/tests/data/test1110 +++ b/tests/data/test1110 @@ -34,12 +34,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER?q=foobar#fragment # Verify data after the test has been "shot" - -GET /%TESTNUMBER?q=foobar HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER?q=foobar HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1111 b/tests/data/test1111 index 157cd2751cbe..8cf705afe7e1 100644 --- a/tests/data/test1111 +++ b/tests/data/test1111 @@ -34,12 +34,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER?q=foobar#fragment#fragment2 # Verify data after the test has been "shot" - -GET /%TESTNUMBER?q=foobar HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER?q=foobar HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1112 b/tests/data/test1112 index 0790d0352ba6..8d42cea80fa0 100644 --- a/tests/data/test1112 +++ b/tests/data/test1112 @@ -23,56 +23,7 @@ REPLY PWD 257 "/" REPLY TYPE 200 OK -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. -Long chunk of data that couldn't possibly be sent in the time allotted. +%repeat[50 x Long chunk of data that couldn't possibly be sent in the time allotted.%0a]% @@ -101,16 +52,16 @@ FTPS download with strict timeout and slow data transfer 28 - -USER anonymous -PASS ftp@example.com -PBSZ 0 -PROT C -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER + +USER anonymous +PASS ftp@example.com +PBSZ 0 +PROT C +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER diff --git a/tests/data/test1113 b/tests/data/test1113 index 744c012ee144..474c6aadc494 100644 --- a/tests/data/test1113 +++ b/tests/data/test1113 @@ -40,45 +40,45 @@ FTP wildcard download - changed fnmatch, 2x perform (DOS LIST response) 0 # THERE SHOULD NOT BE "SIZE"! and one "USER/PASS" - -USER anonymous -PASS ftp@example.com -PWD -CWD fully_simulated -CWD DOS -EPSV -TYPE A -LIST -EPSV -TYPE I -RETR chmod1 -EPSV -RETR chmod2 -EPSV -RETR chmod3 -EPSV -RETR empty_file.dat -EPSV -RETR file.txt -EPSV -RETR someothertext.txt -EPSV -TYPE A -LIST -EPSV -TYPE I -RETR chmod1 -EPSV -RETR chmod2 -EPSV -RETR chmod3 -EPSV -RETR empty_file.dat -EPSV -RETR file.txt -EPSV -RETR someothertext.txt -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD fully_simulated +CWD DOS +EPSV +TYPE A +LIST +EPSV +TYPE I +RETR chmod1 +EPSV +RETR chmod2 +EPSV +RETR chmod3 +EPSV +RETR empty_file.dat +EPSV +RETR file.txt +EPSV +RETR someothertext.txt +EPSV +TYPE A +LIST +EPSV +TYPE I +RETR chmod1 +EPSV +RETR chmod2 +EPSV +RETR chmod3 +EPSV +RETR empty_file.dat +EPSV +RETR file.txt +EPSV +RETR someothertext.txt +QUIT This file should have permissions 444 diff --git a/tests/data/test1115 b/tests/data/test1115 index 40ce7c15e19a..15a4785672a9 100644 --- a/tests/data/test1115 +++ b/tests/data/test1115 @@ -8,17 +8,17 @@ HTTP 1xx response code # Server-side - -HTTP/1.1 104 Experiment -Server: Microsoft-IIS/5.0 -Date: Sun, 03 Apr 2005 14:57:45 GMT -X-Powered-By: ASP.NET - -HTTP/1.1 200 OK swsbounce -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - + +HTTP/1.1 104 Experiment +Server: Microsoft-IIS/5.0 +Date: Sun, 03 Apr 2005 14:57:45 GMT +X-Powered-By: ASP.NET + +HTTP/1.1 200 OK swsbounce +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + @@ -39,12 +39,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1116 b/tests/data/test1116 index 8feed326eaaa..c92b6255310e 100644 --- a/tests/data/test1116 +++ b/tests/data/test1116 @@ -10,33 +10,33 @@ DELAY # # Server-side - -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked -Connection: mooo - -40 -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -30 -bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb -21;heresatest=moooo + +HTTP/1.1 200 funky chunky! +Server: fakeit/0.9 fakeitbad/1.0 +Transfer-Encoding: chunked +Connection: mooo + +40 +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +30 +bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb +21;heresatest=moooo cccccccccccccccccccccccccccccccc - -0 -chunky-trailer: header data -another-header: yes - + +0 +chunky-trailer: header data +another-header: yes + - -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked -Connection: mooo - + +HTTP/1.1 200 funky chunky! +Server: fakeit/0.9 fakeitbad/1.0 +Transfer-Encoding: chunked +Connection: mooo + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcccccccccccccccccccccccccccccccc -chunky-trailer: header data -another-header: yes +chunky-trailer: header data +another-header: yes writedelay: 10 @@ -60,21 +60,21 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -D %LOGDIR/heads%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked -Connection: mooo - -chunky-trailer: header data -another-header: yes + +HTTP/1.1 200 funky chunky! +Server: fakeit/0.9 fakeitbad/1.0 +Transfer-Encoding: chunked +Connection: mooo + +chunky-trailer: header data +another-header: yes diff --git a/tests/data/test1117 b/tests/data/test1117 index 67df822c9e7e..1558cc7b05d0 100644 --- a/tests/data/test1117 +++ b/tests/data/test1117 @@ -10,24 +10,24 @@ DELAY # Server-side - -HTTP/1.1 416 Requested Range Not Satisfiable -Date: Tue, 09 Sep 2010 14:49:00 GMT -Accept-Ranges: bytes -Content-Length: 115 - + +HTTP/1.1 416 Requested Range Not Satisfiable +Date: Tue, 09 Sep 2010 14:49:00 GMT +Accept-Ranges: bytes +Content-Length: 115 + This is a long error message that is large enough that the test server is guaranteed to split it into two packets. - -HTTP/1.1 206 Partial Content -Date: Tue, 09 Sep 2010 14:49:01 GMT -Accept-Ranges: bytes -Content-Range: bytes 10-18/155 -Content-Length: 13 -Content-Type: text/plain - + +HTTP/1.1 206 Partial Content +Date: Tue, 09 Sep 2010 14:49:01 GMT +Accept-Ranges: bytes +Content-Range: bytes 10-18/155 +Content-Length: 13 +Content-Type: text/plain + partial body @@ -51,37 +51,37 @@ HTTP with invalid range then another URL # Verify data after the test has been "shot" - -HTTP/1.1 416 Requested Range Not Satisfiable -Date: Tue, 09 Sep 2010 14:49:00 GMT -Accept-Ranges: bytes -Content-Length: 115 - + +HTTP/1.1 416 Requested Range Not Satisfiable +Date: Tue, 09 Sep 2010 14:49:00 GMT +Accept-Ranges: bytes +Content-Length: 115 + This is a long error message that is large enough that the test server is guaranteed to split it into two packets. -HTTP/1.1 206 Partial Content -Date: Tue, 09 Sep 2010 14:49:01 GMT -Accept-Ranges: bytes -Content-Range: bytes 10-18/155 -Content-Length: 13 -Content-Type: text/plain - +HTTP/1.1 206 Partial Content +Date: Tue, 09 Sep 2010 14:49:01 GMT +Accept-Ranges: bytes +Content-Range: bytes 10-18/155 +Content-Length: 13 +Content-Type: text/plain + partial body - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=10-22 -User-Agent: curl/%VERSION -Accept: */* - -GET /wantmore/%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=10-22 -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=10-22 +User-Agent: curl/%VERSION +Accept: */* + +GET /wantmore/%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=10-22 +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1118 b/tests/data/test1118 index 3daa8a63e7d0..e188bc31eb4f 100644 --- a/tests/data/test1118 +++ b/tests/data/test1118 @@ -42,12 +42,12 @@ http://%HOSTIP:%HTTPPORT?email=name@example.com/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /?email=name@example.com/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /?email=name@example.com/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test112 b/tests/data/test112 index 41bbc025d960..9a73da35a57c 100644 --- a/tests/data/test112 +++ b/tests/data/test112 @@ -31,14 +31,14 @@ worx? # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -APPE %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +APPE %TESTNUMBER +QUIT gonna upload diff --git a/tests/data/test1120 b/tests/data/test1120 index 464b8ac09726..9a96aed2bc16 100644 --- a/tests/data/test1120 +++ b/tests/data/test1120 @@ -32,11 +32,11 @@ ftp://%HOSTIP:%FTPPORT/a/path/%TESTNUMBER # Verify data after the test has been "shot" # Strip all valid kinds of PORT and EPRT that curl can send - -USER anonymous -PASS ftp@example.com -PWD -CWD a + +USER anonymous +PASS ftp@example.com +PWD +CWD a # CURLE_OPERATION_TIMEDOUT is 28 diff --git a/tests/data/test1121 b/tests/data/test1121 index 3eec862d6d1f..1e17f95e204d 100644 --- a/tests/data/test1121 +++ b/tests/data/test1121 @@ -7,12 +7,12 @@ HTTP # # Server-side - -HTTP/1.0 200 OK -Server: test-server/fake -Content-Type: text/html -Content-Length: 6 - + +HTTP/1.0 200 OK +Server: test-server/fake +Content-Type: text/html +Content-Length: 6 + blaha @@ -34,12 +34,12 @@ HTTP multiple provided Host: headers # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: host1 -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: host1 +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1122 b/tests/data/test1122 index d0ce3ffaf043..684b6f8dc6f5 100644 --- a/tests/data/test1122 +++ b/tests/data/test1122 @@ -10,30 +10,30 @@ Transfer-Encoding # # Server-side - -HTTP/1.1 200 OK swsclose -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Transfer-Encoding: gzip -Content-Length: 44 - + +HTTP/1.1 200 OK swsclose +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Transfer-Encoding: gzip +Content-Length: 44 + %hex[%1f%8b%08%08%79%9e%ab%41%00%03%6c%61%6c%61%6c%61%00%cb%c9%cc%4b%55%30%e4%52%c8%01%d1%46%5c]hex% %hex[%10%86%31%17%00]hex% %hex[%02%71%60%18%00%00%00]hex% # This ignore Content-Length - -HTTP/1.1 200 OK swsclose -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Transfer-Encoding: gzip -Content-Length: 44 - + +HTTP/1.1 200 OK swsclose +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Transfer-Encoding: gzip +Content-Length: 44 + line 1 line 2 line 3 @@ -61,14 +61,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --tr-encoding # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -TE: gzip -Connection: TE - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +TE: gzip +Connection: TE + diff --git a/tests/data/test1123 b/tests/data/test1123 index a01aae69beb0..d0fc9fb0665b 100644 --- a/tests/data/test1123 +++ b/tests/data/test1123 @@ -11,30 +11,30 @@ Transfer-Encoding # Server-side -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Transfer-Encoding: deflate, chunked - -519 +HTTP/1.1 200 OK%CR +Date: Mon, 29 Nov 2004 21:56:53 GMT%CR +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29%CR +Vary: Accept-Encoding%CR +Content-Type: text/html; charset=ISO-8859-1%CR +Transfer-Encoding: deflate, chunked%CR +%CR +519%CR %hex[%78%9c%dc%58%db%6e%e3%36%10%7d%37%90%7f%60%fd%d4%02%b6%6e%b6%13%39%70%b4%28%72%d9%04%cd%36%c1%da%05%ba%4f%06%2d%d1%36%1b%49%14%48%ca%b9%3c%f4%db%3b%94%28%89%b1%1c%af%77%83%be%04%48%62%72%e6%9c%c3%e1%0c%49%93%99%7c%7a%4a%62%b4%21%5c%50%96%9e%75%5d%cb%e9%22%92%86%2c%a2%e9%ea%ac%7b%33%bd%eb%fb%fe%68%dc%77%bb%9f%82%ce%e4%97%8b%bb%f3%d9%b7%fb%4b%94%71%f6%0f%09%65%3f%a6%42%02%10%4d%bf%4d%67%97%5f%50%77%2d%65%76%6a%db%4b%4e%c4%3a%21%58%5a%29%91%f6%02%87%0f%24%8d%ec%65%d2%d7%3c%d1%77%ac%a1%15%c9%a8%0b%a2%5b%5a%41%07%a1%ca%a6%da%4d%6f%4e%a3%c0%3d%76%bd%89%6d%18%4a%44%84%25%99%e3%28%22%80%18%8f%fd%be%e3%f7%3d%17%39%c3%53%c7%3d%f5%c6%13%db%f0%1b%84%3c%53%1f%51%e0%39%ce%b0%ef%3a%7d%d7%47%8e%77%ea%c1%cf%40%53%2a%c4%ab%38%52%9c%90%b9%58%33%2e%83%30%e7%71%1d%8e%61%6f%e3%97%79%1c%17%70%84%d3%08%c5%74%d1%a6%16%10%1d%1e%11%a1%96%3a%67%49%52%52%52%82%24%63%b5%00%c7%fc%19%2d%19%47%61%4c%49%2a%fb%82%46%04%fd%f5%f5%16%49%8e%53%b1%84%8a%5a%30%8b%46%c8%50%de%19%0c%a2%02%e1%72%04%a5%5a%a9%70%55%df%25%8d%89%38%ea%e4%42%75%d4%18%e2%39%95%f8%c9%42%37%12%89%3c%cb%40%5f%a0%eb%d9%ec%be%57%fc%9d%f6%d0%15%b4%8f%3a%57%45%fb%e2%e6%7c%d6%43%b3%cb%db%3f%2f%e1%f3%f6%e2%77%80%5d%dd%dc%5e%f6%8a%e1%3f%df%dd%5f%5f%7e%85%36%0c%f0%48%62%88%a9%94%ea%67%4c%c8%9e%6e%e6%d0]hex% %hex[%19%7b%a0%44%14%da%28%cf%62%86%23%18%02%96%5a%9e%90%a8%99%75%0f%65%58%88%47%c6%23%d5%84%c8%d2%3c%59%14%f6%e9%f4%f6%a8%13%12%2e%e9%92%86%50%57%30%fd%41%38%f8%98%28%43%81%6a%3c%c1%08%c5%b4%20%1b%19%7b%24%9c%44%47%9d%c5%73%95%a4%1e%92%6b%f2%66%c6%ab%b2%58%47%9d%d9%1a%a8%08%c3%ef%82%a6%6a%33%09%48%6d%9d%6a%95%60%06%9b%0e%79%ce%51%27%c6%e9%2a%c7%2b%22%8a%18%48%ba%a1%9c%a5%09%0c%20%40%47%97%d0%58%1b%1b%2a%71%4c%e5%f3%5c%84%8c%93%60%74%e2%0f%ad%d1%c9%c4%de%b2%6f%81%33%c2%43%90%0c%06%96%7b%6c%60%2b%f3%16%1a%e6%f3%00%7b%6d%6c%20%0b%93%5e%d7%2c%cb%63%cc%9b%b1%8e%47%63%88%61%08%cb%79%db%d3%22%54%03%ba%03%cb%77%5f%11%5e%87%62%38%ca%60%9c%d1%2b%b4%11%0e%c7%c5%b9%e1%5b%23%67%62%eb%8e%e9%99%87%2c%07%5d%cf%ad%bc%da%f0]hex% %hex[%53%0e%e2%0f%6a%8c%31%80%c8%17%22%e4%34%93%70%44%8a%60%a0%4e%87%d7%a6%12%06%a5%4f%c3%f5%5c%ed%e5%e0%82%2c%71%1e%cb%89%6d%1a%4b%18%d4%7f%5e%1d%60%19%94%3d%d8%79%68%56%27%a5%ad%d6%8b%3d%b1%5b%ac%46%6c%cd%12%f2%b6%10%2c%60%ca%4b%15%75%78%da%26%43%eb%d6%02%8d%a6%5c%bd%1c%2e%07%60%ad%a4%68%8d%c8%e2%c5%3b%5c%04%c0%5a%44%d1%1a%91%17%9a%1d%2e%02%60%2d%a2%68%8d%48%b8%86%3d%46%62%b6%3a%5c%aa%a6%68%c1%46%a2%91%e5%59%72%b8%20%80%b5%94%a2%35%22%11%59%1c%2e%02%60%2d%a2%68%8d%08%13%4f%87%8b%00%58%8b%28%9a%51%2f%11%a9%f3%f2%07%6a%56%12%aa%ba%69%ba%b1%cc%73%0e%69%13%24%d0%eb%b7%ea%1a%85%d9%88%1f%28%c9%46%54%c5%d8%08%43%44%dd%1c%0e%57%51%68%2d%53%10%1b%9d%84%72%ce%f8%e1%4a%25%5e%6b%69%b2%59%d7%84%05%55%ad%a0%59%7a%62]hex% %hex[%87%1c%a4%e0%cb%cd%cc%fe%1b%9d%c3%e9%01%29%a3%79%82%6e%4b%c7%c4%ae%10%1a%af%be%a7%e4%9c%93%98%d4%99%6b%99%e7%fa%fe%16%9c%58%ae%67%c1%05%e9%0d%f7%1b%6c%75%af%3a%39%76%fc%51%8b%58%5d%b0%da%1c%75%2f%da%7d%71%da%05%2c%e7%62%ef%9a%cc%04%ce%51%02%13%5e%33%39%97%6b%f8%aa%86%9c%b5%4c%25%12%e7%12%6e%32%a2%0e%a9%ec%57%dd%da%a0%4f%60%9c%52%12%a3%a9%24%29%7c%c3%af%26%b6%e9%6c%51%a0%4a%bb%eb%fe%ef%02%af%22%a2%8a%6c%20%5b%74%ce%62%12%dc%3d%a6%84%d7%b8%c2%54%45%6a%9b%a1%56%bd%6a%09%ab%2f%78%4e%13%9a%62%69%ce%4e%72%b8%21%14%b5%81%82%d6%9d%96%d7%f3%8e%f7%b9%07%7b%b9%fb%9c%ae%ef%ef%e5%ba%7b%c7%85%a5%b1%3f%ea%bd%6e%f7%78%b8%cf%3d%de%4b%f6%c7%7b%bd%ce%5e%b7%3b%fa%4e%dc%df%09%6c%7f%64%83%d6%d8%e5%fd%6e%bb%fc%b0%26%32%78%32%c1%43%0c%ae%a3%b5%4e%6d%7c%46%f2%39%23%67%5d%4e%42%78%1d%28%9b%7a%49%d5%8b%b2%c1%99%1b%d9%51%43%ed%72%ec%24%ea%7b%0b%b8%4f%86%aa%18%3b%5d%3b%99%c6%e3%ac%45%dd%7e%b8%bd%c5%95%54%aa%0d%05%76%b8%b3%a3%5f%f5%6d%ea%b7%9d%5a%25%b6%de%69%0d%e2%ed%bc%b1%e2%de%86%e3%ff%2f%69%ce%4f%67%6c%38%78%67%c6%d4%fb%ea%e3%27%ca%f5%06%23%f7%1d%99%7a%81%a7%d8%c7%cf%d2%c0%73%86%27%ef%c8%d2%35%a1%49%84%e3%8f%9f%a8%e1%70%34%f0%de%91%a8%b0%0f%4f%7d%f1%33%79%32%2c%fa%ac%af%ff%2b%14%74%fe%03%00%00%ff%ff%82%33%11%a3%63%00%00%00%00%ff%ff%03%00%dd%38%8e%d1%0d]hex% -0 - +0%CR +%CR -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Transfer-Encoding: deflate, chunked - +HTTP/1.1 200 OK%CR +Date: Mon, 29 Nov 2004 21:56:53 GMT%CR +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29%CR +Vary: Accept-Encoding%CR +Content-Type: text/html; charset=ISO-8859-1%CR +Transfer-Encoding: deflate, chunked%CR +%CR @@ -45,15 +45,15 @@ Transfer-Encoding: deflate, chunked curl curl and libcurl Command line tool and library for client-side URL transfers. - curl and libcurl is a tool for transferring files -using URL syntax. It supports HTTP, HTTPS, FTP, -FTPS, DICT, TELNET, LDAP, FILE, and GOPHER, as -well as HTTP-post, HTTP-put, cookies, FTP upload, -resumed transfers, passwords, portnumbers, SSL -certificates, Kerberos, and proxies. It is powered -by libcurl, the client-side URL transfer library. -There are bindings to libcurl for over 20 -languages and environments. + curl and libcurl is a tool for transferring files%CR +using URL syntax. It supports HTTP, HTTPS, FTP,%CR +FTPS, DICT, TELNET, LDAP, FILE, and GOPHER, as%CR +well as HTTP-post, HTTP-put, cookies, FTP upload,%CR +resumed transfers, passwords, portnumbers, SSL%CR +certificates, Kerberos, and proxies. It is powered%CR +by libcurl, the client-side URL transfer library.%CR +There are bindings to libcurl for over 20%CR +languages and environments.%CR 5784.57 3.16 @@ -171,14 +171,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --tr-encoding # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -TE: gzip -Connection: TE - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +TE: gzip +Connection: TE + diff --git a/tests/data/test1124 b/tests/data/test1124 index fdc172398ff8..78e640dd64c7 100644 --- a/tests/data/test1124 +++ b/tests/data/test1124 @@ -11,30 +11,30 @@ chunked Transfer-Encoding # # Server-side - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2024 21:56:53 GMT -Server: Something-TE-friendly/0.1 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Transfer-Encoding: gzip, chunked - -2c + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2024 21:56:53 GMT +Server: Something-TE-friendly/0.1 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Transfer-Encoding: gzip, chunked + +2c %hex[%1f%8b%08%08%79%9e%ab%41%00%03%6c%61%6c%61%6c%61%00%cb%c9%cc%4b%55%30%e4%52%c8%01%d1%46%5c]hex% %hex[%10%86%31%17%00]hex% -%hex[%02%71%60%18%00%00%00]hex% -0 - +%hex[%02%71%60%18%00%00%00]hex% +0 + - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2024 21:56:53 GMT -Server: Something-TE-friendly/0.1 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Transfer-Encoding: gzip, chunked - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2024 21:56:53 GMT +Server: Something-TE-friendly/0.1 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Transfer-Encoding: gzip, chunked + line 1 line 2 line 3 @@ -62,14 +62,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --tr-encoding # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -TE: gzip -Connection: TE - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +TE: gzip +Connection: TE + diff --git a/tests/data/test1125 b/tests/data/test1125 index 3b4d58b2e605..caaa0b284977 100644 --- a/tests/data/test1125 +++ b/tests/data/test1125 @@ -10,30 +10,30 @@ Transfer-Encoding # # Server-side - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Transfer-Encoding: gzip, chunked - -2c + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Transfer-Encoding: gzip, chunked + +2c %hex[%1f%8b%08%08%79%9e%ab%41%00%03%6c%61%6c%61%6c%61%00%cb%c9%cc%4b%55%30%e4%52%c8%01%d1%46%5c]hex% %hex[%10%86%31%17%00]hex% -%hex[%02%71%60%18%00%00%00]hex% -0 - +%hex[%02%71%60%18%00%00%00]hex% +0 + - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Transfer-Encoding: gzip, chunked - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Transfer-Encoding: gzip, chunked + line 1 line 2 line 3 @@ -61,14 +61,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --tr-encoding -H "Connection: close" # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -TE: gzip -Connection: close, TE - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +TE: gzip +Connection: close, TE + diff --git a/tests/data/test1126 b/tests/data/test1126 index b25820b0cfa5..5ad2df621556 100644 --- a/tests/data/test1126 +++ b/tests/data/test1126 @@ -38,13 +38,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -z "dec 12 12:00:00 1999 GMT" # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -If-Modified-Since: Sun, 12 Dec 1999 12:00:00 GMT - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +If-Modified-Since: Sun, 12 Dec 1999 12:00:00 GMT + diff --git a/tests/data/test1127 b/tests/data/test1127 index fa3ee85fe7b0..126073e4df9c 100644 --- a/tests/data/test1127 +++ b/tests/data/test1127 @@ -47,13 +47,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -z "dec 12 12:00:00 1999 GMT" # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -If-Modified-Since: Sun, 12 Dec 1999 12:00:00 GMT - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +If-Modified-Since: Sun, 12 Dec 1999 12:00:00 GMT + diff --git a/tests/data/test1128 b/tests/data/test1128 index 37b5b522ed30..2932cabcad6b 100644 --- a/tests/data/test1128 +++ b/tests/data/test1128 @@ -48,19 +48,19 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER http://%HOSTIP:%HTTPPORT/%TESTNUMBER0001 -z # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -If-Modified-Since: Sun, 12 Dec 1999 12:00:00 GMT - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -If-Modified-Since: Sun, 12 Dec 1999 12:00:00 GMT - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +If-Modified-Since: Sun, 12 Dec 1999 12:00:00 GMT + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +If-Modified-Since: Sun, 12 Dec 1999 12:00:00 GMT + diff --git a/tests/data/test1129 b/tests/data/test1129 index 99e390c50023..9a81043b1771 100644 --- a/tests/data/test1129 +++ b/tests/data/test1129 @@ -74,23 +74,23 @@ Content-Type: text/html -foo- - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 1053700 -Content-Type: application/x-www-form-urlencoded -Expect: 100-continue - -POST /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 1053700 -Content-Type: application/x-www-form-urlencoded -Expect: 100-continue - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 1053700 +Content-Type: application/x-www-form-urlencoded +Expect: 100-continue + +POST /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 1053700 +Content-Type: application/x-www-form-urlencoded +Expect: 100-continue + Maximum allocated: 3200000 diff --git a/tests/data/test113 b/tests/data/test113 index 1c0a8b246c6b..463da9c624ee 100644 --- a/tests/data/test113 +++ b/tests/data/test113 @@ -30,8 +30,8 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER 67 - -USER anonymous + +USER anonymous diff --git a/tests/data/test1130 b/tests/data/test1130 index bdab216d812a..1057d06d722e 100644 --- a/tests/data/test1130 +++ b/tests/data/test1130 @@ -75,23 +75,23 @@ Content-Type: text/html -foo- - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Expect: 100-continue -Content-Length: 100 -Content-Type: application/x-www-form-urlencoded - -POST /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Expect: 100-continue -Content-Length: 100 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Expect: 100-continue +Content-Length: 100 +Content-Type: application/x-www-form-urlencoded + +POST /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Expect: 100-continue +Content-Length: 100 +Content-Type: application/x-www-form-urlencoded + diff --git a/tests/data/test1131 b/tests/data/test1131 index 20ad5cfd85e7..51601c03adb8 100644 --- a/tests/data/test1131 +++ b/tests/data/test1131 @@ -75,21 +75,21 @@ Content-Type: text/html FAILURE2 - -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Expect: 100-continue -Content-Length: 100 - -PUT /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Expect: 100-continue -Content-Length: 100 - + +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Expect: 100-continue +Content-Length: 100 + +PUT /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Expect: 100-continue +Content-Length: 100 + diff --git a/tests/data/test1133 b/tests/data/test1133 index 9582fc4d08fb..a14dbe8ee9ac 100644 --- a/tests/data/test1133 +++ b/tests/data/test1133 @@ -7,12 +7,12 @@ HTTP FORMPOST # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 10 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 10 + blablabla @@ -46,60 +46,60 @@ foo ^(Content-Type: multipart/form-data;|Content-Type: multipart/mixed; boundary=|-------).* -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 1324 -Content-Type: multipart/form-data; boundary=----------------------------24e78000bd32 - -------------------------------24e78000bd32 -Content-Disposition: form-data; name="file"; filename="faker,and;.txt" -Content-Type: mo/foo - +POST /we/want/%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Content-Length: 1324%CR +Content-Type: multipart/form-data; boundary=----------------------------24e78000bd32%CR +%CR +------------------------------24e78000bd32%CR +Content-Disposition: form-data; name="file"; filename="faker,and;.txt"%CR +Content-Type: mo/foo%CR +%CR foo bar This is a bar foo bar foo - -------------------------------24e78000bd32 -Content-Disposition: form-data; name="file2"; filename="test%TESTNUMBER,and;.txt" -Content-Type: text/plain - +%CR +------------------------------24e78000bd32%CR +Content-Disposition: form-data; name="file2"; filename="test%TESTNUMBER,and;.txt"%CR +Content-Type: text/plain%CR +%CR foo bar This is a bar foo bar foo - -------------------------------24e78000bd32 -Content-Disposition: form-data; name="file3" -Content-Type: multipart/mixed; boundary=----------------------------7f0e85a48b0b - -Content-Disposition: attachment; filename="test%TESTNUMBER,and;.txt" -Content-Type: m/f - +%CR +------------------------------24e78000bd32%CR +Content-Disposition: form-data; name="file3"%CR +Content-Type: multipart/mixed; boundary=----------------------------7f0e85a48b0b%CR +%CR +Content-Disposition: attachment; filename="test%TESTNUMBER,and;.txt"%CR +Content-Type: m/f%CR +%CR foo bar This is a bar foo bar foo - -Content-Disposition: attachment; filename="test%TESTNUMBER,and;.txt" -Content-Type: text/plain - +%CR +Content-Disposition: attachment; filename="test%TESTNUMBER,and;.txt"%CR +Content-Type: text/plain%CR +%CR foo bar This is a bar foo bar foo - - -Content-Disposition: form-data; name="a" - -{"field1":"value1","field2":"value2"} -Content-Disposition: form-data; name="b"; filename="param_b" -Content-Type: text/foo; charset=utf-8 - - \value1;type="whatever" -------------------------------24e78000bd32-- +%CR +%CR +Content-Disposition: form-data; name="a"%CR +%CR +{"field1":"value1","field2":"value2"}%CR +Content-Disposition: form-data; name="b"; filename="param_b"%CR +Content-Type: text/foo; charset=utf-8%CR +%CR + \value1;type="whatever" %CR +------------------------------24e78000bd32--%CR diff --git a/tests/data/test1134 b/tests/data/test1134 index 4b488fbbe904..1090a23b3286 100644 --- a/tests/data/test1134 +++ b/tests/data/test1134 @@ -45,19 +45,19 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u user1:password1 --next http://%HOSTIP:%H # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[user1:password1]b64% -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[2user:password2]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[user1:password1]b64% +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[2user:password2]b64% +User-Agent: curl/%VERSION +Accept: */* + [DISCONNECT] diff --git a/tests/data/test1137 b/tests/data/test1137 index cb20aee313ec..241f740aa7e7 100644 --- a/tests/data/test1137 +++ b/tests/data/test1137 @@ -38,15 +38,15 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER --ignore-content-length # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -PASV -TYPE I -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +PASV +TYPE I +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1138 b/tests/data/test1138 index ec7048c4adaf..7579fcd21dd2 100644 --- a/tests/data/test1138 +++ b/tests/data/test1138 @@ -9,14 +9,14 @@ followlocation # # Server-side - + HTTP/1.1 302 OK swsclose Location: ../moo.html/?name=%hex[%d8%a2%d8%ba%d8%a7%d8%b2%2d%d8%b3%d9%85%2d%d8%b2%d8%af%d8%a7%db%8c%db%8c%2d%d8%a7%d8%b2%2d%d8%a8%d8%a7%d8%b2%d8%a7%d8%b1%2d%d9%be%d9%88%d9%84]hex%&testcase=/%TESTNUMBER0002 Date: Tue, 09 Nov 2010 14:49:00 GMT Connection: close - + HTTP/1.1 200 OK swsclose Location: this should be ignored Date: Tue, 09 Nov 2010 14:49:00 GMT @@ -24,7 +24,7 @@ Connection: close body - + HTTP/1.1 302 OK swsclose Location: ../moo.html/?name=%hex[%d8%a2%d8%ba%d8%a7%d8%b2%2d%d8%b3%d9%85%2d%d8%b2%d8%af%d8%a7%db%8c%db%8c%2d%d8%a7%d8%b2%2d%d8%a8%d8%a7%d8%b2%d8%a7%d8%b1%2d%d9%be%d9%88%d9%84]hex%&testcase=/%TESTNUMBER0002 Date: Tue, 09 Nov 2010 14:49:00 GMT @@ -56,7 +56,7 @@ http://%HOSTIP:%HTTPPORT/we/are/all/twits/%TESTNUMBER -L # # Verify data after the test has been "shot" - + GET /we/are/all/twits/%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test114 b/tests/data/test114 index 8a545f2a8532..ce43a93d4f37 100644 --- a/tests/data/test114 +++ b/tests/data/test114 @@ -30,9 +30,9 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER 67 - -USER anonymous -PASS ftp@example.com + +USER anonymous +PASS ftp@example.com diff --git a/tests/data/test1141 b/tests/data/test1141 index 727cbcd5653a..c0d6122c2db6 100644 --- a/tests/data/test1141 +++ b/tests/data/test1141 @@ -54,19 +54,19 @@ proxy # Verify data after the test has been "shot" - -GET http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://foo.example.com/want/%TESTNUMBER0001 HTTP/1.1 -Host: foo.example.com -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://foo.example.com/want/%TESTNUMBER0001 HTTP/1.1 +Host: foo.example.com +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1142 b/tests/data/test1142 index c35190006f51..d42dddf31ac0 100644 --- a/tests/data/test1142 +++ b/tests/data/test1142 @@ -49,13 +49,13 @@ proxy # Verify data after the test has been "shot" - -GET http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + # 3, CURLE_URL_MALFORMAT for the four slashes diff --git a/tests/data/test1143 b/tests/data/test1143 index e9053b179436..9157433b6319 100644 --- a/tests/data/test1143 +++ b/tests/data/test1143 @@ -37,12 +37,12 @@ MSYS2_ARG_CONV_EXCL=http:/ # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1144 b/tests/data/test1144 index be51dae13d4b..3d5cb0b1d3eb 100644 --- a/tests/data/test1144 +++ b/tests/data/test1144 @@ -54,12 +54,12 @@ HTTP HEAD, receive no headers only body # # Verify data after the test has been "shot" - -HEAD /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +HEAD /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 8 diff --git a/tests/data/test1147 b/tests/data/test1147 index 9298e48a1812..5f27abc59b0e 100644 --- a/tests/data/test1147 +++ b/tests/data/test1147 @@ -51,14 +51,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -H @%LOGDIR/heads%TESTNUMBER.txt # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -One: 1 -Two: 2 - And A Funny One : wohoo - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +One: 1 +Two: 2 + And A Funny One : wohoo + diff --git a/tests/data/test1148 b/tests/data/test1148 index 5653ef61049d..c1ad7fe8844c 100644 --- a/tests/data/test1148 +++ b/tests/data/test1148 @@ -41,12 +41,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -# --stderr %LOGDIR/stderrlog%TESTNUMBER # - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # Check that the progress finished at 100% and has the right bar width. diff --git a/tests/data/test1149 b/tests/data/test1149 index d4e97d540d50..f5239aea2549 100644 --- a/tests/data/test1149 +++ b/tests/data/test1149 @@ -42,21 +42,21 @@ ftp://%HOSTIP:%FTPPORT/list/this/path/%TESTNUMBER/ --ftp-method multicwd --next # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD list -CWD this -CWD path -CWD %TESTNUMBER -EPSV -TYPE A -LIST -CWD / -EPSV -LIST list/this/path/%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD list +CWD this +CWD path +CWD %TESTNUMBER +EPSV +TYPE A +LIST +CWD / +EPSV +LIST list/this/path/%TESTNUMBER +QUIT diff --git a/tests/data/test115 b/tests/data/test115 index 22f75c0b6e81..62ec4ea827ea 100644 --- a/tests/data/test115 +++ b/tests/data/test115 @@ -32,13 +32,13 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER 13 - -USER anonymous -PASS ftp@example.com -PWD -EPSV -PASV -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +PASV +QUIT diff --git a/tests/data/test1150 b/tests/data/test1150 index cafc00cd0759..d93fc630966b 100644 --- a/tests/data/test1150 +++ b/tests/data/test1150 @@ -39,19 +39,19 @@ proxy # Verify data after the test has been "shot" - -GET http://test.remote.example.com.%TESTNUMBER:150/path HTTP/1.1 -Host: test.remote.example.com.%TESTNUMBER:150 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://test.remote.example.com.%TESTNUMBER:1234/path/ HTTP/1.1 -Host: test.remote.example.com.%TESTNUMBER:1234 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://test.remote.example.com.%TESTNUMBER:150/path HTTP/1.1 +Host: test.remote.example.com.%TESTNUMBER:150 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://test.remote.example.com.%TESTNUMBER:1234/path/ HTTP/1.1 +Host: test.remote.example.com.%TESTNUMBER:1234 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1151 b/tests/data/test1151 index 2da611ebfa26..eb94e9243206 100644 --- a/tests/data/test1151 +++ b/tests/data/test1151 @@ -22,10 +22,10 @@ Server: test-server/fake Content-Type: text/html Funny-head: yesyes swsclose Set-Cookie: foobar=name; domain=127.0.0.1; path=/; -Set-Cookie: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB; domain=127.0.0.1; path=/; -Set-Cookie: CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC=BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB; domain=127.0.0.1; path=/; -Set-Cookie: DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD=E; domain=127.0.0.1; path=/; -Set-Cookie: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF=E; domain=127.0.0.1; path=/; +Set-Cookie: %repeat[3000 x A]%=%repeat[1096 x B]%; domain=127.0.0.1; path=/; +Set-Cookie: %repeat[3000 x C]%=%repeat[1097 x B]%; domain=127.0.0.1; path=/; +Set-Cookie: %repeat[4096 x D]%=E; domain=127.0.0.1; path=/; +Set-Cookie: %repeat[4094 x F]%=E; domain=127.0.0.1; path=/; @@ -48,20 +48,20 @@ cookies # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # Netscape HTTP Cookie File # https://curl.se/docs/http-cookies.html # This file was generated by libcurl! Edit at your own risk. -127.0.0.1 FALSE / FALSE 0 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF E -127.0.0.1 FALSE / FALSE 0 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB +127.0.0.1 FALSE / FALSE 0 %repeat[4094 x F]% E +127.0.0.1 FALSE / FALSE 0 %repeat[3000 x A]% %repeat[1096 x B]% 127.0.0.1 FALSE / FALSE 0 foobar name diff --git a/tests/data/test1152 b/tests/data/test1152 index 1823bab4a9af..f02104f2cf50 100644 --- a/tests/data/test1152 +++ b/tests/data/test1152 @@ -45,15 +45,15 @@ ftp://%HOSTIP:%FTPPORT/test-%TESTNUMBER/ # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD test-%TESTNUMBER -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD test-%TESTNUMBER +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test1153 b/tests/data/test1153 index a74b1838ceca..5198092bce41 100644 --- a/tests/data/test1153 +++ b/tests/data/test1153 @@ -45,15 +45,15 @@ ftp://%HOSTIP:%FTPPORT/test-%TESTNUMBER/ # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD test-%TESTNUMBER -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD test-%TESTNUMBER +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test1154 b/tests/data/test1154 index bd08ce26c10d..5ffd512380a9 100644 --- a/tests/data/test1154 +++ b/tests/data/test1154 @@ -40,12 +40,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # 100 == CURLE_TOO_LARGE diff --git a/tests/data/test1155 b/tests/data/test1155 index 579328d9253a..ba73600fa69e 100644 --- a/tests/data/test1155 +++ b/tests/data/test1155 @@ -10,12 +10,12 @@ cookies # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 0 -Set-Cookie: domain=value;path=/ - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 0 +Set-Cookie: domain=value;path=/ + @@ -37,12 +37,12 @@ cookies # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # Netscape HTTP Cookie File diff --git a/tests/data/test1156 b/tests/data/test1156 index 349269427318..c81a9dce323c 100644 --- a/tests/data/test1156 +++ b/tests/data/test1156 @@ -11,37 +11,37 @@ Range # Server-side - -HTTP/1.1 200 OK -Content-Type: text/html -Content-Length: 5 - + +HTTP/1.1 200 OK +Content-Type: text/html +Content-Length: 5 + body - -HTTP/1.1 200 OK -Content-Type: text/html -Content-Length: 5 -Content-Range: bytes 3/7 - + +HTTP/1.1 200 OK +Content-Type: text/html +Content-Length: 5 +Content-Range: bytes 3/7 + body - -HTTP/1.1 416 Requested Range Not Satisfiable -Content-Type: text/html -Content-Length: 5 - + +HTTP/1.1 416 Requested Range Not Satisfiable +Content-Type: text/html +Content-Length: 5 + body - -HTTP/1.1 416 Requested Range Not Satisfiable -Content-Type: text/html -Content-Length: 5 -Content-Range: bytes */2 - + +HTTP/1.1 416 Requested Range Not Satisfiable +Content-Type: text/html +Content-Length: 5 +Content-Range: bytes */2 + body diff --git a/tests/data/test1157 b/tests/data/test1157 index 4e246e7031b5..91fea7437c74 100644 --- a/tests/data/test1157 +++ b/tests/data/test1157 @@ -45,12 +45,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -H @%LOGDIR/heads%TESTNUMBER.txt # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1158 b/tests/data/test1158 index 34845a74f315..bc9f2d571995 100644 --- a/tests/data/test1158 +++ b/tests/data/test1158 @@ -7,12 +7,12 @@ HTTP FORMPOST # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 10 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 10 + blablabla @@ -47,53 +47,53 @@ foo ^(Content-Type: multipart/form-data;|Content-Type: multipart/mixed; boundary=|-------).* -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 1006 -Content-Type: multipart/form-data; boundary=----------------------------24e78000bd32 - -------------------------------24e78000bd32 -Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER%22.txt" -Content-Type: mo/foo - +POST /we/want/%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Content-Length: 1006%CR +Content-Type: multipart/form-data; boundary=----------------------------24e78000bd32%CR +%CR +------------------------------24e78000bd32%CR +Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER%22.txt"%CR +Content-Type: mo/foo%CR +%CR foo bar This is a bar foo bar foo - -------------------------------24e78000bd32 -Content-Disposition: form-data; name="file2"; filename="test%TESTNUMBER%22.txt" -Content-Type: text/plain - +%CR +------------------------------24e78000bd32%CR +Content-Disposition: form-data; name="file2"; filename="test%TESTNUMBER%22.txt"%CR +Content-Type: text/plain%CR +%CR foo bar This is a bar foo bar foo - -------------------------------24e78000bd32 -Content-Disposition: form-data; name="file3" -Content-Type: multipart/mixed; boundary=----------------------------7f0e85a48b0b - -Content-Disposition: attachment; filename="test%TESTNUMBER%22.txt" -Content-Type: m/f - +%CR +------------------------------24e78000bd32%CR +Content-Disposition: form-data; name="file3"%CR +Content-Type: multipart/mixed; boundary=----------------------------7f0e85a48b0b%CR +%CR +Content-Disposition: attachment; filename="test%TESTNUMBER%22.txt"%CR +Content-Type: m/f%CR +%CR foo bar This is a bar foo bar foo - -Content-Disposition: attachment; filename="test%TESTNUMBER%22.txt" -Content-Type: text/plain - +%CR +Content-Disposition: attachment; filename="test%TESTNUMBER%22.txt"%CR +Content-Type: text/plain%CR +%CR foo bar This is a bar foo bar foo - - -------------------------------24e78000bd32-- +%CR +%CR +------------------------------24e78000bd32--%CR diff --git a/tests/data/test1159 b/tests/data/test1159 index 6ef2e4ad66e7..3f7fa338936a 100644 --- a/tests/data/test1159 +++ b/tests/data/test1159 @@ -11,12 +11,12 @@ followlocation # Server-side - -HTTP/1.1 301 This is a weirdo text message swsclose -Location: ht3p://localhost/ -Content-Length: 62 -Connection: close - + +HTTP/1.1 301 This is a weirdo text message swsclose +Location: ht3p://localhost/ +Content-Length: 62 +Connection: close + This server reply is for testing a simple Location: following @@ -36,19 +36,19 @@ http://%HOSTIP:%HTTPPORT/we/want/our/%TESTNUMBER -w '%{redirect_url}\n' # Verify data after the test has been "shot" - -GET /we/want/our/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/our/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 301 This is a weirdo text message swsclose -Location: ht3p://localhost/ -Content-Length: 62 -Connection: close - + +HTTP/1.1 301 This is a weirdo text message swsclose +Location: ht3p://localhost/ +Content-Length: 62 +Connection: close + This server reply is for testing a simple Location: following ht3p://localhost/ diff --git a/tests/data/test116 b/tests/data/test116 index 0ab00aae91f3..7a29f181e40d 100644 --- a/tests/data/test116 +++ b/tests/data/test116 @@ -43,13 +43,13 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -P 1.2.3.4 s/^(PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},)\d{1,3},\d{1,3}/$1/ s/^(EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|)\d{1,5}\|/$1/ - -USER anonymous -PASS ftp@example.com -PWD -EPRT |1|1.2.3.4| -PORT 1,2,3,4, -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPRT |1|1.2.3.4| +PORT 1,2,3,4, +QUIT diff --git a/tests/data/test1160 b/tests/data/test1160 index c24decedca7d..6b7c904cebca 100644 --- a/tests/data/test1160 +++ b/tests/data/test1160 @@ -1,4 +1,4 @@ - + @@ -11,12 +11,12 @@ cookies # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 0 -Set-Cookie: ____________%hex[%ff]hex%= ; %hex[%ff]hex% zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz%hex[%86%85%85%80]hex%zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz%hex[%fa]hex%zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz%hex[%f3%a0%81%96]hex%zzzzzzzzzzzz~zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz%hex[%b6]hex%zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 0 +Set-Cookie: ____________%hex[%ff]hex%= ;%repeat[117 x %20]%%hex[%ff]hex%%repeat[2602 x %20]%%repeat[434 x z]%%hex[%86%85%85%80]hex%%repeat[49 x z]%%hex[%fa]hex%%repeat[540 x z]%%hex[%f3%a0%81%96]hex%zzzzzzzzzzzz~%repeat[82 x z]%%hex[%b6]hex%%repeat[364 x z]% + @@ -38,12 +38,12 @@ cookies # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # Netscape HTTP Cookie File diff --git a/tests/data/test1161 b/tests/data/test1161 index dd8f9c9ebfc1..8e30f414dc2a 100644 --- a/tests/data/test1161 +++ b/tests/data/test1161 @@ -10,12 +10,12 @@ cookies # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 0 -Set-Cookie: ckyPersistent=permanent;path=;path=/ - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 0 +Set-Cookie: ckyPersistent=permanent;path=;path=/ + @@ -37,12 +37,12 @@ cookies # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # Netscape HTTP Cookie File diff --git a/tests/data/test1162 b/tests/data/test1162 index b6b394139e22..9f8f931936e3 100644 --- a/tests/data/test1162 +++ b/tests/data/test1162 @@ -37,16 +37,16 @@ MSYS2_ARG_CONV_EXCL=ftp:// - -USER anonymous -PASS ftp@example.com -PWD -CWD fully_simulated -CWD DOS -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD fully_simulated +CWD DOS +EPSV +TYPE A +LIST +QUIT # 78 == CURLE_REMOTE_FILE_NOT_FOUND diff --git a/tests/data/test1163 b/tests/data/test1163 index a109b511bcc7..006e612f98e5 100644 --- a/tests/data/test1163 +++ b/tests/data/test1163 @@ -33,16 +33,16 @@ FTP wildcard with pattern ending with an open-bracket - -USER anonymous -PASS ftp@example.com -PWD -CWD fully_simulated -CWD DOS -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD fully_simulated +CWD DOS +EPSV +TYPE A +LIST +QUIT # 78 == CURLE_REMOTE_FILE_NOT_FOUND diff --git a/tests/data/test1164 b/tests/data/test1164 index 40422da8b741..27934a7b7597 100644 --- a/tests/data/test1164 +++ b/tests/data/test1164 @@ -31,12 +31,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -w '%{size_download}\n' --http0.9 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 208 diff --git a/tests/data/test1166 b/tests/data/test1166 index 92e8ff40469b..05bb1e3eaf0c 100644 --- a/tests/data/test1166 +++ b/tests/data/test1166 @@ -10,13 +10,13 @@ cookies # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Set-Cookie: trackyou=want; path=/ -Content-Length: 68 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Set-Cookie: trackyou=want; path=/ +Content-Length: 68 + This server reply is for testing a Location: following with cookies @@ -36,17 +36,17 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER http://%HOSTIP:%HTTPPORT/want/%TESTNUM # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1168 b/tests/data/test1168 index 2bba7eccd393..855e50f0338d 100644 --- a/tests/data/test1168 +++ b/tests/data/test1168 @@ -59,19 +59,19 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER -L -u "catmai#d:#DZaRJYrixKE*gFY" # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[catmai#d:#DZaRJYrixKE*gFY]b64% -User-Agent: curl/%VERSION -Accept: */* - -GET /data/%TESTNUMBER0002.txt HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[catmai#d:#DZaRJYrixKE*gFY]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[catmai#d:#DZaRJYrixKE*gFY]b64% +User-Agent: curl/%VERSION +Accept: */* + +GET /data/%TESTNUMBER0002.txt HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[catmai#d:#DZaRJYrixKE*gFY]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test117 b/tests/data/test117 index 3bd5cb57f1ec..8811dd95364b 100644 --- a/tests/data/test117 +++ b/tests/data/test117 @@ -31,14 +31,14 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER 17 - -USER anonymous -PASS ftp@example.com -PWD -EPSV -PASV -TYPE I -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +PASV +TYPE I +QUIT diff --git a/tests/data/test1170 b/tests/data/test1170 index d6271714bd11..6a89c26e257d 100644 --- a/tests/data/test1170 +++ b/tests/data/test1170 @@ -10,30 +10,30 @@ Transfer-Encoding # # Server-side - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Transfer-Encoding: gzip, chunked - -2c + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Transfer-Encoding: gzip, chunked + +2c %hex[%1f%8b%08%08%79%9e%ab%41%00%03%6c%61%6c%61%6c%61%00%cb%c9%cc%4b%55%30%e4%52%c8%01%d1%46%5c]hex% %hex[%10%86%31%17%00]hex% -%hex[%02%71%60%18%00%00%00]hex% -0 - +%hex[%02%71%60%18%00%00%00]hex% +0 + - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Transfer-Encoding: gzip, chunked - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Transfer-Encoding: gzip, chunked + line 1 line 2 line 3 @@ -61,14 +61,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --tr-encoding -H "Connection:" # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -TE: gzip -Connection: TE - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +TE: gzip +Connection: TE + diff --git a/tests/data/test1171 b/tests/data/test1171 index 486aadb94b5d..545b79f77fbc 100644 --- a/tests/data/test1171 +++ b/tests/data/test1171 @@ -10,30 +10,30 @@ Transfer-Encoding # # Server-side - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Transfer-Encoding: gzip, chunked - -2c + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Transfer-Encoding: gzip, chunked + +2c %hex[%1f%8b%08%08%79%9e%ab%41%00%03%6c%61%6c%61%6c%61%00%cb%c9%cc%4b%55%30%e4%52%c8%01%d1%46%5c]hex% %hex[%10%86%31%17%00]hex% -%hex[%02%71%60%18%00%00%00]hex% -0 - +%hex[%02%71%60%18%00%00%00]hex% +0 + - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Transfer-Encoding: gzip, chunked - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Transfer-Encoding: gzip, chunked + line 1 line 2 line 3 @@ -61,14 +61,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --tr-encoding -H "Connection;" # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -TE: gzip -Connection: TE - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +TE: gzip +Connection: TE + diff --git a/tests/data/test1172 b/tests/data/test1172 index 0de4713d39c8..8060a592c416 100644 --- a/tests/data/test1172 +++ b/tests/data/test1172 @@ -33,12 +33,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --no-http0.9 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # unsupported protocol diff --git a/tests/data/test1174 b/tests/data/test1174 index 48938a7be3f5..f8f064a5430d 100644 --- a/tests/data/test1174 +++ b/tests/data/test1174 @@ -33,12 +33,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # unsupported protocol diff --git a/tests/data/test1176 b/tests/data/test1176 index 86d23a2ccc28..6d38e8689f08 100644 --- a/tests/data/test1176 +++ b/tests/data/test1176 @@ -8,18 +8,18 @@ globbing # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + -foo- @@ -41,25 +41,25 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -o '%LOGDIR/base-#0' # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + -foo- diff --git a/tests/data/test1178 b/tests/data/test1178 index ac42ee52de42..faf93eadb6d6 100644 --- a/tests/data/test1178 +++ b/tests/data/test1178 @@ -30,7 +30,7 @@ HTTP proxy auth with credentials longer than 256 bytes # 400 x 'A' : 600 x 'B' ... -http://%HOSTIP:%HTTPPORT/we/want/that/page/%TESTNUMBER -x http://%HOSTIP:%HTTPPORT -U AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB +http://%HOSTIP:%HTTPPORT/we/want/that/page/%TESTNUMBER -x http://%HOSTIP:%HTTPPORT -U %repeat[400 x A]%:%repeat[600 x B]% proxy @@ -40,14 +40,14 @@ proxy # # Verify data after the test has been "shot" - -GET http://%HOSTIP:%HTTPPORT/we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Proxy-Authorization: Basic %b64[AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://%HOSTIP:%HTTPPORT/we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Proxy-Authorization: Basic %b64[AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test118 b/tests/data/test118 index 9b5b8708eb6b..190dc79c1223 100644 --- a/tests/data/test118 +++ b/tests/data/test118 @@ -34,16 +34,16 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER 19 - -USER anonymous -PASS ftp@example.com -PWD -EPSV -PASV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +PASV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1180 b/tests/data/test1180 index d04542ef965c..4b2577e75a5f 100644 --- a/tests/data/test1180 +++ b/tests/data/test1180 @@ -36,13 +36,13 @@ HTTP GET request with proxy and -H "Proxy-Connection: keep-alive" - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1181 b/tests/data/test1181 index 9cdf3fa4640a..26b924e98682 100644 --- a/tests/data/test1181 +++ b/tests/data/test1181 @@ -8,12 +8,12 @@ HTTP proxy # Server-side - -HTTP/1.1 200 OK -Server: Blafasel/5.0 -Date: Sat, 16 Jan 2021 14:48:30 GMT -Content-Length: 12 - + +HTTP/1.1 200 OK +Server: Blafasel/5.0 +Date: Sat, 16 Jan 2021 14:48:30 GMT +Content-Length: 12 + Bla bla bla @@ -36,13 +36,13 @@ HTTP GET request with proxy and "Proxy-Connection: Keep-Alive" - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1183 b/tests/data/test1183 index 5f795ed66601..fc5eb2eb00cd 100644 --- a/tests/data/test1183 +++ b/tests/data/test1183 @@ -8,12 +8,12 @@ HTTP GET # Server-side - -HTTP/1.1 200 OK -Server: Blafasel/5.0 -Date: Sat, 16 Jan 2021 14:48:30 GMT -Content-Length: 12 - + +HTTP/1.1 200 OK +Server: Blafasel/5.0 +Date: Sat, 16 Jan 2021 14:48:30 GMT +Content-Length: 12 + Bla bla bla @@ -37,12 +37,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify that the %TESTNUMBER has been resolved to %TESTNUMBER - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1184 b/tests/data/test1184 index 268da350fbe8..0fa1c38e3def 100644 --- a/tests/data/test1184 +++ b/tests/data/test1184 @@ -11,29 +11,29 @@ proxytunnel # # Server-side - -HTTP/1.1 200 Mighty fine indeed -Server: test tunnel 2000 - + +HTTP/1.1 200 Mighty fine indeed +Server: test tunnel 2000 + - -HTTP/1.1 302 OK -Location: http://%HOSTIP.%TESTNUMBER:%HTTPPORT/we/want/that/page/%TESTNUMBER0002 -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Type: text/html -Funny-head: yesyes -Content-Length: 9 -Connection: close - + +HTTP/1.1 302 OK +Location: http://%HOSTIP.%TESTNUMBER:%HTTPPORT/we/want/that/page/%TESTNUMBER0002 +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Type: text/html +Funny-head: yesyes +Content-Length: 9 +Connection: close + contents - -HTTP/1.1 200 OK -Content-Length: 7 - + +HTTP/1.1 200 OK +Content-Length: 7 + second @@ -59,49 +59,49 @@ proxy # # Verify data after the test has been "shot" - -CONNECT %HOSTIP.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: %HOSTIP.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - -CONNECT %HOSTIP.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: %HOSTIP.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT %HOSTIP.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: %HOSTIP.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +CONNECT %HOSTIP.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: %HOSTIP.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + - -GET /we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP.%TESTNUMBER:%HTTPPORT -Accept: */* -User-Agent: %TESTNUMBER-agent - -GET /we/want/that/page/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP.%TESTNUMBER:%HTTPPORT -Accept: */* -User-Agent: %TESTNUMBER-agent - + +GET /we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP.%TESTNUMBER:%HTTPPORT +Accept: */* +User-Agent: %TESTNUMBER-agent + +GET /we/want/that/page/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP.%TESTNUMBER:%HTTPPORT +Accept: */* +User-Agent: %TESTNUMBER-agent + - -HTTP/1.1 200 Mighty fine indeed -Server: test tunnel 2000 - -HTTP/1.1 302 OK -Location: http://%HOSTIP.%TESTNUMBER:%HTTPPORT/we/want/that/page/%TESTNUMBER0002 -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Type: text/html -Funny-head: yesyes -Content-Length: 9 -Connection: close - -HTTP/1.1 200 Mighty fine indeed -Server: test tunnel 2000 - -HTTP/1.1 200 OK -Content-Length: 7 - + +HTTP/1.1 200 Mighty fine indeed +Server: test tunnel 2000 + +HTTP/1.1 302 OK +Location: http://%HOSTIP.%TESTNUMBER:%HTTPPORT/we/want/that/page/%TESTNUMBER0002 +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Type: text/html +Funny-head: yesyes +Content-Length: 9 +Connection: close + +HTTP/1.1 200 Mighty fine indeed +Server: test tunnel 2000 + +HTTP/1.1 200 OK +Content-Length: 7 + second diff --git a/tests/data/test1185 b/tests/data/test1185 index 7323c59a0dce..26852a641835 100644 --- a/tests/data/test1185 +++ b/tests/data/test1185 @@ -20,7 +20,7 @@ checksrc * Violate each rule at least once. **/ int hello; /*------------------------------------------------------------------*/ -int tab; +int%TABtab; int trailing_space; int a = func (); int b = func( b); @@ -91,7 +91,7 @@ void startfunc(int a, int b) { ./%LOGDIR/code1185.c:4:82: warning: Longer than 79 columns (LONGLINE) int hello; /*------------------------------------------------------------------*/ ./%LOGDIR/code1185.c:5:4: error: Contains TAB character (TABS) - int tab; + int%TABtab; ^ ./%LOGDIR/code1185.c:7:13: warning: func with space (SPACEBEFOREPAREN) int a = func (); @@ -118,7 +118,7 @@ void startfunc(int a, int b) { } else { ^ ./%LOGDIR/code1185.c:24:11: warning: missing space after close paren (PARENBRACE) - if(a == 2){ + if(a == 2){%SP%SP ^ ./%LOGDIR/code1185.c:28:14: warning: no space before semicolon (SPACESEMICOLON) func_return() ; @@ -205,10 +205,10 @@ void startfunc(int a, int b) { // CPP comment ? ^ ./%LOGDIR/code1185.c:1:1: error: Missing copyright statement (COPYRIGHT) - +%SP ^ ./%LOGDIR/code1185.c:1:1: error: Missing closing comment (OPENCOMMENT) - +%SP ^ checksrc: 0 errors and 41 warnings diff --git a/tests/data/test1186 b/tests/data/test1186 index dabe270968b1..e3157f36ca54 100644 --- a/tests/data/test1186 +++ b/tests/data/test1186 @@ -7,12 +7,12 @@ HTTP FORMPOST # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 10 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 10 + blablabla @@ -47,53 +47,53 @@ foo ^(Content-Type: multipart/form-data;|Content-Type: multipart/mixed; boundary=|-------).* -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 1002 -Content-Type: multipart/form-data; boundary=----------------------------24e78000bd32 - -------------------------------24e78000bd32 -Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER\".txt" -Content-Type: mo/foo - +POST /we/want/%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Content-Length: 1002%CR +Content-Type: multipart/form-data; boundary=----------------------------24e78000bd32%CR +%CR +------------------------------24e78000bd32%CR +Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER\".txt"%CR +Content-Type: mo/foo%CR +%CR foo bar This is a bar foo bar foo - -------------------------------24e78000bd32 -Content-Disposition: form-data; name="file2"; filename="test%TESTNUMBER\".txt" -Content-Type: text/plain - +%CR +------------------------------24e78000bd32%CR +Content-Disposition: form-data; name="file2"; filename="test%TESTNUMBER\".txt"%CR +Content-Type: text/plain%CR +%CR foo bar This is a bar foo bar foo - -------------------------------24e78000bd32 -Content-Disposition: form-data; name="file3" -Content-Type: multipart/mixed; boundary=----------------------------7f0e85a48b0b - -Content-Disposition: attachment; filename="test%TESTNUMBER\".txt" -Content-Type: m/f - +%CR +------------------------------24e78000bd32%CR +Content-Disposition: form-data; name="file3"%CR +Content-Type: multipart/mixed; boundary=----------------------------7f0e85a48b0b%CR +%CR +Content-Disposition: attachment; filename="test%TESTNUMBER\".txt"%CR +Content-Type: m/f%CR +%CR foo bar This is a bar foo bar foo - -Content-Disposition: attachment; filename="test%TESTNUMBER\".txt" -Content-Type: text/plain - +%CR +Content-Disposition: attachment; filename="test%TESTNUMBER\".txt"%CR +Content-Type: text/plain%CR +%CR foo bar This is a bar foo bar foo - - -------------------------------24e78000bd32-- +%CR +%CR +------------------------------24e78000bd32--%CR diff --git a/tests/data/test1187 b/tests/data/test1187 index aaa8d107b381..3cae202eb193 100644 --- a/tests/data/test1187 +++ b/tests/data/test1187 @@ -23,11 +23,11 @@ smtp SMTP multipart with file name escaping - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -F "=This is the mail text" -F '=File content;filename="strange\file\"name"' @@ -41,26 +41,26 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr s/^--------------------------[A-Za-z0-9]*/------------------------------/ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/ - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA +QUIT - -Content-Type: multipart/mixed; boundary=---------------------------- -Mime-Version: 1.0 - ------------------------------- - -This is the mail text ------------------------------- -Content-Disposition: attachment; filename="strange\\file\"name" - -File content --------------------------------- -. + +Content-Type: multipart/mixed; boundary=---------------------------- +Mime-Version: 1.0 + +------------------------------ + +This is the mail text +------------------------------ +Content-Disposition: attachment; filename="strange\\file\"name" + +File content +-------------------------------- +. diff --git a/tests/data/test1188 b/tests/data/test1188 index 702856245d97..042e68255837 100644 --- a/tests/data/test1188 +++ b/tests/data/test1188 @@ -9,11 +9,11 @@ HTTP GET # Server-side - -HTTP/1.1 404 Not Found -Content-Length: 0 -Connection: close - + +HTTP/1.1 404 Not Found +Content-Length: 0 +Connection: close + @@ -32,17 +32,17 @@ http # Verify data after the test has been "shot" - -GET /we/want/our/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /we/want/our/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/our/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /we/want/our/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 0 says 22 The requested URL returned error: 404 diff --git a/tests/data/test1189 b/tests/data/test1189 index 0c19e70f77d6..3e5748eafdce 100644 --- a/tests/data/test1189 +++ b/tests/data/test1189 @@ -7,12 +7,12 @@ HTTP FORMPOST # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 10 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 10 + blablabla @@ -46,66 +46,66 @@ foo ^(Content-Type: multipart/form-data;|-------).* -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 1240 -Content-Type: multipart/form-data; boundary=----------------------------24e78000bd32 - -------------------------------24e78000bd32 -Content-Disposition: form-data; name="name" - -daniel -------------------------------24e78000bd32 -Content-Disposition: form-data; name="tool" - -curl -------------------------------24e78000bd32 -Content-Disposition: form-data; name="str1" - -@literal -------------------------------24e78000bd32 -Content-Disposition: form-data; name="str2" - - diff --git a/tests/data/test119 b/tests/data/test119 index 4426def0bde4..8ddb2e2ef3de 100644 --- a/tests/data/test119 +++ b/tests/data/test119 @@ -38,14 +38,14 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -P - ^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3} ^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\| - -USER anonymous -PASS ftp@example.com -PWD -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1192 b/tests/data/test1192 index 47036ab83ea5..c1b1fd790037 100644 --- a/tests/data/test1192 +++ b/tests/data/test1192 @@ -30,7 +30,7 @@ mqtt MQTT SUBSCRIBE 2k topic -mqtt://%HOSTIP:%MQTTPORT/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/%TESTNUMBER +mqtt://%HOSTIP:%MQTTPORT/%repeat[2048 x A]%/%TESTNUMBER @@ -47,9 +47,9 @@ s/^(.* 00044d5154540402003c000c6375726c).*/$1/ client CONNECT 18 00044d5154540402003c000c6375726c server CONNACK 2 20020000 -client SUBSCRIBE 80a 0001080541414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141412f3131393200 +client SUBSCRIBE 80a 000108054%repeat[2047 x 14]%12f3131393200 server SUBACK 3 9003000100 -server PUBLISH 80d 308d10080541414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141412f3131393268656c6c6f0a +server PUBLISH 80d 308d1008054%repeat[2047 x 14]%12f3131393268656c6c6f0a server DISCONNECT 0 e000 diff --git a/tests/data/test1193 b/tests/data/test1193 index 531efa2597b7..5e6b1c82e76d 100644 --- a/tests/data/test1193 +++ b/tests/data/test1193 @@ -29,26 +29,7 @@ MQTT PUBLISH 2k payload mqtt://%HOSTIP:%MQTTPORT/%TESTNUMBER -d @%LOGDIR/payload%TESTNUMBER -123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 -123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 -123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 -123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 -123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 -123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 -123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 -123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 -123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 -123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 -123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 -123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 -123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 -123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 -123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 -123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 -123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 -123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 -123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 -123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 +%repeat[20 x 123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789%0a]% diff --git a/tests/data/test1197 b/tests/data/test1197 index 22bf8dbbe8d6..5ec9c19d4569 100644 --- a/tests/data/test1197 +++ b/tests/data/test1197 @@ -11,23 +11,23 @@ followlocation # # Server-side - -HTTP/1.1 302 OK swsbounce swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 8 -Connection: close -Content-Type: text/plain -Location: ./%TESTNUMBER0001 - + +HTTP/1.1 302 OK swsbounce swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 8 +Connection: close +Content-Type: text/plain +Location: ./%TESTNUMBER0001 + monster - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 15 -Connection: close -Content-Type: text/plain; charset=us-ascii - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 15 +Connection: close +Content-Type: text/plain; charset=us-ascii + bigger monster @@ -50,35 +50,35 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -w "%{method}\n" -L -d "twinkle twinkle lit # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 27 -Content-Type: application/x-www-form-urlencoded - -twinkle twinkle little starGET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 27 +Content-Type: application/x-www-form-urlencoded + +twinkle twinkle little starGET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 302 OK swsbounce swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 8 -Connection: close -Content-Type: text/plain -Location: ./%TESTNUMBER0001 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 15 -Connection: close -Content-Type: text/plain; charset=us-ascii - + +HTTP/1.1 302 OK swsbounce swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 8 +Connection: close +Content-Type: text/plain +Location: ./%TESTNUMBER0001 + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 15 +Connection: close +Content-Type: text/plain; charset=us-ascii + bigger monster GET diff --git a/tests/data/test12 b/tests/data/test12 index 48380a1e9b93..ac8309e5dffa 100644 --- a/tests/data/test12 +++ b/tests/data/test12 @@ -9,18 +9,18 @@ Content-Range # Server-side - -HTTP/1.1 206 Partial Content -Date: Mon, 13 Nov 2000 13:41:09 GMT -Server: Apache/1.3.11 (Unix) PHP/3.0.14 -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 101 -Content-Range: bytes 100-200/3527 -Connection: close -Content-Type: text/html - + +HTTP/1.1 206 Partial Content +Date: Mon, 13 Nov 2000 13:41:09 GMT +Server: Apache/1.3.11 (Unix) PHP/3.0.14 +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 101 +Content-Range: bytes 100-200/3527 +Connection: close +Content-Type: text/html + ..partial data returned from the server as a result of setting an explicit byte range in the request @@ -42,13 +42,13 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER -r 100-200 # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=100-200 -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=100-200 +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test120 b/tests/data/test120 index 64628b6599fc..7799f5644ab3 100644 --- a/tests/data/test120 +++ b/tests/data/test120 @@ -37,17 +37,17 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -Q "-DELE file" # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -PASV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -DELE file -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +PASV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +DELE file +QUIT diff --git a/tests/data/test1200 b/tests/data/test1200 index 342077b8a5d8..c61884668f0e 100644 --- a/tests/data/test1200 +++ b/tests/data/test1200 @@ -9,10 +9,10 @@ INDEX # # Server-side - -iMenu results error.host 1 -0Selector /bar bar.foo.invalid 70 -. + +iMenu results error.host 1 +0Selector /bar bar.foo.invalid 70 +. @@ -32,8 +32,8 @@ gopher://%HOSTIP:%GOPHERPORT/1/%TESTNUMBER # # Verify data after the test has been "shot" - -/%TESTNUMBER + +/%TESTNUMBER diff --git a/tests/data/test1201 b/tests/data/test1201 index f4c1a483865e..f87d9215d03d 100644 --- a/tests/data/test1201 +++ b/tests/data/test1201 @@ -9,10 +9,10 @@ SELECTOR # # Server-side - -iMenu results error.host 1 -0Selector /selector/SELECTOR /bar bar.foo.invalid 70 -. + +iMenu results error.host 1 +0Selector /selector/SELECTOR /bar bar.foo.invalid 70 +. @@ -32,8 +32,8 @@ gopher://%HOSTIP:%GOPHERPORT/1/selector/SELECTOR/%TESTNUMBER # # Verify data after the test has been "shot" - -/selector/SELECTOR/%TESTNUMBER + +/selector/SELECTOR/%TESTNUMBER diff --git a/tests/data/test1202 b/tests/data/test1202 index ab1d51c0f81b..f307eae371ee 100644 --- a/tests/data/test1202 +++ b/tests/data/test1202 @@ -9,11 +9,11 @@ QUERY # # Server-side - -iSearch results error.host 1 -0Query query succeeded /foo foo.bar.invalid 70 -0Selector /the/search/engine /bar bar.foo.invalid 70 -. + +iSearch results error.host 1 +0Query query succeeded /foo foo.bar.invalid 70 +0Selector /the/search/engine /bar bar.foo.invalid 70 +. @@ -33,8 +33,8 @@ Gopher query # # Verify data after the test has been "shot" - -/the/search/engine query succeeded/%TESTNUMBER + +/the/search/engine query succeeded/%TESTNUMBER diff --git a/tests/data/test1203 b/tests/data/test1203 index 267fc15cb791..51000e106c7a 100644 --- a/tests/data/test1203 +++ b/tests/data/test1203 @@ -10,10 +10,10 @@ INDEX # # Server-side - -iMenu results error.host 1 -0Selector /bar bar.foo.invalid 70 -. + +iMenu results error.host 1 +0Selector /bar bar.foo.invalid 70 +. @@ -36,8 +36,8 @@ Gopher IPv6 index # # Verify data after the test has been "shot" - -/moo/%TESTNUMBER + +/moo/%TESTNUMBER diff --git a/tests/data/test1204 b/tests/data/test1204 index 97bebe7ba6f4..bc1a201d1d73 100644 --- a/tests/data/test1204 +++ b/tests/data/test1204 @@ -9,38 +9,38 @@ HTTP Basic auth # Server-side - -HTTP/1.1 401 Authorization Required swsbounce -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: X-MobileMe-AuthToken realm="Newcastle", Basic realm="fun fun fun" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required swsbounce +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: X-MobileMe-AuthToken realm="Newcastle", Basic realm="fun fun fun" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # This is supposed to be returned when the server gets the second request - -HTTP/1.1 200 OK -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 200 OK +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! - -HTTP/1.1 401 Authorization Required swsbounce -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: X-MobileMe-AuthToken realm="Newcastle", Basic realm="fun fun fun" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 200 OK -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 401 Authorization Required swsbounce +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: X-MobileMe-AuthToken realm="Newcastle", Basic realm="fun fun fun" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 200 OK +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! @@ -61,18 +61,18 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --anyauth # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[testuser:testpass]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[testuser:testpass]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1205 b/tests/data/test1205 index 5a7fb7dc51fa..ebd691cd3c41 100644 --- a/tests/data/test1205 +++ b/tests/data/test1205 @@ -14,7 +14,7 @@ HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Content-Length: 6 Connection: close -Funny-head: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAendofthem +Funny-head: %repeat[18000 x A]%endofthem -foo- @@ -37,12 +37,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1206 b/tests/data/test1206 index 228df4adb773..796ea44dfb71 100644 --- a/tests/data/test1206 +++ b/tests/data/test1206 @@ -34,17 +34,17 @@ FTP PORT and 425 on download # Verify data after the test has been "shot" -s/^EPRT \|1\|(.*)/EPRT \|1\|/ +s/^EPRT \|1\|(\S*)/EPRT \|1\|/ - -USER anonymous -PASS ftp@example.com -PWD + +USER anonymous +PASS ftp@example.com +PWD EPRT |1| -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT 10 is CURLE_FTP_ACCEPT_FAILED diff --git a/tests/data/test1207 b/tests/data/test1207 index 612c42b0d6dc..0d77dfb3ccfa 100644 --- a/tests/data/test1207 +++ b/tests/data/test1207 @@ -34,17 +34,17 @@ FTP PORT and 421 on download # Verify data after the test has been "shot" -s/^EPRT \|1\|(.*)/EPRT \|1\|/ +s/^EPRT \|1\|(\S*)/EPRT \|1\|/ - -USER anonymous -PASS ftp@example.com -PWD + +USER anonymous +PASS ftp@example.com +PWD EPRT |1| -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT 10 diff --git a/tests/data/test1208 b/tests/data/test1208 index 055a0a58c63b..8acf3c1cd716 100644 --- a/tests/data/test1208 +++ b/tests/data/test1208 @@ -38,21 +38,21 @@ FTP PORT download, no data conn and no transient negative reply # Verify data after the test has been "shot" -s/^EPRT \|1\|(.*)/EPRT \|1\|/ +s/^EPRT \|1\|(\S*)/EPRT \|1\|/ # This test doesn't send a QUIT because the main state machine in multi.c # triggers the timeout and sets the CURLE_OPERATION_TIMEDOUT error (28) for # which the FTP disconnect code generically has to assume could mean the # control the connection and thus it cannot send any command. - -USER anonymous -PASS ftp@example.com -PWD + +USER anonymous +PASS ftp@example.com +PWD EPRT |1| -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER # 28 is CURLE_OPERATION_TIMEDOUT diff --git a/tests/data/test1209 b/tests/data/test1209 index 38e1003c9042..7c3ec3f94f3d 100644 --- a/tests/data/test1209 +++ b/tests/data/test1209 @@ -36,7 +36,7 @@ FTP PORT download, no data conn and no positive preliminary reply # Verify data after the test has been "shot" -s/^EPRT \|1\|(.*)/EPRT \|1\|/ +s/^EPRT \|1\|(\S*)/EPRT \|1\|/ # The protocol part does not include QUIT simply because the error is @@ -44,14 +44,14 @@ s/^EPRT \|1\|(.*)/EPRT \|1\|/ # specifically saying for which connection it concerns, and for timeouts libcurl # marks the control channel as "invalid". As this test case times out for the # data connection it could still use the control channel. - -USER anonymous -PASS ftp@example.com -PWD + +USER anonymous +PASS ftp@example.com +PWD EPRT |1| -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER 28 diff --git a/tests/data/test121 b/tests/data/test121 index 3625d0e3e041..6d18f564b30a 100644 --- a/tests/data/test121 +++ b/tests/data/test121 @@ -35,17 +35,17 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -Q "-DELE after_transfer" -Q "DELE before_tra # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -DELE before_transfer -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -DELE after_transfer -QUIT + +USER anonymous +PASS ftp@example.com +PWD +DELE before_transfer +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +DELE after_transfer +QUIT diff --git a/tests/data/test1210 b/tests/data/test1210 index 09f830c72bfa..ade12a2dddf6 100644 --- a/tests/data/test1210 +++ b/tests/data/test1210 @@ -38,12 +38,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER?junk -J -O --output-dir %LOGDIR # # Verify data after the test has been "shot" - -GET /%TESTNUMBER?junk HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER?junk HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 diff --git a/tests/data/test1211 b/tests/data/test1211 index 6ca7eaea917f..d2919fb456e4 100644 --- a/tests/data/test1211 +++ b/tests/data/test1211 @@ -36,17 +36,17 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -P - # Verify data after the test has been "shot" -s/^EPRT \|1\|(.*)/EPRT \|1\|/ +s/^EPRT \|1\|(\S*)/EPRT \|1\|/ - -USER anonymous -PASS ftp@example.com -PWD + +USER anonymous +PASS ftp@example.com +PWD EPRT |1| -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER 28 diff --git a/tests/data/test1212 b/tests/data/test1212 index e67878d9062b..a9a1dfccc8b8 100644 --- a/tests/data/test1212 +++ b/tests/data/test1212 @@ -40,13 +40,13 @@ http://user:secret@%HOSTIP:%HTTPPORT/ulion/%TESTNUMBER --socks5 non-existing-hos # Verify data after the test has been "shot" - -GET /ulion/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[user:secret]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /ulion/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[user:secret]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1213 b/tests/data/test1213 index 195329ecb200..662ca54728a2 100644 --- a/tests/data/test1213 +++ b/tests/data/test1213 @@ -9,14 +9,14 @@ HTTP proxy # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Type: text/html -Funny-head: yesyes -Content-Length: 22 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Type: text/html +Funny-head: yesyes +Content-Length: 22 + the content goes here @@ -42,13 +42,13 @@ proxy # Verify data after the test has been "shot" - -GET http://we.want.that.site.com.%TESTNUMBER/ HTTP/1.1 -Host: we.want.that.site.com.%TESTNUMBER -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://we.want.that.site.com.%TESTNUMBER/ HTTP/1.1 +Host: we.want.that.site.com.%TESTNUMBER +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1214 b/tests/data/test1214 index fc8a94eaf70f..70ed712d3360 100644 --- a/tests/data/test1214 +++ b/tests/data/test1214 @@ -9,14 +9,14 @@ HTTP proxy # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Type: text/html -Funny-head: yesyes -Content-Length: 22 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Type: text/html +Funny-head: yesyes +Content-Length: 22 + the content goes here @@ -42,13 +42,13 @@ proxy # Verify data after the test has been "shot" - -GET http://we.want.that.site.com.%TESTNUMBER/?moo=foo HTTP/1.1 -Host: we.want.that.site.com.%TESTNUMBER -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://we.want.that.site.com.%TESTNUMBER/?moo=foo HTTP/1.1 +Host: we.want.that.site.com.%TESTNUMBER +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1215 b/tests/data/test1215 index 31c8723913ac..54c52808f820 100644 --- a/tests/data/test1215 +++ b/tests/data/test1215 @@ -76,21 +76,21 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --ntlm --proxy http:// # Verify data after the test has been "shot" - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1216 b/tests/data/test1216 index 6341ba473c33..bb8e043b81ad 100644 --- a/tests/data/test1216 +++ b/tests/data/test1216 @@ -10,14 +10,14 @@ cookies # Server-side - + HTTP/1.1 200 OK Server: Microsoft-IIS/4.0 Date: Tue, 25 Sep 2001 19:37:44 GMT Content-Type: text/html Connection: close -Content-Length: 21 - +Content-Length: 21 + This server says moo @@ -47,20 +47,20 @@ proxy # Verify data after the test has been "shot" - -GET http://example.fake/c/%TESTNUMBER HTTP/1.1 -Host: example.fake -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Cookie: moo3=indeed; moo2=indeed - -GET http://bexample.fake/c/%TESTNUMBER HTTP/1.1 -Host: bexample.fake -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://example.fake/c/%TESTNUMBER HTTP/1.1 +Host: example.fake +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Cookie: moo3=indeed; moo2=indeed + +GET http://bexample.fake/c/%TESTNUMBER HTTP/1.1 +Host: bexample.fake +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1217 b/tests/data/test1217 index 691c88e73203..86e1f3693afe 100644 --- a/tests/data/test1217 +++ b/tests/data/test1217 @@ -37,21 +37,21 @@ ftp://%HOSTIP:%FTPPORT/get/file/%TESTNUMBER ftp://%HOSTIP:%FTPPORT/get/file/agai ^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3} ^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\| - -USER anonymous -PASS ftp@example.com -PWD -CWD get/file -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -CWD /this/is/the/path -CWD get/file/again -EPSV -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD get/file +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +CWD /this/is/the/path +CWD get/file/again +EPSV +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1218 b/tests/data/test1218 index afbc2b564674..e66d84e1ebd6 100644 --- a/tests/data/test1218 +++ b/tests/data/test1218 @@ -11,12 +11,12 @@ cookies # This test is very similar to 1216, only that it sets the cookies from the # first site instead of reading from a file - + HTTP/1.1 200 OK Date: Tue, 25 Sep 2001 19:37:44 GMT Set-Cookie: bug=fixed; domain=.example.fake; -Content-Length: 21 - +Content-Length: 21 + This server says moo @@ -40,26 +40,26 @@ proxy # Verify data after the test has been "shot" - -GET http://example.fake/c/%TESTNUMBER HTTP/1.1 -Host: example.fake -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://example.fake/c/%TESTNUMBER HTTP/1.1 -Host: example.fake -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Cookie: bug=fixed - -GET http://bexample.fake/c/%TESTNUMBER HTTP/1.1 -Host: bexample.fake -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://example.fake/c/%TESTNUMBER HTTP/1.1 +Host: example.fake +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://example.fake/c/%TESTNUMBER HTTP/1.1 +Host: example.fake +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Cookie: bug=fixed + +GET http://bexample.fake/c/%TESTNUMBER HTTP/1.1 +Host: bexample.fake +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1219 b/tests/data/test1219 index 454654399b92..23ffe3bd643d 100644 --- a/tests/data/test1219 +++ b/tests/data/test1219 @@ -37,13 +37,13 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test122 b/tests/data/test122 index 1f007c1ce036..7aacf2aa0fd2 100644 --- a/tests/data/test122 +++ b/tests/data/test122 @@ -31,15 +31,15 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -C 5 # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -PASV -TYPE I -SIZE %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +PASV +TYPE I +SIZE %TESTNUMBER +QUIT diff --git a/tests/data/test1221 b/tests/data/test1221 index c2fd7a5dddc5..6a410d95b898 100644 --- a/tests/data/test1221 +++ b/tests/data/test1221 @@ -11,11 +11,11 @@ HTTP POST # # Server-side - -HTTP/1.1 200 I am cool swsclose -Server: Cool server/10.0 -Content-Length: 0 - + +HTTP/1.1 200 I am cool swsclose +Server: Cool server/10.0 +Content-Length: 0 + @@ -39,14 +39,14 @@ content to _?!#$'|<> # # Verify data after the test has been "shot" - -POST /%TESTNUMBER?my+name+is+moo%5b%5d&yes=s+i+r&v_alue=content+to+_%3f%21%23%24%27%7c%3c%3e%0a&content+to+_%3f%21%23%24%27%7c%3c%3e%0a&%3d%3d HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 24 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER?my+name+is+moo%5b%5d&yes=s+i+r&v_alue=content+to+_%3f%21%23%24%27%7c%3c%3e%0a&content+to+_%3f%21%23%24%27%7c%3c%3e%0a&%3d%3d HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 24 +Content-Type: application/x-www-form-urlencoded + start=once+upon+the+time diff --git a/tests/data/test1223 b/tests/data/test1223 index 6c1ee00189e7..2ce956b82984 100644 --- a/tests/data/test1223 +++ b/tests/data/test1223 @@ -37,12 +37,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -w 'IP %{remote_ip} and PORT %{remote_port} # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + HTTP/1.1 200 OK diff --git a/tests/data/test1224 b/tests/data/test1224 index 64ba4482c586..904fe38932c1 100644 --- a/tests/data/test1224 +++ b/tests/data/test1224 @@ -34,16 +34,16 @@ ftp://%HOSTIP:%FTPPORT//%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD / -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD / +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1225 b/tests/data/test1225 index b20363c3e45c..51cdaa0a020c 100644 --- a/tests/data/test1225 +++ b/tests/data/test1225 @@ -34,23 +34,23 @@ ftp://%HOSTIP:%FTPPORT//foo/%TESTNUMBER ftp://%HOSTIP:%FTPPORT//foo/bar/%TESTNUM # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD / -CWD foo -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -CWD / -CWD foo -CWD bar -EPSV -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD / +CWD foo +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +CWD / +CWD foo +CWD bar +EPSV +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1226 b/tests/data/test1226 index 08e706b9b016..8e7c47191610 100644 --- a/tests/data/test1226 +++ b/tests/data/test1226 @@ -34,16 +34,16 @@ ftp://%HOSTIP:%FTPPORT//%TESTNUMBER --ftp-method singlecwd # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD / -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD / +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1227 b/tests/data/test1227 index 30477a46a0b8..3c3fbfeb7a97 100644 --- a/tests/data/test1227 +++ b/tests/data/test1227 @@ -34,15 +34,15 @@ ftp://%HOSTIP:%FTPPORT//%TESTNUMBER --ftp-method nocwd # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE /%TESTNUMBER -RETR /%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE /%TESTNUMBER +RETR /%TESTNUMBER +QUIT diff --git a/tests/data/test1228 b/tests/data/test1228 index a4df51c46ccf..721d637f3978 100644 --- a/tests/data/test1228 +++ b/tests/data/test1228 @@ -39,20 +39,20 @@ proxy # Verify data after the test has been "shot" - -GET http://example.fake/hoge/%TESTNUMBER HTTP/1.1 -Host: example.fake -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://example.fake/hogege/ HTTP/1.1 -Host: example.fake -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Cookie: path1=root - + +GET http://example.fake/hoge/%TESTNUMBER HTTP/1.1 +Host: example.fake +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://example.fake/hogege/ HTTP/1.1 +Host: example.fake +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Cookie: path1=root + diff --git a/tests/data/test1229 b/tests/data/test1229 index cc179499ad22..781fa61b7a0b 100644 --- a/tests/data/test1229 +++ b/tests/data/test1229 @@ -8,39 +8,39 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! @@ -66,18 +66,18 @@ http://%5cuser%22:password@%HOSTIP:%HTTPPORT/%TESTNUMBER --digest # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="\\user\"", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER", response="f2694d426040712584c156d3de72b8d6" -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="\\user\"", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER", response="f2694d426040712584c156d3de72b8d6" +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test123 b/tests/data/test123 index 8ccd69cf6816..249f89ab5520 100644 --- a/tests/data/test123 +++ b/tests/data/test123 @@ -28,13 +28,13 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -T %LOGDIR/upload%TESTNUMBER -C 51 # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +QUIT diff --git a/tests/data/test1230 b/tests/data/test1230 index fbcff60393b0..464cca3c7c2d 100644 --- a/tests/data/test1230 +++ b/tests/data/test1230 @@ -12,28 +12,28 @@ IPv6 # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 9 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 9 + mooooooo - -HTTP/1.1 200 welcome dear -Date: Tue, 09 Nov 2010 14:49:00 GMT - + +HTTP/1.1 200 welcome dear +Date: Tue, 09 Nov 2010 14:49:00 GMT + - -HTTP/1.1 200 welcome dear -Date: Tue, 09 Nov 2010 14:49:00 GMT - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 9 - + +HTTP/1.1 200 welcome dear +Date: Tue, 09 Nov 2010 14:49:00 GMT + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 9 + mooooooo @@ -62,17 +62,17 @@ http://[1234:1234:1234::4ce]:%HTTPPORT/wanted/page/%TESTNUMBER -p -x %HOSTIP:%HT # # Verify data after the test has been "shot" - -CONNECT [1234:1234:1234::4ce]:%HTTPPORT HTTP/1.1 -Host: [1234:1234:1234::4ce]:%HTTPPORT -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - -GET /wanted/page/%TESTNUMBER HTTP/1.1 -Host: [1234:1234:1234::4ce]:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +CONNECT [1234:1234:1234::4ce]:%HTTPPORT HTTP/1.1 +Host: [1234:1234:1234::4ce]:%HTTPPORT +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +GET /wanted/page/%TESTNUMBER HTTP/1.1 +Host: [1234:1234:1234::4ce]:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1231 b/tests/data/test1231 index 2c7c8bb0009d..608b8529fc51 100644 --- a/tests/data/test1231 +++ b/tests/data/test1231 @@ -44,17 +44,17 @@ http://%HOSTIP:%HTTPPORT/../../hej/but/who/../%TESTNUMBER?stupid=me/../%TESTNUMB # # Verify data after the test has been "shot" - -GET /hej/but/%TESTNUMBER?stupid=me/../%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /hej/but/%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /hej/but/%TESTNUMBER?stupid=me/../%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /hej/but/%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1232 b/tests/data/test1232 index 28d2eee735d7..3d56afac40a0 100644 --- a/tests/data/test1232 +++ b/tests/data/test1232 @@ -49,19 +49,19 @@ proxy # # Verify data after the test has been "shot" - -GET http://test.remote.haxx.se.%TESTNUMBER:8990/hej/but/%TESTNUMBER?stupid=me/../%TESTNUMBER HTTP/1.1 -Host: test.remote.haxx.se.%TESTNUMBER:8990 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://test.remote.haxx.se.%TESTNUMBER:8990/hej/but/%TESTNUMBER0001 HTTP/1.1 -Host: test.remote.haxx.se.%TESTNUMBER:8990 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://test.remote.haxx.se.%TESTNUMBER:8990/hej/but/%TESTNUMBER?stupid=me/../%TESTNUMBER HTTP/1.1 +Host: test.remote.haxx.se.%TESTNUMBER:8990 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://test.remote.haxx.se.%TESTNUMBER:8990/hej/but/%TESTNUMBER0001 HTTP/1.1 +Host: test.remote.haxx.se.%TESTNUMBER:8990 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1233 b/tests/data/test1233 index 95635334968d..e8b45cd04067 100644 --- a/tests/data/test1233 +++ b/tests/data/test1233 @@ -32,16 +32,16 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -PASV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +PASV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1235 b/tests/data/test1235 index 56664f3f0e82..836a7a97c55a 100644 --- a/tests/data/test1235 +++ b/tests/data/test1235 @@ -9,18 +9,18 @@ globbing # Server-side - -HTTP/1.1 200 OK -Funny-head: yesyes -Content-Length: 15 - + +HTTP/1.1 200 OK +Funny-head: yesyes +Content-Length: 15 + the number one - -HTTP/1.1 200 OK -Funny-head: yesyes -Content-Length: 16 - + +HTTP/1.1 200 OK +Funny-head: yesyes +Content-Length: 16 + two is nice too @@ -40,48 +40,48 @@ multiple requests using {}{} in the URL # Verify data after the test has been "shot" - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 OK -Funny-head: yesyes -Content-Length: 15 - + +HTTP/1.1 200 OK +Funny-head: yesyes +Content-Length: 15 + the number one -HTTP/1.1 200 OK -Funny-head: yesyes -Content-Length: 16 - +HTTP/1.1 200 OK +Funny-head: yesyes +Content-Length: 16 + two is nice too -HTTP/1.1 200 OK -Funny-head: yesyes -Content-Length: 15 - +HTTP/1.1 200 OK +Funny-head: yesyes +Content-Length: 15 + the number one -HTTP/1.1 200 OK -Funny-head: yesyes -Content-Length: 16 - +HTTP/1.1 200 OK +Funny-head: yesyes +Content-Length: 16 + two is nice too diff --git a/tests/data/test1237 b/tests/data/test1237 index 9fc2377df7fe..2c572ace2743 100644 --- a/tests/data/test1237 +++ b/tests/data/test1237 @@ -27,19 +27,19 @@ http URL with 1000+ letter user name + password -"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB@%HOSTIP:%HTTPPORT/%TESTNUMBER" +"%repeat[1000 x A]%:%repeat[1002 x B]%@%HOSTIP:%HTTPPORT/%TESTNUMBER" # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1239 b/tests/data/test1239 index 601f45459de0..9092d56dd083 100644 --- a/tests/data/test1239 +++ b/tests/data/test1239 @@ -41,13 +41,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -z "-dec 12 12:00:00 1999 GMT" -w '%{respon # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -If-Unmodified-Since: Sun, 12 Dec 1999 12:00:00 GMT - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +If-Unmodified-Since: Sun, 12 Dec 1999 12:00:00 GMT + HTTP/1.1 200 OK diff --git a/tests/data/test124 b/tests/data/test124 index d2717949c930..e89f8c557d48 100644 --- a/tests/data/test124 +++ b/tests/data/test124 @@ -32,16 +32,16 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -PASV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +PASV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1240 b/tests/data/test1240 index 5e99f8aff095..a700bb70fcd0 100644 --- a/tests/data/test1240 +++ b/tests/data/test1240 @@ -31,17 +31,17 @@ glob [0-1] with stuff after range (7.33.0 regression) # Verify data after the test has been "shot" - -GET /00/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /01/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /00/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /01/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1241 b/tests/data/test1241 index e114ad326a5f..94125ea8b929 100644 --- a/tests/data/test1241 +++ b/tests/data/test1241 @@ -48,19 +48,19 @@ proxy # # Verify data after the test has been "shot" - -GET http://test.remote.haxx.se.%TESTNUMBER:8990/../../hej/but/who/../%TESTNUMBER?stupid=me/../%TESTNUMBER HTTP/1.1 -Host: test.remote.haxx.se.%TESTNUMBER:8990 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://test.remote.haxx.se.%TESTNUMBER:8990/../../hej/but/who/../%TESTNUMBER0001 HTTP/1.1 -Host: test.remote.haxx.se.%TESTNUMBER:8990 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://test.remote.haxx.se.%TESTNUMBER:8990/../../hej/but/who/../%TESTNUMBER?stupid=me/../%TESTNUMBER HTTP/1.1 +Host: test.remote.haxx.se.%TESTNUMBER:8990 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://test.remote.haxx.se.%TESTNUMBER:8990/../../hej/but/who/../%TESTNUMBER0001 HTTP/1.1 +Host: test.remote.haxx.se.%TESTNUMBER:8990 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1244 b/tests/data/test1244 index fa8ac90753c5..d0bd7286dd5c 100644 --- a/tests/data/test1244 +++ b/tests/data/test1244 @@ -50,13 +50,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -x %HOSTIP:%HTTPPORT --next http://%HOSTIP: 56 - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1245 b/tests/data/test1245 index 0814e7dc328a..b7a2bda98f65 100644 --- a/tests/data/test1245 +++ b/tests/data/test1245 @@ -13,14 +13,14 @@ followlocation # # Server-side - -HTTP/1.1 301 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 0 -Location: ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -Connection: close - + +HTTP/1.1 301 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 0 +Location: ftp://%HOSTIP:%FTPPORT/%TESTNUMBER +Connection: close + @@ -42,12 +42,12 @@ ftp # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # 1 - Protocol ftp not supported or disabled in libcurl diff --git a/tests/data/test1246 b/tests/data/test1246 index 7723192fa14e..e1f11cef5bd9 100644 --- a/tests/data/test1246 +++ b/tests/data/test1246 @@ -48,19 +48,19 @@ proxy # # Verify data after the test has been "shot" - -GET http://test.remote.haxx.se.%TESTNUMBER:%HTTPPORT/ HTTP/1.1 -Host: test.remote.haxx.se.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://no-scheme-url.com.%TESTNUMBER:%HTTPPORT/ HTTP/1.1 -Host: no-scheme-url.com.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://test.remote.haxx.se.%TESTNUMBER:%HTTPPORT/ HTTP/1.1 +Host: test.remote.haxx.se.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://no-scheme-url.com.%TESTNUMBER:%HTTPPORT/ HTTP/1.1 +Host: no-scheme-url.com.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1248 b/tests/data/test1248 index 515b873519a5..1d3ed18032d0 100644 --- a/tests/data/test1248 +++ b/tests/data/test1248 @@ -38,13 +38,13 @@ http://user:secret@%HOSTIP:%HTTPPORT/%TESTNUMBER --proxy http://dummy:%NOLISTENP # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[user:secret]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[user:secret]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1249 b/tests/data/test1249 index 83c79bff8408..25a1b01f48d8 100644 --- a/tests/data/test1249 +++ b/tests/data/test1249 @@ -41,13 +41,13 @@ http://user:secret@%HOSTIP:%HTTPPORT/%TESTNUMBER --proxy http://dummy:%NOLISTENP # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[user:secret]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[user:secret]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test125 b/tests/data/test125 index 8de97c14e530..568bf130953e 100644 --- a/tests/data/test125 +++ b/tests/data/test125 @@ -30,12 +30,12 @@ ftp://%HOSTIP:%FTPPORT/path/to/file/%TESTNUMBER 9 - -USER anonymous -PASS ftp@example.com -PWD -CWD path -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +QUIT diff --git a/tests/data/test1250 b/tests/data/test1250 index 905810a45160..aa9e1645065a 100644 --- a/tests/data/test1250 +++ b/tests/data/test1250 @@ -39,13 +39,13 @@ http://user:secret@%HOSTIP:%HTTPPORT/%TESTNUMBER --noproxy %HOSTIP --max-time 5 # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[user:secret]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[user:secret]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1251 b/tests/data/test1251 index 3f1503575b77..8946dec3c3ac 100644 --- a/tests/data/test1251 +++ b/tests/data/test1251 @@ -40,13 +40,13 @@ http://user:secret@%HOSTIP:%HTTPPORT/%TESTNUMBER --max-time 5 # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[user:secret]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[user:secret]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1252 b/tests/data/test1252 index 0da6012d57f7..27eb6b0369a6 100644 --- a/tests/data/test1252 +++ b/tests/data/test1252 @@ -42,12 +42,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --proxy http://%HOSTIP:%HTTPPORT --noproxy # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1253 b/tests/data/test1253 index f6c4153f8667..36676c281e24 100644 --- a/tests/data/test1253 +++ b/tests/data/test1253 @@ -42,13 +42,13 @@ proxy # Verify data after the test has been "shot" - -GET http://somewhere.example.com/%TESTNUMBER HTTP/1.1 -Host: somewhere.example.com -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://somewhere.example.com/%TESTNUMBER HTTP/1.1 +Host: somewhere.example.com +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1254 b/tests/data/test1254 index 07e77ed2a2ec..6f2e0b0baa65 100644 --- a/tests/data/test1254 +++ b/tests/data/test1254 @@ -42,13 +42,13 @@ proxy # Verify data after the test has been "shot" - -GET http://somewhere.example.com/%TESTNUMBER HTTP/1.1 -Host: somewhere.example.com -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://somewhere.example.com/%TESTNUMBER HTTP/1.1 +Host: somewhere.example.com +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1255 b/tests/data/test1255 index 9316051b9918..648ec1f5030e 100644 --- a/tests/data/test1255 +++ b/tests/data/test1255 @@ -41,12 +41,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --noproxy %HOSTIP # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1256 b/tests/data/test1256 index b5dd610c0d0b..525b13235441 100644 --- a/tests/data/test1256 +++ b/tests/data/test1256 @@ -44,13 +44,13 @@ proxy # Verify data after the test has been "shot" - -GET http://somewhere.example.com/%TESTNUMBER HTTP/1.1 -Host: somewhere.example.com -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://somewhere.example.com/%TESTNUMBER HTTP/1.1 +Host: somewhere.example.com +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1257 b/tests/data/test1257 index 47245e9dd0a6..0934e1b4332e 100644 --- a/tests/data/test1257 +++ b/tests/data/test1257 @@ -44,13 +44,13 @@ proxy # Verify data after the test has been "shot" - -GET http://somewhere.example.com/%TESTNUMBER HTTP/1.1 -Host: somewhere.example.com -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://somewhere.example.com/%TESTNUMBER HTTP/1.1 +Host: somewhere.example.com +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1258 b/tests/data/test1258 index ae4a33e4b228..c9b4523e3d3b 100644 --- a/tests/data/test1258 +++ b/tests/data/test1258 @@ -11,12 +11,12 @@ httponly # Server-side - -HTTP/1.0 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Type: text/html -Set-Cookie: I-am=here; domain=localhost; - + +HTTP/1.0 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Type: text/html +Set-Cookie: I-am=here; domain=localhost; + boo @@ -39,18 +39,18 @@ cookies # Verify data after the test has been "shot" - -GET /we/want/%TESTNUMBER HTTP/1.1 -Host: localhost -User-Agent: curl/%VERSION -Accept: */* - -GET /we/want?hoge=fuga HTTP/1.1 -Host: localhost -User-Agent: curl/%VERSION -Accept: */* -Cookie: I-am=here - + +GET /we/want/%TESTNUMBER HTTP/1.1 +Host: localhost +User-Agent: curl/%VERSION +Accept: */* + +GET /we/want?hoge=fuga HTTP/1.1 +Host: localhost +User-Agent: curl/%VERSION +Accept: */* +Cookie: I-am=here + diff --git a/tests/data/test1259 b/tests/data/test1259 index 981e8d77b790..eb8cff604158 100644 --- a/tests/data/test1259 +++ b/tests/data/test1259 @@ -8,12 +8,12 @@ HTTP GET # Server-side - -HTTP/1.0 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Type: text/html -Set-Cookie: I-am=here; domain=localhost; - + +HTTP/1.0 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Type: text/html +Set-Cookie: I-am=here; domain=localhost; + boo @@ -33,13 +33,13 @@ HTTP URL with semicolon in password # Verify data after the test has been "shot" - -GET /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[user:pass]b64%O3dvcmQ= -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[user:pass]b64%O3dvcmQ= +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test126 b/tests/data/test126 index b830fc77819f..f23feaabacbb 100644 --- a/tests/data/test126 +++ b/tests/data/test126 @@ -32,17 +32,17 @@ ftp://%HOSTIP:%FTPPORT/blalbla/lululul/%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD blalbla -CWD lululul -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD blalbla +CWD lululul +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1261 b/tests/data/test1261 index 17a8af82c03b..e67392918f40 100644 --- a/tests/data/test1261 +++ b/tests/data/test1261 @@ -11,12 +11,12 @@ followlocation # Server-side - -HTTP/1.1 301 This is a weirdo text message swsclose -Location: data/10290002.txt?coolsite=yes -Content-Length: 62 -Connection: close - + +HTTP/1.1 301 This is a weirdo text message swsclose +Location: data/10290002.txt?coolsite=yes +Content-Length: 62 +Connection: close + This server reply is for testing a simple Location: following @@ -36,23 +36,23 @@ http://%HOSTIP:%HTTPPORT/we/want/our/%TESTNUMBER -w '%{redirect_url}\n' --locati # Verify data after the test has been "shot" - -GET /we/want/our/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/our/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # CURLE_TOO_MANY_REDIRECTS 47 - -HTTP/1.1 301 This is a weirdo text message swsclose -Location: data/10290002.txt?coolsite=yes -Content-Length: 62 -Connection: close - + +HTTP/1.1 301 This is a weirdo text message swsclose +Location: data/10290002.txt?coolsite=yes +Content-Length: 62 +Connection: close + http://%HOSTIP:%HTTPPORT/we/want/our/data/10290002.txt?coolsite=yes diff --git a/tests/data/test1262 b/tests/data/test1262 index 0a7046ce9382..d094f3ece571 100644 --- a/tests/data/test1262 +++ b/tests/data/test1262 @@ -28,13 +28,13 @@ ftp://%HOSTIP:%FTPPORT/blalbla/%TESTNUMBER -z "-1 jan 2001" - -USER anonymous -PASS ftp@example.com -PWD -CWD blalbla -MDTM %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD blalbla +MDTM %TESTNUMBER +QUIT diff --git a/tests/data/test1265 b/tests/data/test1265 index d5cc00b7105c..d4e060cd7f97 100644 --- a/tests/data/test1265 +++ b/tests/data/test1265 @@ -46,12 +46,12 @@ http://%HOST6IP:%HTTP6PORT/%TESTNUMBER # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOST6IP:%HTTP6PORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOST6IP:%HTTP6PORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1266 b/tests/data/test1266 index 83975116dc48..0d997180abb1 100644 --- a/tests/data/test1266 +++ b/tests/data/test1266 @@ -33,12 +33,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --http0.9 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1267 b/tests/data/test1267 index 42cf40c31dfb..055d86b5555e 100644 --- a/tests/data/test1267 +++ b/tests/data/test1267 @@ -33,12 +33,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --http0.9 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test127 b/tests/data/test127 index ebf122d018e4..72f813649ced 100644 --- a/tests/data/test127 +++ b/tests/data/test127 @@ -29,18 +29,18 @@ ftp://%HOSTIP:%FTPPORT/path/to/file/%TESTNUMBER --disable-epsv # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -CWD to -CWD file -PASV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +CWD to +CWD file +PASV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1270 b/tests/data/test1270 index 1e1fa67bb54f..6e21d3b2ba81 100644 --- a/tests/data/test1270 +++ b/tests/data/test1270 @@ -11,18 +11,18 @@ followlocation # Server-side - -HTTP/1.1 302 Captive Portal -Server: ohlala/2000 -Date: Tue, 17 Dec 2019 13:08:30 GMT -Cache-Control: no-cache,no-store,must-revalidate,post-check=0,pre-check=0 -Location: https://moo.moo.moo -Content-Type: text/html; charset=utf-8 -X-Frame-Options: SAMEORIGIN -Strict-Transport-Security: max-age=604800 -Content-Length: 0 -Connection: close - + +HTTP/1.1 302 Captive Portal +Server: ohlala/2000 +Date: Tue, 17 Dec 2019 13:08:30 GMT +Cache-Control: no-cache,no-store,must-revalidate,post-check=0,pre-check=0 +Location: https://moo.moo.moo +Content-Type: text/html; charset=utf-8 +X-Frame-Options: SAMEORIGIN +Strict-Transport-Security: max-age=604800 +Content-Length: 0 +Connection: close + @@ -41,26 +41,26 @@ http://%HOSTIP:%HTTPPORT/we/want/our/%TESTNUMBER -w '%{redirect_url}\n' -s # Verify data after the test has been "shot" - -GET /we/want/our/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/our/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 302 Captive Portal -Server: ohlala/2000 -Date: Tue, 17 Dec 2019 13:08:30 GMT -Cache-Control: no-cache,no-store,must-revalidate,post-check=0,pre-check=0 -Location: https://moo.moo.moo -Content-Type: text/html; charset=utf-8 -X-Frame-Options: SAMEORIGIN -Strict-Transport-Security: max-age=604800 -Content-Length: 0 -Connection: close - + +HTTP/1.1 302 Captive Portal +Server: ohlala/2000 +Date: Tue, 17 Dec 2019 13:08:30 GMT +Cache-Control: no-cache,no-store,must-revalidate,post-check=0,pre-check=0 +Location: https://moo.moo.moo +Content-Type: text/html; charset=utf-8 +X-Frame-Options: SAMEORIGIN +Strict-Transport-Security: max-age=604800 +Content-Length: 0 +Connection: close + https://moo.moo.moo/ diff --git a/tests/data/test1271 b/tests/data/test1271 index 3cc994b716d2..d2e2cae9cb49 100644 --- a/tests/data/test1271 +++ b/tests/data/test1271 @@ -9,11 +9,11 @@ HTTP GET # Server-side - -HTTP/1.1 200 This is a weirdo text message swsclose -Content-Length: 4 -Connection: close - + +HTTP/1.1 200 This is a weirdo text message swsclose +Content-Length: 4 +Connection: close + Moo @@ -35,12 +35,12 @@ http://%HOSTIP:%HTTPPORT/we/want/our/%TESTNUMBER -w @%LOGDIR/blank%TESTNUMBER # Verify data after the test has been "shot" - -GET /we/want/our/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/our/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1272 b/tests/data/test1272 index 41fc3ef76f8e..ea2dd0331c7a 100644 --- a/tests/data/test1272 +++ b/tests/data/test1272 @@ -36,8 +36,8 @@ Gophers index # # Verify data after the test has been "shot" - -/%TESTNUMBER + +/%TESTNUMBER diff --git a/tests/data/test1273 b/tests/data/test1273 index fb5d47b2d409..34708e10c5f0 100644 --- a/tests/data/test1273 +++ b/tests/data/test1273 @@ -11,11 +11,11 @@ Resume # Server-side - -HTTP/1.1 416 Invalid range -Connection: close -Content-Length: 0 - + +HTTP/1.1 416 Invalid range +Connection: close +Content-Length: 0 + # The file data that exists at the start of the test must be included in @@ -31,10 +31,10 @@ Content-Length: 0 012345678 012345678 012345678 -HTTP/1.1 416 Invalid range -Connection: close -Content-Length: 0 - +HTTP/1.1 416 Invalid range%CR +Connection: close%CR +Content-Length: 0%CR +%CR @@ -69,13 +69,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -C - -f # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=100- -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=100- +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1274 b/tests/data/test1274 index 1568c1aa6f9e..46e5f8999907 100644 --- a/tests/data/test1274 +++ b/tests/data/test1274 @@ -11,17 +11,17 @@ header line folding # Server-side -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/ - fake - folded -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Content-Length: 6 -Connection: - close - +HTTP/1.1 200 OK%CR +Date: Tue, 09 Nov 2010 14:49:00 GMT%CR +Server: test-server/%CR + fake%CR + folded%CR +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT%CR +ETag: "21025-dc7-39462498"%CR +Content-Length: 6%CR +Connection: %CR + close%CR +%CR -foo- @@ -43,25 +43,25 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -D %LOGDIR/out%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/ - fake - folded -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Content-Length: 6 -Connection: - close - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/ + fake + folded +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Content-Length: 6 +Connection:%repeat[46 x ]% + close + diff --git a/tests/data/test1277 b/tests/data/test1277 index 52a0f675a2e8..b229a0e1c252 100644 --- a/tests/data/test1277 +++ b/tests/data/test1277 @@ -12,33 +12,33 @@ Content-Encoding # Server-side -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Transfer-Encoding: gzip, chunked -Content-Encoding: deflate - -522 +HTTP/1.1 200 OK%CR +Date: Mon, 29 Nov 2004 21:56:53 GMT%CR +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29%CR +Vary: Accept-Encoding%CR +Content-Type: text/html; charset=ISO-8859-1%CR +Transfer-Encoding: gzip, chunked%CR +Content-Encoding: deflate%CR +%CR +522%CR %hex[%1f%8b%08%00%07%81%b0%63%02%ff%01%0b%05%f4%fa%78%da%dd%58%db%6e%e3%36%10%7d%37%90%7f%60%fd%d4%02%b6%6e%b6%13%39%70%b4%28%72%d9%04%cd%36%c1%da%05%ba%4f%06%2d%d1%36%1b%49%14%48%ca%b9%3c%f4%db%3b%94%28%89%b1%1c%af%77%83%be%04%48%62%72%e6%9c%c3%e1%0c%49%93%99%7c%7a%4a%62%b4%21%5c%50%96%9e%75%5d%cb%e9%22%92%86%2c%a2%e9%ea%ac%7b%33%bd%eb%fb%fe%68%dc%77%bb%9f%82%ce%e4%97%8b%bb%f3%d9%b7%fb%4b%94%71%f6%0f%09%65%3f%a6%42%02%10%4d%bf%4d%67%97%5f%50%77%2d%65%76%6a%db%4b%4e%c4%3a%21%58%5a%29%91%f6%02%87%0f%24%8d%ec%65%d2%d7%3c%d1%77%ac%a1%15%c9%a8%0b%a2%5b%5a%41%07%a1%ca%a6%da%4d%6f%4e%a3%c0%3d%76%bd%89%6d%18%4a%44%84%25%99%e3%28%22%80%18%8f%fd%be%e3%f7%3d%17%39%c3%53%c7%3d%f5%c6%13%db%f0%1b%84%3c%53%1f%51%e0%39%ce%b0%ef%3a%7d%d7%47%8e%77%ea%c1%cf%40%53%2a%c4%ab%38%52%9c%90%b9%58%33%2e%83%30%e7%71%1d%8e%61%6f%e3%97%79%1c%17%70%84%d3%08%c5%74%d1%a6%16%10%1d%1e%11%a1%96%3a%67%49%52%52%52%82%24%63%b5%00%c7%fc%19%2d%19%47%61%4c%49%2a%fb%82%46%04%fd%f5%f5%16%49%8e%53%b1%84%8a%5a%30%8b%46%c8%50%de%19%0c%a2%02%e1%72%04%a5%5a%a9%70%55%df%25%8d%89%38%ea%e4%42%75%d4%18%e2%39%95%f8%c9%42%37%12%89%3c%cb%40%5f%a0%eb%d9%ec%be%57%fc%9d%f6%d0%15%b4%8f%3a%57%45%fb%e2%e6%7c%d6%43%b3%cb%db%3f%2f%e1%f3%f6%e2%77%80%5d%dd%dc%5e%f6%8a%e1%3f%df%dd%5f%5f%7e%85%36%0c%f0%48%62%88%a9%94%ea%67%4c%c8%9e%6e%e6%d0]hex% %hex[%19%7b%a0%44%14%da%28%cf%62%86%23%18%02%96%5a%9e%90%a8%99%75%0f%65%58%88%47%c6%23%d5%84%c8%d2%3c%59%14%f6%e9%f4%f6%a8%13%12%2e%e9%92%86%50%57%30%fd%41%38%f8%98%28%43%81%6a%3c%c1%08%c5%b4%20%1b%19%7b%24%9c%44%47%9d%c5%73%95%a4%1e%92%6b%f2%66%c6%ab%b2%58%47%9d%d9%1a%a8%08%c3%ef%82%a6%6a%33%09%48%6d%9d%6a%95%60%06%9b%0e%79%ce%51%27%c6%e9%2a%c7%2b%22%8a%18%48%ba%a1%9c%a5%09%0c%20%40%47%97%d0%58%1b%1b%2a%71%4c%e5%f3%5c%84%8c%93%60%74%e2%0f%ad%d1%c9%c4%de%b2%6f%81%33%c2%43%90%0c%06%96%7b%6c%60%2b%f3%16%1a%e6%f3%00%7b%6d%6c%20%0b%93%5e%d7%2c%cb%63%cc%9b%b1%8e%47%63%88%61%08%cb%79%db%d3%22%54%03%ba%03%cb%77%5f%11%5e%87%62%38%ca%60%9c%d1%2b%b4%11%0e%c7%c5%b9%e1%5b%23%67%62%eb%8e%e9%99%87%2c%07%5d%cf%ad%bc%da%f0]hex% %hex[%53%0e%e2%0f%6a%8c%31%80%c8%17%22%e4%34%93%70%44%8a%60%a0%4e%87%d7%a6%12%06%a5%4f%c3%f5%5c%ed%e5%e0%82%2c%71%1e%cb%89%6d%1a%4b%18%d4%7f%5e%1d%60%19%94%3d%d8%79%68%56%27%a5%ad%d6%8b%3d%b1%5b%ac%46%6c%cd%12%f2%b6%10%2c%60%ca%4b%15%75%78%da%26%43%eb%d6%02%8d%a6%5c%bd%1c%2e%07%60%ad%a4%68%8d%c8%e2%c5%3b%5c%04%c0%5a%44%d1%1a%91%17%9a%1d%2e%02%60%2d%a2%68%8d%48%b8%86%3d%46%62%b6%3a%5c%aa%a6%68%c1%46%a2%91%e5%59%72%b8%20%80%b5%94%a2%35%22%11%59%1c%2e%02%60%2d%a2%68%8d%08%13%4f%87%8b%00%58%8b%28%9a%51%2f%11%a9%f3%f2%07%6a%56%12%aa%ba%69%ba%b1%cc%73%0e%69%13%24%d0%eb%b7%ea%1a%85%d9%88%1f%28%c9%46%54%c5%d8%08%43%44%dd%1c%0e%57%51%68%2d%53%10%1b%9d%84%72%ce%f8%e1%4a%25%5e%6b%69%b2%59%d7%84%05%55%ad%a0%59%7a%62]hex% %hex[%87%1c%a4%e0%cb%cd%cc%fe%1b%9d%c3%e9%01%29%a3%79%82%6e%4b%c7%c4%ae%10%1a%af%be%a7%e4%9c%93%98%d4%99%6b%99%e7%fa%fe%16%9c%58%ae%67%c1%05%e9%0d%f7%1b%6c%75%af%3a%39%76%fc%51%8b%58%5d%b0%da%1c%75%2f%da%7d%71%da%05%2c%e7%62%ef%9a%cc%04%ce%51%02%13%5e%33%39%97%6b%f8%aa%86%9c%b5%4c%25%12%e7%12%6e%32%a2%0e%a9%ec%57%dd%da%a0%4f%60%9c%52%12%a3%a9%24%29%7c%c3%af%26%b6%e9%6c%51%a0%4a%bb%eb%fe%ef%02%af%22%a2%8a%6c%20%5b%74%ce%62%12%dc%3d%a6%84%d7%b8%c2%54%45%6a%9b%a1%56%3d%61%5c%c9%38%4d%68%8a%a5%39%3b%c9%e1%86%50%d4%06]hex% %hex[%5a%77%5a%5e%cf%3b%de%e7%1e%ec%e5%ee%73%ba%be%bf%97%eb%ee%1d%17%96%c6%fe%a8%f7%ba%dd%e3%e1%3e%f7%78%2f%d9%1f%ef%f5%3a%7b%dd%ee%e8%3b%71%7f%27%b0%fd%91%0d%5a%63%97%f7%bb%ed%f2%c3%9a%c8%e0%c9%04%0f%31%b8%8e%d6%3a%b5%f1%19%c9%e7%8c%9c%75%39%09%e1%75%a0%6c%ea%25%55%2f%ca%06%67%6e%64%47%0d%b5%cb%b1%93%a8%ef%2d%e0%3e%19%aa%62%ec%74%ed%64%1a%8f%b3%16%75%fb%e1%f6%16%57%52%a9%36%14%d8%e1%ce%8e%7e%d5%b7%a9%df%76%6a%95%d8%7a%a7%35%88%b7%f3%c6%8a%7b%1b%8e%ff%bf%a4%39%3f%9d%b1%e1%e0%9d%19%53%ef%ab%8f%9f%28%d7%1b%8c%dc%77%64%ea%05%9e%62%1f%3f%4b%03%cf%19%9e%bc%23%4b%d7%84%26%11%8e%3f%7e%a2%86%c3%d1%c0%7b%47%a2%c2%3e%3c%f5%c5%cf%e4%c9%b0%e8%b3%be%fe%af%50%d0%a9%9b%cd%7f%c7%fe%03%dd%38%8e%d1%d3%ef%e8%18%0b%05%00%00%0d]hex% -0 - +0%CR +%CR -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Transfer-Encoding: gzip, chunked -Content-Encoding: deflate - +HTTP/1.1 200 OK%CR +Date: Mon, 29 Nov 2004 21:56:53 GMT%CR +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29%CR +Vary: Accept-Encoding%CR +Content-Type: text/html; charset=ISO-8859-1%CR +Transfer-Encoding: gzip, chunked%CR +Content-Encoding: deflate%CR +%CR @@ -49,15 +49,15 @@ Content-Encoding: deflate curl curl and libcurl Command line tool and library for client-side URL transfers. - curl and libcurl is a tool for transferring files -using URL syntax. It supports HTTP, HTTPS, FTP, -FTPS, DICT, TELNET, LDAP, FILE, and GOPHER, as -well as HTTP-post, HTTP-put, cookies, FTP upload, -resumed transfers, passwords, portnumbers, SSL -certificates, Kerberos, and proxies. It is powered -by libcurl, the client-side URL transfer library. -There are bindings to libcurl for over 20 -languages and environments. + curl and libcurl is a tool for transferring files%CR +using URL syntax. It supports HTTP, HTTPS, FTP,%CR +FTPS, DICT, TELNET, LDAP, FILE, and GOPHER, as%CR +well as HTTP-post, HTTP-put, cookies, FTP upload,%CR +resumed transfers, passwords, portnumbers, SSL%CR +certificates, Kerberos, and proxies. It is powered%CR +by libcurl, the client-side URL transfer library.%CR +There are bindings to libcurl for over 20%CR +languages and environments.%CR 5784.57 3.16 @@ -178,15 +178,15 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --tr-encoding --compressed s/^Accept-Encoding: [a-zA-Z, ]*/Accept-Encoding: xxx/ - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -TE: gzip -Accept-Encoding: xxx -Connection: TE - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +TE: gzip +Accept-Encoding: xxx +Connection: TE + diff --git a/tests/data/test1278 b/tests/data/test1278 index 951644637407..6e337dfe416f 100644 --- a/tests/data/test1278 +++ b/tests/data/test1278 @@ -8,7 +8,7 @@ # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test128 b/tests/data/test128 index 089717da7964..86a48f0f7302 100644 --- a/tests/data/test128 +++ b/tests/data/test128 @@ -35,23 +35,23 @@ the # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -STOR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +STOR %TESTNUMBER +QUIT - -file -with Unix newlines -meant to be -converted -with -the ---crlf option + +file +with Unix newlines +meant to be +converted +with +the +--crlf option diff --git a/tests/data/test1280 b/tests/data/test1280 index 081cbbe547a1..f25252c82b95 100644 --- a/tests/data/test1280 +++ b/tests/data/test1280 @@ -8,12 +8,12 @@ globbing # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 -Connection: close - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 +Connection: close + bytes @@ -33,27 +33,27 @@ http://%HOSTIP:%HTTPPORT/[a-d]/%TESTNUMBER # Verify data after the test has been "shot" - -GET /a/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /b/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /c/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /d/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /a/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /b/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /c/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /d/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1282 b/tests/data/test1282 index a54166be9661..ba5d545dca6b 100644 --- a/tests/data/test1282 +++ b/tests/data/test1282 @@ -29,9 +29,9 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com + +USER anonymous +PASS ftp@example.com # 67 == CURLE_LOGIN_DENIED diff --git a/tests/data/test1283 b/tests/data/test1283 index 1e8e9d44744e..402e45def29a 100644 --- a/tests/data/test1283 +++ b/tests/data/test1283 @@ -11,12 +11,12 @@ globbing # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 -Connection: close - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 +Connection: close + bytes @@ -36,19 +36,19 @@ http://%HOSTIP:%HTTPPORT/[a-a][1-1][b-b:1][2-2:1]/%TESTNUMBER -o "%LOGDIR/outfil # Verify data after the test has been "shot" - -GET /a1b2/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /a1b2/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 -Connection: close - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 +Connection: close + bytes diff --git a/tests/data/test1284 b/tests/data/test1284 index 925150b6e743..b1a51009da1f 100644 --- a/tests/data/test1284 +++ b/tests/data/test1284 @@ -9,35 +9,35 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok @@ -67,22 +67,22 @@ HTTP POST --digest with user-specified Content-Length header # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 0 -Content-Type: application/x-www-form-urlencoded - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="5763079608de439072861a59ac733515" -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 11 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 0 +Content-Type: application/x-www-form-urlencoded + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="5763079608de439072861a59ac733515" +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 11 +Content-Type: application/x-www-form-urlencoded + junkelijunk diff --git a/tests/data/test1285 b/tests/data/test1285 index 1b65245521ed..bc8b89273240 100644 --- a/tests/data/test1285 +++ b/tests/data/test1285 @@ -9,35 +9,35 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok @@ -73,20 +73,20 @@ four is the number of lines # Verify data after the test has been "shot" - -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 0 - -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="dc185587d5e8391b347eef194c2a3cd6" -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 85 - + +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 0 + +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="dc185587d5e8391b347eef194c2a3cd6" +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 85 + This is data we upload with PUT a second line line three diff --git a/tests/data/test1286 b/tests/data/test1286 index b8b47e7ef509..ab4c98089150 100644 --- a/tests/data/test1286 +++ b/tests/data/test1286 @@ -10,48 +10,48 @@ followlocation # Server-side - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144", qop="auth" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144", qop="auth" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + - -HTTP/1.1 302 Thanks for this, but we want to redir you! -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Location: /%TESTNUMBER0001 -Content-Length: 0 - + +HTTP/1.1 302 Thanks for this, but we want to redir you! +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Location: /%TESTNUMBER0001 +Content-Length: 0 + - -HTTP/1.1 404 Not Found -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - + +HTTP/1.1 404 Not Found +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144", qop="auth" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - -HTTP/1.1 302 Thanks for this, but we want to redir you! -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Location: /%TESTNUMBER0001 -Content-Length: 0 - -HTTP/1.1 404 Not Found -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144", qop="auth" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + +HTTP/1.1 302 Thanks for this, but we want to redir you! +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Location: /%TESTNUMBER0001 +Content-Length: 0 + +HTTP/1.1 404 Not Found +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + @@ -89,24 +89,24 @@ HTTP GET --digest increasing nonce-count if(s/^(Authorization: Digest )([^\r\n]+)(\r?\n)$//) { $_ = $1 . join(', ', map { s/^(cnonce=)"[a-zA-Z0-9+\/=]+"$/$1REMOVED/; s/^(response=)"[a-f0-9]{32}"$/$1REMOVED/; s/^qop="auth"$/qop=auth/; $_ } sort split(/, */, $2)) . $3; } - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest cnonce=REMOVED, nc=00000001, nonce="1053604144", qop=auth, realm="testrealm", response=REMOVED, uri="/%TESTNUMBER", username="auser" -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest cnonce=REMOVED, nc=00000002, nonce="1053604144", qop=auth, realm="testrealm", response=REMOVED, uri="/%TESTNUMBER0001", username="auser" -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest cnonce=REMOVED, nc=00000001, nonce="1053604144", qop=auth, realm="testrealm", response=REMOVED, uri="/%TESTNUMBER", username="auser" +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest cnonce=REMOVED, nc=00000002, nonce="1053604144", qop=auth, realm="testrealm", response=REMOVED, uri="/%TESTNUMBER0001", username="auser" +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1287 b/tests/data/test1287 index c9d2a6cb2db1..d2600b4978c2 100644 --- a/tests/data/test1287 +++ b/tests/data/test1287 @@ -11,38 +11,38 @@ verbose logs # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Content-Type: text/html -Funny-head: yesyes -Content-Length: 9 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/html +Funny-head: yesyes +Content-Length: 9 + contents # The purpose of this test is to make sure curl ignores headers # Content-Length and Transfer-Encoding in a successful CONNECT 2xx reply. - -HTTP/1.1 200 Mighty fine indeed -Content-Length: 123 -Transfer-Encoding: chunked - + +HTTP/1.1 200 Mighty fine indeed +Content-Length: 123 +Transfer-Encoding: chunked + - -HTTP/1.1 200 Mighty fine indeed -Content-Length: 123 -Transfer-Encoding: chunked - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Content-Type: text/html -Funny-head: yesyes -Content-Length: 9 - + +HTTP/1.1 200 Mighty fine indeed +Content-Length: 123 +Transfer-Encoding: chunked + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/html +Funny-head: yesyes +Content-Length: 9 + contents @@ -69,19 +69,19 @@ verbose-strings # # Verify data after the test has been "shot" - -CONNECT test.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: test.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT test.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: test.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + - -GET /we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: test.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: test.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + * Ignoring Content-Length in CONNECT 200 response diff --git a/tests/data/test1288 b/tests/data/test1288 index e94bd5104d29..4cb90520b3fc 100644 --- a/tests/data/test1288 +++ b/tests/data/test1288 @@ -12,21 +12,21 @@ proxytunnel # # Server-side - -HTTP/1.1 200 Mighty fine indeed -Server: test tunnel 2000 - + +HTTP/1.1 200 Mighty fine indeed +Server: test tunnel 2000 + - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Type: text/html -Funny-head: yesyes -Content-Length: 9 -Connection: keep-alive - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Type: text/html +Funny-head: yesyes +Content-Length: 9 +Connection: keep-alive + contents @@ -52,19 +52,19 @@ proxy # # Verify data after the test has been "shot" - -CONNECT %HOSTIP:%HTTPPORT HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT %HOSTIP:%HTTPPORT HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + - -GET /we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # This test is structured to test all the expectations of @@ -73,22 +73,22 @@ Accept: */* # Must not suppress in --verbose and --trace # Must not suppress in statistics (eg received header byte total) -HTTP/1.1 200 OK -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Server: test-server/fake -Content-Type: text/html -Content-Type: text/html -Funny-head: yesyes -Funny-head: yesyes -Content-Length: 9 -Content-Length: 9 -Connection: keep-alive -Connection: keep-alive - - +HTTP/1.1 200 OK%CR +HTTP/1.1 200 OK%CR +Date: Tue, 09 Nov 2010 14:49:00 GMT%CR +Date: Tue, 09 Nov 2010 14:49:00 GMT%CR +Server: test-server/fake%CR +Server: test-server/fake%CR +Content-Type: text/html%CR +Content-Type: text/html%CR +Funny-head: yesyes%CR +Funny-head: yesyes%CR +Content-Length: 9%CR +Content-Length: 9%CR +Connection: keep-alive%CR +Connection: keep-alive%CR +%CR +%CR contents CONNECT CODE: 200 diff --git a/tests/data/test129 b/tests/data/test129 index 22e071d3e15b..944d42bc7e12 100644 --- a/tests/data/test129 +++ b/tests/data/test129 @@ -42,12 +42,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # CURLE_UNSUPPORTED_PROTOCOL diff --git a/tests/data/test1290 b/tests/data/test1290 index 959247863ec7..3c6f8743d476 100644 --- a/tests/data/test1290 +++ b/tests/data/test1290 @@ -35,12 +35,12 @@ Verify URL globbing ignores [] # Verify data after the test has been "shot" - -GET /we/want/[]/page/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/[]/page/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1292 b/tests/data/test1292 index e674bfd89c1d..71b2aefa215b 100644 --- a/tests/data/test1292 +++ b/tests/data/test1292 @@ -37,12 +37,12 @@ Replaced internal headers with a blank one # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: -User-Agent: curl/%VERSION -Accept: - + +GET /%TESTNUMBER HTTP/1.1 +Host: +User-Agent: curl/%VERSION +Accept: + diff --git a/tests/data/test1293 b/tests/data/test1293 index afecfaf2f9bc..ec71b8a6a580 100644 --- a/tests/data/test1293 +++ b/tests/data/test1293 @@ -50,19 +50,19 @@ http://0 http://%HOSTIP:%HTTPPORT/%TESTNUMBER -F= s/^--------------------------[A-Za-z0-9]*/------------------------------/ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/ - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 138 -Content-Type: multipart/form-data; boundary=---------------------------- - ------------------------------- -Content-Disposition: form-data - - --------------------------------- + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 138 +Content-Type: multipart/form-data; boundary=---------------------------- + +------------------------------ +Content-Disposition: form-data + + +-------------------------------- diff --git a/tests/data/test1294 b/tests/data/test1294 index 58e2d379e0cb..887023959bd2 100644 --- a/tests/data/test1294 +++ b/tests/data/test1294 @@ -51,13 +51,13 @@ http://%HOSTIP:%HTTPPORT/0123456790123456790123456790123456790123456790123456790 # # Verify data after the test has been "shot" - -GET /012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Among other public buildings in a certain town, which for many reasons it will be prudent to refrain from mentioning, and to which I will assign no fictitious name, there is one anciently common to most towns, great or small to ___, a workhouse; and in this workhouse was born; on a day and date which I need not trouble myself to repeat, inasmuch as it can be of no possible consequence to the reader, in this stage of the business at all events; the item of mortality whose name is prefixed to the head of this chapter: 511 - + +GET /012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Among other public buildings in a certain town, which for many reasons it will be prudent to refrain from mentioning, and to which I will assign no fictitious name, there is one anciently common to most towns, great or small to ___, a workhouse; and in this workhouse was born; on a day and date which I need not trouble myself to repeat, inasmuch as it can be of no possible consequence to the reader, in this stage of the business at all events; the item of mortality whose name is prefixed to the head of this chapter: 511 + diff --git a/tests/data/test1295 b/tests/data/test1295 index 5c963cae43e8..bfd13c73f635 100644 --- a/tests/data/test1295 +++ b/tests/data/test1295 @@ -51,15 +51,15 @@ http://%HOSTIP:%HTTPPORT/0123456790123456790123456790123456790123456790123456790 # # Verify data after the test has been "shot" - -POST /012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679: 300 -Content-Length: 165 -Content-Type: application/x-www-form-urlencoded - + +POST /012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679012345679: 300 +Content-Length: 165 +Content-Type: application/x-www-form-urlencoded + Mr. Sherlock Holmes, who was usually very late in the mornings, save upon those not infrequent occasions when he was up all night, was seated at the breakfast table. diff --git a/tests/data/test1296 b/tests/data/test1296 index 316cc63bd71d..50179aa7bf47 100644 --- a/tests/data/test1296 +++ b/tests/data/test1296 @@ -41,13 +41,13 @@ http://user%0aname:password@%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[user%0aname:password]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[user%0aname:password]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1297 b/tests/data/test1297 index 386154af30b3..47ad52597d15 100644 --- a/tests/data/test1297 +++ b/tests/data/test1297 @@ -12,10 +12,10 @@ proxytunnel # # Server-side - -HTTP/1.1 200 Mighty fine indeed -Server: test tunnel 2000 - + +HTTP/1.1 200 Mighty fine indeed +Server: test tunnel 2000 + @@ -43,19 +43,19 @@ proxy # # Verify data after the test has been "shot" - -CONNECT %HOSTIP:%HTTPPORT HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT %HOSTIP:%HTTPPORT HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + - -GET /we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # 52 - got nothing diff --git a/tests/data/test1298 b/tests/data/test1298 index cebe4a9f71f6..39ec4d98ca27 100644 --- a/tests/data/test1298 +++ b/tests/data/test1298 @@ -42,13 +42,13 @@ HTTP GET special path with --request-target # # Verify data after the test has been "shot" - -GET XXX HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Testno: %TESTNUMBER - + +GET XXX HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Testno: %TESTNUMBER + diff --git a/tests/data/test1299 b/tests/data/test1299 index 11ac0c41f7eb..a0781bc9e598 100644 --- a/tests/data/test1299 +++ b/tests/data/test1299 @@ -41,13 +41,13 @@ Send "OPTIONS *" with --request-target # # Verify data after the test has been "shot" - -OPTIONS * HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Testno: %TESTNUMBER - + +OPTIONS * HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Testno: %TESTNUMBER + diff --git a/tests/data/test13 b/tests/data/test13 index b8bcf164944e..6e1a1d019ca5 100644 --- a/tests/data/test13 +++ b/tests/data/test13 @@ -7,11 +7,11 @@ HTTP custom request # Server-side - -HTTP/1.1 200 Read you -Content-Length: 29 -Deleted: suppose we got a header like this! ;-) - + +HTTP/1.1 200 Read you +Content-Length: 29 +Deleted: suppose we got a header like this! ;-) + blabla custom request result @@ -31,12 +31,12 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER -X DELETE # Verify data after the test has been "shot" - -DELETE /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +DELETE /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test130 b/tests/data/test130 index 2c4dfe85eb54..91bde4910661 100644 --- a/tests/data/test130 +++ b/tests/data/test130 @@ -50,14 +50,14 @@ default login userdef password passwddef # # Verify data after the test has been "shot" - -USER user1 -PASS passwd1 -PWD -EPSV -TYPE A -LIST -QUIT + +USER user1 +PASS passwd1 +PWD +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test131 b/tests/data/test131 index 4a73de285013..4cff26ac5c5b 100644 --- a/tests/data/test131 +++ b/tests/data/test131 @@ -47,14 +47,14 @@ machine %HOSTIP login user2 password passwd2 # # Verify data after the test has been "shot" - -USER user2 -PASS passwd2 -PWD -EPSV -TYPE A -LIST -QUIT + +USER user2 +PASS passwd2 +PWD +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test1310 b/tests/data/test1310 index 49bb0d36df44..ec55eabf9b64 100644 --- a/tests/data/test1310 +++ b/tests/data/test1310 @@ -40,12 +40,12 @@ http://%HOSTIP:%HTTPPORT/junk -J -O --show-headers --output-dir %LOGDIR # # Verify data after the test has been "shot" - -GET /junk HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /junk HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + HTTP/1.1 200 OK diff --git a/tests/data/test1311 b/tests/data/test1311 index 1a14547ced3d..24d6195b3d65 100644 --- a/tests/data/test1311 +++ b/tests/data/test1311 @@ -39,12 +39,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -J -O --output-dir %LOGDIR # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 diff --git a/tests/data/test1312 b/tests/data/test1312 index b67fdded7966..28d9eb68ae2c 100644 --- a/tests/data/test1312 +++ b/tests/data/test1312 @@ -39,12 +39,12 @@ HTTP GET with -J, Content-Disposition and ; in filename # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 diff --git a/tests/data/test1313 b/tests/data/test1313 index 922dbc7613ac..1df13ea092ac 100644 --- a/tests/data/test1313 +++ b/tests/data/test1313 @@ -39,12 +39,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -J -O --output-dir %LOGDIR # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 diff --git a/tests/data/test1314 b/tests/data/test1314 index 40cd18971cba..3511d45139bd 100644 --- a/tests/data/test1314 +++ b/tests/data/test1314 @@ -63,19 +63,19 @@ proxy # Verify data after the test has been "shot" - -GET http://firstplace.example.com/want/%TESTNUMBER HTTP/1.1 -Host: firstplace.example.com -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://somewhere.example.com/reply/%TESTNUMBER HTTP/1.1 -Host: somewhere.example.com -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://firstplace.example.com/want/%TESTNUMBER HTTP/1.1 +Host: firstplace.example.com +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://somewhere.example.com/reply/%TESTNUMBER HTTP/1.1 +Host: somewhere.example.com +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1315 b/tests/data/test1315 index 94b3c4897098..01fd8d64247e 100644 --- a/tests/data/test1315 +++ b/tests/data/test1315 @@ -46,41 +46,41 @@ dummy data -----+\w+ -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 845 -Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763 - -------------------------------9ef8d6205763 -Content-Disposition: form-data; name="name" - -value -------------------------------9ef8d6205763 -Content-Disposition: form-data; name="file" -Content-Type: multipart/mixed; boundary=----------------------------aaaaaaaaaaaa - -Content-Disposition: attachment; filename="test%TESTNUMBER.txt" -Content-Type: text/plain - +POST /we/want/%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Content-Length: 845%CR +Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763%CR +%CR +------------------------------9ef8d6205763%CR +Content-Disposition: form-data; name="name"%CR +%CR +value%CR +------------------------------9ef8d6205763%CR +Content-Disposition: form-data; name="file"%CR +Content-Type: multipart/mixed; boundary=----------------------------aaaaaaaaaaaa%CR +%CR +Content-Disposition: attachment; filename="test%TESTNUMBER.txt"%CR +Content-Type: text/plain%CR +%CR dummy data - -------------------------------9ef8d6205763 -Content-Disposition: attachment; filename="test%TESTNUMBER.txt" -Content-Type: magic/content - +%CR +------------------------------9ef8d6205763%CR +Content-Disposition: attachment; filename="test%TESTNUMBER.txt"%CR +Content-Type: magic/content%CR +%CR dummy data - -------------------------------9ef8d6205763 -Content-Disposition: attachment; filename="test%TESTNUMBER.txt" -Content-Type: text/plain - +%CR +------------------------------9ef8d6205763%CR +Content-Disposition: attachment; filename="test%TESTNUMBER.txt"%CR +Content-Type: text/plain%CR +%CR dummy data - -------------------------------aaaaaaaaaaaa-- - -------------------------------9ef8d6205763-- +%CR +------------------------------aaaaaaaaaaaa--%CR +%CR +------------------------------9ef8d6205763--%CR diff --git a/tests/data/test1316 b/tests/data/test1316 index 2218b6e14742..b5cce9ba2fe7 100644 --- a/tests/data/test1316 +++ b/tests/data/test1316 @@ -13,10 +13,10 @@ HTTP proxy # Server-side - -HTTP/1.1 200 Mighty fine indeed -Magic: sure you can FTP me - + +HTTP/1.1 200 Mighty fine indeed +Magic: sure you can FTP me + @@ -60,14 +60,14 @@ ftp://ftp.%TESTNUMBER:%FTPPORT/ -p -x %HOSTIP:%PROXYPORT # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test1317 b/tests/data/test1317 index 6ef065280d9e..6b74e60fa650 100644 --- a/tests/data/test1317 +++ b/tests/data/test1317 @@ -43,12 +43,12 @@ HTTP with --resolve # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: example.com:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: example.com:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1318 b/tests/data/test1318 index b7cc434eb3af..27e0d80c135e 100644 --- a/tests/data/test1318 +++ b/tests/data/test1318 @@ -43,17 +43,17 @@ HTTP with --resolve and same host name using different cases # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: MiXeDcAsE.cOm:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: mixedcase.com:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: MiXeDcAsE.cOm:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: mixedcase.com:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1319 b/tests/data/test1319 index 2dd8870955b4..6e9aeff5c03a 100644 --- a/tests/data/test1319 +++ b/tests/data/test1319 @@ -12,10 +12,10 @@ HTTP proxy # Server-side - -HTTP/1.1 200 Mighty fine indeed -pop3: sure hit me - + +HTTP/1.1 200 Mighty fine indeed +pop3: sure hit me + # When doing LIST, we get the default list output hard-coded in the test @@ -27,7 +27,7 @@ To: fake@nowhere body -- - yours sincerely + yours sincerely%CR @@ -37,7 +37,7 @@ To: fake@nowhere body -- - yours sincerely + yours sincerely%CR @@ -63,19 +63,19 @@ pop3://pop.%TESTNUMBER:%POP3PORT/%TESTNUMBER -p -x %HOSTIP:%PROXYPORT -u user:se # # Verify data after the test has been "shot" - -CAPA -USER user -PASS secret -RETR %TESTNUMBER -QUIT + +CAPA +USER user +PASS secret +RETR %TESTNUMBER +QUIT - -CONNECT pop.%TESTNUMBER:%POP3PORT HTTP/1.1 -Host: pop.%TESTNUMBER:%POP3PORT -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT pop.%TESTNUMBER:%POP3PORT HTTP/1.1 +Host: pop.%TESTNUMBER:%POP3PORT +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test132 b/tests/data/test132 index 77d47c8fd2e7..d9b89436ebb5 100644 --- a/tests/data/test132 +++ b/tests/data/test132 @@ -47,14 +47,14 @@ machine %HOSTIP login user2 password passwd2 # # Verify data after the test has been "shot" - -USER mary -PASS mark -PWD -EPSV -TYPE A -LIST -QUIT + +USER mary +PASS mark +PWD +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test1320 b/tests/data/test1320 index 9237ea5722e7..92a23a4e9f4e 100644 --- a/tests/data/test1320 +++ b/tests/data/test1320 @@ -11,10 +11,10 @@ HTTP proxy # # Server-side - -HTTP/1.1 200 Mighty fine indeed -smtp: sure hit me - + +HTTP/1.1 200 Mighty fine indeed +smtp: sure hit me + @@ -32,11 +32,11 @@ proxy SMTP send tunneled through HTTP proxy - -From: different -To: another - -body + +From: different +To: another + +body smtp://smtp.%TESTNUMBER:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -T - -p -x %HOSTIP:%PROXYPORT @@ -46,26 +46,26 @@ smtp://smtp.%TESTNUMBER:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA +QUIT - -From: different -To: another - -body -. + +From: different +To: another + +body +. - -CONNECT smtp.%TESTNUMBER:%SMTPPORT HTTP/1.1 -Host: smtp.%TESTNUMBER:%SMTPPORT -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT smtp.%TESTNUMBER:%SMTPPORT HTTP/1.1 +Host: smtp.%TESTNUMBER:%SMTPPORT +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1321 b/tests/data/test1321 index 4fe83fefbb72..8acb5c69fe5a 100644 --- a/tests/data/test1321 +++ b/tests/data/test1321 @@ -12,28 +12,28 @@ HTTP proxy # # Server-side - -HTTP/1.1 200 Mighty fine indeed -imap: sure hit me - + +HTTP/1.1 200 Mighty fine indeed +imap: sure hit me + - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -59,19 +59,19 @@ IMAP FETCH tunneled through HTTP proxy # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT - -CONNECT imap.%TESTNUMBER:%IMAPPORT HTTP/1.1 -Host: imap.%TESTNUMBER:%IMAPPORT -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT imap.%TESTNUMBER:%IMAPPORT HTTP/1.1 +Host: imap.%TESTNUMBER:%IMAPPORT +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1322 b/tests/data/test1322 index a70952710911..a58891f95d41 100644 --- a/tests/data/test1322 +++ b/tests/data/test1322 @@ -44,12 +44,12 @@ HTTP with --resolve and hostname with trailing dot # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: example.com.:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: example.com.:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1324 b/tests/data/test1324 index 7669da7b67ea..d31deee2bd1c 100644 --- a/tests/data/test1324 +++ b/tests/data/test1324 @@ -48,12 +48,12 @@ HTTP with --resolve and [ipv6address] # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: example.com:%HTTP6PORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: example.com:%HTTP6PORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1325 b/tests/data/test1325 index 67b31d58fe7f..4037cf98c16a 100644 --- a/tests/data/test1325 +++ b/tests/data/test1325 @@ -11,32 +11,32 @@ followlocation # # Server-side - -HTTP/1.1 308 OK swsclose -Location: %TESTNUMBER0002 -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.1 308 OK swsclose +Location: %TESTNUMBER0002 +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + - -HTTP/1.1 200 OK swsclose -Location: this should be ignored -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.1 200 OK swsclose +Location: this should be ignored +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + body - -HTTP/1.1 308 OK swsclose -Location: %TESTNUMBER0002 -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - -HTTP/1.1 200 OK swsclose -Location: this should be ignored -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.1 308 OK swsclose +Location: %TESTNUMBER0002 +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + +HTTP/1.1 200 OK swsclose +Location: this should be ignored +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + body @@ -58,21 +58,21 @@ http://%HOSTIP:%HTTPPORT/we/%TESTNUMBER -L -d "moo" # # Verify data after the test has been "shot" - -POST /we/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 3 -Content-Type: application/x-www-form-urlencoded - -mooPOST /we/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 3 -Content-Type: application/x-www-form-urlencoded - + +POST /we/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 3 +Content-Type: application/x-www-form-urlencoded + +mooPOST /we/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 3 +Content-Type: application/x-www-form-urlencoded + moo diff --git a/tests/data/test1326 b/tests/data/test1326 index 89e5a79c7358..eb3005b2c105 100644 --- a/tests/data/test1326 +++ b/tests/data/test1326 @@ -28,9 +28,9 @@ telnet TELNET to HTTP server - -GET /we/want/%TESTNUMBER HTTP/1.0 - + +GET /we/want/%TESTNUMBER HTTP/1.0 + telnet://%HOSTIP:%HTTPPORT --upload-file - @@ -40,9 +40,9 @@ telnet://%HOSTIP:%HTTPPORT --upload-file - # # Verify data after the test has been "shot" - -GET /we/want/%TESTNUMBER HTTP/1.0 - + +GET /we/want/%TESTNUMBER HTTP/1.0 + diff --git a/tests/data/test1327 b/tests/data/test1327 index c54f2a8898eb..1a4ac898753b 100644 --- a/tests/data/test1327 +++ b/tests/data/test1327 @@ -23,13 +23,13 @@ telnet TELNET check of upload with stdout redirected - -GET /ignore/for/%TESTNUMBER HTTP/1.0 - + +GET /ignore/for/%TESTNUMBER HTTP/1.0 + - -GET /we/want/%TESTNUMBER HTTP/1.0 - + +GET /we/want/%TESTNUMBER HTTP/1.0 + telnet://%HOSTIP:%HTTPPORT -T %LOGDIR/%TESTNUMBER.txt @@ -39,9 +39,9 @@ telnet://%HOSTIP:%HTTPPORT -T %LOGDIR/%TESTNUMBER.txt # # Verify data after the test has been "shot" - -GET /we/want/%TESTNUMBER HTTP/1.0 - + +GET /we/want/%TESTNUMBER HTTP/1.0 + diff --git a/tests/data/test1328 b/tests/data/test1328 index e913e19cea57..5acfdcf97c4b 100644 --- a/tests/data/test1328 +++ b/tests/data/test1328 @@ -54,17 +54,17 @@ HTTP GET a globbed range with -f # # Verify data after the test has been "shot" - -GET /%TESTNUMBER0000 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER0000 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test133 b/tests/data/test133 index 4a2c46cde4b8..c125ed9f0436 100644 --- a/tests/data/test133 +++ b/tests/data/test133 @@ -47,14 +47,14 @@ machine %HOSTIP login mary password drfrank # # Verify data after the test has been "shot" - -USER mary -PASS drfrank -PWD -EPSV -TYPE A -LIST -QUIT + +USER mary +PASS drfrank +PWD +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test1331 b/tests/data/test1331 index ed7462311240..7f8ff7868001 100644 --- a/tests/data/test1331 +++ b/tests/data/test1331 @@ -14,39 +14,39 @@ cookies # Server-side - -HTTP/1.1 407 Me not know you swsbounce -Date: Tue, 25 Sep 2001 19:37:44 GMT -Content-Type: text/html -Set-Cookie: proxycookie=weirdo; Path=/ -Cache-control: private -Content-Length: 62 -Proxy-Authenticate: Basic realm="moo on you" - + +HTTP/1.1 407 Me not know you swsbounce +Date: Tue, 25 Sep 2001 19:37:44 GMT +Content-Type: text/html +Set-Cookie: proxycookie=weirdo; Path=/ +Cache-control: private +Content-Length: 62 +Proxy-Authenticate: Basic realm="moo on you" + This server reply is for testing a simple cookie test case... - -HTTP/1.1 200 Fine! -Content-Type: text/html -Content-Length: 6 - + +HTTP/1.1 200 Fine! +Content-Type: text/html +Content-Length: 6 + hello - -HTTP/1.1 407 Me not know you swsbounce -Date: Tue, 25 Sep 2001 19:37:44 GMT -Content-Type: text/html -Set-Cookie: proxycookie=weirdo; Path=/ -Cache-control: private -Content-Length: 62 -Proxy-Authenticate: Basic realm="moo on you" - -HTTP/1.1 200 Fine! -Content-Type: text/html -Content-Length: 6 - + +HTTP/1.1 407 Me not know you swsbounce +Date: Tue, 25 Sep 2001 19:37:44 GMT +Content-Type: text/html +Set-Cookie: proxycookie=weirdo; Path=/ +Cache-control: private +Content-Length: 62 +Proxy-Authenticate: Basic realm="moo on you" + +HTTP/1.1 200 Fine! +Content-Type: text/html +Content-Length: 6 + hello @@ -72,21 +72,21 @@ proxy # Verify data after the test has been "shot" - -GET http://z.x.com/%TESTNUMBER HTTP/1.1 -Host: z.x.com -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://z.x.com/%TESTNUMBER HTTP/1.1 -Host: z.x.com -Proxy-Authorization: Basic %b64[myname:mypassword]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Cookie: proxycookie=weirdo - + +GET http://z.x.com/%TESTNUMBER HTTP/1.1 +Host: z.x.com +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://z.x.com/%TESTNUMBER HTTP/1.1 +Host: z.x.com +Proxy-Authorization: Basic %b64[myname:mypassword]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Cookie: proxycookie=weirdo + diff --git a/tests/data/test1332 b/tests/data/test1332 index 835294082329..c852d84b5d6f 100644 --- a/tests/data/test1332 +++ b/tests/data/test1332 @@ -57,21 +57,21 @@ http://%HOSTIP:%HTTPPORT/blah/%TESTNUMBER -L -d "moo" --post303 # # Verify data after the test has been "shot" - -POST /blah/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 3 -Content-Type: application/x-www-form-urlencoded - -mooPOST /blah/moo.html&testcase=/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 3 -Content-Type: application/x-www-form-urlencoded - + +POST /blah/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 3 +Content-Type: application/x-www-form-urlencoded + +mooPOST /blah/moo.html&testcase=/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 3 +Content-Type: application/x-www-form-urlencoded + moo diff --git a/tests/data/test1333 b/tests/data/test1333 index 5a5dd63a2d9a..050b041163b1 100644 --- a/tests/data/test1333 +++ b/tests/data/test1333 @@ -38,16 +38,16 @@ HTTP POST zero length, chunked-encoded # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Transfer-Encoding: chunked -Content-Type: application/x-www-form-urlencoded - -0 - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Transfer-Encoding: chunked +Content-Type: application/x-www-form-urlencoded + +0 + diff --git a/tests/data/test1334 b/tests/data/test1334 index 1a13864c2ea1..c0f8508321f6 100644 --- a/tests/data/test1334 +++ b/tests/data/test1334 @@ -8,14 +8,14 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + 12345 @@ -37,26 +37,26 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -O -D %LOGDIR/heads%TESTNUMBER --output-dir # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + diff --git a/tests/data/test1335 b/tests/data/test1335 index 146ff6d91828..e4a11368eaa3 100644 --- a/tests/data/test1335 +++ b/tests/data/test1335 @@ -8,14 +8,14 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + 12345 @@ -37,26 +37,26 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -O -D - --output-dir="%LOGDIR" # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + diff --git a/tests/data/test1336 b/tests/data/test1336 index dd93b5f9fc1f..4f5aea491248 100644 --- a/tests/data/test1336 +++ b/tests/data/test1336 @@ -8,15 +8,15 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + 12345 @@ -38,27 +38,27 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -O -D %LOGDIR/heads%TESTNUMBER --output-dir # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + diff --git a/tests/data/test1337 b/tests/data/test1337 index 5dbddeea61d9..71af37b3da53 100644 --- a/tests/data/test1337 +++ b/tests/data/test1337 @@ -8,15 +8,15 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + 12345 @@ -38,27 +38,27 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -O -D - --output-dir %LOGDIR # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + > %LOGDIR/name%TESTNUMBER diff --git a/tests/data/test1338 b/tests/data/test1338 index bc7b641e6ed7..0d9caf171d88 100644 --- a/tests/data/test1338 +++ b/tests/data/test1338 @@ -9,14 +9,14 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + 12345 @@ -38,26 +38,26 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -J -O -D %LOGDIR/heads%TESTNUMBER --output- # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + diff --git a/tests/data/test1339 b/tests/data/test1339 index a3533841d174..647c5afb5f6e 100644 --- a/tests/data/test1339 +++ b/tests/data/test1339 @@ -9,14 +9,14 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + 12345 @@ -38,26 +38,26 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -J -O -D - --output-dir %LOGDIR # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + diff --git a/tests/data/test134 b/tests/data/test134 index 207e4f5d4741..57403acf90d6 100644 --- a/tests/data/test134 +++ b/tests/data/test134 @@ -49,14 +49,14 @@ machine %HOSTIP login user2 password passwd2 # # Verify data after the test has been "shot" - -USER romulus -PASS rhemus -PWD -EPSV -TYPE A -LIST -QUIT + +USER romulus +PASS rhemus +PWD +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test1340 b/tests/data/test1340 index 9b6c092da3bc..81af4685444a 100644 --- a/tests/data/test1340 +++ b/tests/data/test1340 @@ -9,15 +9,15 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + 12345 @@ -39,27 +39,27 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -J -O -D %LOGDIR/heads%TESTNUMBER -w "curl # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + diff --git a/tests/data/test1341 b/tests/data/test1341 index 74cfd3b35423..0d1787dbcf2c 100644 --- a/tests/data/test1341 +++ b/tests/data/test1341 @@ -9,15 +9,15 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + 12345 @@ -39,27 +39,27 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -J -O -D - -w "curl saved to filename %{fil # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + curl saved to filename %LOGDIR/name%TESTNUMBER diff --git a/tests/data/test1342 b/tests/data/test1342 index 6d039f7ee36e..baa0945eaa98 100644 --- a/tests/data/test1342 +++ b/tests/data/test1342 @@ -8,14 +8,14 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + 12345 @@ -37,33 +37,33 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -i -O -D %LOGDIR/heads%TESTNUMBER --output- # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + diff --git a/tests/data/test1343 b/tests/data/test1343 index c6a18f2ba7d2..d9df0c44d712 100644 --- a/tests/data/test1343 +++ b/tests/data/test1343 @@ -8,14 +8,14 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + 12345 @@ -37,33 +37,33 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -i -O -D - --output-dir %LOGDIR # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + diff --git a/tests/data/test1344 b/tests/data/test1344 index de440520e050..e9f878b76496 100644 --- a/tests/data/test1344 +++ b/tests/data/test1344 @@ -8,15 +8,15 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + 12345 @@ -38,35 +38,35 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -i -O -D %LOGDIR/heads%TESTNUMBER --output- # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + diff --git a/tests/data/test1345 b/tests/data/test1345 index a093e5d8cf70..ebf4f9c53cb1 100644 --- a/tests/data/test1345 +++ b/tests/data/test1345 @@ -8,15 +8,15 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + 12345 @@ -38,35 +38,35 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -i -O -D - --output-dir %LOGDIR # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + %LOGDIR/name%TESTNUMBER diff --git a/tests/data/test1346 b/tests/data/test1346 index af2a35cbabff..5a9606b4bb9b 100644 --- a/tests/data/test1346 +++ b/tests/data/test1346 @@ -8,14 +8,14 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + 12345 @@ -37,22 +37,22 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -i -O --output-dir %LOGDIR # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + 12345 diff --git a/tests/data/test1347 b/tests/data/test1347 index bbef9f409c0b..b173086c567b 100644 --- a/tests/data/test1347 +++ b/tests/data/test1347 @@ -8,15 +8,15 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + 12345 @@ -38,23 +38,23 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -i -O --output-dir %LOGDIR # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + 12345 diff --git a/tests/data/test1348 b/tests/data/test1348 index b99ab58f8d3a..e072169f8577 100644 --- a/tests/data/test1348 +++ b/tests/data/test1348 @@ -29,16 +29,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -O --output-dir %LOGDIR # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT diff --git a/tests/data/test1349 b/tests/data/test1349 index 03f91ae23a80..faf1260c2824 100644 --- a/tests/data/test1349 +++ b/tests/data/test1349 @@ -29,16 +29,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -O -D %LOGDIR/heads%TESTNUMBER --out # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT @@ -48,21 +48,21 @@ mooo # The final "221 bye bye baby" response to QUIT will not be recorded # since that is not considered part of this particular transfer! - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 10 -150 Binary data connection for %TESTNUMBER () (10 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 10 +150 Binary data connection for %TESTNUMBER () (10 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test135 b/tests/data/test135 index 3dc1d531f5b3..2780c03354bf 100644 --- a/tests/data/test135 +++ b/tests/data/test135 @@ -38,17 +38,17 @@ FTP retrieve a byte-range # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -REST 4 -RETR %TESTNUMBER -ABOR -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +REST 4 +RETR %TESTNUMBER +ABOR +QUIT diff --git a/tests/data/test1350 b/tests/data/test1350 index 60d3620773fb..9fd7f897857a 100644 --- a/tests/data/test1350 +++ b/tests/data/test1350 @@ -29,16 +29,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -O -D - --output-dir %LOGDIR # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT @@ -48,21 +48,21 @@ mooo # The final "221 bye bye baby" response to QUIT will not be recorded # since that is not considered part of this particular transfer! - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 10 -150 Binary data connection for %TESTNUMBER () (10 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 10 +150 Binary data connection for %TESTNUMBER () (10 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test1351 b/tests/data/test1351 index 05a22ce62978..139537e378c6 100644 --- a/tests/data/test1351 +++ b/tests/data/test1351 @@ -30,16 +30,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -O -J -D %LOGDIR/heads%TESTNUMBER -- # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT @@ -49,21 +49,21 @@ mooo # The final "221 bye bye baby" response to QUIT will not be recorded # since that is not considered part of this particular transfer! - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 10 -150 Binary data connection for %TESTNUMBER () (10 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 10 +150 Binary data connection for %TESTNUMBER () (10 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test1352 b/tests/data/test1352 index ae94e5aad452..cba83dc6640c 100644 --- a/tests/data/test1352 +++ b/tests/data/test1352 @@ -30,16 +30,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -O -J -D - --output-dir %LOGDIR # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT @@ -49,21 +49,21 @@ mooo # The final "221 bye bye baby" response to QUIT will not be recorded # since that is not considered part of this particular transfer! - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 10 -150 Binary data connection for %TESTNUMBER () (10 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 10 +150 Binary data connection for %TESTNUMBER () (10 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test1353 b/tests/data/test1353 index 45aad1c4baba..d454b02501bc 100644 --- a/tests/data/test1353 +++ b/tests/data/test1353 @@ -29,16 +29,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -O -i -D %LOGDIR/heads%TESTNUMBER -- # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT @@ -48,21 +48,21 @@ mooo # The final "221 bye bye baby" response to QUIT will not be recorded # since that is not considered part of this particular transfer! - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 10 -150 Binary data connection for %TESTNUMBER () (10 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 10 +150 Binary data connection for %TESTNUMBER () (10 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test1354 b/tests/data/test1354 index c7ff933cc1df..94cc34453352 100644 --- a/tests/data/test1354 +++ b/tests/data/test1354 @@ -29,16 +29,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -O -i -D - --output-dir %LOGDIR # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT @@ -46,21 +46,21 @@ fooo mooo - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 10 -150 Binary data connection for %TESTNUMBER () (10 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 10 +150 Binary data connection for %TESTNUMBER () (10 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test1355 b/tests/data/test1355 index 7158a6e99fee..30f40eac39e1 100644 --- a/tests/data/test1355 +++ b/tests/data/test1355 @@ -29,16 +29,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -O -i --output-dir %LOGDIR # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT diff --git a/tests/data/test1356 b/tests/data/test1356 index e690747f1684..e68f9322d66b 100644 --- a/tests/data/test1356 +++ b/tests/data/test1356 @@ -9,15 +9,15 @@ RETR # Server-side # file%TESTNUMBER contents... - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + MOOOO @@ -37,27 +37,27 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -O --output-dir %LOGDIR # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + MOOOO diff --git a/tests/data/test1357 b/tests/data/test1357 index 926fd538d95f..a83605b88706 100644 --- a/tests/data/test1357 +++ b/tests/data/test1357 @@ -37,16 +37,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -O -D %LOGDIR/heads%TESTNUMBER --out # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT @@ -61,21 +61,21 @@ Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange MOOOO - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 214 -150 Binary data connection for %TESTNUMBER () (214 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 214 +150 Binary data connection for %TESTNUMBER () (214 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test1358 b/tests/data/test1358 index 14fc95afeed9..f5bda613bec3 100644 --- a/tests/data/test1358 +++ b/tests/data/test1358 @@ -37,16 +37,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -O -D - --output-dir %LOGDIR # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT @@ -61,21 +61,21 @@ Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange MOOOO - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 214 -150 Binary data connection for %TESTNUMBER () (214 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 214 +150 Binary data connection for %TESTNUMBER () (214 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test1359 b/tests/data/test1359 index c26ac187b46e..a4c98addd509 100644 --- a/tests/data/test1359 +++ b/tests/data/test1359 @@ -38,16 +38,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -O -J -D %LOGDIR/heads%TESTNUMBER -- # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT @@ -62,21 +62,21 @@ Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange MOOOO - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 214 -150 Binary data connection for %TESTNUMBER () (214 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 214 +150 Binary data connection for %TESTNUMBER () (214 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test136 b/tests/data/test136 index ef0b2c49ac74..c869c612bf13 100644 --- a/tests/data/test136 +++ b/tests/data/test136 @@ -28,15 +28,15 @@ FTP with user and no password # Verify data after the test has been "shot" - -USER user -PASS -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER user +PASS%SP +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1360 b/tests/data/test1360 index a7ed493023c3..d2108ef7a6aa 100644 --- a/tests/data/test1360 +++ b/tests/data/test1360 @@ -38,16 +38,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -O -J -D - --output-dir %LOGDIR # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT @@ -62,21 +62,21 @@ Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange MOOOO - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 214 -150 Binary data connection for %TESTNUMBER () (214 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 214 +150 Binary data connection for %TESTNUMBER () (214 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test1361 b/tests/data/test1361 index 18c9f5f08c97..242162c8eee8 100644 --- a/tests/data/test1361 +++ b/tests/data/test1361 @@ -37,16 +37,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -O -i -D %LOGDIR/heads%TESTNUMBER -- # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT @@ -61,21 +61,21 @@ Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange MOOOO - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 214 -150 Binary data connection for %TESTNUMBER () (214 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 214 +150 Binary data connection for %TESTNUMBER () (214 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test1362 b/tests/data/test1362 index 261950969b79..6695b740e570 100644 --- a/tests/data/test1362 +++ b/tests/data/test1362 @@ -37,16 +37,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -O -i -D - --output-dir %LOGDIR # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT @@ -61,21 +61,21 @@ Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange MOOOO - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 214 -150 Binary data connection for %TESTNUMBER () (214 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 214 +150 Binary data connection for %TESTNUMBER () (214 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test1363 b/tests/data/test1363 index 022940257d20..ab4a8b1101cd 100644 --- a/tests/data/test1363 +++ b/tests/data/test1363 @@ -9,15 +9,15 @@ RETR # Server-side # file%TESTNUMBER contents... - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + MOOOO @@ -37,27 +37,27 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -O -i --output-dir %LOGDIR # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + MOOOO diff --git a/tests/data/test1364 b/tests/data/test1364 index 2b3b566f6ab4..008283dee4d7 100644 --- a/tests/data/test1364 +++ b/tests/data/test1364 @@ -8,14 +8,14 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + 12345 @@ -37,26 +37,26 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -o %LOGDIR/outfile%TESTNUMBER -D %LOGDIR/he # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + diff --git a/tests/data/test1365 b/tests/data/test1365 index 1a28a77ede8d..b332778c515e 100644 --- a/tests/data/test1365 +++ b/tests/data/test1365 @@ -8,14 +8,14 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + 12345 @@ -37,26 +37,26 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -o %LOGDIR/outfile%TESTNUMBER -D - # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + diff --git a/tests/data/test1366 b/tests/data/test1366 index 1107c2281150..f2727c32aac9 100644 --- a/tests/data/test1366 +++ b/tests/data/test1366 @@ -8,15 +8,15 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + 12345 @@ -38,27 +38,27 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -o %LOGDIR/outfile%TESTNUMBER -D %LOGDIR/he # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + diff --git a/tests/data/test1367 b/tests/data/test1367 index 5d1efa3a955c..ed86946a1616 100644 --- a/tests/data/test1367 +++ b/tests/data/test1367 @@ -8,15 +8,15 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + 12345 @@ -38,27 +38,27 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -o %LOGDIR/outfile%TESTNUMBER -D - # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + diff --git a/tests/data/test1368 b/tests/data/test1368 index c9ee02169173..c8930106faf1 100644 --- a/tests/data/test1368 +++ b/tests/data/test1368 @@ -9,14 +9,14 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + 12345 @@ -38,26 +38,26 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -J -o %LOGDIR/outfile%TESTNUMBER -D %LOGDIR # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + diff --git a/tests/data/test1369 b/tests/data/test1369 index 93627e6a484a..2dc5999c4fab 100644 --- a/tests/data/test1369 +++ b/tests/data/test1369 @@ -9,14 +9,14 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + 12345 @@ -38,26 +38,26 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -J -o %LOGDIR/outfile%TESTNUMBER -D - # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + diff --git a/tests/data/test137 b/tests/data/test137 index 33b93589ec36..43c4fcebf18a 100644 --- a/tests/data/test137 +++ b/tests/data/test137 @@ -31,17 +31,17 @@ ftp://%HOSTIP:%FTPPORT/blalbla/lululul/%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD blalbla -CWD lululul -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD blalbla +CWD lululul +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1370 b/tests/data/test1370 index 637444c540e6..ceaa90168daa 100644 --- a/tests/data/test1370 +++ b/tests/data/test1370 @@ -9,15 +9,15 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + 12345 @@ -39,27 +39,27 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -J -o %LOGDIR/outfile%TESTNUMBER -D %LOGDIR # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + diff --git a/tests/data/test1371 b/tests/data/test1371 index d05c1a15bf00..293b105210b4 100644 --- a/tests/data/test1371 +++ b/tests/data/test1371 @@ -9,15 +9,15 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + 12345 @@ -39,27 +39,27 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -J -o %LOGDIR/outfile%TESTNUMBER -D - # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + diff --git a/tests/data/test1372 b/tests/data/test1372 index a39a243c99dd..1ac567f91f79 100644 --- a/tests/data/test1372 +++ b/tests/data/test1372 @@ -8,14 +8,14 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + 12345 @@ -37,33 +37,33 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -i -o %LOGDIR/outfile%TESTNUMBER -D %LOGDIR # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + diff --git a/tests/data/test1373 b/tests/data/test1373 index 7d94775d6ffc..e722bb11ba9c 100644 --- a/tests/data/test1373 +++ b/tests/data/test1373 @@ -8,14 +8,14 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + 12345 @@ -37,33 +37,33 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -i -o %LOGDIR/outfile%TESTNUMBER -D - # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + diff --git a/tests/data/test1374 b/tests/data/test1374 index 95af862faa18..a093fc948bae 100644 --- a/tests/data/test1374 +++ b/tests/data/test1374 @@ -8,15 +8,15 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + 12345 @@ -38,35 +38,35 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -i -o %LOGDIR/outfile%TESTNUMBER -D %LOGDIR # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + diff --git a/tests/data/test1375 b/tests/data/test1375 index f56a7d90b368..9af026ba2e92 100644 --- a/tests/data/test1375 +++ b/tests/data/test1375 @@ -9,14 +9,14 @@ HTTP GET # -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - +HTTP/1.1 200 OK%CR +Date: Tue, 09 Nov 2010 14:49:00 GMT%CR +Server: test-server/fake%CR +Content-Length: 6%CR +Connection: close%CR +Content-Type: text/html%CR +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange%CR +%CR 12345 @@ -38,35 +38,35 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -i -o %LOGDIR/outfile%TESTNUMBER -D - # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + 12345 - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + diff --git a/tests/data/test1376 b/tests/data/test1376 index 5b3280b0336e..d673bd73539a 100644 --- a/tests/data/test1376 +++ b/tests/data/test1376 @@ -9,13 +9,13 @@ HTTP GET # -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - +HTTP/1.1 200 OK%CR +Date: Tue, 09 Nov 2010 14:49:00 GMT%CR +Server: test-server/fake%CR +Content-Length: 6%CR +Connection: close%CR +Content-Type: text/html%CR +%CR 12345 @@ -37,22 +37,22 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -i -o %LOGDIR/outfile%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html + 12345 diff --git a/tests/data/test1377 b/tests/data/test1377 index 4bdc864bc1ee..c2ade403d29f 100644 --- a/tests/data/test1377 +++ b/tests/data/test1377 @@ -9,14 +9,14 @@ HTTP GET # -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - +HTTP/1.1 200 OK%CR +Date: Tue, 09 Nov 2010 14:49:00 GMT%CR +Server: test-server/fake%CR +Content-Length: 6%CR +Connection: close%CR +Content-Type: text/html%CR +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange%CR +%CR 12345 @@ -38,23 +38,23 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -i -o %LOGDIR/outfile%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + 12345 diff --git a/tests/data/test1378 b/tests/data/test1378 index 199679cab636..42e0c4654165 100644 --- a/tests/data/test1378 +++ b/tests/data/test1378 @@ -29,16 +29,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -o %LOGDIR/download%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT diff --git a/tests/data/test1379 b/tests/data/test1379 index 39b66ebe3b38..6630161e568c 100644 --- a/tests/data/test1379 +++ b/tests/data/test1379 @@ -29,16 +29,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -o %LOGDIR/download%TESTNUMBER -D %L # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT @@ -46,21 +46,21 @@ fooo mooo - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 10 -150 Binary data connection for %TESTNUMBER () (10 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 10 +150 Binary data connection for %TESTNUMBER () (10 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test138 b/tests/data/test138 index db3b6ec7df26..765039d70c32 100644 --- a/tests/data/test138 +++ b/tests/data/test138 @@ -34,17 +34,17 @@ ftp://%HOSTIP:%FTPPORT/blalbla/lululul/%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD blalbla -CWD lululul -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD blalbla +CWD lululul +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1380 b/tests/data/test1380 index cca8020eb047..b4f5dccd877c 100644 --- a/tests/data/test1380 +++ b/tests/data/test1380 @@ -29,16 +29,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -o %LOGDIR/download%TESTNUMBER -D - # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT @@ -46,21 +46,21 @@ fooo mooo - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 10 -150 Binary data connection for %TESTNUMBER () (10 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 10 +150 Binary data connection for %TESTNUMBER () (10 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test1381 b/tests/data/test1381 index 3455369a981f..cf635ffe464f 100644 --- a/tests/data/test1381 +++ b/tests/data/test1381 @@ -30,16 +30,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -o %LOGDIR/download%TESTNUMBER -J -D # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT @@ -47,21 +47,21 @@ fooo mooo - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 10 -150 Binary data connection for %TESTNUMBER () (10 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 10 +150 Binary data connection for %TESTNUMBER () (10 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test1382 b/tests/data/test1382 index 78d05a321544..8c270ad7ae4e 100644 --- a/tests/data/test1382 +++ b/tests/data/test1382 @@ -30,16 +30,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -o %LOGDIR/download%TESTNUMBER -J -D # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT @@ -47,21 +47,21 @@ fooo mooo - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 10 -150 Binary data connection for %TESTNUMBER () (10 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 10 +150 Binary data connection for %TESTNUMBER () (10 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test1383 b/tests/data/test1383 index 96c3e9a27858..319b6ca7d207 100644 --- a/tests/data/test1383 +++ b/tests/data/test1383 @@ -29,16 +29,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -o %LOGDIR/download%TESTNUMBER -i -D # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT @@ -46,21 +46,21 @@ fooo mooo - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 10 -150 Binary data connection for %TESTNUMBER () (10 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 10 +150 Binary data connection for %TESTNUMBER () (10 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test1384 b/tests/data/test1384 index 4251c42a1e7f..a36a11eee72c 100644 --- a/tests/data/test1384 +++ b/tests/data/test1384 @@ -29,16 +29,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -o %LOGDIR/download%TESTNUMBER -i -D # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT @@ -46,21 +46,21 @@ fooo mooo - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 10 -150 Binary data connection for %TESTNUMBER () (10 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 10 +150 Binary data connection for %TESTNUMBER () (10 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test1385 b/tests/data/test1385 index c14ddba20f69..33a5bb75de3d 100644 --- a/tests/data/test1385 +++ b/tests/data/test1385 @@ -29,16 +29,16 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -o %LOGDIR/download%TESTNUMBER -i # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT diff --git a/tests/data/test1386 b/tests/data/test1386 index 72f13ca58283..e4e3b7b946dc 100644 --- a/tests/data/test1386 +++ b/tests/data/test1386 @@ -9,15 +9,15 @@ RETR # Server-side # file%TESTNUMBER contents... - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + MOOOO @@ -37,27 +37,27 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -o %LOGDIR/download%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + MOOOO diff --git a/tests/data/test1387 b/tests/data/test1387 index 43c28cc582e3..dc28f4ccd54a 100644 --- a/tests/data/test1387 +++ b/tests/data/test1387 @@ -9,15 +9,15 @@ RETR # Server-side # file%TESTNUMBER contents... - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + MOOOO @@ -37,45 +37,45 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -o %LOGDIR/download%TESTNUMBER -D %L # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + MOOOO - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 222 -150 Binary data connection for %TESTNUMBER () (222 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 222 +150 Binary data connection for %TESTNUMBER () (222 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test1388 b/tests/data/test1388 index 0a3c173e50b4..3706fe14340a 100644 --- a/tests/data/test1388 +++ b/tests/data/test1388 @@ -9,15 +9,15 @@ RETR # Server-side # file%TESTNUMBER contents... - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + MOOOO @@ -37,45 +37,45 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -o %LOGDIR/download%TESTNUMBER -D - # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + MOOOO - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 222 -150 Binary data connection for %TESTNUMBER () (222 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 222 +150 Binary data connection for %TESTNUMBER () (222 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test1389 b/tests/data/test1389 index 0c648309e556..e9566cca844e 100644 --- a/tests/data/test1389 +++ b/tests/data/test1389 @@ -10,15 +10,15 @@ RETR # Server-side # file%TESTNUMBER contents... - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + MOOOO @@ -38,48 +38,48 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -o %LOGDIR/download%TESTNUMBER -J -D # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + MOOOO - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 222 -150 Binary data connection for %TESTNUMBER () (222 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 222 +150 Binary data connection for %TESTNUMBER () (222 bytes). +226 File transfer complete -s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ +s/^(229 Entering Passive Mode \().*(\)\S*)/${1}stripped${2}/ diff --git a/tests/data/test139 b/tests/data/test139 index 160f628e2cb0..bde3f2d3b48a 100644 --- a/tests/data/test139 +++ b/tests/data/test139 @@ -31,17 +31,17 @@ ftp://%HOSTIP:%FTPPORT/blalbla/%TESTNUMBER -z "1 jan 1989" # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD blalbla -MDTM %TESTNUMBER -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD blalbla +MDTM %TESTNUMBER +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1390 b/tests/data/test1390 index 6b3f4dad3eb5..0a3cdce5683c 100644 --- a/tests/data/test1390 +++ b/tests/data/test1390 @@ -10,15 +10,15 @@ RETR # Server-side # file%TESTNUMBER contents... - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + MOOOO @@ -38,45 +38,45 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -o %LOGDIR/download%TESTNUMBER -J -D # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + MOOOO - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 222 -150 Binary data connection for %TESTNUMBER () (222 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 222 +150 Binary data connection for %TESTNUMBER () (222 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test1391 b/tests/data/test1391 index 447a57829188..daa22eabc6ed 100644 --- a/tests/data/test1391 +++ b/tests/data/test1391 @@ -9,15 +9,15 @@ RETR # Server-side # file%TESTNUMBER contents... - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + MOOOO @@ -37,45 +37,45 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -o %LOGDIR/download%TESTNUMBER -i -D # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + MOOOO - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 222 -150 Binary data connection for %TESTNUMBER () (222 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 222 +150 Binary data connection for %TESTNUMBER () (222 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test1392 b/tests/data/test1392 index 4af7966889e3..6678c67000bd 100644 --- a/tests/data/test1392 +++ b/tests/data/test1392 @@ -9,15 +9,15 @@ RETR # Server-side # file%TESTNUMBER contents... - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + MOOOO @@ -37,45 +37,45 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -o %LOGDIR/download%TESTNUMBER -i -D # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + MOOOO - -220- _ _ ____ _ -220- ___| | | | _ \| | -220- / __| | | | |_) | | -220- | (__| |_| | _ {| |___ -220 \___|\___/|_| \_\_____| -331 We are happy you popped in! -230 Welcome you silly person -257 "/" is current directory -250 CWD command successful. + +220- _ _ ____ _ +220- ___| | | | _ \| | +220- / __| | | | |_) | | +220- | (__| |_| | _ {| |___ +220 \___|\___/|_| \_\_____| +331 We are happy you popped in! +230 Welcome you silly person +257 "/" is current directory +250 CWD command successful. 229 Entering Passive Mode (stripped) -200 I modify TYPE as you wanted -213 222 -150 Binary data connection for %TESTNUMBER () (222 bytes). -226 File transfer complete +200 I modify TYPE as you wanted +213 222 +150 Binary data connection for %TESTNUMBER () (222 bytes). +226 File transfer complete s/^(229 Entering Passive Mode \().*(\).*)/${1}stripped${2}/ diff --git a/tests/data/test1393 b/tests/data/test1393 index 492da66fc01d..b436439e35f1 100644 --- a/tests/data/test1393 +++ b/tests/data/test1393 @@ -9,15 +9,15 @@ RETR # Server-side # file%TESTNUMBER contents... - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + MOOOO @@ -37,27 +37,27 @@ ftp://%HOSTIP:%FTPPORT/path/file%TESTNUMBER -o %LOGDIR/download%TESTNUMBER -i # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE file%TESTNUMBER -RETR file%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE file%TESTNUMBER +RETR file%TESTNUMBER +QUIT - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=strange + MOOOO diff --git a/tests/data/test14 b/tests/data/test14 index 1bffda78d75f..dde6c8880ad9 100644 --- a/tests/data/test14 +++ b/tests/data/test14 @@ -30,12 +30,12 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER -i --head # Verify data after the test has been "shot" - -HEAD /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +HEAD /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test140 b/tests/data/test140 index 5e29f5c7c758..0910ff3dc2b1 100644 --- a/tests/data/test140 +++ b/tests/data/test140 @@ -30,13 +30,13 @@ ftp://%HOSTIP:%FTPPORT/blalbla/%TESTNUMBER -z "1 jan 2004" # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD blalbla -MDTM %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD blalbla +MDTM %TESTNUMBER +QUIT diff --git a/tests/data/test1400 b/tests/data/test1400 index 4a9e1e66a5fc..5ed32360d995 100644 --- a/tests/data/test1400 +++ b/tests/data/test1400 @@ -40,12 +40,12 @@ http://%HOSTIP:%HTTPPORT/we/want/%TESTNUMBER --libcurl %LOGDIR/test%TESTNUMBER.c # Verify data after the test has been "shot" - -GET /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + s/(USERAGENT, \")[^\"]+/${1}stripped/ diff --git a/tests/data/test1401 b/tests/data/test1401 index bb5a7a97ac25..a24c81cb94d3 100644 --- a/tests/data/test1401 +++ b/tests/data/test1401 @@ -48,16 +48,16 @@ http://%HOSTIP:%HTTPPORT/we/want/%TESTNUMBER --libcurl %LOGDIR/test%TESTNUMBER.c # Verify data after the test has been "shot" - -GET /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[fake:user]b64% -User-Agent: MyUA -Accept: */* -Cookie: chocolate=chip -X-Files: Mulder -X-Men: cyclops, iceman - + +GET /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[fake:user]b64% +User-Agent: MyUA +Accept: */* +Cookie: chocolate=chip +X-Files: Mulder +X-Men: cyclops, iceman + # CURLOPT_SSL_VERIFYPEER, SSH_KNOWNHOSTS and HTTP_VERSION vary with diff --git a/tests/data/test1402 b/tests/data/test1402 index c973e7d8f8ca..9c0330532db4 100644 --- a/tests/data/test1402 +++ b/tests/data/test1402 @@ -41,14 +41,14 @@ http://%HOSTIP:%HTTPPORT/we/want/%TESTNUMBER --libcurl %LOGDIR/test%TESTNUMBER.c # Verify data after the test has been "shot" - -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 16 -Content-Type: application/x-www-form-urlencoded - + +POST /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 16 +Content-Type: application/x-www-form-urlencoded + foo=bar&baz=quux diff --git a/tests/data/test1403 b/tests/data/test1403 index a03da1d6d648..96328168940c 100644 --- a/tests/data/test1403 +++ b/tests/data/test1403 @@ -41,12 +41,12 @@ http://%HOSTIP:%HTTPPORT/we/want/%TESTNUMBER --libcurl %LOGDIR/test%TESTNUMBER.c # Verify data after the test has been "shot" - -GET /we/want/%TESTNUMBER?foo=bar&baz=quux HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/%TESTNUMBER?foo=bar&baz=quux HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # curl's default user-agent varies with version, libraries etc. diff --git a/tests/data/test1404 b/tests/data/test1404 index f3b31be1e568..1cf0c676eaaf 100644 --- a/tests/data/test1404 +++ b/tests/data/test1404 @@ -51,44 +51,44 @@ dummy data -----+\w+ -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 930 -Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763 - -------------------------------9ef8d6205763 -Content-Disposition: form-data; name="name" - -value -------------------------------9ef8d6205763 -Content-Disposition: form-data; name="file" -Content-Type: multipart/mixed; boundary=----------------------------aaaaaaaaaaaa - -Content-Disposition: attachment; filename="test%TESTNUMBER.txt" -Content-Type: text/plain - +POST /we/want/%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Content-Length: 930%CR +Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763%CR +%CR +------------------------------9ef8d6205763%CR +Content-Disposition: form-data; name="name"%CR +%CR +value%CR +------------------------------9ef8d6205763%CR +Content-Disposition: form-data; name="file"%CR +Content-Type: multipart/mixed; boundary=----------------------------aaaaaaaaaaaa%CR +%CR +Content-Disposition: attachment; filename="test%TESTNUMBER.txt"%CR +Content-Type: text/plain%CR +%CR dummy data - -------------------------------9ef8d6205763 -Content-Disposition: attachment; filename="test%TESTNUMBER.txt" -Content-Type: magic/content -Content-Transfer-Encoding: 8bit - +%CR +------------------------------9ef8d6205763%CR +Content-Disposition: attachment; filename="test%TESTNUMBER.txt"%CR +Content-Type: magic/content%CR +Content-Transfer-Encoding: 8bit%CR +%CR dummy data - -------------------------------9ef8d6205763 -Content-Disposition: attachment; filename="test%TESTNUMBER.txt" -Content-Type: text/plain -X-testheader-1: header 1 -X-testheader-2: header 2 - +%CR +------------------------------9ef8d6205763%CR +Content-Disposition: attachment; filename="test%TESTNUMBER.txt"%CR +Content-Type: text/plain%CR +X-testheader-1: header 1%CR +X-testheader-2: header 2%CR +%CR dummy data - -------------------------------aaaaaaaaaaaa-- - -------------------------------9ef8d6205763-- +%CR +------------------------------aaaaaaaaaaaa--%CR +%CR +------------------------------9ef8d6205763--%CR # curl's default user-agent varies with version, libraries etc. diff --git a/tests/data/test1405 b/tests/data/test1405 index b4560aa05213..1860f408c8e7 100644 --- a/tests/data/test1405 +++ b/tests/data/test1405 @@ -45,21 +45,21 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -Q "NOOP 1" -Q "+NOOP 2" -Q "-NOOP 3" -Q "*FA # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -NOOP 1 -FAIL -EPSV -PASV -TYPE I -NOOP 2 -FAIL HARD -SIZE %TESTNUMBER -RETR %TESTNUMBER -NOOP 3 -QUIT + +USER anonymous +PASS ftp@example.com +PWD +NOOP 1 +FAIL +EPSV +PASV +TYPE I +NOOP 2 +FAIL HARD +SIZE %TESTNUMBER +RETR %TESTNUMBER +NOOP 3 +QUIT /********* Sample code generated by the curl command line tool ********** diff --git a/tests/data/test1406 b/tests/data/test1406 index a41276c45dce..bdd142159d9c 100644 --- a/tests/data/test1406 +++ b/tests/data/test1406 @@ -11,9 +11,9 @@ SMTP # # Server-side - -CAPA SIZE - + +CAPA SIZE + # @@ -28,11 +28,11 @@ smtp SSL_CERT_FILE - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-from sender@example.com -T %LOGDIR/test%TESTNUMBER.eml --libcurl %LOGDIR/test%TESTNUMBER.c @@ -47,20 +47,20 @@ ftp # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: SIZE=38 -RCPT TO: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: SIZE=38 +RCPT TO: +RCPT TO: +DATA +QUIT - -From: different -To: another - -body -. + +From: different +To: another + +body +. /********* Sample code generated by the curl command line tool ********** diff --git a/tests/data/test1407 b/tests/data/test1407 index 94724a6faed9..fad62abd062c 100644 --- a/tests/data/test1407 +++ b/tests/data/test1407 @@ -3,7 +3,7 @@ POP3 -Clear Text +Clear Text LIST --libcurl @@ -42,12 +42,12 @@ ftp # # Verify data after the test has been "shot" - -CAPA -USER user -PASS secret -LIST %TESTNUMBER -QUIT + +CAPA +USER user +PASS secret +LIST %TESTNUMBER +QUIT /********* Sample code generated by the curl command line tool ********** diff --git a/tests/data/test1408 b/tests/data/test1408 index 5c7f6493dfea..1ae279c34887 100644 --- a/tests/data/test1408 +++ b/tests/data/test1408 @@ -56,18 +56,18 @@ HTTP receive cookies over IPV6 # # Verify data after the test has been "shot" - -GET /path/%TESTNUMBER0001 HTTP/1.1 -Host: %HOST6IP:%HTTP6PORT -User-Agent: curl/%VERSION -Accept: */* - -GET /path/%TESTNUMBER0002 HTTP/1.1 -Host: %HOST6IP:%HTTP6PORT -User-Agent: curl/%VERSION -Accept: */* -Cookie: time=1 - + +GET /path/%TESTNUMBER0001 HTTP/1.1 +Host: %HOST6IP:%HTTP6PORT +User-Agent: curl/%VERSION +Accept: */* + +GET /path/%TESTNUMBER0002 HTTP/1.1 +Host: %HOST6IP:%HTTP6PORT +User-Agent: curl/%VERSION +Accept: */* +Cookie: time=1 + diff --git a/tests/data/test141 b/tests/data/test141 index 425a98f2a631..c33349fa8011 100644 --- a/tests/data/test141 +++ b/tests/data/test141 @@ -32,21 +32,21 @@ ftp://%HOSTIP:%FTPPORT/blalbla/%TESTNUMBER -I # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD blalbla -MDTM %TESTNUMBER -TYPE I -SIZE %TESTNUMBER -REST 0 -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD blalbla +MDTM %TESTNUMBER +TYPE I +SIZE %TESTNUMBER +REST 0 +QUIT - -Last-Modified: Wed, 09 Apr 2003 10:26:59 GMT -Content-Length: 42 -Accept-ranges: bytes + +Last-Modified: Wed, 09 Apr 2003 10:26:59 GMT +Content-Length: 42 +Accept-ranges: bytes diff --git a/tests/data/test1411 b/tests/data/test1411 index 9c75a225cc2d..ae58242f22f0 100644 --- a/tests/data/test1411 +++ b/tests/data/test1411 @@ -46,13 +46,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -T %LOGDIR/empty%TESTNUMBER # # Verify data after the test has been "shot" - -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 0 - + +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 0 + diff --git a/tests/data/test1412 b/tests/data/test1412 index 56e016a0c061..d2e2be88e4c5 100644 --- a/tests/data/test1412 +++ b/tests/data/test1412 @@ -13,69 +13,69 @@ HTTP Digest auth auth_required - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" -Content-Type: text/html; charset=iso-8859-1 -Connection: close - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" +Content-Type: text/html; charset=iso-8859-1 +Connection: close + This is not the real page # The second URL will get this response - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" -Content-Type: text/html; charset=iso-8859-1 -Connection: close - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" +Content-Type: text/html; charset=iso-8859-1 +Connection: close + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 -Connection: close - + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 +Connection: close + This IS the real page! # This is the second request - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 -Connection: close - + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 +Connection: close + This IS the second real page! - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" -Content-Type: text/html; charset=iso-8859-1 -Connection: close - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 -Connection: close - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" +Content-Type: text/html; charset=iso-8859-1 +Connection: close + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 +Connection: close + This IS the real page! @@ -101,29 +101,29 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --anyauth http://%HOST # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/%TESTNUMBER", response="0390dbe89e31adca0413d11f91f30e7f" -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/%TESTNUMBER0001", response="0085df91870374c8bf4e94415e7fbf8e" -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/%TESTNUMBER", response="0390dbe89e31adca0413d11f91f30e7f" +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/%TESTNUMBER0001", response="0085df91870374c8bf4e94415e7fbf8e" +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1413 b/tests/data/test1413 index 1ab4c1a818dc..ece40f75b2ec 100644 --- a/tests/data/test1413 +++ b/tests/data/test1413 @@ -9,32 +9,32 @@ followlocation # # Server-side - -HTTP/1.1 302 OK swsclose -Location: moo.html/%TESTNUMBER0002#fragmentpart -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.1 302 OK swsclose +Location: moo.html/%TESTNUMBER0002#fragmentpart +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + - -HTTP/1.1 200 OK swsclose -Location: this should be ignored -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.1 200 OK swsclose +Location: this should be ignored +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + body - -HTTP/1.1 302 OK swsclose -Location: moo.html/%TESTNUMBER0002#fragmentpart -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - -HTTP/1.1 200 OK swsclose -Location: this should be ignored -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.1 302 OK swsclose +Location: moo.html/%TESTNUMBER0002#fragmentpart +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + +HTTP/1.1 200 OK swsclose +Location: this should be ignored +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + body @@ -56,17 +56,17 @@ http://%HOSTIP:%HTTPPORT/this/%TESTNUMBER -L # # Verify data after the test has been "shot" - -GET /this/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /this/moo.html/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /this/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /this/moo.html/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1414 b/tests/data/test1414 index 4be9b54222a7..e448956fc932 100644 --- a/tests/data/test1414 +++ b/tests/data/test1414 @@ -39,19 +39,19 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -P - # Verify data after the test has been "shot" -s/^(EPRT \|1\|)(.*)/$1/ -s/^(PORT)(.*)/$1/ +s/^(EPRT \|1\|)(\S*)/$1/ +s/^(PORT) *(\S*)/$1/ - -USER anonymous -PASS ftp@example.com -PWD + +USER anonymous +PASS ftp@example.com +PWD EPRT |1| PORT -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1415 b/tests/data/test1415 index 1e7090092f11..80e32aac98e8 100644 --- a/tests/data/test1415 +++ b/tests/data/test1415 @@ -64,13 +64,13 @@ proxy # Verify data after the test has been "shot" - -GET http://example.com/we/want/%TESTNUMBER HTTP/1.1 -Host: example.com -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://example.com/we/want/%TESTNUMBER HTTP/1.1 +Host: example.com +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1416 b/tests/data/test1416 index 1af3b61f0803..e9983bebadab 100644 --- a/tests/data/test1416 +++ b/tests/data/test1416 @@ -15,15 +15,15 @@ Server: fakeit/0.9 fakeitbad/1.0 Transfer-Encoding: chunked Connection: mooo -12345678123456789 -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -30 -bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb -21;heresatest=moooo +12345678123456789%CR +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa%CR +30%CR +bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb%CR +21;heresatest=moooo%CR cccccccccccccccccccccccccccccccc - -0 - +%CR +0%CR +%CR @@ -44,12 +44,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # 56 = CURLE_RECV_ERROR diff --git a/tests/data/test1417 b/tests/data/test1417 index 7c9be16b6e87..e998724dd99e 100644 --- a/tests/data/test1417 +++ b/tests/data/test1417 @@ -10,12 +10,12 @@ chunked Transfer-Encoding # Server-side -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked -Trailer: chunky-trailer -Connection: mooo - +HTTP/1.1 200 funky chunky!%CR +Server: fakeit/0.9 fakeitbad/1.0%CR +Transfer-Encoding: chunked%CR +Trailer: chunky-trailer%CR +Connection: mooo%CR +%CR 40 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 30 @@ -28,14 +28,14 @@ chunky-trailer: header data -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked -Trailer: chunky-trailer -Connection: mooo - +HTTP/1.1 200 funky chunky!%CR +Server: fakeit/0.9 fakeitbad/1.0%CR +Transfer-Encoding: chunked%CR +Trailer: chunky-trailer%CR +Connection: mooo%CR +%CR aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcccccccccccccccccccccccccccccccc -chunky-trailer: header data +chunky-trailer: header data%CR @@ -56,21 +56,21 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -D %LOGDIR/heads%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked -Trailer: chunky-trailer -Connection: mooo - -chunky-trailer: header data + +HTTP/1.1 200 funky chunky! +Server: fakeit/0.9 fakeitbad/1.0 +Transfer-Encoding: chunked +Trailer: chunky-trailer +Connection: mooo + +chunky-trailer: header data diff --git a/tests/data/test1418 b/tests/data/test1418 index 9fff0b63a33c..6f9119cdc9dc 100644 --- a/tests/data/test1418 +++ b/tests/data/test1418 @@ -13,62 +13,62 @@ connection reuse connection-monitor - -HTTP/1.1 401 Authentication please! -Content-Length: 20 -WWW-Authenticate: Digest realm="loonie", nonce="314156592" -WWW-Authenticate: Basic - + +HTTP/1.1 401 Authentication please! +Content-Length: 20 +WWW-Authenticate: Digest realm="loonie", nonce="314156592" +WWW-Authenticate: Basic + Please auth with me - -HTTP/1.1 401 Authentication please! -Content-Length: 20 -WWW-Authenticate: Digest realm="loonie", nonce="314156592" -WWW-Authenticate: Basic - + +HTTP/1.1 401 Authentication please! +Content-Length: 20 +WWW-Authenticate: Digest realm="loonie", nonce="314156592" +WWW-Authenticate: Basic + Please auth with me # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Length: 4 - + +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Length: 4 + moo - -HTTP/1.1 200 OK -Server: Another one/1.0 -Content-Length: 4 - + +HTTP/1.1 200 OK +Server: Another one/1.0 +Content-Length: 4 + boo # This is the first reply after the redirection - -HTTP/1.1 200 OK -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 - + +HTTP/1.1 200 OK +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 + This is not the real page either! - -HTTP/1.1 401 Authentication please! -Content-Length: 20 -WWW-Authenticate: Digest realm="loonie", nonce="314156592" -WWW-Authenticate: Basic - -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Length: 4 - + +HTTP/1.1 401 Authentication please! +Content-Length: 20 +WWW-Authenticate: Digest realm="loonie", nonce="314156592" +WWW-Authenticate: Basic + +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Length: 4 + moo @@ -94,29 +94,29 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --anyauth http://%HOST # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="loonie", nonce="314156592", uri="/%TESTNUMBER", response="986238b7e0077754944c966f56d9bc77" -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0003 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0003 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="loonie", nonce="314156592", uri="/%TESTNUMBER0003", response="1c6390a67bac3283a9b023402f3b3540" -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="loonie", nonce="314156592", uri="/%TESTNUMBER", response="986238b7e0077754944c966f56d9bc77" +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0003 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0003 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="loonie", nonce="314156592", uri="/%TESTNUMBER0003", response="1c6390a67bac3283a9b023402f3b3540" +User-Agent: curl/%VERSION +Accept: */* + [DISCONNECT] diff --git a/tests/data/test1419 b/tests/data/test1419 index aada395f8a3c..6ebb4531a727 100644 --- a/tests/data/test1419 +++ b/tests/data/test1419 @@ -13,25 +13,25 @@ connection reuse connection-monitor - -HTTP/1.1 200 fine! -Content-Length: 20 - + +HTTP/1.1 200 fine! +Content-Length: 20 + Feel free to get it - -HTTP/1.1 200 OK -Server: Another one/1.0 -Content-Length: 4 - + +HTTP/1.1 200 OK +Server: Another one/1.0 +Content-Length: 4 + boo - -HTTP/1.1 200 fine! -Content-Length: 20 - + +HTTP/1.1 200 fine! +Content-Length: 20 + Feel free to get it @@ -51,17 +51,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --anyauth http://%HOSTIP:%HTTPPORT/%TESTNUM # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0003 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0003 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + [DISCONNECT] diff --git a/tests/data/test142 b/tests/data/test142 index cb03b832af67..ffabe95ccfb8 100644 --- a/tests/data/test142 +++ b/tests/data/test142 @@ -26,168 +26,169 @@ ftp://%HOSTIP:%FTPPORT/part1/part2/part3/part4/part5/part6/part7/part8/part9/par # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD part1 -CWD part2 -CWD part3 -CWD part4 -CWD part5 -CWD part6 -CWD part7 -CWD part8 -CWD part9 -CWD part10 -CWD part11 -CWD part12 -CWD part13 -CWD part14 -CWD part15 -CWD part16 -CWD part17 -CWD part18 -CWD part19 -CWD part20 -CWD part21 -CWD part22 -CWD part23 -CWD part24 -CWD part25 -CWD part26 -CWD part27 -CWD part28 -CWD part29 -CWD part30 -CWD part31 -CWD part32 -CWD part33 -CWD part34 -CWD part35 -CWD part36 -CWD part37 -CWD part38 -CWD part39 -CWD part40 -CWD part41 -CWD part42 -CWD part43 -CWD part44 -CWD part45 -CWD part46 -CWD part47 -CWD part48 -CWD part49 -CWD part50 -CWD part51 -CWD part52 -CWD part53 -CWD part54 -CWD part55 -CWD part56 -CWD part57 -CWD part58 -CWD part59 -CWD part60 -CWD part61 -CWD part62 -CWD part63 -CWD part64 -CWD part65 -CWD part66 -CWD part67 -CWD part68 -CWD part69 -CWD part70 -CWD part71 -CWD part72 -CWD part73 -CWD part74 -CWD part75 -CWD part76 -CWD part77 -CWD part78 -CWD part79 -CWD part80 -CWD part81 -CWD part82 -CWD part83 -CWD part84 -CWD part85 -CWD part86 -CWD part87 -CWD part88 -CWD part89 -CWD part90 -CWD part91 -CWD part92 -CWD part93 -CWD part94 -CWD part95 -CWD part96 -CWD part97 -CWD part98 -CWD part99 -CWD part100 -CWD part101 -CWD part102 -CWD part103 -CWD part104 -CWD part105 -CWD part106 -CWD part107 -CWD part108 -CWD part109 -CWD part110 -CWD part111 -CWD part112 -CWD part113 -CWD part114 -CWD part115 -CWD part116 -CWD part117 -CWD part118 -CWD part119 -CWD part120 -CWD part121 -CWD part122 -CWD part123 -CWD part124 -CWD part125 -CWD part126 -CWD part127 -CWD part128 -CWD part129 -CWD part130 -CWD part131 -CWD part132 -CWD part133 -CWD part134 -CWD part135 -CWD part136 -CWD part137 -CWD part138 -CWD part139 -CWD part140 -CWD part141 -CWD part142 -CWD part143 -CWD part144 -CWD part145 -CWD part146 -CWD part147 -CWD part148 -CWD part149 -CWD part150 -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD part1 +CWD part2 +CWD part3 +CWD part4 +CWD part5 +CWD part6 +CWD part7 +CWD part8 +CWD part9 +CWD part10 +CWD part11 +CWD part12 +CWD part13 +CWD part14 +CWD part15 +CWD part16 +CWD part17 +CWD part18 +CWD part19 +CWD part20 +CWD part21 +CWD part22 +CWD part23 +CWD part24 +CWD part25 +CWD part26 +CWD part27 +CWD part28 +CWD part29 +CWD part30 +CWD part31 +CWD part32 +CWD part33 +CWD part34 +CWD part35 +CWD part36 +CWD part37 +CWD part38 +CWD part39 +CWD part40 +CWD part41 +CWD part42 +CWD part43 +CWD part44 +CWD part45 +CWD part46 +CWD part47 +CWD part48 +CWD part49 +CWD part50 +CWD part51 +CWD part52 +CWD part53 +CWD part54 +CWD part55 +CWD part56 +CWD part57 +CWD part58 +CWD part59 +CWD part60 +CWD part61 +CWD part62 +CWD part63 +CWD part64 +CWD part65 +CWD part66 +CWD part67 +CWD part68 +CWD part69 +CWD part70 +CWD part71 +CWD part72 +CWD part73 +CWD part74 +CWD part75 +CWD part76 +CWD part77 +CWD part78 +CWD part79 +CWD part80 +CWD part81 +CWD part82 +CWD part83 +CWD part84 +CWD part85 +CWD part86 +CWD part87 +CWD part88 +CWD part89 +CWD part90 +CWD part91 +CWD part92 +CWD part93 +CWD part94 +CWD part95 +CWD part96 +CWD part97 +CWD part98 +CWD part99 +CWD part100 +CWD part101 +CWD part102 +CWD part103 +CWD part104 +CWD part105 +CWD part106 +CWD part107 +CWD part108 +CWD part109 +CWD part110 +CWD part111 +CWD part112 +CWD part113 +CWD part114 +CWD part115 +CWD part116 +CWD part117 +CWD part118 +CWD part119 +CWD part120 +CWD part121 +CWD part122 +CWD part123 +CWD part124 +CWD part125 +CWD part126 +CWD part127 +CWD part128 +CWD part129 +CWD part130 +CWD part131 +CWD part132 +CWD part133 +CWD part134 +CWD part135 +CWD part136 +CWD part137 +CWD part138 +CWD part139 +CWD part140 +CWD part141 +CWD part142 +CWD part143 +CWD part144 +CWD part145 +CWD part146 +CWD part147 +CWD part148 +CWD part149 +CWD part150 +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT Allocations: 170 +Maximum allocated: 150000 diff --git a/tests/data/test1420 b/tests/data/test1420 index 2cc70390629c..dbd671b1aa67 100644 --- a/tests/data/test1420 +++ b/tests/data/test1420 @@ -3,7 +3,7 @@ IMAP -Clear Text +Clear Text FETCH --libcurl @@ -12,14 +12,14 @@ FETCH # # Server-side - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -48,12 +48,12 @@ ftp # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT /********* Sample code generated by the curl command line tool ********** diff --git a/tests/data/test1421 b/tests/data/test1421 index 6c36eb191692..3cab703b4a68 100644 --- a/tests/data/test1421 +++ b/tests/data/test1421 @@ -55,19 +55,19 @@ Content-Length: 6 -foo- - -GET http://test.remote.haxx.se.%TESTNUMBER:8990/ HTTP/1.1 -Host: test.remote.haxx.se.%TESTNUMBER:8990 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://different.remote.haxx.se.%TESTNUMBER:8990/ HTTP/1.1 -Host: different.remote.haxx.se.%TESTNUMBER:8990 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://test.remote.haxx.se.%TESTNUMBER:8990/ HTTP/1.1 +Host: test.remote.haxx.se.%TESTNUMBER:8990 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://different.remote.haxx.se.%TESTNUMBER:8990/ HTTP/1.1 +Host: different.remote.haxx.se.%TESTNUMBER:8990 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + [DISCONNECT] diff --git a/tests/data/test1422 b/tests/data/test1422 index 9aa95bf273d3..410734f4fbe6 100644 --- a/tests/data/test1422 +++ b/tests/data/test1422 @@ -9,15 +9,15 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 0 -Connection: close -Content-Type: text/html -Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=str//nge - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 0 +Connection: close +Content-Type: text/html +Content-Disposition: filename=name%TESTNUMBER; charset=funny; option=str//nge + @@ -41,12 +41,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -J -O file://%FILE_PWD/%LOGDIR/name%TESTNUM # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1423 b/tests/data/test1423 index 16a4cf31fcf8..787bc409d21b 100644 --- a/tests/data/test1423 +++ b/tests/data/test1423 @@ -8,14 +8,14 @@ HTTP GET # - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 0 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 0 +Connection: close +Content-Type: text/html + @@ -37,12 +37,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -o %LOGDIR/outfile%TESTNUMBER file://%FILE_ # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1424 b/tests/data/test1424 index 640582549d80..8f03c18affa4 100644 --- a/tests/data/test1424 +++ b/tests/data/test1424 @@ -57,13 +57,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -z "dec 12 11:00:00 1999 GMT" -o %LOGDIR/ou # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -If-Modified-Since: Sun, 12 Dec 1999 11:00:00 GMT - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +If-Modified-Since: Sun, 12 Dec 1999 11:00:00 GMT + diff --git a/tests/data/test1425 b/tests/data/test1425 index 63032181b2e1..51a38cc01c23 100644 --- a/tests/data/test1425 +++ b/tests/data/test1425 @@ -49,12 +49,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + HTTP/1.1 200 OK diff --git a/tests/data/test1426 b/tests/data/test1426 index 737c7514f126..7a711b324b25 100644 --- a/tests/data/test1426 +++ b/tests/data/test1426 @@ -49,12 +49,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --output - # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + HTTP/1.1 200 OK diff --git a/tests/data/test1428 b/tests/data/test1428 index 51d7721bce7f..0004b2135412 100644 --- a/tests/data/test1428 +++ b/tests/data/test1428 @@ -21,13 +21,13 @@ Content-Length: 9 contents - -HTTP/1.1 200 Mighty fine indeed - + +HTTP/1.1 200 Mighty fine indeed + -HTTP/1.1 200 Mighty fine indeed - +HTTP/1.1 200 Mighty fine indeed%CR +%CR HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake swsclose @@ -60,22 +60,22 @@ proxy # # Verify data after the test has been "shot" - -CONNECT test.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: test.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive -header-type: proxy - + +CONNECT test.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: test.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive +header-type: proxy + - -GET /we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: test.%TESTNUMBER:%HTTPPORT -Authorization: Basic %b64[iam:my:;self]b64% -User-Agent: curl/%VERSION -Accept: */* -header-type: server - + +GET /we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: test.%TESTNUMBER:%HTTPPORT +Authorization: Basic %b64[iam:my:;self]b64% +User-Agent: curl/%VERSION +Accept: */* +header-type: server + diff --git a/tests/data/test1429 b/tests/data/test1429 index 3d8dce1a9571..b9c6bd126d60 100644 --- a/tests/data/test1429 +++ b/tests/data/test1429 @@ -9,17 +9,17 @@ HTTP/0.9 -HTTP/1.1 999 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - +HTTP/1.1 999 OK%CR +Date: Tue, 09 Nov 2010 14:49:00 GMT%CR +Server: test-server/fake%CR +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT%CR +ETag: "21025-dc7-39462498"%CR +Accept-Ranges: bytes%CR +Content-Length: 6%CR +Connection: close%CR +Content-Type: text/html%CR +Funny-head: yesyes%CR +%CR -foo- @@ -42,27 +42,27 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --write-out '%{response_code}' # # Verify data after the test has been "shot" - -HTTP/1.1 999 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 999 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + -foo- 999 - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test143 b/tests/data/test143 index ed89e70dec71..205cc1fc6df5 100644 --- a/tests/data/test143 +++ b/tests/data/test143 @@ -28,17 +28,17 @@ FTP URL with type=a # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD / -CWD tmp -CWD moo -EPSV -TYPE A -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD / +CWD tmp +CWD moo +EPSV +TYPE A +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1430 b/tests/data/test1430 index 11db3ccbfcfa..5ac407519fc7 100644 --- a/tests/data/test1430 +++ b/tests/data/test1430 @@ -40,12 +40,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # 1 - CURLE_UNSUPPORTED_PROTOCOL # Due to invalid HTTP response code diff --git a/tests/data/test1431 b/tests/data/test1431 index 3f396a4a2185..009c1b0dde0f 100644 --- a/tests/data/test1431 +++ b/tests/data/test1431 @@ -40,12 +40,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 1 diff --git a/tests/data/test1432 b/tests/data/test1432 index 4789057a1b40..4b707ee1e056 100644 --- a/tests/data/test1432 +++ b/tests/data/test1432 @@ -41,12 +41,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 1 diff --git a/tests/data/test1433 b/tests/data/test1433 index aec6181a1eb3..08388f64afd3 100644 --- a/tests/data/test1433 +++ b/tests/data/test1433 @@ -41,12 +41,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 1 diff --git a/tests/data/test1434 b/tests/data/test1434 index b6f775e0f603..567fa56b5b54 100644 --- a/tests/data/test1434 +++ b/tests/data/test1434 @@ -11,11 +11,11 @@ Resume # Some servers (e.g. Apache 1.2) respond this way to an invalid byte range -HTTP/1.1 200 OK -Connection: close -Content-Length: 100 -Content-Type: text/plain - +HTTP/1.1 200 OK%CR +Connection: close%CR +Content-Length: 100%CR +Content-Type: text/plain%CR +%CR 012345678 012345678 012345678 @@ -41,11 +41,11 @@ Content-Type: text/plain 012345678 012345678 012345678 -HTTP/1.1 200 OK -Connection: close -Content-Length: 100 -Content-Type: text/plain - +HTTP/1.1 200 OK%CR +Connection: close%CR +Content-Length: 100%CR +Content-Type: text/plain%CR +%CR @@ -76,13 +76,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -C 100 # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=100- -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=100- +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1435 b/tests/data/test1435 index 321ea4c022e1..bb08e35a8fee 100644 --- a/tests/data/test1435 +++ b/tests/data/test1435 @@ -33,12 +33,12 @@ simple HTTP GET over Unix socket - -GET /%TESTNUMBER HTTP/1.1 -Host: server-interpreted.example.com -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: server-interpreted.example.com +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1436 b/tests/data/test1436 index f82384e58df9..5a5491e33fb9 100644 --- a/tests/data/test1436 +++ b/tests/data/test1436 @@ -47,22 +47,22 @@ HTTP requests with multiple connections over Unix socket - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: one.example.com -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: two.example.com -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0003 HTTP/1.1 -Host: one.example.com -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: one.example.com +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: two.example.com +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0003 HTTP/1.1 +Host: one.example.com +User-Agent: curl/%VERSION +Accept: */* + HTTP/1.1 200 OK diff --git a/tests/data/test1437 b/tests/data/test1437 index ad8fa080e11f..4eb5e04dc2e5 100644 --- a/tests/data/test1437 +++ b/tests/data/test1437 @@ -8,39 +8,39 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, algorithm=MD5, nonce=1, nonce=2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, algorithm=MD5, nonce=1, nonce=2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, algorithm=MD5, nonce=1, nonce=2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, algorithm=MD5, nonce=1, nonce=2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! @@ -66,18 +66,18 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --digest # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="2", uri="/%TESTNUMBER", response="4376eb639bf8e7343a6e7b56e1b89c4f", algorithm=MD5 -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="2", uri="/%TESTNUMBER", response="4376eb639bf8e7343a6e7b56e1b89c4f", algorithm=MD5 +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1438 b/tests/data/test1438 index cbf19550d0bc..a16b7fb291e3 100644 --- a/tests/data/test1438 +++ b/tests/data/test1438 @@ -46,12 +46,12 @@ Content-Type: text/plain testdata http - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1439 b/tests/data/test1439 index 9a9196e4b6d8..020b6812344a 100644 --- a/tests/data/test1439 +++ b/tests/data/test1439 @@ -45,12 +45,12 @@ Content-Type: text/plain testdata 1.1 - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test144 b/tests/data/test144 index be2ca5c8c5a0..644cddda8be1 100644 --- a/tests/data/test144 +++ b/tests/data/test144 @@ -36,14 +36,14 @@ ftp://%HOSTIP:%FTPPORT/ -P - -l ^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3} ^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\| - -USER anonymous -PASS ftp@example.com -PWD -PORT 127,0,0,1,243,212 -TYPE A -NLST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +PORT 127,0,0,1,243,212 +TYPE A +NLST +QUIT diff --git a/tests/data/test1443 b/tests/data/test1443 index c42480ae8768..57ac1591de47 100644 --- a/tests/data/test1443 +++ b/tests/data/test1443 @@ -41,12 +41,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -O --remote-time --output-dir %LOGDIR # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 diff --git a/tests/data/test1444 b/tests/data/test1444 index 2f4c8d068728..bbe80e12978d 100644 --- a/tests/data/test1444 +++ b/tests/data/test1444 @@ -32,16 +32,16 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER --remote-time # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -MDTM %TESTNUMBER -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +MDTM %TESTNUMBER +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT # Verify the mtime of the file. The mtime is specifically chosen to be an even # number so that it can be represented exactly on a FAT file system. diff --git a/tests/data/test1448 b/tests/data/test1448 index f7ff09f952c0..aed178fc5854 100644 --- a/tests/data/test1448 +++ b/tests/data/test1448 @@ -57,17 +57,17 @@ http://%hex[%c3%a5%c3%a4%c3%b6]hex%.se:%HTTPPORT/%TESTNUMBER --resolve xn--4cab6 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: xn--4cab6c.se:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: xn--4cab6c.se:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: xn--4cab6c.se:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: xn--4cab6c.se:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1449 b/tests/data/test1449 index 0b9de0192c85..a65c705811b6 100644 --- a/tests/data/test1449 +++ b/tests/data/test1449 @@ -27,12 +27,12 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -r 36893488147419103232- # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +QUIT diff --git a/tests/data/test145 b/tests/data/test145 index 53f3f631d7bf..388c854f4b14 100644 --- a/tests/data/test145 +++ b/tests/data/test145 @@ -38,14 +38,14 @@ ftp://%HOSTIP:%FTPPORT/ -P - -l ^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3} ^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\| - -USER anonymous -PASS ftp@example.com -PWD -PORT 127,0,0,1,243,212 -TYPE A -NLST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +PORT 127,0,0,1,243,212 +TYPE A +NLST +QUIT diff --git a/tests/data/test1455 b/tests/data/test1455 index 23b76ff78a07..5fa09e1c27cf 100644 --- a/tests/data/test1455 +++ b/tests/data/test1455 @@ -50,14 +50,14 @@ proxy s/^PROXY TCP4 %CLIENTIP %HOSTIP (\d*) %HTTPPORT/proxy-line/ - -proxy-line -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Testno: %TESTNUMBER - + +proxy-line +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Testno: %TESTNUMBER + diff --git a/tests/data/test1456 b/tests/data/test1456 index d846b41ebc61..6f1b0260d5c7 100644 --- a/tests/data/test1456 +++ b/tests/data/test1456 @@ -55,13 +55,13 @@ proxy s/PROXY TCP6 ::1 ::1 (\d+) (\d+)/PROXY TCP6 ::1 ::1 $2/ - -PROXY TCP6 ::1 ::1 %HTTP6PORT -GET /%TESTNUMBER HTTP/1.1 -Host: %HOST6IP:%HTTP6PORT -User-Agent: curl/%VERSION -Accept: */* - + +PROXY TCP6 ::1 ::1 %HTTP6PORT +GET /%TESTNUMBER HTTP/1.1 +Host: %HOST6IP:%HTTP6PORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1457 b/tests/data/test1457 index 235b8404ab10..527e704645e6 100644 --- a/tests/data/test1457 +++ b/tests/data/test1457 @@ -49,12 +49,12 @@ line1line3 line2 - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1458 b/tests/data/test1458 index 785ceae16f3e..300f3ec22661 100644 --- a/tests/data/test1458 +++ b/tests/data/test1458 @@ -43,12 +43,12 @@ HTTP with wildcard --resolve # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: example.com:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: example.com:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test146 b/tests/data/test146 index 803fbfc4d70b..af72284da945 100644 --- a/tests/data/test146 +++ b/tests/data/test146 @@ -34,22 +34,22 @@ ftp://%HOSTIP:%FTPPORT/first/dir/here/%TESTNUMBER ftp://%HOSTIP:%FTPPORT/%TESTNU ^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3} ^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\| - -USER anonymous -PASS ftp@example.com -PWD -CWD first -CWD dir -CWD here -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -CWD / -EPSV -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD first +CWD dir +CWD here +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +CWD / +EPSV +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1461 b/tests/data/test1461 index 79b370bc1816..4ee109a12299 100644 --- a/tests/data/test1461 +++ b/tests/data/test1461 @@ -47,8 +47,8 @@ Usage: curl [options...] This is not the full help; this menu is split into categories. Use "--help category" to get an overview of all categories, which are: -auth, connection, curl, deprecated, dns, file, ftp, global, http, imap, ldap, -output, pop3, post, proxy, scp, sftp, smtp, ssh, telnet, tftp, timeout, tls, +auth, connection, curl, deprecated, dns, file, ftp, global, http, imap, ldap,%SP +output, pop3, post, proxy, scp, sftp, smtp, ssh, telnet, tftp, timeout, tls,%SP upload, verbose. Use "--help all" to list all options Use "--help [option]" to view documentation for a given option diff --git a/tests/data/test1465 b/tests/data/test1465 index b521d2f31f01..bef59be3c004 100644 --- a/tests/data/test1465 +++ b/tests/data/test1465 @@ -45,14 +45,14 @@ http://%HOSTIP:%HTTPPORT/we/want/%TESTNUMBER --libcurl %LOGDIR/test%TESTNUMBER.c # Verify data after the test has been "shot" - -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 24 -Content-Type: application/x-www-form-urlencoded - + +POST /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 24 +Content-Type: application/x-www-form-urlencoded + %hex[ab%81cd%00e\"?%0D%0A%09%01fghi%1Ajklm%FD]hex% diff --git a/tests/data/test1466 b/tests/data/test1466 index 315974ad413b..9a880d31b04b 100644 --- a/tests/data/test1466 +++ b/tests/data/test1466 @@ -34,12 +34,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1467 b/tests/data/test1467 index 568670a71a13..69b04d8bf485 100644 --- a/tests/data/test1467 +++ b/tests/data/test1467 @@ -49,12 +49,12 @@ HTTP GET via SOCKS5 proxy via Unix sockets # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1468 b/tests/data/test1468 index 9836434d4a9f..ec004b368bd4 100644 --- a/tests/data/test1468 +++ b/tests/data/test1468 @@ -50,12 +50,12 @@ http://this.is.a.host.name:%HTTPPORT/%TESTNUMBER --proxy socks5h://localhost%SOC # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: this.is.a.host.name:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: this.is.a.host.name:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + atyp 3 => this.is.a.host.name diff --git a/tests/data/test147 b/tests/data/test147 index 769043d48904..9b17219f5eb0 100644 --- a/tests/data/test147 +++ b/tests/data/test147 @@ -36,20 +36,20 @@ ftp://%HOSTIP:%FTPPORT/first/dir/here/%TESTNUMBER --ftp-create-dirs ^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3} ^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\| - -USER anonymous -PASS ftp@example.com -PWD -CWD first -MKD first -CWD first -CWD dir -CWD here -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD first +MKD first +CWD first +CWD dir +CWD here +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1470 b/tests/data/test1470 index 5c3d74343441..2a8e0ea2955e 100644 --- a/tests/data/test1470 +++ b/tests/data/test1470 @@ -51,12 +51,12 @@ https://this.is.a.host.name:%HTTPSPORT/%TESTNUMBER --insecure --proxy socks5h:// # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: this.is.a.host.name:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: this.is.a.host.name:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + atyp 3 => this.is.a.host.name diff --git a/tests/data/test1473 b/tests/data/test1473 index 4c0190cea021..fa0bb0f7d33e 100644 --- a/tests/data/test1473 +++ b/tests/data/test1473 @@ -10,14 +10,14 @@ header line folding # # Server-side - -HTTP/1.1 200 OK - Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/ -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Content-Length: 6 - + +HTTP/1.1 200 OK + Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/ +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Content-Length: 6 + -foo- @@ -39,12 +39,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1474 b/tests/data/test1474 index 8ccecf18775b..9ca209cf2694 100644 --- a/tests/data/test1474 +++ b/tests/data/test1474 @@ -29,9 +29,9 @@ http # # Verify data after the test has been "shot" -# 1 - Protocol "http" disabled +# 2 failed init, the --proto argument is not accepted -1 +2 diff --git a/tests/data/test1475 b/tests/data/test1475 index f88ef74ee279..1f11829d72e4 100644 --- a/tests/data/test1475 +++ b/tests/data/test1475 @@ -12,11 +12,11 @@ Resume # Server-side -HTTP/1.1 416 Invalid range -Connection: close -Content-Length: 0 +HTTP/1.1 416 Invalid range%CR +Connection: close%CR +Content-Length: 0%CR Content-Range: */100 - +%CR # The file data that exists at the start of the test must be included in @@ -32,11 +32,11 @@ Content-Range: */100 012345678 012345678 012345678 -HTTP/1.1 416 Invalid range -Connection: close -Content-Length: 0 +HTTP/1.1 416 Invalid range%CR +Connection: close%CR +Content-Length: 0%CR Content-Range: */100 - +%CR @@ -71,13 +71,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -C - -f # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=100- -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=100- +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1476 b/tests/data/test1476 index 101fa95b0103..5915b9fc58d0 100644 --- a/tests/data/test1476 +++ b/tests/data/test1476 @@ -10,7 +10,7 @@ cookies # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Content-Length: 0 @@ -40,7 +40,7 @@ cookies # Verify data after the test has been "shot" - + GET http://curl.co.UK/ HTTP/1.1 Host: curl.co.UK User-Agent: curl/%VERSION diff --git a/tests/data/test1479 b/tests/data/test1479 index 3677b673808e..3fe61c8cef91 100644 --- a/tests/data/test1479 +++ b/tests/data/test1479 @@ -9,16 +9,16 @@ HTTP/0.9 # # Server-side - -HTTP/1.1 200 OK -Content-Length: 5 - + +HTTP/1.1 200 OK +Content-Length: 5 + Data - -Data -Data -Data + +Data +Data +Data @@ -41,17 +41,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER http://%HOSTIP:%HTTPPORT/%TESTNUMBER0002 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # weird_server_reply diff --git a/tests/data/test148 b/tests/data/test148 index 051d31a9deac..7ff578336fea 100644 --- a/tests/data/test148 +++ b/tests/data/test148 @@ -36,14 +36,14 @@ ftp://%HOSTIP:%FTPPORT/attempt/to/get/this/%TESTNUMBER --ftp-create-dirs 9 - -USER anonymous -PASS ftp@example.com -PWD -CWD attempt -MKD attempt -CWD attempt -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD attempt +MKD attempt +CWD attempt +QUIT diff --git a/tests/data/test1480 b/tests/data/test1480 index 0f51f12b6445..d487398cc713 100644 --- a/tests/data/test1480 +++ b/tests/data/test1480 @@ -8,13 +8,13 @@ HTTP # # Server-side - -HTTP/1.1 100 Continue -Foo: Bar - -Data -Data -Data + +HTTP/1.1 100 Continue +Foo: Bar + +Data +Data +Data @@ -37,12 +37,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # weird_server_reply diff --git a/tests/data/test1481 b/tests/data/test1481 index 87aada2873e0..3121ae536978 100644 --- a/tests/data/test1481 +++ b/tests/data/test1481 @@ -42,13 +42,13 @@ http://moo/ --libcurl %LOGDIR/test%TESTNUMBER.c --tls-max 1.3 --proxy-tlsv1 -x h # Verify data after the test has been "shot" - -GET http://moo/ HTTP/1.1 -Host: moo -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://moo/ HTTP/1.1 +Host: moo +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + s/(USERAGENT, \")[^\"]+/${1}stripped/ diff --git a/tests/data/test1482 b/tests/data/test1482 index 2a322f6a8663..ab615f6c127b 100644 --- a/tests/data/test1482 +++ b/tests/data/test1482 @@ -11,32 +11,32 @@ DELAY # Server-side -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked, chunked -Connection: mooo - -40 -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -30 -bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb -21;heresatest=moooo +HTTP/1.1 200 funky chunky!%CR +Server: fakeit/0.9 fakeitbad/1.0%CR +Transfer-Encoding: chunked, chunked%CR +Connection: mooo%CR +%CR +40%CR +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa%CR +30%CR +bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb%CR +21;heresatest=moooo%CR cccccccccccccccccccccccccccccccc - -0 -chunky-trailer: header data -another-header: yes - +%CR +0%CR +chunky-trailer: header data%CR +another-header: yes%CR +%CR -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked, chunked -Connection: mooo - +HTTP/1.1 200 funky chunky!%CR +Server: fakeit/0.9 fakeitbad/1.0%CR +Transfer-Encoding: chunked, chunked%CR +Connection: mooo%CR +%CR aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcccccccccccccccccccccccccccccccc -chunky-trailer: header data -another-header: yes +chunky-trailer: header data%CR +another-header: yes%CR writedelay: 10 @@ -60,21 +60,21 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -D %LOGDIR/heads%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked, chunked -Connection: mooo - -chunky-trailer: header data -another-header: yes + +HTTP/1.1 200 funky chunky! +Server: fakeit/0.9 fakeitbad/1.0 +Transfer-Encoding: chunked, chunked +Connection: mooo + +chunky-trailer: header data +another-header: yes diff --git a/tests/data/test1483 b/tests/data/test1483 index 60ff2104b271..fee3c5e3f02d 100644 --- a/tests/data/test1483 +++ b/tests/data/test1483 @@ -11,34 +11,34 @@ DELAY # Server-side -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked -Transfer-Encoding: chunked -Connection: mooo - -40 -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -30 -bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb -21;heresatest=moooo +HTTP/1.1 200 funky chunky!%CR +Server: fakeit/0.9 fakeitbad/1.0%CR +Transfer-Encoding: chunked%CR +Transfer-Encoding: chunked%CR +Connection: mooo%CR +%CR +40%CR +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa%CR +30%CR +bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb%CR +21;heresatest=moooo%CR cccccccccccccccccccccccccccccccc - -0 -chunky-trailer: header data -another-header: yes - +%CR +0%CR +chunky-trailer: header data%CR +another-header: yes%CR +%CR -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked -Transfer-Encoding: chunked -Connection: mooo - +HTTP/1.1 200 funky chunky!%CR +Server: fakeit/0.9 fakeitbad/1.0%CR +Transfer-Encoding: chunked%CR +Transfer-Encoding: chunked%CR +Connection: mooo%CR +%CR aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcccccccccccccccccccccccccccccccc -chunky-trailer: header data -another-header: yes +chunky-trailer: header data%CR +another-header: yes%CR writedelay: 10 @@ -62,22 +62,22 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -D %LOGDIR/heads%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked -Transfer-Encoding: chunked -Connection: mooo - -chunky-trailer: header data -another-header: yes + +HTTP/1.1 200 funky chunky! +Server: fakeit/0.9 fakeitbad/1.0 +Transfer-Encoding: chunked +Transfer-Encoding: chunked +Connection: mooo + +chunky-trailer: header data +another-header: yes diff --git a/tests/data/test1484 b/tests/data/test1484 index 52de029a0814..eaf3e9808c50 100644 --- a/tests/data/test1484 +++ b/tests/data/test1484 @@ -9,19 +9,19 @@ HTTP HEAD # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Transfer-Encoding: chunked - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Transfer-Encoding: chunked + HEAD response with content # make sure no data is written - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Transfer-Encoding: chunked - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Transfer-Encoding: chunked + @@ -42,12 +42,12 @@ HTTP HEAD with response body to ignore # # Verify data after the test has been "shot" - -HEAD /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +HEAD /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1485 b/tests/data/test1485 index d89362f4658d..c036900ed280 100644 --- a/tests/data/test1485 +++ b/tests/data/test1485 @@ -8,18 +8,18 @@ HTTP GET # Server-side - -HTTP/1.1 200 OK -Server: Someone -Content-Length: 7 - + +HTTP/1.1 200 OK +Server: Someone +Content-Length: 7 + 123456 - -HTTP/1.1 200 OK -Server: Someone -Content-Length: 7 - + +HTTP/1.1 200 OK +Server: Someone +Content-Length: 7 + 123456 @@ -41,11 +41,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + diff --git a/tests/data/test1487 b/tests/data/test1487 index a3eac5dbad26..88f17fa2b7fa 100644 --- a/tests/data/test1487 +++ b/tests/data/test1487 @@ -39,12 +39,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -J -O --output-dir %LOGDIR # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 diff --git a/tests/data/test1489 b/tests/data/test1489 index e1460bf5c778..7bc6fcd7bd8e 100644 --- a/tests/data/test1489 +++ b/tests/data/test1489 @@ -9,7 +9,7 @@ HTTP GET # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -42,14 +42,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -D % -s # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION Accept: */* - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test149 b/tests/data/test149 index 404922b296c4..dfb16cfd850e 100644 --- a/tests/data/test149 +++ b/tests/data/test149 @@ -32,19 +32,19 @@ send away this contents ^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3} ^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\| - -USER anonymous -PASS ftp@example.com -PWD -CWD dir1 -EPSV -TYPE I -STOR %TESTNUMBER -CWD / -CWD dir2 -EPSV -STOR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD dir1 +EPSV +TYPE I +STOR %TESTNUMBER +CWD / +CWD dir2 +EPSV +STOR %TESTNUMBER +QUIT send away this contents diff --git a/tests/data/test1492 b/tests/data/test1492 index 2e7e1f32ae8b..96911bc9f642 100644 --- a/tests/data/test1492 +++ b/tests/data/test1492 @@ -40,12 +40,12 @@ http://%HOSTIP:%HTTPPORT/junk%TESTNUMBER -J -O --show-headers --output-dir %LOGD # # Verify data after the test has been "shot" - -GET /junk%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /junk%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + HTTP/1.1 200 OK diff --git a/tests/data/test1493 b/tests/data/test1493 index f1d1fba5eba2..eaf67dc19d86 100644 --- a/tests/data/test1493 +++ b/tests/data/test1493 @@ -11,32 +11,32 @@ DELAY # Server-side -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: identity, chunked -Connection: mooo - -40 -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -30 -bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb -21;heresatest=moooo +HTTP/1.1 200 funky chunky!%CR +Server: fakeit/0.9 fakeitbad/1.0%CR +Transfer-Encoding: identity, chunked%CR +Connection: mooo%CR +%CR +40%CR +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa%CR +30%CR +bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb%CR +21;heresatest=moooo%CR cccccccccccccccccccccccccccccccc - -0 -chunky-trailer: header data -another-header: yes - +%CR +0%CR +chunky-trailer: header data%CR +another-header: yes%CR +%CR -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: identity, chunked -Connection: mooo - +HTTP/1.1 200 funky chunky!%CR +Server: fakeit/0.9 fakeitbad/1.0%CR +Transfer-Encoding: identity, chunked%CR +Connection: mooo%CR +%CR aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcccccccccccccccccccccccccccccccc -chunky-trailer: header data -another-header: yes +chunky-trailer: header data%CR +another-header: yes%CR @@ -57,21 +57,21 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -D %LOGDIR/heads%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: identity, chunked -Connection: mooo - -chunky-trailer: header data -another-header: yes + +HTTP/1.1 200 funky chunky! +Server: fakeit/0.9 fakeitbad/1.0 +Transfer-Encoding: identity, chunked +Connection: mooo + +chunky-trailer: header data +another-header: yes diff --git a/tests/data/test1494 b/tests/data/test1494 index 5546831c0919..34072063aaf3 100644 --- a/tests/data/test1494 +++ b/tests/data/test1494 @@ -10,7 +10,7 @@ DELAY # # Server-side - + HTTP/1.1 200 funky chunky! Server: fakeit/0.9 fakeitbad/1.0 Transfer-Encoding: identity, identity @@ -38,12 +38,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -D %LOGDIR/heads%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1495 b/tests/data/test1495 index 2c0f33f8dfbd..37e729bedeb4 100644 --- a/tests/data/test1495 +++ b/tests/data/test1495 @@ -10,7 +10,7 @@ DELAY # # Server-side - + HTTP/1.1 200 funky chunky! Server: fakeit/0.9 fakeitbad/1.0 Transfer-Encoding: chunked, identity @@ -38,12 +38,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -D %LOGDIR/heads%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 61 diff --git a/tests/data/test1496 b/tests/data/test1496 index dda32606f347..a70a256f8805 100644 --- a/tests/data/test1496 +++ b/tests/data/test1496 @@ -10,7 +10,7 @@ DELAY # # Server-side - + HTTP/1.1 200 funky chunky! Server: fakeit/0.9 fakeitbad/1.0 Transfer-Encoding: gzip, chunked @@ -38,12 +38,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -D %LOGDIR/heads%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 61 diff --git a/tests/data/test1497 b/tests/data/test1497 index 94b19a251439..138f8ee8eae8 100644 --- a/tests/data/test1497 +++ b/tests/data/test1497 @@ -44,17 +44,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --retry 3 -o /dev/null # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1498 b/tests/data/test1498 index b7e15b1a1dc9..467730d3a5a8 100644 --- a/tests/data/test1498 +++ b/tests/data/test1498 @@ -10,11 +10,11 @@ chunked Transfer-Encoding # Server-side - -HTTP/1.0 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake - + +HTTP/1.0 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake + blablabla @@ -39,18 +39,18 @@ http://%HOSTIP:%HTTPPORT/bzz/%TESTNUMBER -T . # Verify data after the test has been "shot" -PUT /bzz/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Transfer-Encoding: chunked -Expect: 100-continue - -1771 +PUT /bzz/%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Transfer-Encoding: chunked%CR +Expect: 100-continue%CR +%CR +1771%CR %repeat[2000 x hej]% - -0 - +%CR +0%CR +%CR diff --git a/tests/data/test1499 b/tests/data/test1499 index 9d79e1a38c5f..54fec7104998 100644 --- a/tests/data/test1499 +++ b/tests/data/test1499 @@ -10,32 +10,32 @@ chunked Transfer-Encoding # Server-side -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked -Trailer: chunky-trailer -Connection: mooo - -40 -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -30 -bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb -21;heresatest=moooo +HTTP/1.1 200 funky chunky!%CR +Server: fakeit/0.9 fakeitbad/1.0%CR +Transfer-Encoding: chunked%CR +Trailer: chunky-trailer%CR +Connection: mooo%CR +%CR +40%CR +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa%CR +30%CR +bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb%CR +21;heresatest=moooo%CR cccccccccccccccccccccccccccccccc - -0 -chunky-trailer: header data - +%CR +0%CR +chunky-trailer: header data%CR +%CR -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked -Trailer: chunky-trailer -Connection: mooo - +HTTP/1.1 200 funky chunky!%CR +Server: fakeit/0.9 fakeitbad/1.0%CR +Transfer-Encoding: chunked%CR +Trailer: chunky-trailer%CR +Connection: mooo%CR +%CR aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcccccccccccccccccccccccccccccccc -chunky-trailer: header data +chunky-trailer: header data%CR writedelay: 10 @@ -59,17 +59,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER http://%HOSTIP:%HTTPPORT/%TESTNUMBER -D %LO # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test15 b/tests/data/test15 index ba24d2e0b2c1..69755c85dd4d 100644 --- a/tests/data/test15 +++ b/tests/data/test15 @@ -8,13 +8,13 @@ HTTP GET # Server-side - -HTTP/1.1 200 OK -Fake: yes -Fake: yes -Fake: yes -Content-Length: 26 - + +HTTP/1.1 200 OK +Fake: yes +Fake: yes +Fake: yes +Content-Length: 26 + Repeated nonsense-headers @@ -34,22 +34,22 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER --write-out "%{url_effective} %{http_c # Verify data after the test has been "shot" - -HTTP/1.1 200 OK -Fake: yes -Fake: yes -Fake: yes -Content-Length: 26 - + +HTTP/1.1 200 OK +Fake: yes +Fake: yes +Fake: yes +Content-Length: 26 + Repeated nonsense-headers http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER 200 26 - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test150 b/tests/data/test150 index fb906bf4bcf3..f0f6fcb7f32f 100644 --- a/tests/data/test150 +++ b/tests/data/test150 @@ -16,39 +16,39 @@ NTLM This is supposed to be returned when the server gets a first Authorization: NTLM line passed-in from the client --> - -HTTP/1.1 401 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + This is not the real page either! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine in server land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - -HTTP/1.1 200 Things are fine in server land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + +HTTP/1.1 200 Things are fine in server land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! @@ -74,19 +74,19 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --ntlm --fail # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1500 b/tests/data/test1500 index 0454f8ecbee4..b29c5216f208 100644 --- a/tests/data/test1500 +++ b/tests/data/test1500 @@ -9,14 +9,14 @@ multi # Server-side - -HTTP/1.1 200 all good! -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Type: text/html -Content-Length: 12 -Connection: close - + +HTTP/1.1 200 all good! +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Type: text/html +Content-Length: 12 +Connection: close + Hello World diff --git a/tests/data/test1501 b/tests/data/test1501 index 195c17998cd3..3382b87a852a 100644 --- a/tests/data/test1501 +++ b/tests/data/test1501 @@ -42,15 +42,15 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER/ 0 - -USER anonymous -PASS ftp@example.com -PWD -CWD %TESTNUMBER -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD %TESTNUMBER +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test1502 b/tests/data/test1502 index e2639f404af0..01220d659d94 100644 --- a/tests/data/test1502 +++ b/tests/data/test1502 @@ -9,18 +9,18 @@ CURLOPT_RESOLVE - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + -foo- @@ -45,11 +45,11 @@ http://google.com:%HTTPPORT/%TESTNUMBER %HTTPPORT %HOSTIP # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: google.com:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: google.com:%HTTPPORT +Accept: */* + diff --git a/tests/data/test1503 b/tests/data/test1503 index c387b8d3c549..2338ccf725fa 100644 --- a/tests/data/test1503 +++ b/tests/data/test1503 @@ -9,18 +9,18 @@ CURLOPT_RESOLVE - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + -foo- @@ -45,11 +45,11 @@ http://google.com:%HTTPPORT/%TESTNUMBER %HTTPPORT %HOSTIP # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: google.com:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: google.com:%HTTPPORT +Accept: */* + diff --git a/tests/data/test1504 b/tests/data/test1504 index 916a40ba8c77..326a190558a2 100644 --- a/tests/data/test1504 +++ b/tests/data/test1504 @@ -9,18 +9,18 @@ CURLOPT_RESOLVE - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + -foo- @@ -45,11 +45,11 @@ http://google.com:%HTTPPORT/%TESTNUMBER %HTTPPORT %HOSTIP # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: google.com:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: google.com:%HTTPPORT +Accept: */* + diff --git a/tests/data/test1505 b/tests/data/test1505 index 61e634641a09..1f62045b98bb 100644 --- a/tests/data/test1505 +++ b/tests/data/test1505 @@ -9,18 +9,18 @@ CURLOPT_RESOLVE - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + -foo- @@ -45,11 +45,11 @@ http://google.com:%HTTPPORT/%TESTNUMBER %HTTPPORT %HOSTIP # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: google.com:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: google.com:%HTTPPORT +Accept: */* + diff --git a/tests/data/test1506 b/tests/data/test1506 index af581ae6bf55..98af4b19fe32 100644 --- a/tests/data/test1506 +++ b/tests/data/test1506 @@ -9,36 +9,36 @@ verbose logs # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 47 + file contents should appear once for each file - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 47 + file contents should appear once for each file - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 47 + file contents should appear once for each file - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 47 + file contents should appear once for each file @@ -64,23 +64,23 @@ HTTP GET connection cache limit (CURLMOPT_MAXCONNECTS) # Verify data after the test has been "shot" - -GET /path/%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /path/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /path/%TESTNUMBER0003 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /path/%TESTNUMBER0004 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /path/%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /path/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /path/%TESTNUMBER0003 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /path/%TESTNUMBER0004 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + ^Host:.* diff --git a/tests/data/test1507 b/tests/data/test1507 index e1eb12bc3682..afc87120566b 100644 --- a/tests/data/test1507 +++ b/tests/data/test1507 @@ -39,11 +39,11 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM:<%TESTNUMBER-realuser@example.com> -RCPT TO:<%TESTNUMBER-recipient@example.com> -DATA + +EHLO %TESTNUMBER +MAIL FROM:<%TESTNUMBER-realuser@example.com> +RCPT TO:<%TESTNUMBER-recipient@example.com> +DATA diff --git a/tests/data/test1509 b/tests/data/test1509 index d7a7519c0820..4712c52959a3 100644 --- a/tests/data/test1509 +++ b/tests/data/test1509 @@ -14,30 +14,30 @@ proxytunnel connection-monitor - -HTTP/1.1 200 Mighty fine indeed -Server: the beast that eats naughty clients - + +HTTP/1.1 200 Mighty fine indeed +Server: the beast that eats naughty clients + - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" + - -HTTP/1.1 200 Mighty fine indeed -Server: the beast that eats naughty clients - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" - + +HTTP/1.1 200 Mighty fine indeed +Server: the beast that eats naughty clients + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" + header length is ........: 245 header length should be..: 245 @@ -73,18 +73,18 @@ moo # Verify data after the test has been "shot" - -CONNECT the.old.moo.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: the.old.moo.%TESTNUMBER:%HTTPPORT -Proxy-Connection: Keep-Alive - + +CONNECT the.old.moo.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: the.old.moo.%TESTNUMBER:%HTTPPORT +Proxy-Connection: Keep-Alive + [DISCONNECT] - -GET /%TESTNUMBER HTTP/1.1 -Host: the.old.moo.%TESTNUMBER:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: the.old.moo.%TESTNUMBER:%HTTPPORT +Accept: */* + [DISCONNECT] diff --git a/tests/data/test151 b/tests/data/test151 index 98035f8b4762..727a7e910015 100644 --- a/tests/data/test151 +++ b/tests/data/test151 @@ -34,12 +34,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1510 b/tests/data/test1510 index 4a80b7a1d2f6..c4fca7251afa 100644 --- a/tests/data/test1510 +++ b/tests/data/test1510 @@ -9,36 +9,36 @@ flaky # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 47 + file contents should appear once for each file - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 47 + file contents should appear once for each file - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 47 + file contents should appear once for each file - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 47 + file contents should appear once for each file @@ -61,23 +61,23 @@ HTTP GET connection cache limit (CURLOPT_MAXCONNECTS) # Verify data after the test has been "shot" - -GET /path/%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /path/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /path/%TESTNUMBER0003 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /path/%TESTNUMBER0004 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /path/%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /path/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /path/%TESTNUMBER0003 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /path/%TESTNUMBER0004 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + ^Host:.* diff --git a/tests/data/test1511 b/tests/data/test1511 index 82ed483b8558..5fc25c7113bd 100644 --- a/tests/data/test1511 +++ b/tests/data/test1511 @@ -8,35 +8,35 @@ CURLOPT_TIMECONDITION # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fakem -Last-Modified: Mon, 22 Apr 2013 17:45:05 GMT -Content-Type: text/html -Content-Length: 12 -Connection: close - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fakem +Last-Modified: Mon, 22 Apr 2013 17:45:05 GMT +Content-Type: text/html +Content-Length: 12 +Connection: close + Hello World - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fakem -Last-Modified: Mon, 22 Apr 2013 17:45:05 GMT -Content-Type: text/html -Content-Length: 12 -Connection: close - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fakem -Last-Modified: Mon, 22 Apr 2013 17:45:05 GMT -Content-Type: text/html -Content-Length: 12 -Connection: close - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fakem +Last-Modified: Mon, 22 Apr 2013 17:45:05 GMT +Content-Type: text/html +Content-Length: 12 +Connection: close + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fakem +Last-Modified: Mon, 22 Apr 2013 17:45:05 GMT +Content-Type: text/html +Content-Length: 12 +Connection: close + Hello World diff --git a/tests/data/test1512 b/tests/data/test1512 index a0e321432b44..cb1d8f72f1c9 100644 --- a/tests/data/test1512 +++ b/tests/data/test1512 @@ -8,36 +8,36 @@ GLOBAL DNS CACHE # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 47 + file contents should appear once for each file - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 47 + file contents should appear once for each file - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 47 + file contents should appear once for each file - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 47 + file contents should appear once for each file @@ -60,15 +60,15 @@ GLOBAL CACHE test over two easy performs # Verify data after the test has been "shot" - -GET /path/%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /path/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /path/%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /path/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + ^Host:.* diff --git a/tests/data/test1513 b/tests/data/test1513 index 90c32229f75e..ff8c03f279d5 100644 --- a/tests/data/test1513 +++ b/tests/data/test1513 @@ -8,9 +8,9 @@ DELAY # Server-side - -HTTP/1.1 204 PARTIAL -X-Comment: partial response to keep the client waiting + +HTTP/1.1 204 PARTIAL +X-Comment: partial response to keep the client waiting wait 10 @@ -37,8 +37,6 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - - # 42 == CURLE_ABORTED_BY_CALLBACK 42 diff --git a/tests/data/test1514 b/tests/data/test1514 index b34406e0727b..2f23abb28eec 100644 --- a/tests/data/test1514 +++ b/tests/data/test1514 @@ -10,12 +10,12 @@ chunked Transfer-Encoding # Server-side - -HTTP/1.1 200 OK -Date: Sun, 19 Jan 2014 18:50:58 GMT -Server: test-server/fake swsclose -Connection: close - + +HTTP/1.1 200 OK +Date: Sun, 19 Jan 2014 18:50:58 GMT +Server: test-server/fake swsclose +Connection: close + @@ -39,26 +39,26 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Content-Length header is not present # Transfer-Encoding header is added automatically - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Transfer-Encoding: chunked -Content-Type: application/x-www-form-urlencoded -Expect: 100-continue - -1 -d -1 -u -1 -m -1 -m -1 -y -0 - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Transfer-Encoding: chunked +Content-Type: application/x-www-form-urlencoded +Expect: 100-continue + +1 +d +1 +u +1 +m +1 +m +1 +y +0 + diff --git a/tests/data/test1517 b/tests/data/test1517 index 18d1fcaf2f09..2703c1eefaa0 100644 --- a/tests/data/test1517 +++ b/tests/data/test1517 @@ -62,13 +62,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER s/^(this is what we post to the silly web server)(\r)?\n// - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 45 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 45 +Content-Type: application/x-www-form-urlencoded + 0 diff --git a/tests/data/test1518 b/tests/data/test1518 index ea5304d1b6ad..09a7efb0147e 100644 --- a/tests/data/test1518 +++ b/tests/data/test1518 @@ -46,8 +46,6 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER - - res 0 status 302 diff --git a/tests/data/test1519 b/tests/data/test1519 index f57f68544a43..d284bd96609f 100644 --- a/tests/data/test1519 +++ b/tests/data/test1519 @@ -46,8 +46,6 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER - - res 0 status 302 diff --git a/tests/data/test152 b/tests/data/test152 index 31c2360192b8..2f4ee6938d45 100644 --- a/tests/data/test152 +++ b/tests/data/test152 @@ -35,12 +35,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --fail # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 22 diff --git a/tests/data/test1520 b/tests/data/test1520 index c360cabc75f3..f49b9147799c 100644 --- a/tests/data/test1520 +++ b/tests/data/test1520 @@ -19,17 +19,17 @@ lib%TESTNUMBER SMTP with CRLF-dot-CRLF in data - -From: different -To: another - - -. -. - -. - -body + +From: different +To: another + + +. +. + +. + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER @@ -39,25 +39,25 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA +QUIT - -From: different -To: another - - -.. -.. - -.. - -body -. + +From: different +To: another + + +.. +.. + +.. + +body +. diff --git a/tests/data/test1524 b/tests/data/test1524 index 8756ec630663..05433d47c274 100644 --- a/tests/data/test1524 +++ b/tests/data/test1524 @@ -55,19 +55,19 @@ moo # # Verify data after the test has been "shot" - -PUT /blah/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 4 - + +PUT /blah/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 4 + moo -GET /blah/moo.html&testcase=/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - +GET /blah/moo.html&testcase=/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1525 b/tests/data/test1525 index 2778c3f56482..e9dbe67f2db7 100644 --- a/tests/data/test1525 +++ b/tests/data/test1525 @@ -12,9 +12,9 @@ CURLOPT_PROXYHEADER # Server-side - -HTTP/1.1 200 OK - + +HTTP/1.1 200 OK + HTTP/1.1 200 OK swsclose @@ -25,8 +25,8 @@ ETag: "21025-dc7-39462498" -HTTP/1.1 200 OK - +HTTP/1.1 200 OK%CR +%CR HTTP/1.1 200 OK swsclose Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -58,20 +58,20 @@ proxy # Verify data after the test has been "shot" - -CONNECT the.old.moo.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: the.old.moo.%TESTNUMBER:%HTTPPORT -Proxy-Connection: Keep-Alive -User-Agent: Http Agent - + +CONNECT the.old.moo.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: the.old.moo.%TESTNUMBER:%HTTPPORT +Proxy-Connection: Keep-Alive +User-Agent: Http Agent + - -PUT /%TESTNUMBER HTTP/1.1 -Host: the.old.moo.%TESTNUMBER:%HTTPPORT -Accept: */* -User-Agent: Http Agent -Content-Length: 13 - + +PUT /%TESTNUMBER HTTP/1.1 +Host: the.old.moo.%TESTNUMBER:%HTTPPORT +Accept: */* +User-Agent: Http Agent +Content-Length: 13 + Hello Cloud! diff --git a/tests/data/test1526 b/tests/data/test1526 index cd4a4f48b032..5a43efe37d96 100644 --- a/tests/data/test1526 +++ b/tests/data/test1526 @@ -12,29 +12,29 @@ CURLOPT_PROXYHEADER # Server-side - -HTTP/1.1 200 OK -Server: present - + +HTTP/1.1 200 OK +Server: present + - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" + - -HTTP/1.1 200 OK -Server: present - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" - + +HTTP/1.1 200 OK +Server: present + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" + @@ -60,20 +60,20 @@ proxy # Verify data after the test has been "shot" - -CONNECT the.old.moo.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: the.old.moo.%TESTNUMBER:%HTTPPORT -Proxy-Connection: Keep-Alive -User-Agent: Proxy Agent - + +CONNECT the.old.moo.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: the.old.moo.%TESTNUMBER:%HTTPPORT +Proxy-Connection: Keep-Alive +User-Agent: Proxy Agent + - -PUT /%TESTNUMBER HTTP/1.1 -Host: the.old.moo.%TESTNUMBER:%HTTPPORT -Accept: */* -User-Agent: Http Agent -Content-Length: 13 - + +PUT /%TESTNUMBER HTTP/1.1 +Host: the.old.moo.%TESTNUMBER:%HTTPPORT +Accept: */* +User-Agent: Http Agent +Content-Length: 13 + Hello Cloud! diff --git a/tests/data/test1527 b/tests/data/test1527 index 1f422362b398..8a106b5d42db 100644 --- a/tests/data/test1527 +++ b/tests/data/test1527 @@ -11,29 +11,29 @@ proxytunnel # Server-side - -HTTP/1.1 200 OK -We-are: good - + +HTTP/1.1 200 OK +We-are: good + - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" + - -HTTP/1.1 200 OK -We-are: good - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" - + +HTTP/1.1 200 OK +We-are: good + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" + @@ -59,22 +59,22 @@ proxy # Verify data after the test has been "shot" - -CONNECT the.old.moo.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: the.old.moo.%TESTNUMBER:%HTTPPORT -Proxy-Connection: Keep-Alive -User-Agent: Http Agent -Expect: 100-continue - + +CONNECT the.old.moo.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: the.old.moo.%TESTNUMBER:%HTTPPORT +Proxy-Connection: Keep-Alive +User-Agent: Http Agent +Expect: 100-continue + - -PUT /%TESTNUMBER HTTP/1.1 -Host: the.old.moo.%TESTNUMBER:%HTTPPORT -Accept: */* -User-Agent: Http Agent -Expect: 100-continue -Content-Length: 13 - + +PUT /%TESTNUMBER HTTP/1.1 +Host: the.old.moo.%TESTNUMBER:%HTTPPORT +Accept: */* +User-Agent: Http Agent +Expect: 100-continue +Content-Length: 13 + Hello Cloud! diff --git a/tests/data/test1528 b/tests/data/test1528 index 8c0209ce8092..eb80570d409f 100644 --- a/tests/data/test1528 +++ b/tests/data/test1528 @@ -11,19 +11,19 @@ proxytunnel # Server-side - -HTTP/1.1 200 OK -We-are: good - + +HTTP/1.1 200 OK +We-are: good + - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Content-Length: 5 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Content-Length: 5 + stop @@ -50,14 +50,14 @@ proxy # Verify data after the test has been "shot" - -GET http://the.old.moo:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: the.old.moo:%HTTPPORT -Accept: */* -Proxy-Connection: Keep-Alive -User-Agent: Http Agent -Proxy-User-Agent: Http Agent2 - + +GET http://the.old.moo:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: the.old.moo:%HTTPPORT +Accept: */* +Proxy-Connection: Keep-Alive +User-Agent: Http Agent +Proxy-User-Agent: Http Agent2 + diff --git a/tests/data/test1529 b/tests/data/test1529 index a06ce75db949..5d8be40b4518 100644 --- a/tests/data/test1529 +++ b/tests/data/test1529 @@ -9,10 +9,10 @@ HTTP proxy # Server-side - -HTTP/1.1 200 OK -We-are: good - + +HTTP/1.1 200 OK +We-are: good + diff --git a/tests/data/test153 b/tests/data/test153 index a38cce6fa91d..b70061f01f52 100644 --- a/tests/data/test153 +++ b/tests/data/test153 @@ -10,35 +10,35 @@ HTTP Digest auth # Server-side # First reply back and ask for Digest auth - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # second reply back - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 200 OK -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 200 OK +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! @@ -46,24 +46,24 @@ This IS the real page! # This is the second request, and this sends back a response saying that # the request contained stale data. We want an update. Set swsbounce to # bounce on to data1003 on the second request. - -HTTP/1.1 401 Authorization re-negotiation please swsbounce -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, nonce="999999", stale=true, qop="auth" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization re-negotiation please swsbounce +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, nonce="999999", stale=true, qop="auth" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # The second request to the 1002 section will bounce this one back instead # thanks to the swsbounce keyword up there - -HTTP/1.1 200 OK -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 30 - + +HTTP/1.1 200 OK +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 30 + This IS the second real page! @@ -91,66 +91,66 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER0001 -u testuser:testpass --digest http://%H ^Authorization.*cnonce - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER0001", response="f4f83139396995bac665f24a1f1055c7" -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER0002", response="f84511b014fdd0ba6494f42871079c32" -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="999999", uri="/%TESTNUMBER0002", cnonce="MTA4MzIr", nc="00000001", qop="auth", response="25291c357671604a16c0242f56721c07", algorithm=MD5 -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER0001", response="f4f83139396995bac665f24a1f1055c7" +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER0002", response="f84511b014fdd0ba6494f42871079c32" +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="999999", uri="/%TESTNUMBER0002", cnonce="MTA4MzIr", nc="00000001", qop="auth", response="25291c357671604a16c0242f56721c07", algorithm=MD5 +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 200 OK -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 200 OK +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 401 Authorization re-negotiation please swsbounce -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, nonce="999999", stale=true, qop="auth" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 200 OK -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 30 - +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 401 Authorization re-negotiation please swsbounce +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, nonce="999999", stale=true, qop="auth" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 200 OK +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 30 + This IS the second real page! diff --git a/tests/data/test1531 b/tests/data/test1531 index f80056ab06d4..865aeda1f8cf 100644 --- a/tests/data/test1531 +++ b/tests/data/test1531 @@ -25,13 +25,13 @@ CURLOPT_POSTFIELDS with binary data set after multi_add_handle # it should be detected and an error should be reported - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 8 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 8 +Content-Type: application/x-www-form-urlencoded + %hex[%2eabc%00xyz]hex% diff --git a/tests/data/test1532 b/tests/data/test1532 index 582f05a5bc13..fc3f71a00f2d 100644 --- a/tests/data/test1532 +++ b/tests/data/test1532 @@ -9,10 +9,10 @@ HTTP GET # # Server-side - -HTTP/1.0 200 OK swsclose -Content-Length: 0 - + +HTTP/1.0 200 OK swsclose +Content-Length: 0 + @@ -36,11 +36,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + 0 diff --git a/tests/data/test1533 b/tests/data/test1533 index a957bebbc7bf..389baa543695 100644 --- a/tests/data/test1533 +++ b/tests/data/test1533 @@ -12,11 +12,11 @@ CURLOPT_KEEP_SENDING_ON_ERROR auth_required - -HTTP/1.1 401 Authorization Required -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 15 + +HTTP/1.1 401 Authorization Required +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 15 Early Response @@ -43,31 +43,31 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER 41 - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 3 -Content-Type: application/x-www-form-urlencoded - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 3 -Content-Type: application/x-www-form-urlencoded - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 3 -Content-Type: application/x-www-form-urlencoded - -aaaPOST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 3 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 3 +Content-Type: application/x-www-form-urlencoded + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 3 +Content-Type: application/x-www-form-urlencoded + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 3 +Content-Type: application/x-www-form-urlencoded + +aaaPOST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 3 +Content-Type: application/x-www-form-urlencoded + aaa diff --git a/tests/data/test1534 b/tests/data/test1534 index 0f98ad604349..ef4f8b886e34 100644 --- a/tests/data/test1534 +++ b/tests/data/test1534 @@ -10,11 +10,11 @@ CURLINFO_FILETIME # # Server-side - -HTTP/1.0 200 OK swsclose -Last-Modified: Thu, 01 Jan 1970 00:00:30 GMT -Content-Length: 0 - + +HTTP/1.0 200 OK swsclose +Last-Modified: Thu, 01 Jan 1970 00:00:30 GMT +Content-Length: 0 + @@ -38,11 +38,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + 0 diff --git a/tests/data/test1535 b/tests/data/test1535 index 477f3fac2895..8bfd2d6ada79 100644 --- a/tests/data/test1535 +++ b/tests/data/test1535 @@ -37,11 +37,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + 0 diff --git a/tests/data/test1536 b/tests/data/test1536 index ea7ce3966a58..63d71731e63e 100644 --- a/tests/data/test1536 +++ b/tests/data/test1536 @@ -37,11 +37,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + 0 diff --git a/tests/data/test1539 b/tests/data/test1539 index 0431ba670b59..884e70066539 100644 --- a/tests/data/test1539 +++ b/tests/data/test1539 @@ -10,11 +10,11 @@ chunked Transfer-Encoding # Server-side - -HTTP/1.1 200 OK -Date: Sun, 19 Jan 2014 18:50:58 GMT -Server: test-server/fake swsclose -Connection: close + +HTTP/1.1 200 OK +Date: Sun, 19 Jan 2014 18:50:58 GMT +Server: test-server/fake swsclose +Connection: close diff --git a/tests/data/test154 b/tests/data/test154 index 7612ce05ff76..19791a1f42b3 100644 --- a/tests/data/test154 +++ b/tests/data/test154 @@ -10,45 +10,45 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" -Content-Type: text/html; charset=iso-8859-1 -Connection: close - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" +Content-Type: text/html; charset=iso-8859-1 +Connection: close + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 -Connection: close - + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 +Connection: close + This IS the real page! - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" -Content-Type: text/html; charset=iso-8859-1 -Connection: close - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 -Connection: close - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Digest realm="gimme all yer s3cr3ts", nonce="11223344" +Content-Type: text/html; charset=iso-8859-1 +Connection: close + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 +Connection: close + This IS the real page! @@ -80,24 +80,24 @@ four is the number of lines # Verify data after the test has been "shot" - -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 85 - + +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 85 + This is data we upload with PUT a second line line three four is the number of lines -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/%TESTNUMBER", response="b71551e12d1c456e47d8388ecb2edeca" -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 85 - +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/%TESTNUMBER", response="b71551e12d1c456e47d8388ecb2edeca" +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 85 + This is data we upload with PUT a second line line three diff --git a/tests/data/test1540 b/tests/data/test1540 index dc1aa7011e0c..6533eac3a12f 100644 --- a/tests/data/test1540 +++ b/tests/data/test1540 @@ -13,27 +13,27 @@ DELAY # Server-side -HTTP/1.1 200 OK swsclose -Transfer-Encoding: chunked -Trailer: MyCoolTrailerHeader - -4 -data -5 +HTTP/1.1 200 OK swsclose%CR +Transfer-Encoding: chunked%CR +Trailer: MyCoolTrailerHeader%CR +%CR +4%CR +data%CR +5%CR d474 - -0 -MyCoolTrailerHeader: amazingtrailer - +%CR +0%CR +MyCoolTrailerHeader: amazingtrailer%CR +%CR -HTTP/1.1 200 OK swsclose -Transfer-Encoding: chunked -Trailer: MyCoolTrailerHeader - +HTTP/1.1 200 OK swsclose%CR +Transfer-Encoding: chunked%CR +Trailer: MyCoolTrailerHeader%CR +%CR Got bytes but pausing! datad474 -MyCoolTrailerHeader: amazingtrailer +MyCoolTrailerHeader: amazingtrailer%CR writedelay: 10 @@ -57,11 +57,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + diff --git a/tests/data/test1541 b/tests/data/test1541 index 9b29f43534e3..1f3e534dc739 100644 --- a/tests/data/test1541 +++ b/tests/data/test1541 @@ -12,16 +12,16 @@ DELAY # Server-side -HTTP/1.1 200 OK swsclose -Transfer-Encoding: chunked - -4 -data -5 +HTTP/1.1 200 OK swsclose%CR +Transfer-Encoding: chunked%CR +%CR +4%CR +data%CR +5%CR d474 - -0 - +%CR +0%CR +%CR CURLINFO_CONNECT_TIME_T on 1st header is OK @@ -30,9 +30,9 @@ CURLINFO_STARTTRANSFER_TIME_T on 1st header is OK CURLINFO_TOTAL_TIME_T on 1st header is OK CURLINFO_APPCONNECT_TIME_T on 1st header is OK CURLINFO_SPEED_DOWNLOAD_T on 1st header is OK -HTTP/1.1 200 OK swsclose -Transfer-Encoding: chunked - +HTTP/1.1 200 OK swsclose%CR +Transfer-Encoding: chunked%CR +%CR datad474 CURLINFO_CONNECT_TIME_T on done is OK CURLINFO_PRETRANSFER_TIME_T on done is OK @@ -64,11 +64,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + diff --git a/tests/data/test1542 b/tests/data/test1542 index e9061a8f2bea..dad66aff3d45 100644 --- a/tests/data/test1542 +++ b/tests/data/test1542 @@ -11,10 +11,10 @@ verbose logs # Server-side - -HTTP/1.1 200 OK -Content-Length: 0 - + +HTTP/1.1 200 OK +Content-Length: 0 + @@ -39,23 +39,23 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + == Info: Connection #0 to host %HOSTIP:%HTTPPORT left intact diff --git a/tests/data/test1543 b/tests/data/test1543 index 3aefe57ef11a..202cce5434a1 100644 --- a/tests/data/test1543 +++ b/tests/data/test1543 @@ -52,15 +52,15 @@ CURLOPT_CURLU, URL with space and CURLINFO_EFFECTIVE_URL # # Verify data after the test has been "shot" - -GET /%20/with/%20space/%20/file HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%20/with/%20space/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%20/with/%20space/%20/file HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%20/with/%20space/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + res 0 diff --git a/tests/data/test1546 b/tests/data/test1546 index b83b7ee95fa1..5c7fdeb8803c 100644 --- a/tests/data/test1546 +++ b/tests/data/test1546 @@ -9,20 +9,20 @@ Transfer-Encoding # # Server-side - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache -Transfer-Encoding: chunked, gzip - -0 - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache +Transfer-Encoding: chunked, gzip + +0 + - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache @@ -47,14 +47,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --tr-encoding # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -TE: gzip -Connection: TE - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +TE: gzip +Connection: TE + 61 diff --git a/tests/data/test1547 b/tests/data/test1547 index 067b3568edec..7e1625aa4b9e 100644 --- a/tests/data/test1547 +++ b/tests/data/test1547 @@ -42,15 +42,15 @@ ftp://%HOSTIP:%FTPPORT/test-%TESTNUMBER/ -P %CLIENTIP --ftp-pasv # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD test-%TESTNUMBER -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD test-%TESTNUMBER +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test1549 b/tests/data/test1549 index bc821e5ebaeb..9346d2f0e3d6 100644 --- a/tests/data/test1549 +++ b/tests/data/test1549 @@ -9,7 +9,7 @@ cookies # # Server-side - + HTTP/1.1 200 OK Content-Length: 6 Content-Type: text/plain @@ -44,7 +44,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT Accept: */* diff --git a/tests/data/test155 b/tests/data/test155 index 83aed115f8f8..f3517a9f2c9b 100644 --- a/tests/data/test155 +++ b/tests/data/test155 @@ -10,61 +10,61 @@ NTLM # Server-side - -HTTP/1.1 401 NTLM Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" -WWW-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Connection: close - + +HTTP/1.1 401 NTLM Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" +WWW-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Connection: close + moo # This is supposed to be returned when the server gets a first # Authorization: NTLM line passed-in from the client - -HTTP/1.1 401 Type-1 received, send back type-2 -Server: Microsoft-IIS/5.0 -Content-Length: 34 -Content-Type: text/html; charset=iso-8859-1 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - + +HTTP/1.1 401 Type-1 received, send back type-2 +Server: Microsoft-IIS/5.0 +Content-Length: 34 +Content-Type: text/html; charset=iso-8859-1 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + This is not the real page either! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Type-3 Received and all Things are fine swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Type-3 Received and all Things are fine swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 NTLM Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" -WWW-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Connection: close - -HTTP/1.1 401 Type-1 received, send back type-2 -Server: Microsoft-IIS/5.0 -Content-Length: 34 -Content-Type: text/html; charset=iso-8859-1 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - -HTTP/1.1 200 Type-3 Received and all Things are fine swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 401 NTLM Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" +WWW-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Connection: close + +HTTP/1.1 401 Type-1 received, send back type-2 +Server: Microsoft-IIS/5.0 +Content-Length: 34 +Content-Type: text/html; charset=iso-8859-1 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + +HTTP/1.1 200 Type-3 Received and all Things are fine swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! @@ -96,31 +96,31 @@ four is the number of lines # Verify data after the test has been "shot" - -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 85 - + +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 85 + This is data we upload with PUT a second line line three four is the number of lines -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 0 - -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 85 - +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 0 + +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 85 + This is data we upload with PUT a second line line three diff --git a/tests/data/test1551 b/tests/data/test1551 index 8af8d6641e39..a2c752226cbb 100644 --- a/tests/data/test1551 +++ b/tests/data/test1551 @@ -47,23 +47,23 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + diff --git a/tests/data/test1552 b/tests/data/test1552 index fd35ca1f61c6..995584c4d4d5 100644 --- a/tests/data/test1552 +++ b/tests/data/test1552 @@ -10,14 +10,14 @@ FETCH # # Server-side - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -46,7 +46,5 @@ lib%TESTNUMBER # # Verify data after the test has been "shot" - - diff --git a/tests/data/test1553 b/tests/data/test1553 index 0c01ab3e6960..5b4f11e55496 100644 --- a/tests/data/test1553 +++ b/tests/data/test1553 @@ -10,14 +10,14 @@ FETCH # # Server-side - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -51,7 +51,5 @@ imap://non-existing-host.haxx.se:%IMAPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - - diff --git a/tests/data/test1555 b/tests/data/test1555 index e3c7e55c6921..75e1e5c258bc 100644 --- a/tests/data/test1555 +++ b/tests/data/test1555 @@ -8,9 +8,9 @@ DELAY # Server-side - -HTTP/1.1 204 PARTIAL -X-Comment: partial response to keep the client waiting + +HTTP/1.1 204 PARTIAL +X-Comment: partial response to keep the client waiting wait 10 @@ -37,8 +37,6 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - - # 42 == CURLE_ABORTED_BY_CALLBACK 42 diff --git a/tests/data/test1556 b/tests/data/test1556 index 80254da2d444..8d9073774fe3 100644 --- a/tests/data/test1556 +++ b/tests/data/test1556 @@ -9,19 +9,19 @@ HTTP GET # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes -Long: %repeat[100001 x A]% - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes +Long: %repeat[100001 x A]% + -foo- @@ -46,11 +46,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + -foo- diff --git a/tests/data/test156 b/tests/data/test156 index 877c215b9391..d5df473ee56d 100644 --- a/tests/data/test156 +++ b/tests/data/test156 @@ -9,12 +9,12 @@ HTTP PUT # Server-side - -HTTP/1.1 200 No Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Connection: close - + +HTTP/1.1 200 No Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Connection: close + PUT received fine. Thank you very much @@ -40,13 +40,13 @@ four is the number of lines # Verify data after the test has been "shot" - -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 85 - + +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 85 + This is data we upload with PUT a second line line three diff --git a/tests/data/test1561 b/tests/data/test1561 index 1341d12130ce..5af47edce0b2 100644 --- a/tests/data/test1561 +++ b/tests/data/test1561 @@ -76,17 +76,17 @@ Cookies set over HTTP can't override secure ones - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: www.example.com -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: www.example.com -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: www.example.com +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: www.example.com +User-Agent: curl/%VERSION +Accept: */* + # Netscape HTTP Cookie File diff --git a/tests/data/test1562 b/tests/data/test1562 index 88e442f7b20a..382339a84fec 100644 --- a/tests/data/test1562 +++ b/tests/data/test1562 @@ -48,23 +48,23 @@ Expire secure cookies over HTTPS - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: www.example.com -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: www.example.com -User-Agent: curl/%VERSION -Accept: */* -Cookie: foo=123 - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: www.example.com -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: www.example.com +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: www.example.com +User-Agent: curl/%VERSION +Accept: */* +Cookie: foo=123 + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: www.example.com +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1563 b/tests/data/test1563 index 6bf3ad905b4e..b682b8a72760 100644 --- a/tests/data/test1563 +++ b/tests/data/test1563 @@ -36,12 +36,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER0001 -L -H "Host: www.example.com" 1 - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: www.example.com -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: www.example.com +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1566 b/tests/data/test1566 index be047dcebb57..ba1b609a0eda 100644 --- a/tests/data/test1566 +++ b/tests/data/test1566 @@ -46,13 +46,13 @@ downloaded already # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -If-None-Match: "123456" - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +If-None-Match: "123456" + # verify that the target file is untouched diff --git a/tests/data/test1567 b/tests/data/test1567 index 68b1fe21102f..82680ab560e5 100644 --- a/tests/data/test1567 +++ b/tests/data/test1567 @@ -48,23 +48,23 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + diff --git a/tests/data/test1568 b/tests/data/test1568 index 899d9b59f19f..abdd94d2500c 100644 --- a/tests/data/test1568 +++ b/tests/data/test1568 @@ -10,39 +10,39 @@ HTTP Digest auth - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! @@ -71,18 +71,18 @@ http://%HOSTIP/%TESTNUMBER %HTTPPORT # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: lib%TESTNUMBER -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER", response="9cbbd857a37e45f2bcad5c7d088191df" -User-Agent: lib%TESTNUMBER -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: lib%TESTNUMBER +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER", response="9cbbd857a37e45f2bcad5c7d088191df" +User-Agent: lib%TESTNUMBER +Accept: */* + diff --git a/tests/data/test1569 b/tests/data/test1569 index 159a813919ee..b5d16e062288 100644 --- a/tests/data/test1569 +++ b/tests/data/test1569 @@ -40,19 +40,19 @@ lib%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -PASV -TYPE A -RETR %TESTNUMBER -PASV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +PASV +TYPE A +RETR %TESTNUMBER +PASV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test157 b/tests/data/test157 index 5ab45ec05b39..da66cd4cf76a 100644 --- a/tests/data/test157 +++ b/tests/data/test157 @@ -9,12 +9,12 @@ HTTP GET # Server-side - -HTTP/1.1 200 No Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Connection: close - + +HTTP/1.1 200 No Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Connection: close + GET received and served just fine. Thank you very much @@ -34,12 +34,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --anyauth # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1570 b/tests/data/test1570 index 713ab5ea778c..57dc6b077e99 100644 --- a/tests/data/test1570 +++ b/tests/data/test1570 @@ -40,19 +40,19 @@ lib1569 # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -PASV -TYPE A -NLST -PASV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +PASV +TYPE A +NLST +PASV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1571 b/tests/data/test1571 index e75423a73c1c..8a2bfb46167e 100644 --- a/tests/data/test1571 +++ b/tests/data/test1571 @@ -8,7 +8,7 @@ CURLOPT_FOLLOWLOCATION # # Server-side - + HTTP/1.1 302 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -23,7 +23,7 @@ Funny-head: yesyes -foo- - + HTTP/1.1 200 OK Content-Length: 6 Connection: close @@ -31,7 +31,7 @@ Content-Type: text/html -bar- - + HTTP/1.1 302 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -75,10 +75,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -^User-Agent:.* - - + IGLOO /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT Accept: */* diff --git a/tests/data/test1572 b/tests/data/test1572 index 4c2329506ec3..53683ed88faa 100644 --- a/tests/data/test1572 +++ b/tests/data/test1572 @@ -8,7 +8,7 @@ CURLOPT_FOLLOWLOCATION # # Server-side - + HTTP/1.1 308 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -23,7 +23,7 @@ Funny-head: yesyes -foo- - + HTTP/1.1 200 OK Content-Length: 6 Connection: close @@ -31,7 +31,7 @@ Content-Type: text/html -bar- - + HTTP/1.1 308 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -75,10 +75,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -^User-Agent:.* - - + IGLOO /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT Accept: */* diff --git a/tests/data/test1573 b/tests/data/test1573 index 0e36d620f8ff..e13522964f81 100644 --- a/tests/data/test1573 +++ b/tests/data/test1573 @@ -8,7 +8,7 @@ CURLOPT_FOLLOWLOCATION # # Server-side - + HTTP/1.1 302 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -23,7 +23,7 @@ Funny-head: yesyes -foo- - + HTTP/1.1 200 OK Content-Length: 6 Connection: close @@ -31,7 +31,7 @@ Content-Type: text/html -bar- - + HTTP/1.1 302 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -75,9 +75,6 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -^User-Agent:.* - IGLOO /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT diff --git a/tests/data/test1574 b/tests/data/test1574 index 6afc24b2abaf..fe4d7688c589 100644 --- a/tests/data/test1574 +++ b/tests/data/test1574 @@ -8,7 +8,7 @@ CURLOPT_FOLLOWLOCATION # # Server-side - + HTTP/1.1 302 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -23,7 +23,7 @@ Funny-head: yesyes -foo- - + HTTP/1.1 200 OK Content-Length: 6 Connection: close @@ -31,7 +31,7 @@ Content-Type: text/html -bar- - + HTTP/1.1 302 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -75,9 +75,6 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -^User-Agent:.* - IGLOO /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT diff --git a/tests/data/test1575 b/tests/data/test1575 index 1d1e4b7ed392..53452af2c2de 100644 --- a/tests/data/test1575 +++ b/tests/data/test1575 @@ -8,7 +8,7 @@ CURLOPT_FOLLOWLOCATION # # Server-side - + HTTP/1.1 308 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -23,7 +23,7 @@ Funny-head: yesyes -foo- - + HTTP/1.1 200 OK Content-Length: 6 Connection: close @@ -31,7 +31,7 @@ Content-Type: text/html -bar- - + HTTP/1.1 308 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -75,10 +75,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -^User-Agent:.* - - + IGLOO /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT Accept: */* diff --git a/tests/data/test1576 b/tests/data/test1576 index 3b243bc632e2..fc24dd3e5e8e 100644 --- a/tests/data/test1576 +++ b/tests/data/test1576 @@ -8,7 +8,7 @@ CURLOPT_FOLLOWLOCATION # # Server-side - + HTTP/1.1 302 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -23,7 +23,7 @@ Funny-head: yesyes -foo- - + HTTP/1.1 200 OK Content-Length: 6 Connection: close @@ -31,7 +31,7 @@ Content-Type: text/html -bar- - + HTTP/1.1 302 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -75,10 +75,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -^User-Agent:.* - - + CURL /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT Accept: */* diff --git a/tests/data/test1577 b/tests/data/test1577 index d5ff6a725d3a..eeb3119fdcfa 100644 --- a/tests/data/test1577 +++ b/tests/data/test1577 @@ -8,7 +8,7 @@ CURLOPT_FOLLOWLOCATION # # Server-side - + HTTP/1.1 308 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -23,7 +23,7 @@ Funny-head: yesyes -foo- - + HTTP/1.1 200 OK Content-Length: 6 Connection: close @@ -31,7 +31,7 @@ Content-Type: text/html -bar- - + HTTP/1.1 308 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -75,10 +75,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER %TESTNUMBER # Verify data after the test has been "shot" - -^User-Agent:.* - - + CURL /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT Accept: */* diff --git a/tests/data/test1578 b/tests/data/test1578 index ba43782506aa..b8e7c308c000 100644 --- a/tests/data/test1578 +++ b/tests/data/test1578 @@ -8,7 +8,7 @@ CURLOPT_FOLLOWLOCATION # # Server-side - + HTTP/1.1 302 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -23,7 +23,7 @@ Funny-head: yesyes -foo- - + HTTP/1.1 200 OK Content-Length: 6 Connection: close @@ -31,7 +31,7 @@ Content-Type: text/html -bar- - + HTTP/1.1 302 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -75,10 +75,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -^User-Agent:.* - - + CURL /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT Accept: */* diff --git a/tests/data/test1579 b/tests/data/test1579 index 3cd067e424ab..c835eaf70ef2 100644 --- a/tests/data/test1579 +++ b/tests/data/test1579 @@ -8,7 +8,7 @@ CURLOPT_FOLLOWLOCATION # # Server-side - + HTTP/1.1 303 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -23,7 +23,7 @@ Funny-head: yesyes -foo- - + HTTP/1.1 200 OK Content-Length: 6 Connection: close @@ -31,7 +31,7 @@ Content-Type: text/html -bar- - + HTTP/1.1 303 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -75,9 +75,6 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER %TESTNUMBER # Verify data after the test has been "shot" - -^User-Agent:.* - CURL /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT diff --git a/tests/data/test158 b/tests/data/test158 index db3a49b7f57b..8c9737e273bc 100644 --- a/tests/data/test158 +++ b/tests/data/test158 @@ -8,10 +8,10 @@ HTTP POST # Server-side - -HTTP/1.1 100 Continue swsclose -Silly-header: yeeeees - + +HTTP/1.1 100 Continue swsclose +Silly-header: yeeeees + @@ -37,19 +37,19 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -F name=daniel ^Content-Type: multipart/form-data.* ^-----------------------.* - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 157 -Content-Type: multipart/form-data; boundary=----------------------------4f12fcdaa3bc - -------------------------------4f12fcdaa3bc -Content-Disposition: form-data; name="name" - -daniel -------------------------------4f12fcdaa3bc-- + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 157 +Content-Type: multipart/form-data; boundary=----------------------------4f12fcdaa3bc + +------------------------------4f12fcdaa3bc +Content-Disposition: form-data; name="name" + +daniel +------------------------------4f12fcdaa3bc-- 52 diff --git a/tests/data/test1580 b/tests/data/test1580 index 629cf1ab451d..99626c53a243 100644 --- a/tests/data/test1580 +++ b/tests/data/test1580 @@ -8,7 +8,7 @@ CURLOPT_FOLLOWLOCATION # # Server-side - + HTTP/1.1 308 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -23,7 +23,7 @@ Funny-head: yesyes -foo- - + HTTP/1.1 200 OK Content-Length: 6 Connection: close @@ -31,7 +31,7 @@ Content-Type: text/html -bar- - + HTTP/1.1 308 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -75,10 +75,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER 1578 # Verify data after the test has been "shot" - -^User-Agent:.* - - + CURL /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT Accept: */* diff --git a/tests/data/test1581 b/tests/data/test1581 index 98c78b613a35..f3f29757a215 100644 --- a/tests/data/test1581 +++ b/tests/data/test1581 @@ -8,7 +8,7 @@ CURLOPT_FOLLOWLOCATION # # Server-side - + HTTP/1.1 301 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -23,7 +23,7 @@ Funny-head: yesyes -foo- - + HTTP/1.1 200 OK Content-Length: 6 Connection: close @@ -31,7 +31,7 @@ Content-Type: text/html -bar- - + HTTP/1.1 301 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -75,10 +75,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -^User-Agent:.* - - + IGLOO /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT Accept: */* diff --git a/tests/data/test1582 b/tests/data/test1582 index 146863fd6994..d2c4ada1f0c8 100644 --- a/tests/data/test1582 +++ b/tests/data/test1582 @@ -8,7 +8,7 @@ GSS-API # Server-side - + HTTP/1.1 401 OK Date: Tue, 09 Nov 2030 14:49:00 GMT Server: test-server/fake @@ -42,11 +42,11 @@ https://%HOSTIP:%HTTPSPORT/ - -GET / HTTP/1.1 -Host: %HOSTIP:%HTTPSPORT -Accept: */* - + +GET / HTTP/1.1 +Host: %HOSTIP:%HTTPSPORT +Accept: */* + diff --git a/tests/data/test1583 b/tests/data/test1583 new file mode 100644 index 000000000000..b266d7eea8e1 --- /dev/null +++ b/tests/data/test1583 @@ -0,0 +1,37 @@ + + + +SFTP + + + +# +# Server-side + + + +# +# Client-side + + +sftp + + +%PERL %SRCDIR/libtest/test613.pl prepare %PWD/%LOGDIR/test%TESTNUMBER.dir + + +SFTP dir and empty file + + +--key %LOGDIR/server/curl_client_key --pubkey %LOGDIR/server/curl_client_key.pub -u %USER: --insecure sftp://%HOSTIP:%SSHPORT%SFTP_PWD/%LOGDIR/test%TESTNUMBER.dir/ --next --key %LOGDIR/server/curl_client_key --pubkey %LOGDIR/server/curl_client_key.pub -u %USER: --insecure sftp://%HOSTIP:%SSHPORT%SFTP_PWD/%LOGDIR/test%TESTNUMBER.dir/emptyfile.txt + + + +# +# Verify data after the test has been "shot" + + +0 + + + diff --git a/tests/data/test1584 b/tests/data/test1584 new file mode 100644 index 000000000000..ab8ba1ecb3c0 --- /dev/null +++ b/tests/data/test1584 @@ -0,0 +1,55 @@ + + + + +HTTP +HTTP GET +-J + + + +# + + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=log/server/name%TESTNUMBER + +12345 + + + +# +# Client-side + + +http + + +HTTP GET with -J and Content-Disposition including path + + +http://%HOSTIP:%HTTPPORT/%TESTNUMBER -J -O --output-dir %LOGDIR + + + +# +# Verify data after the test has been "shot" + + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + + + +12345 + + + + diff --git a/tests/data/test1585 b/tests/data/test1585 new file mode 100644 index 000000000000..6875ac860326 --- /dev/null +++ b/tests/data/test1585 @@ -0,0 +1,55 @@ + + + + +HTTP +HTTP GET +-J + + + +# + + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Content-Type: text/html +Content-Disposition: filename=log\server\name%TESTNUMBER + +12345 + + + +# +# Client-side + + +http + + +HTTP GET with -J and Content-Disposition including DOS path + + +http://%HOSTIP:%HTTPPORT/%TESTNUMBER -J -O --output-dir %LOGDIR + + + +# +# Verify data after the test has been "shot" + + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + + + +12345 + + + + diff --git a/tests/data/test159 b/tests/data/test159 index cc183855a71f..f7af28a272be 100644 --- a/tests/data/test159 +++ b/tests/data/test159 @@ -15,25 +15,25 @@ HTTP NTLM auth This is supposed to be returned when the server gets a first Authorization: NTLM line passed-in from the client --> - -HTTP/1.1 401 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Connection: close - + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Connection: close + This is not the real page either! - -HTTP/1.1 401 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Connection: close - + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Connection: close + This is not the real page either! @@ -60,13 +60,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --ntlm -0 # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.0 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.0 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1590 b/tests/data/test1590 index ea860215fed7..8d459601be8a 100644 --- a/tests/data/test1590 +++ b/tests/data/test1590 @@ -10,14 +10,14 @@ FETCH # # Server-side - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -51,7 +51,5 @@ imap://localhost:%IMAPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - - diff --git a/tests/data/test1591 b/tests/data/test1591 index 738696db1c7d..f5971e8f2948 100644 --- a/tests/data/test1591 +++ b/tests/data/test1591 @@ -40,21 +40,21 @@ more than one byte # Verify data after the test has been "shot" - -PUT /bzz/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Transfer-Encoding: chunked -Trailer: my-super-awesome-trailer, my-other-awesome-trailer -Expect: 100-continue - -e -Hello Cloud! - -0 -my-super-awesome-trailer: trail1 -my-other-awesome-trailer: trail2 - + +PUT /bzz/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Transfer-Encoding: chunked +Trailer: my-super-awesome-trailer, my-other-awesome-trailer +Expect: 100-continue + +e +Hello Cloud! + +0 +my-super-awesome-trailer: trail1 +my-other-awesome-trailer: trail2 + diff --git a/tests/data/test1593 b/tests/data/test1593 index 60d9f0b87d68..3c753f10057c 100644 --- a/tests/data/test1593 +++ b/tests/data/test1593 @@ -36,11 +36,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Note here the lack of If-Modified-Since - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + diff --git a/tests/data/test1594 b/tests/data/test1594 index a93f89d374a2..e69da53a0bfd 100644 --- a/tests/data/test1594 +++ b/tests/data/test1594 @@ -36,11 +36,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + Retry-After 22 diff --git a/tests/data/test1595 b/tests/data/test1595 index 4dade7c199a3..2094713224d0 100644 --- a/tests/data/test1595 +++ b/tests/data/test1595 @@ -35,11 +35,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + Retry-After 0 diff --git a/tests/data/test1596 b/tests/data/test1596 index 2f4084a28bf1..c296ed7a6b97 100644 --- a/tests/data/test1596 +++ b/tests/data/test1596 @@ -36,11 +36,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + # Retry-After time is limited to 6 hours (21600 seconds) diff --git a/tests/data/test1598 b/tests/data/test1598 index eb0ade1040fe..a85c1246922b 100644 --- a/tests/data/test1598 +++ b/tests/data/test1598 @@ -40,20 +40,20 @@ more than one byte # Verify data after the test has been "shot" - -POST /bzz/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Trailer: my-super-awesome-trailer, my-other-awesome-trailer -Transfer-Encoding: chunked -Content-Type: application/x-www-form-urlencoded - -11 -xxx=yyy&aaa=bbbbb -0 -my-super-awesome-trailer: trail1 -my-other-awesome-trailer: trail2 - + +POST /bzz/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Trailer: my-super-awesome-trailer, my-other-awesome-trailer +Transfer-Encoding: chunked +Content-Type: application/x-www-form-urlencoded + +11 +xxx=yyy&aaa=bbbbb +0 +my-super-awesome-trailer: trail1 +my-other-awesome-trailer: trail2 + diff --git a/tests/data/test16 b/tests/data/test16 index be3fc8853cae..e32c8a0f48e7 100644 --- a/tests/data/test16 +++ b/tests/data/test16 @@ -10,14 +10,14 @@ HTTP proxy Basic auth # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Type: text/html -Funny-head: yesyes -Content-Length: 22 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Type: text/html +Funny-head: yesyes +Content-Length: 22 + the content goes here @@ -40,14 +40,14 @@ proxy # Verify data after the test has been "shot" - -GET http://we.want.that.site.com/%TESTNUMBER HTTP/1.1 -Host: we.want.that.site.com -Proxy-Authorization: Basic %b64[fake@user:loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://we.want.that.site.com/%TESTNUMBER HTTP/1.1 +Host: we.want.that.site.com +Proxy-Authorization: Basic %b64[fake@user:loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test160 b/tests/data/test160 index e74a40b66af1..1645a09853b6 100644 --- a/tests/data/test160 +++ b/tests/data/test160 @@ -9,18 +9,18 @@ DELAY # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 9 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 9 + surprise - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + surprise2 @@ -44,30 +44,30 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER http://%HOSTIP:%HTTPPORT/wantmore/%TES # Verify data after the test has been "shot" - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 9 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 9 + surprise -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + surprise2 - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /wantmore/%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /wantmore/%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test161 b/tests/data/test161 index d8d779376154..201fe52bfaaf 100644 --- a/tests/data/test161 +++ b/tests/data/test161 @@ -34,14 +34,14 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER # This doesn't send QUIT because of known bug: # "7.8 Premature transfer end but healthy control channel" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER # CURLE_PARTIAL_FILE = 18 diff --git a/tests/data/test1613 b/tests/data/test1613 index 040fae3301f3..7135788f3578 100644 --- a/tests/data/test1613 +++ b/tests/data/test1613 @@ -10,15 +10,15 @@ HTTP proxy # # Server-side - -HTTP/1.1 200 OK -Date: Sat, 29 Feb 2020 16:10:44 GMT -Server: Blafasel/1.1 -Last-Modified: Sat, 29 Feb 2020 16:10:44 GMT -Content-Length: 0 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Sat, 29 Feb 2020 16:10:44 GMT +Server: Blafasel/1.1 +Last-Modified: Sat, 29 Feb 2020 16:10:44 GMT +Content-Length: 0 +Connection: close +Content-Type: text/html + @@ -40,14 +40,14 @@ proxy - -OPTIONS * HTTP/1.1 -Host: www.example.org -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Testno: %TESTNUMBER - + +OPTIONS * HTTP/1.1 +Host: www.example.org +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Testno: %TESTNUMBER + diff --git a/tests/data/test1617 b/tests/data/test1617 index 0fe967bd27a7..446e6707ca4a 100644 --- a/tests/data/test1617 +++ b/tests/data/test1617 @@ -10,30 +10,30 @@ Transfer-Encoding # # Server-side - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Transfer-Encoding: gzip, chunked - -2c + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Transfer-Encoding: gzip, chunked + +2c %hex[%1f%8b%08%08%79%9e%ab%41%00%03%6c%61%6c%61%6c%61%00%cb%c9%cc%4b%55%30%e4%52%c8%01%d1%46%5c]hex% %hex[%10%86%31%17%00]hex% -%hex[%02%71%60%18%00%00%00]hex% -0 - +%hex[%02%71%60%18%00%00%00]hex% +0 + - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Transfer-Encoding: gzip, chunked - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Transfer-Encoding: gzip, chunked + line 1 line 2 line 3 @@ -61,15 +61,15 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --tr-encoding -H "Connection: this" -H "Con # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -TE: gzip -Connection: this, TE -Connection: that - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +TE: gzip +Connection: this, TE +Connection: that + diff --git a/tests/data/test162 b/tests/data/test162 index ec0cd2545a32..02809e812757 100644 --- a/tests/data/test162 +++ b/tests/data/test162 @@ -44,14 +44,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --proxy http://%HOSTIP:%HTTPPORT --proxy-us # Verify data after the test has been "shot" - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + 22 diff --git a/tests/data/test163 b/tests/data/test163 index a3bf37530994..14332c16c72e 100644 --- a/tests/data/test163 +++ b/tests/data/test163 @@ -41,7 +41,7 @@ file newlinens? yes please - + %CR [tab][CR] too @@ -52,16 +52,16 @@ yes please ^(Content-Type: multipart/form-data;|------------).* -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 322 -Content-Type: multipart/form-data; boundary=----------------------------c2d1767eb6ac - -------------------------------c2d1767eb6ac -Content-Disposition: form-data; name="name" - +POST /we/want/%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Content-Length: 322%CR +Content-Type: multipart/form-data; boundary=----------------------------c2d1767eb6ac%CR +%CR +------------------------------c2d1767eb6ac%CR +Content-Disposition: form-data; name="name"%CR +%CR contents from a @@ -69,14 +69,14 @@ file newlinens? yes please - + %CR [tab][CR] too - -------------------------------c2d1767eb6ac -Content-Disposition: form-data; name="tool" - -curl -------------------------------c2d1767eb6ac-- +%CR +------------------------------c2d1767eb6ac%CR +Content-Disposition: form-data; name="tool"%CR +%CR +curl%CR +------------------------------c2d1767eb6ac--%CR diff --git a/tests/data/test1630 b/tests/data/test1630 index 019928e9f077..ea538851a7c4 100644 --- a/tests/data/test1630 +++ b/tests/data/test1630 @@ -10,14 +10,14 @@ HTTPS proxy Basic auth # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Type: text/html -Funny-head: yesyes -Content-Length: 22 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Type: text/html +Funny-head: yesyes +Content-Length: 22 + the content goes here @@ -41,14 +41,14 @@ proxy # Verify data after the test has been "shot" - -GET http://we.want.that.site.com/%TESTNUMBER HTTP/1.1 -Host: we.want.that.site.com -Proxy-Authorization: Basic %b64[fake@user:loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://we.want.that.site.com/%TESTNUMBER HTTP/1.1 +Host: we.want.that.site.com +Proxy-Authorization: Basic %b64[fake@user:loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1631 b/tests/data/test1631 index e838700fe790..6e28263b3df9 100644 --- a/tests/data/test1631 +++ b/tests/data/test1631 @@ -11,14 +11,14 @@ flaky # This is the HTTPS proxy response - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Type: text/html -Funny-head: yesyes -Content-Length: 0 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Type: text/html +Funny-head: yesyes +Content-Length: 0 + # This is the FTP server response. The Life and Adventures of Robinson Crusoe @@ -59,29 +59,28 @@ proxy # opens for us, so we can't compare with a known pre-existing number! s/((https.proxy):(\d+))/$2:12345/ -s/^(User-Agent: curl).*/$1/ - -CONNECT ftp.site.thru.https.proxy:12345 HTTP/1.1 -Host: ftp.site.thru.https.proxy:12345 -User-Agent: curl -Proxy-Connection: Keep-Alive - -CONNECT ftp.site.thru.https.proxy:12345 HTTP/1.1 -Host: ftp.site.thru.https.proxy:12345 -User-Agent: curl -Proxy-Connection: Keep-Alive - + +CONNECT ftp.site.thru.https.proxy:12345 HTTP/1.1 +Host: ftp.site.thru.https.proxy:12345 +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +CONNECT ftp.site.thru.https.proxy:12345 HTTP/1.1 +Host: ftp.site.thru.https.proxy:12345 +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1632 b/tests/data/test1632 index 9d877f8f8798..ebf91098d5f8 100644 --- a/tests/data/test1632 +++ b/tests/data/test1632 @@ -11,14 +11,14 @@ flaky # This is the HTTPS proxy response - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Type: text/html -Funny-head: yesyes -Content-Length: 0 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Type: text/html +Funny-head: yesyes +Content-Length: 0 + # This is the FTP server response. The Life and Adventures of Robinson Crusoe @@ -69,37 +69,36 @@ proxy s/((https.proxy):(\d+))/$2:12345/ -s/^(User-Agent: curl).*/$1/ - -CONNECT ftp.site.thru.https.proxy:12345 HTTP/1.1 -Host: ftp.site.thru.https.proxy:12345 -User-Agent: curl -Proxy-Connection: Keep-Alive - -CONNECT ftp.site.thru.https.proxy:12345 HTTP/1.1 -Host: ftp.site.thru.https.proxy:12345 -User-Agent: curl -Proxy-Connection: Keep-Alive - -CONNECT ftp.site.thru.https.proxy:12345 HTTP/1.1 -Host: ftp.site.thru.https.proxy:12345 -User-Agent: curl -Proxy-Connection: Keep-Alive - + +CONNECT ftp.site.thru.https.proxy:12345 HTTP/1.1 +Host: ftp.site.thru.https.proxy:12345 +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +CONNECT ftp.site.thru.https.proxy:12345 HTTP/1.1 +Host: ftp.site.thru.https.proxy:12345 +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +CONNECT ftp.site.thru.https.proxy:12345 HTTP/1.1 +Host: ftp.site.thru.https.proxy:12345 +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -EPSV -SIZE %TESTNUMBER0002 -RETR %TESTNUMBER0002 -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +EPSV +SIZE %TESTNUMBER0002 +RETR %TESTNUMBER0002 +QUIT diff --git a/tests/data/test1633 b/tests/data/test1633 index 0752575942c1..8934fab29d9f 100644 --- a/tests/data/test1633 +++ b/tests/data/test1633 @@ -69,31 +69,31 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -d moo --retry 1 -L # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 3 -Content-Type: application/x-www-form-urlencoded - -mooGET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 3 -Content-Type: application/x-www-form-urlencoded - -mooGET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 3 +Content-Type: application/x-www-form-urlencoded + +mooGET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 3 +Content-Type: application/x-www-form-urlencoded + +mooGET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1634 b/tests/data/test1634 index ee7a50871aa7..4ce7d754200a 100644 --- a/tests/data/test1634 +++ b/tests/data/test1634 @@ -55,17 +55,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --retry 1 --fail # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1635 b/tests/data/test1635 index 751d46232c8b..a0344062393b 100644 --- a/tests/data/test1635 +++ b/tests/data/test1635 @@ -44,17 +44,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --retry 1 --fail-with-body # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + moo diff --git a/tests/data/test164 b/tests/data/test164 index 83f7a107a126..978376e17fef 100644 --- a/tests/data/test164 +++ b/tests/data/test164 @@ -12,30 +12,30 @@ HTTP GET # to avoid XML escaping problems). -HTTP/1.1 206 Partial Content swsclose -Date: Sat, 24 Apr 2004 09:24:49 GMT -Server: Apache/1.3.29 (Unix) mod_throttle/3.1.2 PHP/4.3.4 mod_fastcgi/2.4.0 -Last-Modified: Tue, 23 Mar 2004 08:23:14 GMT -ETag: "53814a-ec5-405ff3f2" -Accept-Ranges: bytes -Content-Length: 187 -Content-Type: multipart/byteranges; boundary=408a326132c - ---408a326132c -Content-type: text/html -Content-range: bytes 0-10/3781 - +HTTP/1.1 206 Partial Content swsclose%CR +Date: Sat, 24 Apr 2004 09:24:49 GMT%CR +Server: Apache/1.3.29 (Unix) mod_throttle/3.1.2 PHP/4.3.4 mod_fastcgi/2.4.0%CR +Last-Modified: Tue, 23 Mar 2004 08:23:14 GMT%CR +ETag: "53814a-ec5-405ff3f2"%CR +Accept-Ranges: bytes%CR +Content-Length: 187%CR +Content-Type: multipart/byteranges; boundary=408a326132c%CR +%CR +--408a326132c%CR +Content-type: text/html%CR +Content-range: bytes 0-10/3781%CR +%CR {html} {hea - ---408a326132c -Content-type: text/html -Content-range: bytes 12-15/3781 - +%CR +--408a326132c%CR +Content-type: text/html%CR +Content-range: bytes 12-15/3781%CR +%CR } {t - ---408a326132c-- +%CR +--408a326132c--%CR @@ -54,13 +54,13 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER -r 0-10,12-15 # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=0-10,12-15 -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=0-10,12-15 +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test165 b/tests/data/test165 index 4996a3564f5b..0d1c2ebdd0e5 100644 --- a/tests/data/test165 +++ b/tests/data/test165 @@ -11,13 +11,13 @@ IDN # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Content-Type: text/html +Funny-head: yesyes + @@ -46,19 +46,19 @@ http://www.%hex[%c3%a5%c3%a4%c3%b6]hex%.se/page/%TESTNUMBER -x %HOSTIP:%HTTPPORT # # Verify data after the test has been "shot" - -GET http://www.xn--4cab6c.se/page/%TESTNUMBER HTTP/1.1 -Host: www.xn--4cab6c.se -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://www.xn--groe-xna.de/page/%TESTNUMBER HTTP/1.1 -Host: www.xn--groe-xna.de -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://www.xn--4cab6c.se/page/%TESTNUMBER HTTP/1.1 +Host: www.xn--4cab6c.se +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://www.xn--groe-xna.de/page/%TESTNUMBER HTTP/1.1 +Host: www.xn--groe-xna.de +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1654 b/tests/data/test1654 index 5659277ce3c1..8f3cae15569e 100644 --- a/tests/data/test1654 +++ b/tests/data/test1654 @@ -27,7 +27,7 @@ h2 example.com 443 h3 shiny.example.com 8443 "20191231 00:00:00" 0 0 # a comment h2 foo.example.com 443 h3 shiny.example.com 8443 "20291231 23:30:00" 0 0 h1 example.com 443 h3 shiny.example.com 8443 "20121231 00:00:01" 0 0 - h3 example.com 443 h3 shiny.example.com 8443 "20131231 00:00:00" 0 0 +%TABh3 example.com 443 h3 shiny.example.com 8443 "20131231 00:00:00" 0 0 # also a comment bad example.com 443 h3 shiny.example.com 8443 "20191231 00:00:00" 0 0 rubbish diff --git a/tests/data/test166 b/tests/data/test166 index 0951b2359dce..86f6a6058427 100644 --- a/tests/data/test166 +++ b/tests/data/test166 @@ -44,20 +44,20 @@ data inside the file ^(Content-Type: multipart/form-data;|------------).* -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 235 -Content-Type: multipart/form-data; boundary=----------------------------b0b3d6d23991 - -------------------------------b0b3d6d23991 -Content-Disposition: form-data; name="name"; filename="fie ld %TESTNUMBER" -Content-Type: application/octet-stream - +POST /we/want/%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Content-Length: 235%CR +Content-Type: multipart/form-data; boundary=----------------------------b0b3d6d23991%CR +%CR +------------------------------b0b3d6d23991%CR +Content-Disposition: form-data; name="name"; filename="fie ld %TESTNUMBER"%CR +Content-Type: application/octet-stream%CR +%CR data inside the file - -------------------------------b0b3d6d23991-- +%CR +------------------------------b0b3d6d23991--%CR diff --git a/tests/data/test1664 b/tests/data/test1664 index b36ef3597d1d..fa0b3a377c0d 100644 --- a/tests/data/test1664 +++ b/tests/data/test1664 @@ -68,7 +68,7 @@ curlx_str_singlespace 3: ("b") 5, line 0 4: ("\") 5, line 0 5: (" ") 0, line 1 -6: (" ") 5, line 0 +6: ("%TAB") 5, line 0 7: (" ") 5, line 0 8: ("") 5, line 0 diff --git a/tests/data/test167 b/tests/data/test167 index 7221e3c3236e..f3f17897c1d4 100644 --- a/tests/data/test167 +++ b/tests/data/test167 @@ -11,28 +11,28 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 Authorization Required swsclose -WWW-Authenticate: Digest realm="weirdorealm", nonce="12345" - + +HTTP/1.1 401 Authorization Required swsclose +WWW-Authenticate: Digest realm="weirdorealm", nonce="12345" + - -HTTP/1.1 200 OK swsclose + +HTTP/1.1 200 OK swsclose Server: no Content-Length: 15 - + Nice auth sir! - -HTTP/1.1 401 Authorization Required swsclose -WWW-Authenticate: Digest realm="weirdorealm", nonce="12345" - -HTTP/1.1 200 OK swsclose + +HTTP/1.1 401 Authorization Required swsclose +WWW-Authenticate: Digest realm="weirdorealm", nonce="12345" + +HTTP/1.1 200 OK swsclose Server: no Content-Length: 15 - + Nice auth sir! @@ -58,22 +58,22 @@ http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER --proxy http://% # Verify data after the test has been "shot" - -GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 -Host: data.from.server.requiring.digest.hohoho.com -Proxy-Authorization: Basic %b64[foo:bar]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 -Host: data.from.server.requiring.digest.hohoho.com -Proxy-Authorization: Basic %b64[foo:bar]b64% -Authorization: Digest username="digest", realm="weirdorealm", nonce="12345", uri="/%TESTNUMBER", response="304c55b19dbcb9c7e7a3354abd11ba1b" -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 +Host: data.from.server.requiring.digest.hohoho.com +Proxy-Authorization: Basic %b64[foo:bar]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 +Host: data.from.server.requiring.digest.hohoho.com +Proxy-Authorization: Basic %b64[foo:bar]b64% +Authorization: Digest username="digest", realm="weirdorealm", nonce="12345", uri="/%TESTNUMBER", response="304c55b19dbcb9c7e7a3354abd11ba1b" +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test1670 b/tests/data/test1670 index 34d79f766fce..887a9b36a494 100644 --- a/tests/data/test1670 +++ b/tests/data/test1670 @@ -47,12 +47,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -w '%header{etag} %header{nope} %header{DAT # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + "21025-dc7-39462498" Tue, 09 Nov 2010 14:49:00 GMT diff --git a/tests/data/test1671 b/tests/data/test1671 index 43753b527de3..08ea2b1787b6 100644 --- a/tests/data/test1671 +++ b/tests/data/test1671 @@ -50,12 +50,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -w '%{header_json}\n' -o %LOGDIR/%TESTNUMBE # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + {"date":["Tue, 09 Nov 2010 14:49:00 GMT"], diff --git a/tests/data/test168 b/tests/data/test168 index db4473ce98a7..167bab4d2843 100644 --- a/tests/data/test168 +++ b/tests/data/test168 @@ -13,40 +13,40 @@ HTTP Digest auth # this is returned first since we get no proxy-auth - -HTTP/1.1 407 Authorization Required to proxy me my dear swsclose -Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" - + +HTTP/1.1 407 Authorization Required to proxy me my dear swsclose +Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" + And you should ignore this data. # then this is returned since we get no server-auth - -HTTP/1.1 401 Authorization to the remote host as well swsbounce swsclose -WWW-Authenticate: Digest realm="realmweirdo", nonce="123456" - + +HTTP/1.1 401 Authorization to the remote host as well swsbounce swsclose +WWW-Authenticate: Digest realm="realmweirdo", nonce="123456" + you should ignore this data too - -HTTP/1.1 200 OK swsclose + +HTTP/1.1 200 OK swsclose Server: no Content-Length: 15 - + Nice auth sir! - -HTTP/1.1 407 Authorization Required to proxy me my dear swsclose -Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" - -HTTP/1.1 401 Authorization to the remote host as well swsbounce swsclose -WWW-Authenticate: Digest realm="realmweirdo", nonce="123456" - -HTTP/1.1 200 OK swsclose + +HTTP/1.1 407 Authorization Required to proxy me my dear swsclose +Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" + +HTTP/1.1 401 Authorization to the remote host as well swsbounce swsclose +WWW-Authenticate: Digest realm="realmweirdo", nonce="123456" + +HTTP/1.1 200 OK swsclose Server: no Content-Length: 15 - + Nice auth sir! @@ -72,28 +72,28 @@ http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER --proxy http://% # Verify data after the test has been "shot" - -GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 -Host: data.from.server.requiring.digest.hohoho.com -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 -Host: data.from.server.requiring.digest.hohoho.com -Proxy-Authorization: Digest username="foo", realm="weirdorealm", nonce="12345", uri="/%TESTNUMBER", response="fb8608e00ad9239a3dedb14bc8575976" -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 -Host: data.from.server.requiring.digest.hohoho.com -Proxy-Authorization: Digest username="foo", realm="weirdorealm", nonce="12345", uri="/%TESTNUMBER", response="fb8608e00ad9239a3dedb14bc8575976" -Authorization: Digest username="digest", realm="realmweirdo", nonce="123456", uri="/%TESTNUMBER", response="bfecb43898f3db12543650d45493313b" -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 +Host: data.from.server.requiring.digest.hohoho.com +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 +Host: data.from.server.requiring.digest.hohoho.com +Proxy-Authorization: Digest username="foo", realm="weirdorealm", nonce="12345", uri="/%TESTNUMBER", response="fb8608e00ad9239a3dedb14bc8575976" +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 +Host: data.from.server.requiring.digest.hohoho.com +Proxy-Authorization: Digest username="foo", realm="weirdorealm", nonce="12345", uri="/%TESTNUMBER", response="fb8608e00ad9239a3dedb14bc8575976" +Authorization: Digest username="digest", realm="realmweirdo", nonce="123456", uri="/%TESTNUMBER", response="bfecb43898f3db12543650d45493313b" +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test169 b/tests/data/test169 index 8a2bb108a91f..100668d9bd4b 100644 --- a/tests/data/test169 +++ b/tests/data/test169 @@ -14,59 +14,59 @@ NTLM # this is returned first since we get no proxy-auth - -HTTP/1.1 407 Authorization Required to proxy me my dear swsclose -Proxy-Authenticate: NTLM - + +HTTP/1.1 407 Authorization Required to proxy me my dear swsclose +Proxy-Authenticate: NTLM + And you should ignore this data. # then this is returned since we get no server-auth - -HTTP/1.1 200 Authorizated fine -Content-Length: 27 - + +HTTP/1.1 200 Authorizated fine +Content-Length: 27 + Welcome to the end station - -HTTP/1.1 407 NTLM type-1 received sending back type-2 -Server: Microsoft-IIS/5.0 -Content-Length: 34 -Content-Type: text/html; charset=iso-8859-1 -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - + +HTTP/1.1 407 NTLM type-1 received sending back type-2 +Server: Microsoft-IIS/5.0 +Content-Length: 34 +Content-Type: text/html; charset=iso-8859-1 +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + This is not the real page either! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 401 You now need to authenticate with the host -Server: Microsoft-IIS/5.0 -WWW-Authenticate: Digest realm="r e a l m", nonce="abcdef" -Content-Length: 46 -Content-Type: text/html; charset=iso-8859-1 - + +HTTP/1.1 401 You now need to authenticate with the host +Server: Microsoft-IIS/5.0 +WWW-Authenticate: Digest realm="r e a l m", nonce="abcdef" +Content-Length: 46 +Content-Type: text/html; charset=iso-8859-1 + We have not authenticated with the server yet - -HTTP/1.1 407 NTLM type-1 received sending back type-2 -Server: Microsoft-IIS/5.0 -Content-Length: 34 -Content-Type: text/html; charset=iso-8859-1 -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - -HTTP/1.1 401 You now need to authenticate with the host -Server: Microsoft-IIS/5.0 -WWW-Authenticate: Digest realm="r e a l m", nonce="abcdef" -Content-Length: 46 -Content-Type: text/html; charset=iso-8859-1 - -HTTP/1.1 200 Authorizated fine -Content-Length: 27 - + +HTTP/1.1 407 NTLM type-1 received sending back type-2 +Server: Microsoft-IIS/5.0 +Content-Length: 34 +Content-Type: text/html; charset=iso-8859-1 +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + +HTTP/1.1 401 You now need to authenticate with the host +Server: Microsoft-IIS/5.0 +WWW-Authenticate: Digest realm="r e a l m", nonce="abcdef" +Content-Length: 46 +Content-Type: text/html; charset=iso-8859-1 + +HTTP/1.1 200 Authorizated fine +Content-Length: 27 + Welcome to the end station @@ -93,28 +93,28 @@ http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER --proxy http://% # Verify data after the test has been "shot" - -GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 -Host: data.from.server.requiring.digest.hohoho.com -Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 -Host: data.from.server.requiring.digest.hohoho.com -Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 -Host: data.from.server.requiring.digest.hohoho.com -Authorization: Digest username="digest", realm="r e a l m", nonce="abcdef", uri="/%TESTNUMBER", response="89b737a4b6eefde285c093c92e9bd6ea" -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 +Host: data.from.server.requiring.digest.hohoho.com +Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 +Host: data.from.server.requiring.digest.hohoho.com +Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 +Host: data.from.server.requiring.digest.hohoho.com +Authorization: Digest username="digest", realm="r e a l m", nonce="abcdef", uri="/%TESTNUMBER", response="89b737a4b6eefde285c093c92e9bd6ea" +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test17 b/tests/data/test17 index 67d2a9fcc750..31e2a8e53648 100644 --- a/tests/data/test17 +++ b/tests/data/test17 @@ -43,12 +43,12 @@ request MOOO # Verify data after the test has been "shot" - -MOOO /that.site.com/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: agent007 license to drill -Accept: */* - + +MOOO /that.site.com/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: agent007 license to drill%TAB +Accept: */* + diff --git a/tests/data/test170 b/tests/data/test170 index f8c7357e681d..05c2091ba264 100644 --- a/tests/data/test170 +++ b/tests/data/test170 @@ -34,15 +34,15 @@ http://a.galaxy.far.far.away/%TESTNUMBER --proxy http://%HOSTIP:%HTTPPORT --prox # Verify data after the test has been "shot" - -POST http://a.galaxy.far.far.away/%TESTNUMBER HTTP/1.1 -Host: a.galaxy.far.far.away -Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 0 - + +POST http://a.galaxy.far.far.away/%TESTNUMBER HTTP/1.1 +Host: a.galaxy.far.far.away +Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 0 + # 52 is CURLE_GOT_NOTHING diff --git a/tests/data/test1700 b/tests/data/test1700 index be5644db5a68..e75c1f3d1a43 100644 --- a/tests/data/test1700 +++ b/tests/data/test1700 @@ -10,27 +10,27 @@ HTTP/2 # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + -foo- - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 +Connection: close +Content-Type: text/html + -maa- @@ -59,40 +59,40 @@ http://%HOSTIP:%HTTP2PORT/%TESTNUMBER --http2 http://%HOSTIP:%HTTP2PORT/%TESTNUM ^X-Forwarded-Proto:.* ^Via:.* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTP2PORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTP2PORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTP2PORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTP2PORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 101 Switching Protocols -Connection: Upgrade -Upgrade: h2c - -HTTP/2 200 -date: Tue, 09 Nov 2010 14:49:00 GMT -last-modified: Tue, 13 Jun 2000 12:10:00 GMT -etag: "21025-dc7-39462498" -accept-ranges: bytes -content-length: 6 -content-type: text/html -funny-head: yesyes -via: 1.1 nghttpx - + +HTTP/1.1 101 Switching Protocols +Connection: Upgrade +Upgrade: h2c + +HTTP/2 200%SP +date: Tue, 09 Nov 2010 14:49:00 GMT +last-modified: Tue, 13 Jun 2000 12:10:00 GMT +etag: "21025-dc7-39462498" +accept-ranges: bytes +content-length: 6 +content-type: text/html +funny-head: yesyes +via: 1.1 nghttpx + -foo- -HTTP/2 200 -date: Tue, 09 Nov 2010 14:49:00 GMT -content-length: 6 -content-type: text/html -via: 1.1 nghttpx - +HTTP/2 200%SP +date: Tue, 09 Nov 2010 14:49:00 GMT +content-length: 6 +content-type: text/html +via: 1.1 nghttpx + -maa- diff --git a/tests/data/test1701 b/tests/data/test1701 index 469026d79d00..ecc5f6f17ce0 100644 --- a/tests/data/test1701 +++ b/tests/data/test1701 @@ -10,18 +10,18 @@ HTTP/2 # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + -foo- @@ -50,31 +50,31 @@ http://%HOSTIP:%HTTP2PORT/%TESTNUMBER --http2 -d "datatosend" ^X-Forwarded-Proto:.* ^Via:.* - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTP2PORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 10 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTP2PORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 10 +Content-Type: application/x-www-form-urlencoded + datatosend - -HTTP/1.1 101 Switching Protocols -Connection: Upgrade -Upgrade: h2c - -HTTP/2 200 -date: Tue, 09 Nov 2010 14:49:00 GMT -last-modified: Tue, 13 Jun 2000 12:10:00 GMT -etag: "21025-dc7-39462498" -accept-ranges: bytes -content-length: 6 -content-type: text/html -funny-head: yesyes -via: 1.1 nghttpx - + +HTTP/1.1 101 Switching Protocols +Connection: Upgrade +Upgrade: h2c + +HTTP/2 200%SP +date: Tue, 09 Nov 2010 14:49:00 GMT +last-modified: Tue, 13 Jun 2000 12:10:00 GMT +etag: "21025-dc7-39462498" +accept-ranges: bytes +content-length: 6 +content-type: text/html +funny-head: yesyes +via: 1.1 nghttpx + -foo- diff --git a/tests/data/test1702 b/tests/data/test1702 index ce4a1c04d49b..96acf700d3ed 100644 --- a/tests/data/test1702 +++ b/tests/data/test1702 @@ -10,18 +10,18 @@ HTTP/2 # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + @@ -49,28 +49,28 @@ http://%HOSTIP:%HTTP2PORT/%TESTNUMBER --http2 --head ^X-Forwarded-Proto:.* ^Via:.* - -HEAD /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTP2PORT -User-Agent: curl/%VERSION -Accept: */* - + +HEAD /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTP2PORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 101 Switching Protocols -Connection: Upgrade -Upgrade: h2c - -HTTP/2 200 -date: Tue, 09 Nov 2010 14:49:00 GMT -last-modified: Tue, 13 Jun 2000 12:10:00 GMT -etag: "21025-dc7-39462498" -accept-ranges: bytes -content-length: 6 -content-type: text/html -funny-head: yesyes -via: 1.1 nghttpx - + +HTTP/1.1 101 Switching Protocols +Connection: Upgrade +Upgrade: h2c + +HTTP/2 200%SP +date: Tue, 09 Nov 2010 14:49:00 GMT +last-modified: Tue, 13 Jun 2000 12:10:00 GMT +etag: "21025-dc7-39462498" +accept-ranges: bytes +content-length: 6 +content-type: text/html +funny-head: yesyes +via: 1.1 nghttpx + s/^server: nghttpx.*\r?\n// diff --git a/tests/data/test1704 b/tests/data/test1704 index 324551a068d7..2a5a942e7187 100644 --- a/tests/data/test1704 +++ b/tests/data/test1704 @@ -10,15 +10,15 @@ HTTP/2 # # Server-side - -HTTP/2 101 OK + +HTTP/2 101 OK HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 -Connection: close -Content-Type: text/html - +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 +Connection: close +Content-Type: text/html + -maa- @@ -47,15 +47,15 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --http2 ^X-Forwarded-Proto:.* ^Via:.* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Upgrade: h2c -HTTP2-Settings: AAMAAABkAAQAAQAAAAIAAAAA -Connection: Upgrade, HTTP2-Settings - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Upgrade: h2c +HTTP2-Settings: AAMAAABkAAQAAQAAAAIAAAAA +Connection: Upgrade, HTTP2-Settings + # CURLE_WEIRD_SERVER_REPLY (8) diff --git a/tests/data/test171 b/tests/data/test171 index a03ec8a6883f..bfdde56baafa 100644 --- a/tests/data/test171 +++ b/tests/data/test171 @@ -10,14 +10,14 @@ cookies # Server-side - -HTTP/1.1 200 OK -Date: Tue, 25 Sep 2001 19:37:44 GMT -Content-Type: text/html -Set-Cookie: XToken=xt;Domain=.z.x.com;Path=/ -Cache-control: private -Content-Length: 62 - + +HTTP/1.1 200 OK +Date: Tue, 25 Sep 2001 19:37:44 GMT +Content-Type: text/html +Set-Cookie: XToken=xt;Domain=.z.x.com;Path=/ +Cache-control: private +Content-Length: 62 + This server reply is for testing a simple cookie test case... @@ -41,13 +41,13 @@ proxy # Verify data after the test has been "shot" - -GET http://z.x.com/%TESTNUMBER HTTP/1.1 -Host: z.x.com -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://z.x.com/%TESTNUMBER HTTP/1.1 +Host: z.x.com +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + # Netscape HTTP Cookie File diff --git a/tests/data/test1711 b/tests/data/test1711 index 077dd74be9ea..709266eac619 100644 --- a/tests/data/test1711 +++ b/tests/data/test1711 @@ -19,11 +19,11 @@ smtp Send >64K over SMTP - -From: different -To: another - -%repeat[5000 x test in body... ]% + +From: different +To: another + +%repeat[5000 x test in body... ]% smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -T %LOGDIR/email%TESTNUMBER @@ -40,12 +40,12 @@ RCPT TO: DATA QUIT - -From: different -To: another - -%repeat[5000 x test in body... ]% -. + +From: different +To: another + +%repeat[5000 x test in body... ]% +. diff --git a/tests/data/test172 b/tests/data/test172 index 3a9a9ed6648a..cbf91d0bcec7 100644 --- a/tests/data/test172 +++ b/tests/data/test172 @@ -9,11 +9,11 @@ cookies # Server-side - -HTTP/1.1 200 OK -Content-Length: 4 -Connection: close - + +HTTP/1.1 200 OK +Content-Length: 4 +Connection: close + boo @@ -45,13 +45,13 @@ cookies # Verify data after the test has been "shot" - -GET /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Cookie: nodomain=value; partmatch=present; tool=curl; name=fool - + +GET /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Cookie: nodomain=value; partmatch=present; tool=curl; name=fool + diff --git a/tests/data/test173 b/tests/data/test173 index 5e6f75169766..e31f6d22dd38 100644 --- a/tests/data/test173 +++ b/tests/data/test173 @@ -52,21 +52,21 @@ line8 ^(Content-Type: multipart/form-data;|------------).* -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 378 -Content-Type: multipart/form-data; boundary=----------------------------5dbea401cd8c - -------------------------------5dbea401cd8c -Content-Disposition: form-data; name="field1" - -contents1 -------------------------------5dbea401cd8c -Content-Disposition: form-data; name="fileupload"; filename="%DEV_NULL" -Content-Type: text/x-null;format=x-curl - +POST /we/want/%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Content-Length: 378%CR +Content-Type: multipart/form-data; boundary=----------------------------5dbea401cd8c%CR +%CR +------------------------------5dbea401cd8c%CR +Content-Disposition: form-data; name="field1"%CR +%CR +contents1%CR +------------------------------5dbea401cd8c%CR +Content-Disposition: form-data; name="fileupload"; filename="%DEV_NULL"%CR +Content-Type: text/x-null;format=x-curl%CR +%CR line1 line2 line3 @@ -75,8 +75,8 @@ line5 line6 line7 line8 - -------------------------------5dbea401cd8c-- +%CR +------------------------------5dbea401cd8c--%CR diff --git a/tests/data/test174 b/tests/data/test174 index 399164425d34..80a5141dd49a 100644 --- a/tests/data/test174 +++ b/tests/data/test174 @@ -8,13 +8,13 @@ HTTP POST # Server-side - -HTTP/1.1 200 foobar swsclose -Server: Microsoft-IIS/6.0 -Authentication-Info: Passport1.4 tname=MSPAuth,tname=MSPProf,tname=MSPConsent,tname=MSPSecAuth -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 200 foobar swsclose +Server: Microsoft-IIS/6.0 +Authentication-Info: Passport1.4 tname=MSPAuth,tname=MSPProf,tname=MSPConsent,tname=MSPSecAuth +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page @@ -35,14 +35,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --anyauth -d "junkelij # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 11 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 11 +Content-Type: application/x-www-form-urlencoded + junkelijunk diff --git a/tests/data/test175 b/tests/data/test175 index 2af0a9b843b2..d74f7de6f1a1 100644 --- a/tests/data/test175 +++ b/tests/data/test175 @@ -9,35 +9,35 @@ HTTP Digest auth # Server-side - -HTTP/1.1 200 foobar swsclose swsbounce -Server: Microsoft-IIS/6.0 -Authentication-Info: Passport1.4 tname=MSPAuth,tname=MSPProf,tname=MSPConsent,tname=MSPSecAuth -Content-Type: text/html; charset=iso-8859-1 - + +HTTP/1.1 200 foobar swsclose swsbounce +Server: Microsoft-IIS/6.0 +Authentication-Info: Passport1.4 tname=MSPAuth,tname=MSPProf,tname=MSPConsent,tname=MSPSecAuth +Content-Type: text/html; charset=iso-8859-1 + This is not the real page - -HTTP/1.1 200 moo swsclose -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 16 - + +HTTP/1.1 200 moo swsclose +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 16 + content for you - -HTTP/1.1 200 foobar swsclose swsbounce -Server: Microsoft-IIS/6.0 -Authentication-Info: Passport1.4 tname=MSPAuth,tname=MSPProf,tname=MSPConsent,tname=MSPSecAuth -Content-Type: text/html; charset=iso-8859-1 - -HTTP/1.1 200 moo swsclose -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 16 - + +HTTP/1.1 200 foobar swsclose swsbounce +Server: Microsoft-IIS/6.0 +Authentication-Info: Passport1.4 tname=MSPAuth,tname=MSPProf,tname=MSPConsent,tname=MSPSecAuth +Content-Type: text/html; charset=iso-8859-1 + +HTTP/1.1 200 moo swsclose +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 16 + content for you @@ -63,21 +63,21 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u auser:apasswd --digest -d "junkelijunk" # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 0 -Content-Type: application/x-www-form-urlencoded - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 11 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 0 +Content-Type: application/x-www-form-urlencoded + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 11 +Content-Type: application/x-www-form-urlencoded + junkelijunk diff --git a/tests/data/test176 b/tests/data/test176 index f86fa7f677e7..ad2f61422bff 100644 --- a/tests/data/test176 +++ b/tests/data/test176 @@ -10,35 +10,35 @@ HTTP NTLM auth # Server-side # the first request has NTLM type-1 included, and then the 1001 is returned - -HTTP/1.1 200 foobar swsclose -Server: Microsoft-IIS/6.0 -Authentication-Info: Passport1.4 tname=MSPAuth,tname=MSPProf,tname=MSPConsent,tname=MSPSecAuth -Content-Type: text/html; charset=iso-8859-1 - + +HTTP/1.1 200 foobar swsclose +Server: Microsoft-IIS/6.0 +Authentication-Info: Passport1.4 tname=MSPAuth,tname=MSPProf,tname=MSPConsent,tname=MSPSecAuth +Content-Type: text/html; charset=iso-8859-1 + # the second request should be auth-less and then this is returned. - -HTTP/1.1 200 moo swsclose -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 16 - + +HTTP/1.1 200 moo swsclose +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 16 + content for you - -HTTP/1.1 200 foobar swsclose -Server: Microsoft-IIS/6.0 -Authentication-Info: Passport1.4 tname=MSPAuth,tname=MSPProf,tname=MSPConsent,tname=MSPSecAuth -Content-Type: text/html; charset=iso-8859-1 - -HTTP/1.1 200 moo swsclose -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 16 - + +HTTP/1.1 200 foobar swsclose +Server: Microsoft-IIS/6.0 +Authentication-Info: Passport1.4 tname=MSPAuth,tname=MSPProf,tname=MSPConsent,tname=MSPSecAuth +Content-Type: text/html; charset=iso-8859-1 + +HTTP/1.1 200 moo swsclose +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 16 + content for you @@ -64,22 +64,22 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u auser:apasswd --ntlm -d "junkelijunk" # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 0 -Content-Type: application/x-www-form-urlencoded - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 11 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 0 +Content-Type: application/x-www-form-urlencoded + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 11 +Content-Type: application/x-www-form-urlencoded + junkelijunk diff --git a/tests/data/test177 b/tests/data/test177 index 2034876d9087..2825c81c7a1f 100644 --- a/tests/data/test177 +++ b/tests/data/test177 @@ -10,12 +10,12 @@ followlocation # Server-side - -HTTP/1.1 302 *MOVED* swsclose swsbounce -Server: Microsoft-IIS/6.0 -Location: /mooooo/%TESTNUMBER -Content-Type: text/html; charset=iso-8859-1 - + +HTTP/1.1 302 *MOVED* swsclose swsbounce +Server: Microsoft-IIS/6.0 +Location: /mooooo/%TESTNUMBER +Content-Type: text/html; charset=iso-8859-1 + @@ -39,14 +39,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u auser:apasswd --digest -d "junkelijunk" # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 0 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 0 +Content-Type: application/x-www-form-urlencoded + diff --git a/tests/data/test178 b/tests/data/test178 index afff507273b2..b7a13f278cb6 100644 --- a/tests/data/test178 +++ b/tests/data/test178 @@ -41,12 +41,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # weird_server_reply diff --git a/tests/data/test179 b/tests/data/test179 index e3869b7fbf16..312b3d2981c9 100644 --- a/tests/data/test179 +++ b/tests/data/test179 @@ -46,14 +46,14 @@ proxy # Verify data after the test has been "shot" - -GET http://supertrooper.fake/c/%TESTNUMBER HTTP/1.1 -Host: supertrooper.fake -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Cookie: moo2=indeed - + +GET http://supertrooper.fake/c/%TESTNUMBER HTTP/1.1 +Host: supertrooper.fake +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Cookie: moo2=indeed + diff --git a/tests/data/test18 b/tests/data/test18 index ae31da29e758..3a92136d2136 100644 --- a/tests/data/test18 +++ b/tests/data/test18 @@ -9,25 +9,25 @@ globbing # Server-side - -HTTP/1.1 200 OK -Funny-head: yesyes -Content-Length: 4 - + +HTTP/1.1 200 OK +Funny-head: yesyes +Content-Length: 4 + moo - -HTTP/1.1 200 OK -Funny-head: yesyes -Content-Length: 4 - + +HTTP/1.1 200 OK +Funny-head: yesyes +Content-Length: 4 + foo - -HTTP/1.1 200 OK -Funny-head: yesyes -Content-Length: 4 - + +HTTP/1.1 200 OK +Funny-head: yesyes +Content-Length: 4 + hoo @@ -47,38 +47,38 @@ multiple requests using {} in URL # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0003 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0003 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 OK -Funny-head: yesyes -Content-Length: 4 - + +HTTP/1.1 200 OK +Funny-head: yesyes +Content-Length: 4 + moo -HTTP/1.1 200 OK -Funny-head: yesyes -Content-Length: 4 - +HTTP/1.1 200 OK +Funny-head: yesyes +Content-Length: 4 + foo -HTTP/1.1 200 OK -Funny-head: yesyes -Content-Length: 4 - +HTTP/1.1 200 OK +Funny-head: yesyes +Content-Length: 4 + hoo diff --git a/tests/data/test180 b/tests/data/test180 index 62a505d5fa97..1e15e64c9791 100644 --- a/tests/data/test180 +++ b/tests/data/test180 @@ -44,13 +44,13 @@ the # Verify data after the test has been "shot" - -PUT /we/want/%TESTNUMBER HTTP/1.0 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 78 - + +PUT /we/want/%TESTNUMBER HTTP/1.0 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 78 + Weird file to diff --git a/tests/data/test1800 b/tests/data/test1800 index 222437e8e179..459bbd9701a0 100644 --- a/tests/data/test1800 +++ b/tests/data/test1800 @@ -42,15 +42,15 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --http2 - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Upgrade: %H2CVER -HTTP2-Settings: AAMAAABkAAQAAQAAAAIAAAAA -Connection: Upgrade, HTTP2-Settings - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Upgrade: %H2CVER +HTTP2-Settings: AAMAAABkAAQAAQAAAAIAAAAA +Connection: Upgrade, HTTP2-Settings + diff --git a/tests/data/test1801 b/tests/data/test1801 index a65a2d5d4560..0d48cf23437b 100644 --- a/tests/data/test1801 +++ b/tests/data/test1801 @@ -49,15 +49,15 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --http2 - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Connection: Upgrade, HTTP2-Settings -Upgrade: %H2CVER -HTTP2-Settings: AAMAAABkAARAAAAAAAIAAAAA - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Connection: Upgrade, HTTP2-Settings +Upgrade: %H2CVER +HTTP2-Settings: AAMAAABkAARAAAAAAAIAAAAA + # CURLE_HTTP2: Send failure: Broken pipe diff --git a/tests/data/test1802 b/tests/data/test1802 new file mode 100644 index 000000000000..c8a2a5a193a9 --- /dev/null +++ b/tests/data/test1802 @@ -0,0 +1,63 @@ + + + +HTTP +HTTP CONNECT + + + + + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html + +-foo- + + +HTTP/1.1 200 fine +Connection: close +Content-Length: 0 + + + + +# +# Client-side + + +ftp +proxy + + +http + + +HTTP CONNECT with custom headers for proxy and server + + +http://hello/wanted/page -p -x %HOSTIP:%HTTPPORT --header "User-Agent: myapp/1.0" --proxy-header "User-Agent: Benjamin/2" --proxy-header "Host: todeloo" --header "Host: foo" + + + +# +# Verify data after the test has been "shot" + + + +CONNECT hello:80 HTTP/1.1 +Proxy-Connection: Keep-Alive +User-Agent: Benjamin/2 +Host: todeloo + +GET /wanted/page HTTP/1.1 +Host: foo +Accept: */* +User-Agent: myapp/1.0 + + + + diff --git a/tests/data/test181 b/tests/data/test181 index 685b24412948..6d1fd25e5d66 100644 --- a/tests/data/test181 +++ b/tests/data/test181 @@ -44,14 +44,14 @@ the # Verify data after the test has been "shot" - -POST /we/want/%TESTNUMBER HTTP/1.0 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 79 -Content-Type: application/x-www-form-urlencoded - + +POST /we/want/%TESTNUMBER HTTP/1.0 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 79 +Content-Type: application/x-www-form-urlencoded + Weird file to diff --git a/tests/data/test182 b/tests/data/test182 index cb1e4f0c200e..90a088545545 100644 --- a/tests/data/test182 +++ b/tests/data/test182 @@ -29,15 +29,15 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test183 b/tests/data/test183 index ba0df8c2feae..11e89967b2d8 100644 --- a/tests/data/test183 +++ b/tests/data/test183 @@ -10,11 +10,11 @@ persistent connection # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 4 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 4 + moo @@ -37,19 +37,19 @@ proxy # Verify data after the test has been "shot" - -GET http://deathstar.another.galaxy/%TESTNUMBER HTTP/1.1 -Host: deathstar.another.galaxy -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://a.galaxy.far.far.away/%TESTNUMBER HTTP/1.1 -Host: a.galaxy.far.far.away -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://deathstar.another.galaxy/%TESTNUMBER HTTP/1.1 +Host: deathstar.another.galaxy +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://a.galaxy.far.far.away/%TESTNUMBER HTTP/1.1 +Host: a.galaxy.far.far.away +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test184 b/tests/data/test184 index 95c9e288b731..6686ba844f93 100644 --- a/tests/data/test184 +++ b/tests/data/test184 @@ -10,31 +10,31 @@ followlocation # Server-side - -HTTP/1.1 301 OK swsbounce -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 4 + +HTTP/1.1 301 OK swsbounce +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 4 Location: http://yet.another.host/%TESTNUMBER - + moo - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 4 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 4 + moo - -HTTP/1.1 301 OK swsbounce -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 4 + +HTTP/1.1 301 OK swsbounce +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 4 Location: http://yet.another.host/%TESTNUMBER - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 4 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 4 + moo @@ -57,19 +57,19 @@ proxy # Verify data after the test has been "shot" - -GET http://deathstar.another.galaxy/%TESTNUMBER HTTP/1.1 -Host: another.visitor.stay.a.while.stay.foreeeeeever -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://yet.another.host/%TESTNUMBER HTTP/1.1 -Host: yet.another.host -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://deathstar.another.galaxy/%TESTNUMBER HTTP/1.1 +Host: another.visitor.stay.a.while.stay.foreeeeeever +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://yet.another.host/%TESTNUMBER HTTP/1.1 +Host: yet.another.host +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test185 b/tests/data/test185 index 81093d2b0648..04ceb45534a0 100644 --- a/tests/data/test185 +++ b/tests/data/test185 @@ -10,31 +10,31 @@ followlocation # Server-side - -HTTP/1.1 301 OK swsbounce -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 4 -Location: go/west/%TESTNUMBER - + +HTTP/1.1 301 OK swsbounce +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 4 +Location: go/west/%TESTNUMBER + moo - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 4 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 4 + moo - -HTTP/1.1 301 OK swsbounce -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 4 -Location: go/west/%TESTNUMBER - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 4 - + +HTTP/1.1 301 OK swsbounce +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 4 +Location: go/west/%TESTNUMBER + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 4 + moo @@ -57,19 +57,19 @@ proxy # Verify data after the test has been "shot" - -GET http://deathstar.another.galaxy/%TESTNUMBER HTTP/1.1 -Host: another.visitor.stay.a.while.stay.foreeeeeever -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://deathstar.another.galaxy/go/west/%TESTNUMBER HTTP/1.1 -Host: another.visitor.stay.a.while.stay.foreeeeeever -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://deathstar.another.galaxy/%TESTNUMBER HTTP/1.1 +Host: another.visitor.stay.a.while.stay.foreeeeeever +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://deathstar.another.galaxy/go/west/%TESTNUMBER HTTP/1.1 +Host: another.visitor.stay.a.while.stay.foreeeeeever +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test186 b/tests/data/test186 index 006de7904776..ea9d4d1145e5 100644 --- a/tests/data/test186 +++ b/tests/data/test186 @@ -41,25 +41,25 @@ http://%HOSTIP:%HTTPPORT/we/want/%TESTNUMBER -F "name=daniel;type=moo/foo-.4" -F ^(Content-Type: multipart/form-data;|------------).* - -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 341 -Content-Type: multipart/form-data; boundary=----------------------------212d9006ceb5 - -------------------------------212d9006ceb5 -Content-Disposition: form-data; name="name" -Content-Type: moo/foo-.4 - -daniel -------------------------------212d9006ceb5 -Content-Disposition: form-data; name="html" -Content-Type: text/html;charset=verymoo - -hello -------------------------------212d9006ceb5-- + +POST /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 341 +Content-Type: multipart/form-data; boundary=----------------------------212d9006ceb5 + +------------------------------212d9006ceb5 +Content-Disposition: form-data; name="name" +Content-Type: moo/foo-.4 + +daniel +------------------------------212d9006ceb5 +Content-Disposition: form-data; name="html" +Content-Type: text/html;charset=verymoo + +hello +------------------------------212d9006ceb5-- diff --git a/tests/data/test187 b/tests/data/test187 index aff3a9d1ade8..c3d1199a2311 100644 --- a/tests/data/test187 +++ b/tests/data/test187 @@ -60,17 +60,17 @@ http://%HOSTIP:%HTTPPORT?oh=what-weird=test/%TESTNUMBER -L # Verify data after the test has been "shot" - -GET /?oh=what-weird=test/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /root/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /?oh=what-weird=test/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /root/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test188 b/tests/data/test188 index 00d29990f8eb..d5796c7318bd 100644 --- a/tests/data/test188 +++ b/tests/data/test188 @@ -19,7 +19,7 @@ Content-Length: 3 OK -HTTP/1.1 200 OK +HTTP/1.1 200 OK%SP Connection: close Content-Length: 15 Content-Range: bytes 50- @@ -32,7 +32,7 @@ HTTP/1.1 301 OK swsbounce Location: /%TESTNUMBER Content-Length: 3 -HTTP/1.1 200 OK +HTTP/1.1 200 OK%SP Connection: close Content-Length: 15 Content-Range: bytes 50- @@ -57,19 +57,19 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -C 50 -L # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=50- -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=50- -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=50- +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=50- +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test189 b/tests/data/test189 index f4ff1fa366ad..e8e8044049a5 100644 --- a/tests/data/test189 +++ b/tests/data/test189 @@ -16,7 +16,7 @@ Content-Length: 3 OK -HTTP/1.1 200 OK +HTTP/1.1 200 OK%SP Connection: close Content-Length: 15 @@ -28,7 +28,7 @@ HTTP/1.1 301 OK swsbounce Location: /%TESTNUMBER Content-Length: 3 -HTTP/1.1 200 OK +HTTP/1.1 200 OK%SP Connection: close Content-Length: 15 @@ -51,19 +51,19 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -C 50 -L # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=50- -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=50- -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=50- +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=50- +User-Agent: curl/%VERSION +Accept: */* + # 33 is CURLE_RANGE_ERROR diff --git a/tests/data/test190 b/tests/data/test190 index 033152f38083..2bd225ed9caa 100644 --- a/tests/data/test190 +++ b/tests/data/test190 @@ -37,11 +37,11 @@ ftp://%HOSTIP:%FTPPORT/path/to/file/%TESTNUMBER -m 10 28 - -USER anonymous -PASS ftp@example.com -PWD -CWD path + +USER anonymous +PASS ftp@example.com +PWD +CWD path diff --git a/tests/data/test1901 b/tests/data/test1901 index 143a5f165ab1..196dde2c840d 100644 --- a/tests/data/test1901 +++ b/tests/data/test1901 @@ -9,7 +9,7 @@ CURLOPT_READFUNCTION # Server-side - + HTTP/1.1 200 OK Content-Length: 6 Content-Type: text/html diff --git a/tests/data/test1903 b/tests/data/test1903 index 6c879de961f0..228b4d6ae46f 100644 --- a/tests/data/test1903 +++ b/tests/data/test1903 @@ -9,7 +9,7 @@ CURLOPT_COOKIEFILE # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test1904 b/tests/data/test1904 index 8f005365f6d8..7fb82e44d006 100644 --- a/tests/data/test1904 +++ b/tests/data/test1904 @@ -22,13 +22,13 @@ Content-Length: 9 contents - -HTTP/1.1 204 Sure go ahead - + +HTTP/1.1 204 Sure go ahead + -HTTP/1.1 204 Sure go ahead - +HTTP/1.1 204 Sure go ahead%CR +%CR HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake swsclose @@ -61,19 +61,19 @@ proxy # # Verify data after the test has been "shot" - -CONNECT test.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: test.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT test.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: test.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + - -GET /we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: test.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: test.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1905 b/tests/data/test1905 index a17425e42d70..690e8553ec0f 100644 --- a/tests/data/test1905 +++ b/tests/data/test1905 @@ -42,11 +42,11 @@ cookies # Verify data after the test has been "shot" - -GET /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + # Netscape HTTP Cookie File diff --git a/tests/data/test1906 b/tests/data/test1906 index 6769d0cdb0ee..3aaca0b05d81 100644 --- a/tests/data/test1906 +++ b/tests/data/test1906 @@ -39,11 +39,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + diff --git a/tests/data/test1907 b/tests/data/test1907 index 31a4cbc2d04a..a1210516f9a3 100644 --- a/tests/data/test1907 +++ b/tests/data/test1907 @@ -37,11 +37,11 @@ lib%TESTNUMBER # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + Effective URL: http://%HOSTIP:%HTTPPORT/%TESTNUMBER diff --git a/tests/data/test1908 b/tests/data/test1908 index fe0b5d626ae9..0294b48e2bdc 100644 --- a/tests/data/test1908 +++ b/tests/data/test1908 @@ -57,15 +57,15 @@ lib%TESTNUMBER # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + # strip out the (dynamic) expire date from the file so that the rest diff --git a/tests/data/test1909 b/tests/data/test1909 index 2d868cc0bb60..a7be2d307676 100644 --- a/tests/data/test1909 +++ b/tests/data/test1909 @@ -43,17 +43,17 @@ HTTP GET --retry-all-errors to overcome partial transfer # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test191 b/tests/data/test191 index 029369363129..b1cbb266a212 100644 --- a/tests/data/test191 +++ b/tests/data/test191 @@ -27,15 +27,15 @@ FTP URL with ?-letters in username and password # Verify data after the test has been "shot" - -USER use?r -PASS pass?word -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER use?r +PASS pass?word +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test1910 b/tests/data/test1910 index 2653690200fc..ba5a0d74b914 100644 --- a/tests/data/test1910 +++ b/tests/data/test1910 @@ -49,17 +49,17 @@ lib%TESTNUMBER # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[user%0aname:pass%0aword]b64% -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[user%0aname:pass%0aword]b64% -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[user%0aname:pass%0aword]b64% +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[user%0aname:pass%0aword]b64% +Accept: */* + diff --git a/tests/data/test1919 b/tests/data/test1919 index b5f4bb17c260..bad31585e0b0 100644 --- a/tests/data/test1919 +++ b/tests/data/test1919 @@ -35,17 +35,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Bearer c4e448d652a961fda0ab64f882c8c161d5985f805d45d80c9ddca1 -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Bearer c4e448d652a961fda0ab64f882c8c161d5985f805d45d80c9ddca1 -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Bearer c4e448d652a961fda0ab64f882c8c161d5985f805d45d80c9ddca1 +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Bearer c4e448d652a961fda0ab64f882c8c161d5985f805d45d80c9ddca1 +Accept: */* + diff --git a/tests/data/test192 b/tests/data/test192 index 12ed68db641a..4bda64c4772f 100644 --- a/tests/data/test192 +++ b/tests/data/test192 @@ -36,12 +36,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -w "%{num_connects}\n" # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test193 b/tests/data/test193 index 9e4dac0448f0..2af00524beef 100644 --- a/tests/data/test193 +++ b/tests/data/test193 @@ -48,17 +48,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -w "%{num_connects}\n" -L # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1933 b/tests/data/test1933 index ef4013caa45f..57706dcf92ab 100644 --- a/tests/data/test1933 +++ b/tests/data/test1933 @@ -55,16 +55,15 @@ http://xxx:yyy@127.0.0.1:9000/%TESTNUMBER/testapi/test 127.0.0.1:9000:%HOSTIP:%H # Verify data after the test has been "shot" -^User-Agent:.* ^Content-Type:.* ^Accept:.* - -GET /%TESTNUMBER/testapi/test HTTP/1.1 -Host: 127.0.0.1:9000 -Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/0/127/xxx4_request, SignedHeaders=content-type;host;x-xxx-date, Signature=3d8e00a02e437211a596143dcd590fcc805b731365c68f7f48951ea6eda39c4f -X-Xxx-Date: 19700101T000000Z - + +GET /%TESTNUMBER/testapi/test HTTP/1.1 +Host: 127.0.0.1:9000 +Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/0/127/xxx4_request, SignedHeaders=content-type;host;x-xxx-date, Signature=3d8e00a02e437211a596143dcd590fcc805b731365c68f7f48951ea6eda39c4f +X-Xxx-Date: 19700101T000000Z + diff --git a/tests/data/test1934 b/tests/data/test1934 index 86553a46338b..a5bead447b44 100644 --- a/tests/data/test1934 +++ b/tests/data/test1934 @@ -55,16 +55,15 @@ http://127.0.0.1:9000/%TESTNUMBER/testapi/test 127.0.0.1:9000:%HOSTIP:%HTTPPORT # Verify data after the test has been "shot" -^User-Agent:.* ^Content-Type:.* ^Accept:.* - -GET /%TESTNUMBER/testapi/test HTTP/1.1 -Host: 127.0.0.1:9000 -Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/0/127/xxx4_request, SignedHeaders=content-type;host;x-yyy-date, Signature=cf8dc9a4af903a1a9bb1385d8e2366d780afb501e266436598438395e502d58c -X-Yyy-Date: 19700101T000000Z - + +GET /%TESTNUMBER/testapi/test HTTP/1.1 +Host: 127.0.0.1:9000 +Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/0/127/xxx4_request, SignedHeaders=content-type;host;x-yyy-date, Signature=cf8dc9a4af903a1a9bb1385d8e2366d780afb501e266436598438395e502d58c +X-Yyy-Date: 19700101T000000Z + diff --git a/tests/data/test1935 b/tests/data/test1935 index 26701aee8d4b..64f0c21e062a 100644 --- a/tests/data/test1935 +++ b/tests/data/test1935 @@ -55,16 +55,15 @@ http://127.0.0.1:9000/%TESTNUMBER/testapi/test 127.0.0.1:9000:%HOSTIP:%HTTPPORT # Verify data after the test has been "shot" -^User-Agent:.* ^Content-Type:.* ^Accept:.* - -GET /%TESTNUMBER/testapi/test HTTP/1.1 -Host: 127.0.0.1:9000 -Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/rrr/127/xxx4_request, SignedHeaders=content-type;host;x-yyy-date, Signature=a0b11b97b54689428d4188b788ed32865d607822d85d3e91cf06141f479dac0b -X-Yyy-Date: 19700101T000000Z - + +GET /%TESTNUMBER/testapi/test HTTP/1.1 +Host: 127.0.0.1:9000 +Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/rrr/127/xxx4_request, SignedHeaders=content-type;host;x-yyy-date, Signature=a0b11b97b54689428d4188b788ed32865d607822d85d3e91cf06141f479dac0b +X-Yyy-Date: 19700101T000000Z + diff --git a/tests/data/test1936 b/tests/data/test1936 index 0d100c55e1dc..3ee3788f2c5b 100644 --- a/tests/data/test1936 +++ b/tests/data/test1936 @@ -55,16 +55,15 @@ http://127.0.0.1:9000/%TESTNUMBER/testapi/test 127.0.0.1:9000:%HOSTIP:%HTTPPORT # Verify data after the test has been "shot" -^User-Agent:.* ^Content-Type:.* ^Accept:.* - -GET /%TESTNUMBER/testapi/test HTTP/1.1 -Host: 127.0.0.1:9000 -Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/rrr/sss/xxx4_request, SignedHeaders=content-type;host;x-yyy-date, Signature=026b713d76b0789bd224c5e41322f74eed088f8a22fd15183ca68376c575c5b0 -X-Yyy-Date: 19700101T000000Z - + +GET /%TESTNUMBER/testapi/test HTTP/1.1 +Host: 127.0.0.1:9000 +Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/rrr/sss/xxx4_request, SignedHeaders=content-type;host;x-yyy-date, Signature=026b713d76b0789bd224c5e41322f74eed088f8a22fd15183ca68376c575c5b0 +X-Yyy-Date: 19700101T000000Z + diff --git a/tests/data/test1937 b/tests/data/test1937 index b1bd518a9fe9..72fce57c5424 100644 --- a/tests/data/test1937 +++ b/tests/data/test1937 @@ -56,17 +56,16 @@ http://127.0.0.1:9000/%TESTNUMBER/testapi/test 127.0.0.1:9000:%HOSTIP:%HTTPPORT # Verify data after the test has been "shot" -^User-Agent:.* ^Content-Type:.* ^Accept:.* - -POST /%TESTNUMBER/testapi/test HTTP/1.1 -Host: 127.0.0.1:9000 -Authorization: PROVIDER14-HMAC-SHA256 Credential=keyId/19700101/region/service/provider14_request, SignedHeaders=content-type;host;x-provider2-date, Signature=4928ccf97a9e71fe27f91db5a3b3c943b6080d25e6f4df8593d4c38e7d1e849b -X-Provider2-Date: 19700101T000000Z -Content-Length: 8 - + +POST /%TESTNUMBER/testapi/test HTTP/1.1 +Host: 127.0.0.1:9000 +Authorization: PROVIDER14-HMAC-SHA256 Credential=keyId/19700101/region/service/provider14_request, SignedHeaders=content-type;host;x-provider2-date, Signature=4928ccf97a9e71fe27f91db5a3b3c943b6080d25e6f4df8593d4c38e7d1e849b +X-Provider2-Date: 19700101T000000Z +Content-Length: 8 + postData diff --git a/tests/data/test1938 b/tests/data/test1938 index c06306c4ca1e..7f719376e26f 100644 --- a/tests/data/test1938 +++ b/tests/data/test1938 @@ -56,17 +56,16 @@ http://127.0.0.1:9000/%TESTNUMBER/testapi/test 127.0.0.1:9000:%HOSTIP:%HTTPPORT # Verify data after the test has been "shot" -^User-Agent:.* ^Content-Type:.* ^Accept:.* - -POST /%TESTNUMBER/testapi/test HTTP/1.1 -Host: 127.0.0.1:9000 -Authorization: PROVIDER14-HMAC-SHA256 Credential=keyId/19700101/region/service/provider14_request, SignedHeaders=content-type;host;x-provider2-date, Signature=3436256c7c23adeb66dc15984eaa527edc4a504def61da2e0bf4b01ace4f3c0b -X-Provider2-Date: 19700101T000000Z -Content-Length: 9 - + +POST /%TESTNUMBER/testapi/test HTTP/1.1 +Host: 127.0.0.1:9000 +Authorization: PROVIDER14-HMAC-SHA256 Credential=keyId/19700101/region/service/provider14_request, SignedHeaders=content-type;host;x-provider2-date, Signature=3436256c7c23adeb66dc15984eaa527edc4a504def61da2e0bf4b01ace4f3c0b +X-Provider2-Date: 19700101T000000Z +Content-Length: 9 + %hex[post%00Data]hex% diff --git a/tests/data/test194 b/tests/data/test194 index 074348950a94..2d01a147edae 100644 --- a/tests/data/test194 +++ b/tests/data/test194 @@ -10,33 +10,33 @@ Resume # Server-side - -HTTP/1.1 416 Requested Range Not Satisfiable swsclose -Date: Fri, 24 Oct 2003 21:33:12 GMT -Server: Apache/1.3.19 (Unix) (Red-Hat/Linux) mod_ssl/2.8.1 OpenSSL/0.9.6 PHP/4.3.1 -Last-Modified: Fri, 24 Oct 2003 18:01:23 GMT -ETag: "ab57a-507-3f9968f3" -Accept-Ranges: bytes -Content-Length: 4 -Content-Range: bytes */87 -Content-Type: image/gif -Connection: close - + +HTTP/1.1 416 Requested Range Not Satisfiable swsclose +Date: Fri, 24 Oct 2003 21:33:12 GMT +Server: Apache/1.3.19 (Unix) (Red-Hat/Linux) mod_ssl/2.8.1 OpenSSL/0.9.6 PHP/4.3.1 +Last-Modified: Fri, 24 Oct 2003 18:01:23 GMT +ETag: "ab57a-507-3f9968f3" +Accept-Ranges: bytes +Content-Length: 4 +Content-Range: bytes */87 +Content-Type: image/gif +Connection: close + bad - -HTTP/1.1 416 Requested Range Not Satisfiable swsclose -Date: Fri, 24 Oct 2003 21:33:12 GMT -Server: Apache/1.3.19 (Unix) (Red-Hat/Linux) mod_ssl/2.8.1 OpenSSL/0.9.6 PHP/4.3.1 -Last-Modified: Fri, 24 Oct 2003 18:01:23 GMT -ETag: "ab57a-507-3f9968f3" -Accept-Ranges: bytes -Content-Length: 4 -Content-Range: bytes */87 -Content-Type: image/gif -Connection: close - + +HTTP/1.1 416 Requested Range Not Satisfiable swsclose +Date: Fri, 24 Oct 2003 21:33:12 GMT +Server: Apache/1.3.19 (Unix) (Red-Hat/Linux) mod_ssl/2.8.1 OpenSSL/0.9.6 PHP/4.3.1 +Last-Modified: Fri, 24 Oct 2003 18:01:23 GMT +ETag: "ab57a-507-3f9968f3" +Accept-Ranges: bytes +Content-Length: 4 +Content-Range: bytes */87 +Content-Type: image/gif +Connection: close + @@ -56,13 +56,13 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER -C 87 --fail # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=87- -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=87- +User-Agent: curl/%VERSION +Accept: */* + 0 diff --git a/tests/data/test1940 b/tests/data/test1940 index f4c6dd1a1a6b..be2347e2d613 100644 --- a/tests/data/test1940 +++ b/tests/data/test1940 @@ -10,17 +10,17 @@ curl_easy_header HTTP/1.1 200 OK Date: Thu, 09 Nov 2010 14:49:00 GMT -Server: test with trailing space +Server: test with trailing space%repeat[5 x ]% Content-Type: text/html Fold: is - folding a + folding a%repeat[5 x ]% line Content-Length: 0 Set-Cookie: onecookie=data; Set-Cookie: secondcookie=2data; Set-Cookie: cookie3=data3; Blank: -Blank2: +Blank2:%CR Location: /%TESTNUMBER0002 @@ -59,8 +59,8 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER - Set-Cookie == secondcookie=2data; (1/3) - Set-Cookie == cookie3=data3; (2/3) Fold == is folding a line - Blank == - Blank2 == + Blank ==%SP + Blank2 ==%SP diff --git a/tests/data/test1941 b/tests/data/test1941 index fe3f1de3917c..faa4b390055d 100644 --- a/tests/data/test1941 +++ b/tests/data/test1941 @@ -11,7 +11,7 @@ CONNECT HTTP/1.1 200 OK Date: Thu, 09 Nov 2010 14:49:00 GMT -Server: test with trailing space +Server: test with trailing space%repeat[5 x ]% Content-Type: text/html Content-Length: 0 Set-Cookie: onecookie=data; @@ -20,11 +20,11 @@ Set-Cookie: cookie3=data3; Location: /%TESTNUMBER0002 - -HTTP/1.1 200 Sure go ahead -Server: from the connect -Silly-thing: yes yes - + +HTTP/1.1 200 Sure go ahead +Server: from the connect +Silly-thing: yes yes + @@ -54,11 +54,11 @@ http://hello:%HTTPPORT/%TESTNUMBER %HOSTIP:%PROXYPORT # Verify data after the test has been "shot" - -CONNECT hello:%HTTPPORT HTTP/1.1 -Host: hello:%HTTPPORT -Proxy-Connection: Keep-Alive - + +CONNECT hello:%HTTPPORT HTTP/1.1 +Host: hello:%HTTPPORT +Proxy-Connection: Keep-Alive + Date == Thu, 09 Nov 2010 14:49:00 GMT diff --git a/tests/data/test1942 b/tests/data/test1942 index 907980099046..7729ff80e6fd 100644 --- a/tests/data/test1942 +++ b/tests/data/test1942 @@ -15,7 +15,7 @@ Server: maybe different HTTP/1.1 200 OK Date: Thu, 09 Nov 2010 14:49:00 GMT -Server: test with trailing space +Server: test with trailing space%repeat[5 x ]% Content-Type: text/html Content-Length: 0 Set-Cookie: onecookie=data; diff --git a/tests/data/test1943 b/tests/data/test1943 index 194ff111be9d..c6c06d332dd9 100644 --- a/tests/data/test1943 +++ b/tests/data/test1943 @@ -9,23 +9,23 @@ CONNECT # Server-side -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 +HTTP/1.1 200 funky chunky!%CR +Server: fakeit/0.9 fakeitbad/1.0%CR Date: Thu, 09 Nov 2010 14:49:00 GMT -Transfer-Encoding: chunked -Trailer: server -Connection: mooo - -40 -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -30 -bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb -21;heresatest=moooo +Transfer-Encoding: chunked%CR +Trailer: server%CR +Connection: mooo%CR +%CR +40%CR +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa%CR +30%CR +bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb%CR +21;heresatest=moooo%CR cccccccccccccccccccccccccccccccc - -0 -Server: sent-as-trailer - +%CR +0%CR +Server: sent-as-trailer%CR +%CR diff --git a/tests/data/test1944 b/tests/data/test1944 index ad0920d4ae76..a5c1673c7939 100644 --- a/tests/data/test1944 +++ b/tests/data/test1944 @@ -10,7 +10,7 @@ curl_easy_header HTTP/1.1 302 OK Date: Thu, 01 Nov 2001 14:49:00 GMT -Server: test with trailing space +Server: test with trailing space%repeat[5 x ]% Content-Type: text/html Content-Length: 0 Set-Cookie: onecookie=data; diff --git a/tests/data/test1945 b/tests/data/test1945 index 86fa147adcf0..06ab2c0f92a7 100644 --- a/tests/data/test1945 +++ b/tests/data/test1945 @@ -11,7 +11,7 @@ CONNECT HTTP/1.1 200 OK Date: Thu, 09 Nov 2010 14:49:00 GMT -Server: test with trailing space +Server: test with trailing space%repeat[5 x ]% Content-Type: text/html Content-Length: 0 Set-Cookie: onecookie=data; @@ -20,11 +20,11 @@ Set-Cookie: cookie3=data3; Location: /%TESTNUMBER0002 - -HTTP/1.1 200 Sure go ahead -Server: from the connect -Silly-thing: yes yes - + +HTTP/1.1 200 Sure go ahead +Server: from the connect +Silly-thing: yes yes + @@ -54,11 +54,11 @@ http://hello:%HTTPPORT/%TESTNUMBER %HOSTIP:%PROXYPORT # Verify data after the test has been "shot" - -CONNECT hello:%HTTPPORT HTTP/1.1 -Host: hello:%HTTPPORT -Proxy-Connection: Keep-Alive - + +CONNECT hello:%HTTPPORT HTTP/1.1 +Host: hello:%HTTPPORT +Proxy-Connection: Keep-Alive + Server == from the connect (0/2) diff --git a/tests/data/test1946 b/tests/data/test1946 index 20854e16bad8..35ca1672bd86 100644 --- a/tests/data/test1946 +++ b/tests/data/test1946 @@ -10,7 +10,7 @@ curl_easy_header HTTP/1.1 302 OK Date: Thu, 01 Nov 2001 14:49:00 GMT -Server: test with trailing space +Server: test with trailing space%repeat[5 x ]% Content-Type: text/html Content-Length: 0 Set-Cookie: onecookie=data; diff --git a/tests/data/test1947 b/tests/data/test1947 index f159e4d51cd8..49e28c14aafc 100644 --- a/tests/data/test1947 +++ b/tests/data/test1947 @@ -10,7 +10,7 @@ curl_easy_nextheader HTTP/1.1 302 OK Date: Thu, 01 Nov 2001 14:49:00 GMT -Server: test with trailing space +Server: test with trailing space%repeat[5 x ]% Content-Type: text/html Content-Length: 0 Set-Cookie: onecookie=data; diff --git a/tests/data/test1948 b/tests/data/test1948 index 4c50b02acd71..1f4c3c8ac465 100644 --- a/tests/data/test1948 +++ b/tests/data/test1948 @@ -9,26 +9,26 @@ HTTP PUT # Server-side - -HTTP/1.1 200 OK -Date: Thu, 01 Nov 2001 14:49:00 GMT -Content-Type: text/html -Content-Length: 6 - + +HTTP/1.1 200 OK +Date: Thu, 01 Nov 2001 14:49:00 GMT +Content-Type: text/html +Content-Length: 6 + hello - -HTTP/1.1 200 OK -Date: Thu, 01 Nov 2001 14:49:00 GMT -Content-Type: text/html -Content-Length: 6 - + +HTTP/1.1 200 OK +Date: Thu, 01 Nov 2001 14:49:00 GMT +Content-Type: text/html +Content-Length: 6 + hello -HTTP/1.1 200 OK -Date: Thu, 01 Nov 2001 14:49:00 GMT -Content-Type: text/html -Content-Length: 6 - +HTTP/1.1 200 OK +Date: Thu, 01 Nov 2001 14:49:00 GMT +Content-Type: text/html +Content-Length: 6 + hello @@ -53,19 +53,19 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 22 - + +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 22 + This is test PUT data -POST /1948 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 22 -Content-Type: application/x-www-form-urlencoded - +POST /1948 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 22 +Content-Type: application/x-www-form-urlencoded + This is test PUT data diff --git a/tests/data/test195 b/tests/data/test195 index be0c206d675f..5662bc5597ce 100644 --- a/tests/data/test195 +++ b/tests/data/test195 @@ -30,9 +30,9 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER 67 - -USER anonymous -PASS ftp@example.com + +USER anonymous +PASS ftp@example.com diff --git a/tests/data/test1955 b/tests/data/test1955 index 67de2a1e8d97..3a4310037317 100644 --- a/tests/data/test1955 +++ b/tests/data/test1955 @@ -55,20 +55,19 @@ http://exam.ple.com:9000/aws_sigv4/testapi/test exam.ple.com:9000:%HOSTIP:%HTTPP # Verify data after the test has been "shot" -^User-Agent:.* ^Content-Type:.* ^Accept:.* - -GET /aws_sigv4/testapi/test HTTP/1.1 -Host: exam.ple.com:9000 -Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/ple/exam/xxx4_request, SignedHeaders=content-type;host;tesmixcase;test2;test3;test_space;x-xxx-date, Signature=dd39202e9fb7b836ebf2abb83b114cae11ff3b6a169f0c64b290a774a873db9d -X-Xxx-Date: 19700101T000000Z -test3: 1234 -test2: -test_space: t s m end -tesMixCase: MixCase - + +GET /aws_sigv4/testapi/test HTTP/1.1 +Host: exam.ple.com:9000 +Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/ple/exam/xxx4_request, SignedHeaders=content-type;host;tesmixcase;test2;test3;test_space;x-xxx-date, Signature=dd39202e9fb7b836ebf2abb83b114cae11ff3b6a169f0c64b290a774a873db9d +X-Xxx-Date: 19700101T000000Z +test3: 1234 +test2: +test_space: t%TABs m%TAB end%repeat[4 x ]% +tesMixCase: MixCase + diff --git a/tests/data/test1956 b/tests/data/test1956 index 84b2a81e0285..b8c4710f982a 100644 --- a/tests/data/test1956 +++ b/tests/data/test1956 @@ -55,17 +55,16 @@ http://exam.ple.com:9000/aws_sigv4/testapi/test exam.ple.com:9000:%HOSTIP:%HTTPP # Verify data after the test has been "shot" -^User-Agent:.* ^Content-Type:.* ^Accept:.* - -GET /aws_sigv4/testapi/test HTTP/1.1 -Host: exam.ple.com:9000 -Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/ple/exam/xxx4_request, SignedHeaders=content-type;host;x-xxx-content-sha256;x-xxx-date, Signature=dfe78c8846a9b7d65d1eb4c1d6ea7bc886650d03f3568088cb8d5b4c3778287f -X-Xxx-Date: 19700101T000000Z -X-Xxx-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 - + +GET /aws_sigv4/testapi/test HTTP/1.1 +Host: exam.ple.com:9000 +Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/ple/exam/xxx4_request, SignedHeaders=content-type;host;x-xxx-content-sha256;x-xxx-date, Signature=dfe78c8846a9b7d65d1eb4c1d6ea7bc886650d03f3568088cb8d5b4c3778287f +X-Xxx-Date: 19700101T000000Z +X-Xxx-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 + diff --git a/tests/data/test1957 b/tests/data/test1957 index 2f538cc8e2fa..0036b606447e 100644 --- a/tests/data/test1957 +++ b/tests/data/test1957 @@ -55,17 +55,16 @@ http://exam.ple.com:9000/aws_sigv4/testapi/test exam.ple.com:9000:%HOSTIP:%HTTPP # Verify data after the test has been "shot" -^User-Agent:.* ^Content-Type:.* ^Accept:.* - -GET /aws_sigv4/testapi/test HTTP/1.1 -Host: exam.ple.com:9000 -Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/ple/exam/xxx4_request, SignedHeaders=content-type;host;x-xxx-content-sha256;x-xxx-date, Signature=25b4cac711ea8f65010c485d3778885f5f3870d0b8ff0b3ab58a8d7eeab991ff -X-Xxx-Date: 19700101T000000Z -X-Xxx-Content-Sha256: arbitrary - + +GET /aws_sigv4/testapi/test HTTP/1.1 +Host: exam.ple.com:9000 +Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/ple/exam/xxx4_request, SignedHeaders=content-type;host;x-xxx-content-sha256;x-xxx-date, Signature=25b4cac711ea8f65010c485d3778885f5f3870d0b8ff0b3ab58a8d7eeab991ff +X-Xxx-Date: 19700101T000000Z +X-Xxx-Content-Sha256: arbitrary + diff --git a/tests/data/test1958 b/tests/data/test1958 index 27be746d37ef..90dd1d131bc1 100644 --- a/tests/data/test1958 +++ b/tests/data/test1958 @@ -55,17 +55,16 @@ http://exam.ple.com:9000/aws_sigv4/testapi/test exam.ple.com:9000:%HOSTIP:%HTTPP # Verify data after the test has been "shot" -^User-Agent:.* ^Content-Type:.* ^Accept:.* - -GET /aws_sigv4/testapi/test HTTP/1.1 -Host: exam.ple.com:9000 -Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/ple/exam/xxx4_request, SignedHeaders=content-type;host;x-xxx-content-sha256;x-xxx-date, Signature=25b4cac711ea8f65010c485d3778885f5f3870d0b8ff0b3ab58a8d7eeab991ff -X-Xxx-Date: 19700101T000000Z -X-Xxx-Content-Sha256: arbitrary - + +GET /aws_sigv4/testapi/test HTTP/1.1 +Host: exam.ple.com:9000 +Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/ple/exam/xxx4_request, SignedHeaders=content-type;host;x-xxx-content-sha256;x-xxx-date, Signature=25b4cac711ea8f65010c485d3778885f5f3870d0b8ff0b3ab58a8d7eeab991ff +X-Xxx-Date: 19700101T000000Z +X-Xxx-Content-Sha256: %TABarbitrary%SP + diff --git a/tests/data/test1959 b/tests/data/test1959 index c6c15cadf485..8f43ed625c34 100644 --- a/tests/data/test1959 +++ b/tests/data/test1959 @@ -55,17 +55,16 @@ http://exam.ple.com:9000/aws_sigv4/testapi/test exam.ple.com:9000:%HOSTIP:%HTTPP # Verify data after the test has been "shot" -^User-Agent:.* ^Content-Type:.* ^Accept:.* - -GET /aws_sigv4/testapi/test HTTP/1.1 -Host: exam.ple.com:9000 -Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/ple/exam/xxx4_request, SignedHeaders=content-type;host;x-xxx-content-sha256;x-xxx-date, Signature=7b343a4aa55d73ffc05005d84480bc705a3367373ed8cae1a1c0fbd2b3aa0483 -X-Xxx-Date: 19700101T000000Z -X-Xxx-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 - + +GET /aws_sigv4/testapi/test HTTP/1.1 +Host: exam.ple.com:9000 +Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/ple/exam/xxx4_request, SignedHeaders=content-type;host;x-xxx-content-sha256;x-xxx-date, Signature=7b343a4aa55d73ffc05005d84480bc705a3367373ed8cae1a1c0fbd2b3aa0483 +X-Xxx-Date: 19700101T000000Z +X-Xxx-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 + diff --git a/tests/data/test196 b/tests/data/test196 index c72cbebf49ec..60083affe3e8 100644 --- a/tests/data/test196 +++ b/tests/data/test196 @@ -32,11 +32,11 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER --retry 1 -w '%{num_retries}\n' 67 - -USER anonymous -PASS ftp@example.com -USER anonymous -PASS ftp@example.com + +USER anonymous +PASS ftp@example.com +USER anonymous +PASS ftp@example.com 1 diff --git a/tests/data/test1960 b/tests/data/test1960 index cf36b175921b..ce0a2cfc7a0a 100644 --- a/tests/data/test1960 +++ b/tests/data/test1960 @@ -9,7 +9,7 @@ CURL_SOCKOPT_ALREADY_CONNECTED # Server-side - + HTTP/1.1 200 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -42,7 +42,7 @@ http://%HOSTIP:%HTTPPORT/file %HOSTIP %HTTPPORT # Verify data after the test has been "shot" - + GET /file HTTP/1.1 Host: %HOSTIP:%HTTPPORT Accept: */* diff --git a/tests/data/test1964 b/tests/data/test1964 index cd148faf7108..5cadbee5bc6b 100644 --- a/tests/data/test1964 +++ b/tests/data/test1964 @@ -54,16 +54,15 @@ http://xxx:yyy@127.0.0.1:9000/%TESTNUMBER/testapi/test 127.0.0.1:9000:%HOSTIP:%H # Verify data after the test has been "shot" -^User-Agent:.* ^Content-Type:.* ^Accept:.* - -GET /%TESTNUMBER/testapi/test HTTP/1.1 -Host: 127.0.0.1:9000 -Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/0/127/xxx4_request, SignedHeaders=content-type;host;x-xxx-date, Signature=35da102c1df68f2ef85ade08ecc212fa663a66e3a973146f6578a5c5426e9669 -X-Xxx-Date: 19700101T000000Z - + +GET /%TESTNUMBER/testapi/test HTTP/1.1 +Host: 127.0.0.1:9000 +Authorization: XXX4-HMAC-SHA256 Credential=xxx/19700101/0/127/xxx4_request, SignedHeaders=content-type;host;x-xxx-date, Signature=35da102c1df68f2ef85ade08ecc212fa663a66e3a973146f6578a5c5426e9669 +X-Xxx-Date: 19700101T000000Z + diff --git a/tests/data/test197 b/tests/data/test197 index d940b0dc38e9..29a6a29ba378 100644 --- a/tests/data/test197 +++ b/tests/data/test197 @@ -44,17 +44,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --retry 1000 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1970 b/tests/data/test1970 index 106a0e316274..af15223599e8 100644 --- a/tests/data/test1970 +++ b/tests/data/test1970 @@ -55,18 +55,17 @@ http://exam.ple.com:9000/aws_sigv4/testapi/test exam.ple.com:9000:%HOSTIP:%HTTPP # Verify data after the test has been "shot" -^User-Agent:.* ^Content-Type:.* ^Accept:.* - -PUT /aws_sigv4/testapi/test HTTP/1.1 -Host: exam.ple.com:9000 -Authorization: AWS4-HMAC-SHA256 Credential=xxx/19700101/us-east-1/s3/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=a028756f42a859122e9609c1f90cae4b272d6b03bf60d9fd354138176dfa2260 -X-Amz-Date: 19700101T000000Z -x-amz-content-sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 -Content-Length: 0 - + +PUT /aws_sigv4/testapi/test HTTP/1.1 +Host: exam.ple.com:9000 +Authorization: AWS4-HMAC-SHA256 Credential=xxx/19700101/us-east-1/s3/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=a028756f42a859122e9609c1f90cae4b272d6b03bf60d9fd354138176dfa2260 +X-Amz-Date: 19700101T000000Z +x-amz-content-sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 +Content-Length: 0 + diff --git a/tests/data/test1971 b/tests/data/test1971 index d6f550793323..52320d434472 100644 --- a/tests/data/test1971 +++ b/tests/data/test1971 @@ -48,21 +48,20 @@ http://exam.ple.com:9000/aws_sigv4/testapi/test exam.ple.com:9000:%HOSTIP:%HTTPP # Verify data after the test has been "shot" -^User-Agent:.* ^Content-Type:.* ^Accept:.* - -PUT /aws_sigv4/testapi/test HTTP/1.1 -Host: exam.ple.com:9000 -Authorization: AWS4-HMAC-SHA256 Credential=xxx/19700101/us-east-1/s3/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=4a6e9b4af0542ffb83744c6852f8e1bfec14f2a67e6f6f037b39f172f79d62af -X-Amz-Date: 19700101T000000Z -x-amz-content-sha256: UNSIGNED-PAYLOAD -Transfer-Encoding: chunked -Expect: 100-continue - -0 - + +PUT /aws_sigv4/testapi/test HTTP/1.1 +Host: exam.ple.com:9000 +Authorization: AWS4-HMAC-SHA256 Credential=xxx/19700101/us-east-1/s3/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=4a6e9b4af0542ffb83744c6852f8e1bfec14f2a67e6f6f037b39f172f79d62af +X-Amz-Date: 19700101T000000Z +x-amz-content-sha256: UNSIGNED-PAYLOAD +Transfer-Encoding: chunked +Expect: 100-continue + +0 + diff --git a/tests/data/test1972 b/tests/data/test1972 index 5a07d544d4fc..d16ed4f77593 100644 --- a/tests/data/test1972 +++ b/tests/data/test1972 @@ -58,23 +58,22 @@ http://exam.ple.com:9000/aws_sigv4/testapi/test exam.ple.com:9000:%HOSTIP:%HTTPP # Verify data after the test has been "shot" -^User-Agent:.* ^Content-Type:.* ^Accept:.* - -POST /aws_sigv4/testapi/test HTTP/1.1 -Host: exam.ple.com:9000 -Authorization: AWS4-HMAC-SHA256 Credential=xxx/19700101/us-east-1/s3/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=eaee0f1c5984ad5d81c8bc7805f28c7b83b35322de654b2ace18cb8cf6d5a9cb -X-Amz-Date: 19700101T000000Z -x-amz-content-sha256: UNSIGNED-PAYLOAD -Content-Length: 154 - ---------------------------qrstuvwxyz0123456789AB -Content-Disposition: attachment; name="foo" - -bar ---------------------------qrstuvwxyz0123456789AB-- + +POST /aws_sigv4/testapi/test HTTP/1.1 +Host: exam.ple.com:9000 +Authorization: AWS4-HMAC-SHA256 Credential=xxx/19700101/us-east-1/s3/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=eaee0f1c5984ad5d81c8bc7805f28c7b83b35322de654b2ace18cb8cf6d5a9cb +X-Amz-Date: 19700101T000000Z +x-amz-content-sha256: UNSIGNED-PAYLOAD +Content-Length: 154 + +--------------------------qrstuvwxyz0123456789AB +Content-Disposition: attachment; name="foo" + +bar +--------------------------qrstuvwxyz0123456789AB-- diff --git a/tests/data/test1973 b/tests/data/test1973 index 094810cf13eb..7c45ceb5d68b 100644 --- a/tests/data/test1973 +++ b/tests/data/test1973 @@ -55,18 +55,17 @@ http://exam.ple.com:9000/aws_sigv4/testapi/test exam.ple.com:9000:%HOSTIP:%HTTPP # Verify data after the test has been "shot" -^User-Agent:.* ^Content-Type:.* ^Accept:.* - -POST /aws_sigv4/testapi/test HTTP/1.1 -Host: exam.ple.com:9000 -Authorization: AWS4-HMAC-SHA256 Credential=xxx/19700101/us-east-1/s3/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=7eb34202214384872221b99a9c671b7517891ac6af56b0aff24ec51adf62b10a -X-Amz-Date: 19700101T000000Z -x-amz-content-sha256: 4b02e333ccf7cf530ddee3e10ebe54e935500b5e570e68650d63d743e8bbc045 -Content-Length: 12 - + +POST /aws_sigv4/testapi/test HTTP/1.1 +Host: exam.ple.com:9000 +Authorization: AWS4-HMAC-SHA256 Credential=xxx/19700101/us-east-1/s3/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=7eb34202214384872221b99a9c671b7517891ac6af56b0aff24ec51adf62b10a +X-Amz-Date: 19700101T000000Z +x-amz-content-sha256: 4b02e333ccf7cf530ddee3e10ebe54e935500b5e570e68650d63d743e8bbc045 +Content-Length: 12 + post fields diff --git a/tests/data/test1974 b/tests/data/test1974 index b184ca4b5afa..bac259715e21 100644 --- a/tests/data/test1974 +++ b/tests/data/test1974 @@ -55,17 +55,16 @@ http://exam.ple.com:9000/aws_sigv4/testapi/test exam.ple.com:9000:%HOSTIP:%HTTPP # Verify data after the test has been "shot" -^User-Agent:.* ^Content-Type:.* ^Accept:.* - -GET /aws_sigv4/testapi/test HTTP/1.1 -Host: exam.ple.com:9000 -Authorization: AWS4-HMAC-SHA256 Credential=xxx/19700101/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=e6270423932feafe9b00ca5d60c9ed566be649f9ca9676144288273945153021 -X-Amz-Date: 19700101T000000Z -x-amz-content-sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 - + +GET /aws_sigv4/testapi/test HTTP/1.1 +Host: exam.ple.com:9000 +Authorization: AWS4-HMAC-SHA256 Credential=xxx/19700101/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=e6270423932feafe9b00ca5d60c9ed566be649f9ca9676144288273945153021 +X-Amz-Date: 19700101T000000Z +x-amz-content-sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 + diff --git a/tests/data/test1975 b/tests/data/test1975 index 1e980c5a82cc..e5a29d293623 100644 --- a/tests/data/test1975 +++ b/tests/data/test1975 @@ -48,21 +48,20 @@ http://exam.ple.com:9000/aws_sigv4/testapi/test exam.ple.com:9000:%HOSTIP:%HTTPP # Verify data after the test has been "shot" -^User-Agent:.* ^Content-Type:.* ^Accept:.* - -PUT /aws_sigv4/testapi/test HTTP/1.1 -Host: exam.ple.com:9000 -Authorization: AWS4-HMAC-SHA256 Credential=xxx/19700101/us-east-1/s3/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=a028756f42a859122e9609c1f90cae4b272d6b03bf60d9fd354138176dfa2260 -X-Amz-Date: 19700101T000000Z -Transfer-Encoding: chunked -X-Amz-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 -Expect: 100-continue - -0 - + +PUT /aws_sigv4/testapi/test HTTP/1.1 +Host: exam.ple.com:9000 +Authorization: AWS4-HMAC-SHA256 Credential=xxx/19700101/us-east-1/s3/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=a028756f42a859122e9609c1f90cae4b272d6b03bf60d9fd354138176dfa2260 +X-Amz-Date: 19700101T000000Z +Transfer-Encoding: chunked +X-Amz-Content-Sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 +Expect: 100-continue + +0 + diff --git a/tests/data/test1976 b/tests/data/test1976 index 4abd45780265..b573bf7deddd 100644 --- a/tests/data/test1976 +++ b/tests/data/test1976 @@ -39,7 +39,6 @@ HTTP AWS_SIGV4 canonical request header sorting test # Verify data after the test has been "shot" -^User-Agent:.* ^Content-Length:.* ^Accept:.* @@ -47,12 +46,13 @@ HTTP AWS_SIGV4 canonical request header sorting test # Strip the actual signature. We only care about header order in this test s/Signature=[a-f0-9]{64}/Signature=stripped/ - + PUT /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT Authorization: AWS4-HMAC-SHA256 Credential=xxx/19700101/us-east-1/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date;x-amz-meta-test;x-amz-meta-test-two, Signature=stripped X-Amz-Date: 19700101T000000Z x-amz-content-sha256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 +User-Agent: curl/%VERSION X-Amz-Meta-Test-Two: test2 x-amz-meta-test: test diff --git a/tests/data/test1977 b/tests/data/test1977 index c105c46662be..b8e2bb4f2b54 100644 --- a/tests/data/test1977 +++ b/tests/data/test1977 @@ -44,19 +44,19 @@ effective URL: http://%HOSTIP:%HTTPPORT/%TESTNUMBER effective URL: http://%HOSTIP:%HTTPPORT/%TESTNUMBER?foo effective URL: http://%HOSTIP:%HTTPPORT/%TESTNUMBER?foo&bar - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER?foo HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER?foo&bar HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER?foo HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER?foo&bar HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + diff --git a/tests/data/test1978 b/tests/data/test1978 index 007bbac55ce3..a6c1272d9aa1 100644 --- a/tests/data/test1978 +++ b/tests/data/test1978 @@ -42,7 +42,6 @@ http://xxx:yyy@127.0.0.1:9000/%TESTNUMBER/testapi/test 127.0.0.1:9000:%HOSTIP:%H # Verify data after the test has been "shot" -^User-Agent:.* ^Content-Length:.* ^Accept:.* diff --git a/tests/data/test198 b/tests/data/test198 index 95b1f99e1cef..42feffe7d2fb 100644 --- a/tests/data/test198 +++ b/tests/data/test198 @@ -53,17 +53,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --retry 1000 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test1981 b/tests/data/test1981 index faf061c1d183..3aa0419f87e7 100644 --- a/tests/data/test1981 +++ b/tests/data/test1981 @@ -9,7 +9,7 @@ HTTP GET # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -48,7 +48,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --write-out='Time: %time{%d/%b/%Y %H:%M:%S. # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test199 b/tests/data/test199 index 1289fd2d9b33..763e7bf49ed8 100644 --- a/tests/data/test199 +++ b/tests/data/test199 @@ -42,17 +42,17 @@ HTTP with -d, -G and {} # # Verify data after the test has been "shot" - -GET /%TESTNUMBER?foo=moo&moo=poo HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER?foo=moo&moo=poo HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER?foo=moo&moo=poo HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER?foo=moo&moo=poo HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2 b/tests/data/test2 index 86ec605dba5b..12e99b81479b 100644 --- a/tests/data/test2 +++ b/tests/data/test2 @@ -9,7 +9,7 @@ HTTP Basic auth # # Server-side - + HTTP/1.1 200 Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake swsclose @@ -36,13 +36,13 @@ HTTP GET with user and password # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[fake:user]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[fake:user]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2000 b/tests/data/test2000 index 032bf5b1b453..9e4d2acdb1a3 100644 --- a/tests/data/test2000 +++ b/tests/data/test2000 @@ -46,15 +46,15 @@ moo # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT data diff --git a/tests/data/test2001 b/tests/data/test2001 index de1673531322..8792f8dbb60c 100644 --- a/tests/data/test2001 +++ b/tests/data/test2001 @@ -13,18 +13,18 @@ multiprotocol # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + -foo- @@ -63,20 +63,20 @@ moo # # Verify data after the test has been "shot" - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER0002 -RETR %TESTNUMBER0002 -QUIT + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER0002 +RETR %TESTNUMBER0002 +QUIT -foo- diff --git a/tests/data/test2002 b/tests/data/test2002 index 4b2b4fef6942..660901103cc9 100644 --- a/tests/data/test2002 +++ b/tests/data/test2002 @@ -15,18 +15,18 @@ multiprotocol # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + -foo- @@ -76,24 +76,24 @@ moo ^timeout = [5-6]$ -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER0002 -RETR %TESTNUMBER0002 +GET /%TESTNUMBER0001 HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +%CR +USER anonymous%CR +PASS ftp@example.com%CR +PWD%CR +EPSV%CR +TYPE I%CR +SIZE %TESTNUMBER0002%CR +RETR %TESTNUMBER0002%CR opcode = 1 mode = octet tsize = 0 blksize = 512 filename = /%TESTNUMBER0003 -QUIT +QUIT%CR -foo- diff --git a/tests/data/test2003 b/tests/data/test2003 index 5ab3e41ac6dd..ce5fcbcb6f0c 100644 --- a/tests/data/test2003 +++ b/tests/data/test2003 @@ -15,18 +15,18 @@ multiprotocol # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + -foo- @@ -76,18 +76,18 @@ moo ^timeout = [5-6]$ -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER0002 -RETR %TESTNUMBER0002 +GET /%TESTNUMBER0001 HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +%CR +USER anonymous%CR +PASS ftp@example.com%CR +PWD%CR +EPSV%CR +TYPE I%CR +SIZE %TESTNUMBER0002%CR +RETR %TESTNUMBER0002%CR opcode = 1 mode = octet tsize = 0 @@ -98,15 +98,15 @@ mode = octet tsize = 0 blksize = 512 filename = /%TESTNUMBER0003 -EPSV -SIZE %TESTNUMBER0002 -RETR %TESTNUMBER0002 -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -QUIT +EPSV%CR +SIZE %TESTNUMBER0002%CR +RETR %TESTNUMBER0002%CR +GET /%TESTNUMBER0001 HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +%CR +QUIT%CR -foo- diff --git a/tests/data/test2005 b/tests/data/test2005 index 91e256298a40..c027f53c633f 100644 --- a/tests/data/test2005 +++ b/tests/data/test2005 @@ -43,13 +43,13 @@ machine example.com # # Verify data after the test has been "shot" - -GET / HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[:5up3r53cr37]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET / HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[:5up3r53cr37]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2023 b/tests/data/test2023 index 9c3cc94c0a82..f0e43d0ed23c 100644 --- a/tests/data/test2023 +++ b/tests/data/test2023 @@ -10,91 +10,91 @@ HTTP Basic auth - -HTTP/1.1 401 Sorry wrong password -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Basic realm="testrealm" - + +HTTP/1.1 401 Sorry wrong password +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! - -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Sorry wrong password (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Basic realm="testrealm" - + +HTTP/1.1 401 Sorry wrong password (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! - -HTTP/1.1 401 Sorry wrong password (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Basic realm="testrealm" - + +HTTP/1.1 401 Sorry wrong password (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! - -HTTP/1.1 200 Things are fine in server land (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Sorry wrong password -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Basic realm="testrealm" - + +HTTP/1.1 401 Sorry wrong password +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! -HTTP/1.1 401 Sorry wrong password (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Basic realm="testrealm" - +HTTP/1.1 401 Sorry wrong password (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! -HTTP/1.1 401 Sorry wrong password (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Basic realm="testrealm" - +HTTP/1.1 401 Sorry wrong password (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! -HTTP/1.1 200 Things are fine in server land (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - +HTTP/1.1 200 Things are fine in server land (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! @@ -119,32 +119,32 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER basic basic # Verify data after the test has been "shot" - -GET /%TESTNUMBER0100 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[testuser:wrongpass]b64% -Accept: */* - -GET /%TESTNUMBER0200 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[testuser:testpass]b64% -Accept: */* - -GET /%TESTNUMBER0300 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[testuser:wrongpass]b64% -Accept: */* - -GET /%TESTNUMBER0400 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[testuser:wrongpass]b64% -Accept: */* - -GET /%TESTNUMBER0500 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[testuser:testpass]b64% -Accept: */* - + +GET /%TESTNUMBER0100 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[testuser:wrongpass]b64% +Accept: */* + +GET /%TESTNUMBER0200 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[testuser:testpass]b64% +Accept: */* + +GET /%TESTNUMBER0300 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[testuser:wrongpass]b64% +Accept: */* + +GET /%TESTNUMBER0400 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[testuser:wrongpass]b64% +Accept: */* + +GET /%TESTNUMBER0500 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[testuser:testpass]b64% +Accept: */* + diff --git a/tests/data/test2024 b/tests/data/test2024 index e79285bc7bbf..7838aeb2eb2a 100644 --- a/tests/data/test2024 +++ b/tests/data/test2024 @@ -14,97 +14,97 @@ HTTP Digest auth ensure that the order doesn't matter. --> - -HTTP/1.1 401 Sorry wrong password -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Digest realm="testrealm", nonce="1" -WWW-Authenticate: Basic realm="testrealm" - + +HTTP/1.1 401 Sorry wrong password +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Digest realm="testrealm", nonce="1" +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! - -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Sorry wrong password (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Digest realm="testrealm", nonce="2" -WWW-Authenticate: Basic realm="testrealm" - + +HTTP/1.1 401 Sorry wrong password (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Digest realm="testrealm", nonce="2" +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! - -HTTP/1.1 401 Sorry wrong password (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Digest realm="testrealm", nonce="3" -WWW-Authenticate: Basic realm="testrealm" - + +HTTP/1.1 401 Sorry wrong password (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Digest realm="testrealm", nonce="3" +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! - -HTTP/1.1 200 Things are fine in server land (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Sorry wrong password -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Digest realm="testrealm", nonce="1" -WWW-Authenticate: Basic realm="testrealm" - + +HTTP/1.1 401 Sorry wrong password +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Digest realm="testrealm", nonce="1" +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! -HTTP/1.1 401 Sorry wrong password (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Digest realm="testrealm", nonce="2" -WWW-Authenticate: Basic realm="testrealm" - +HTTP/1.1 401 Sorry wrong password (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Digest realm="testrealm", nonce="2" +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! -HTTP/1.1 401 Sorry wrong password (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Digest realm="testrealm", nonce="3" -WWW-Authenticate: Basic realm="testrealm" - +HTTP/1.1 401 Sorry wrong password (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Digest realm="testrealm", nonce="3" +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! -HTTP/1.1 200 Things are fine in server land (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - +HTTP/1.1 200 Things are fine in server land (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! @@ -134,32 +134,32 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER basic digest # Verify data after the test has been "shot" - -GET /%TESTNUMBER0100 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[testuser:wrongpass]b64% -Accept: */* - -GET /%TESTNUMBER0200 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="1", uri="/%TESTNUMBER0200", response="ed646c565f79e2dd9fa37cb5a621213c" -Accept: */* - -GET /%TESTNUMBER0300 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[testuser:wrongpass]b64% -Accept: */* - -GET /%TESTNUMBER0400 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="2", uri="/%TESTNUMBER0400", response="9741ced8caacc6124770187b36f007c5" -Accept: */* - -GET /%TESTNUMBER0500 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="3", uri="/%TESTNUMBER0500", response="5bc77ec8c2d443b27a1b55f1fd8fbb13" -Accept: */* - + +GET /%TESTNUMBER0100 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[testuser:wrongpass]b64% +Accept: */* + +GET /%TESTNUMBER0200 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="1", uri="/%TESTNUMBER0200", response="ed646c565f79e2dd9fa37cb5a621213c" +Accept: */* + +GET /%TESTNUMBER0300 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[testuser:wrongpass]b64% +Accept: */* + +GET /%TESTNUMBER0400 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="2", uri="/%TESTNUMBER0400", response="9741ced8caacc6124770187b36f007c5" +Accept: */* + +GET /%TESTNUMBER0500 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="3", uri="/%TESTNUMBER0500", response="5bc77ec8c2d443b27a1b55f1fd8fbb13" +Accept: */* + diff --git a/tests/data/test2025 b/tests/data/test2025 index 7982b68d22e6..2b2c6f33f82e 100644 --- a/tests/data/test2025 +++ b/tests/data/test2025 @@ -15,178 +15,178 @@ NTLM ensure that the order doesn't matter. --> - -HTTP/1.1 401 Sorry wrong password -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM -WWW-Authenticate: Basic realm="testrealm" - + +HTTP/1.1 401 Sorry wrong password +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! - -HTTP/1.1 401 Need Basic or NTLM auth -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: Basic realm="testrealm" -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Need Basic or NTLM auth +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: Basic realm="testrealm" +WWW-Authenticate: NTLM + This is not the real page! - -HTTP/1.1 401 NTLM intermediate -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - + +HTTP/1.1 401 NTLM intermediate +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + This is still not the real page! - -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Sorry wrong password (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM -WWW-Authenticate: Basic realm="testrealm" - + +HTTP/1.1 401 Sorry wrong password (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! - -HTTP/1.1 401 Need Basic or NTLM auth (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: Basic realm="testrealm" -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Need Basic or NTLM auth (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: Basic realm="testrealm" +WWW-Authenticate: NTLM + This is not the real page! - -HTTP/1.1 401 NTLM intermediate (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - + +HTTP/1.1 401 NTLM intermediate (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + This is still not the real page! - -HTTP/1.1 401 Sorry wrong password (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM -WWW-Authenticate: Basic realm="testrealm" - + +HTTP/1.1 401 Sorry wrong password (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! - -HTTP/1.1 401 Need Basic or NTLM auth (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: Basic realm="testrealm" -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Need Basic or NTLM auth (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: Basic realm="testrealm" +WWW-Authenticate: NTLM + This is not the real page! - -HTTP/1.1 401 NTLM intermediate (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - + +HTTP/1.1 401 NTLM intermediate (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + This is still not the real page! - -HTTP/1.1 200 Things are fine in server land (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Sorry wrong password -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM -WWW-Authenticate: Basic realm="testrealm" - + +HTTP/1.1 401 Sorry wrong password +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! -HTTP/1.1 401 NTLM intermediate -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - +HTTP/1.1 401 NTLM intermediate +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! -HTTP/1.1 401 Sorry wrong password (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM -WWW-Authenticate: Basic realm="testrealm" - +HTTP/1.1 401 Sorry wrong password (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! -HTTP/1.1 401 NTLM intermediate (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - -HTTP/1.1 401 Sorry wrong password (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM -WWW-Authenticate: Basic realm="testrealm" - +HTTP/1.1 401 NTLM intermediate (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + +HTTP/1.1 401 Sorry wrong password (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! -HTTP/1.1 401 NTLM intermediate (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - -HTTP/1.1 200 Things are fine in server land (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - +HTTP/1.1 401 NTLM intermediate (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + +HTTP/1.1 200 Things are fine in server land (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! @@ -216,47 +216,47 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER basic ntlm # Verify data after the test has been "shot" - -GET /%TESTNUMBER0100 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[testuser:wrongpass]b64% -Accept: */* - -GET /%TESTNUMBER0200 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -Accept: */* - -GET /%TESTNUMBER0200 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyV09SS1NUQVRJT04= -Accept: */* - -GET /%TESTNUMBER0300 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[testuser:wrongpass]b64% -Accept: */* - -GET /%TESTNUMBER0400 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -Accept: */* - -GET /%TESTNUMBER0400 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyV09SS1NUQVRJT04= -Accept: */* - -GET /%TESTNUMBER0500 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -Accept: */* - -GET /%TESTNUMBER0500 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyV09SS1NUQVRJT04= -Accept: */* - + +GET /%TESTNUMBER0100 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[testuser:wrongpass]b64% +Accept: */* + +GET /%TESTNUMBER0200 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +Accept: */* + +GET /%TESTNUMBER0200 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyV09SS1NUQVRJT04= +Accept: */* + +GET /%TESTNUMBER0300 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[testuser:wrongpass]b64% +Accept: */* + +GET /%TESTNUMBER0400 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +Accept: */* + +GET /%TESTNUMBER0400 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyV09SS1NUQVRJT04= +Accept: */* + +GET /%TESTNUMBER0500 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +Accept: */* + +GET /%TESTNUMBER0500 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyV09SS1NUQVRJT04= +Accept: */* + diff --git a/tests/data/test2026 b/tests/data/test2026 index ee434319d49f..d576725c4c4c 100644 --- a/tests/data/test2026 +++ b/tests/data/test2026 @@ -14,133 +14,133 @@ HTTP Digest auth ensure that the order doesn't matter. --> - -HTTP/1.1 401 Need Basic or Digest auth -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: Digest realm="testrealm", nonce="1" -WWW-Authenticate: Basic realm="testrealm" - + +HTTP/1.1 401 Need Basic or Digest auth +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: Digest realm="testrealm", nonce="1" +WWW-Authenticate: Basic realm="testrealm" + This is not the real page! - -HTTP/1.1 401 Sorry wrong password -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Basic realm="testrealm" -WWW-Authenticate: Digest realm="testrealm", nonce="2" - + +HTTP/1.1 401 Sorry wrong password +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Basic realm="testrealm" +WWW-Authenticate: Digest realm="testrealm", nonce="2" + This is a bad password page! - -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Need Basic or Digest auth (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: Digest realm="testrealm", nonce="3" -WWW-Authenticate: Basic realm="testrealm" - + +HTTP/1.1 401 Need Basic or Digest auth (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: Digest realm="testrealm", nonce="3" +WWW-Authenticate: Basic realm="testrealm" + This is not the real page! - -HTTP/1.1 401 Sorry wrong password (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Basic realm="testrealm" -WWW-Authenticate: Digest realm="testrealm", nonce="4" - + +HTTP/1.1 401 Sorry wrong password (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Basic realm="testrealm" +WWW-Authenticate: Digest realm="testrealm", nonce="4" + This is a bad password page! - -HTTP/1.1 401 Sorry wrong password (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Digest realm="testrealm", nonce="5" -WWW-Authenticate: Basic realm="testrealm" - + +HTTP/1.1 401 Sorry wrong password (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Digest realm="testrealm", nonce="5" +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! - -HTTP/1.1 200 Things are fine in server land (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Need Basic or Digest auth -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: Digest realm="testrealm", nonce="1" -WWW-Authenticate: Basic realm="testrealm" - -HTTP/1.1 401 Sorry wrong password -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Basic realm="testrealm" -WWW-Authenticate: Digest realm="testrealm", nonce="2" - + +HTTP/1.1 401 Need Basic or Digest auth +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: Digest realm="testrealm", nonce="1" +WWW-Authenticate: Basic realm="testrealm" + +HTTP/1.1 401 Sorry wrong password +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Basic realm="testrealm" +WWW-Authenticate: Digest realm="testrealm", nonce="2" + This is a bad password page! -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! -HTTP/1.1 401 Need Basic or Digest auth (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: Digest realm="testrealm", nonce="3" -WWW-Authenticate: Basic realm="testrealm" - -HTTP/1.1 401 Sorry wrong password (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Basic realm="testrealm" -WWW-Authenticate: Digest realm="testrealm", nonce="4" - +HTTP/1.1 401 Need Basic or Digest auth (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: Digest realm="testrealm", nonce="3" +WWW-Authenticate: Basic realm="testrealm" + +HTTP/1.1 401 Sorry wrong password (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Basic realm="testrealm" +WWW-Authenticate: Digest realm="testrealm", nonce="4" + This is a bad password page! -HTTP/1.1 401 Sorry wrong password (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Digest realm="testrealm", nonce="5" -WWW-Authenticate: Basic realm="testrealm" - +HTTP/1.1 401 Sorry wrong password (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Digest realm="testrealm", nonce="5" +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! -HTTP/1.1 200 Things are fine in server land (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - +HTTP/1.1 200 Things are fine in server land (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! @@ -170,40 +170,40 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER digest basic # Verify data after the test has been "shot" - -GET /%TESTNUMBER0100 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER0100 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="1", uri="/%TESTNUMBER0100", response="5f992a2e761ab926256419f7c685f85b" -Accept: */* - -GET /%TESTNUMBER0200 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[testuser:testpass]b64% -Accept: */* - -GET /%TESTNUMBER0300 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER0300 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="3", uri="/%TESTNUMBER0300", response="132242e602882251929be93228c830ae" -Accept: */* - -GET /%TESTNUMBER0400 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[testuser:wrongpass]b64% -Accept: */* - -GET /%TESTNUMBER0500 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[testuser:testpass]b64% -Accept: */* - + +GET /%TESTNUMBER0100 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER0100 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="1", uri="/%TESTNUMBER0100", response="5f992a2e761ab926256419f7c685f85b" +Accept: */* + +GET /%TESTNUMBER0200 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[testuser:testpass]b64% +Accept: */* + +GET /%TESTNUMBER0300 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER0300 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="3", uri="/%TESTNUMBER0300", response="132242e602882251929be93228c830ae" +Accept: */* + +GET /%TESTNUMBER0400 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[testuser:wrongpass]b64% +Accept: */* + +GET /%TESTNUMBER0500 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[testuser:testpass]b64% +Accept: */* + diff --git a/tests/data/test2027 b/tests/data/test2027 index 259e439504df..bff987e1cc50 100644 --- a/tests/data/test2027 +++ b/tests/data/test2027 @@ -21,149 +21,149 @@ HTTP Digest auth --> - -HTTP/1.1 401 Need Digest auth -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: Digest realm="testrealm", nonce="1" - + +HTTP/1.1 401 Need Digest auth +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: Digest realm="testrealm", nonce="1" + This is not the real page! - -HTTP/1.1 401 Sorry wrong password -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Digest realm="testrealm", nonce="2" - + +HTTP/1.1 401 Sorry wrong password +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Digest realm="testrealm", nonce="2" + This is a bad password page! - -HTTP/1.1 401 Need Digest auth (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: Digest realm="testrealm", nonce="3" - + +HTTP/1.1 401 Need Digest auth (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: Digest realm="testrealm", nonce="3" + This is not the real page! - -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Need Digest auth (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: Digest realm="testrealm", nonce="4" - + +HTTP/1.1 401 Need Digest auth (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: Digest realm="testrealm", nonce="4" + This is not the real page! - -HTTP/1.1 401 Sorry wrong password (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Digest realm="testrealm", nonce="5" - + +HTTP/1.1 401 Sorry wrong password (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Digest realm="testrealm", nonce="5" + This is a bad password page! - -HTTP/1.1 401 Need Digest auth (4) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: Digest realm="testrealm", nonce="6" - + +HTTP/1.1 401 Need Digest auth (4) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: Digest realm="testrealm", nonce="6" + This is not the real page! - -HTTP/1.1 401 Sorry wrong password (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Digest realm="testrealm", nonce="7" - + +HTTP/1.1 401 Sorry wrong password (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Digest realm="testrealm", nonce="7" + This is a bad password page! - -HTTP/1.1 200 Things are fine in server land (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Need Digest auth -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: Digest realm="testrealm", nonce="1" - -HTTP/1.1 401 Sorry wrong password -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Digest realm="testrealm", nonce="2" - + +HTTP/1.1 401 Need Digest auth +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: Digest realm="testrealm", nonce="1" + +HTTP/1.1 401 Sorry wrong password +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Digest realm="testrealm", nonce="2" + This is a bad password page! -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! -HTTP/1.1 401 Need Digest auth (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: Digest realm="testrealm", nonce="4" - -HTTP/1.1 401 Sorry wrong password (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Digest realm="testrealm", nonce="5" - +HTTP/1.1 401 Need Digest auth (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: Digest realm="testrealm", nonce="4" + +HTTP/1.1 401 Sorry wrong password (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Digest realm="testrealm", nonce="5" + This is a bad password page! -HTTP/1.1 401 Sorry wrong password (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Digest realm="testrealm", nonce="7" - -HTTP/1.1 401 Sorry wrong password (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Digest realm="testrealm", nonce="7" - +HTTP/1.1 401 Sorry wrong password (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Digest realm="testrealm", nonce="7" + +HTTP/1.1 401 Sorry wrong password (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Digest realm="testrealm", nonce="7" + This is a bad password page! -HTTP/1.1 200 Things are fine in server land (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - +HTTP/1.1 200 Things are fine in server land (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! @@ -193,45 +193,45 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER digest digest # Verify data after the test has been "shot" - -GET /%TESTNUMBER0100 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER0100 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="1", uri="/%TESTNUMBER0100", response="f7fd60eefaff5225971bf9b3d80d6ba6" -Accept: */* - -GET /%TESTNUMBER0200 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="2", uri="/%TESTNUMBER0200", response="785ca3ef511999f7e9c178195f5b388c" -Accept: */* - -GET /%TESTNUMBER0300 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER0300 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="4", uri="/%TESTNUMBER0300", response="4c735d2360fd6848e7cb32a11ae3612b" -Accept: */* - -GET /%TESTNUMBER0400 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="5", uri="/%TESTNUMBER0400", response="f5906785511fb60a2af8b1cd53008ead" -Accept: */* - -GET /%TESTNUMBER0400 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="5", uri="/%TESTNUMBER0400", response="f5906785511fb60a2af8b1cd53008ead" -Accept: */* - -GET /%TESTNUMBER0500 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="7", uri="/%TESTNUMBER0500", response="8ef4d935fd964a46c3965c0863b52cf1" -Accept: */* - + +GET /%TESTNUMBER0100 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER0100 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="1", uri="/%TESTNUMBER0100", response="f7fd60eefaff5225971bf9b3d80d6ba6" +Accept: */* + +GET /%TESTNUMBER0200 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="2", uri="/%TESTNUMBER0200", response="785ca3ef511999f7e9c178195f5b388c" +Accept: */* + +GET /%TESTNUMBER0300 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER0300 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="4", uri="/%TESTNUMBER0300", response="4c735d2360fd6848e7cb32a11ae3612b" +Accept: */* + +GET /%TESTNUMBER0400 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="5", uri="/%TESTNUMBER0400", response="f5906785511fb60a2af8b1cd53008ead" +Accept: */* + +GET /%TESTNUMBER0400 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="5", uri="/%TESTNUMBER0400", response="f5906785511fb60a2af8b1cd53008ead" +Accept: */* + +GET /%TESTNUMBER0500 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="7", uri="/%TESTNUMBER0500", response="8ef4d935fd964a46c3965c0863b52cf1" +Accept: */* + diff --git a/tests/data/test2028 b/tests/data/test2028 index 461d7ba6a814..7f71f0549c79 100644 --- a/tests/data/test2028 +++ b/tests/data/test2028 @@ -15,214 +15,214 @@ NTLM ensure that the order doesn't matter. --> - -HTTP/1.1 401 Need Digest or NTLM auth -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: NTLM -WWW-Authenticate: Digest realm="testrealm", nonce="1" - + +HTTP/1.1 401 Need Digest or NTLM auth +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: NTLM +WWW-Authenticate: Digest realm="testrealm", nonce="1" + This is not the real page! - -HTTP/1.1 401 Sorry wrong password -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Digest realm="testrealm", nonce="2" -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Sorry wrong password +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Digest realm="testrealm", nonce="2" +WWW-Authenticate: NTLM + This is a bad password page! - -HTTP/1.1 401 Need Digest or NTLM auth (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: NTLM -WWW-Authenticate: Digest realm="testrealm", nonce="3" - + +HTTP/1.1 401 Need Digest or NTLM auth (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: NTLM +WWW-Authenticate: Digest realm="testrealm", nonce="3" + This is not the real page! - -HTTP/1.1 401 NTLM intermediate -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - + +HTTP/1.1 401 NTLM intermediate +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + This is still not the real page! - -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Need Digest or NTLM auth (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: Digest realm="testrealm", nonce="4" -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Need Digest or NTLM auth (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: Digest realm="testrealm", nonce="4" +WWW-Authenticate: NTLM + This is not the real page! - -HTTP/1.1 401 Sorry wrong password (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM -WWW-Authenticate: Digest realm="testrealm", nonce="5" - + +HTTP/1.1 401 Sorry wrong password (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM +WWW-Authenticate: Digest realm="testrealm", nonce="5" + This is a bad password page! - -HTTP/1.1 401 Need Digest or NTLM auth (4) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: Digest realm="testrealm", nonce="6" -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Need Digest or NTLM auth (4) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: Digest realm="testrealm", nonce="6" +WWW-Authenticate: NTLM + This is not the real page! - -HTTP/1.1 401 NTLM intermediate (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - + +HTTP/1.1 401 NTLM intermediate (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + This is still not the real page! - -HTTP/1.1 401 Sorry wrong password (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM -WWW-Authenticate: Digest realm="testrealm", nonce="7" - + +HTTP/1.1 401 Sorry wrong password (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM +WWW-Authenticate: Digest realm="testrealm", nonce="7" + This is a bad password page! - -HTTP/1.1 401 Need Digest or NTLM auth (5) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: Digest realm="testrealm", nonce="8" -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Need Digest or NTLM auth (5) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: Digest realm="testrealm", nonce="8" +WWW-Authenticate: NTLM + This is not the real page! - -HTTP/1.1 401 NTLM intermediate (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - + +HTTP/1.1 401 NTLM intermediate (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + This is still not the real page! - -HTTP/1.1 200 Things are fine in server land (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Need Digest or NTLM auth -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: NTLM -WWW-Authenticate: Digest realm="testrealm", nonce="1" - -HTTP/1.1 401 Sorry wrong password -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Digest realm="testrealm", nonce="2" -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Need Digest or NTLM auth +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: NTLM +WWW-Authenticate: Digest realm="testrealm", nonce="1" + +HTTP/1.1 401 Sorry wrong password +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Digest realm="testrealm", nonce="2" +WWW-Authenticate: NTLM + This is a bad password page! -HTTP/1.1 401 NTLM intermediate -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - +HTTP/1.1 401 NTLM intermediate +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! -HTTP/1.1 401 Need Digest or NTLM auth (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: Digest realm="testrealm", nonce="4" -WWW-Authenticate: NTLM - -HTTP/1.1 401 Sorry wrong password (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM -WWW-Authenticate: Digest realm="testrealm", nonce="5" - +HTTP/1.1 401 Need Digest or NTLM auth (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: Digest realm="testrealm", nonce="4" +WWW-Authenticate: NTLM + +HTTP/1.1 401 Sorry wrong password (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM +WWW-Authenticate: Digest realm="testrealm", nonce="5" + This is a bad password page! -HTTP/1.1 401 NTLM intermediate (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - -HTTP/1.1 401 Sorry wrong password (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM -WWW-Authenticate: Digest realm="testrealm", nonce="7" - +HTTP/1.1 401 NTLM intermediate (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + +HTTP/1.1 401 Sorry wrong password (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM +WWW-Authenticate: Digest realm="testrealm", nonce="7" + This is a bad password page! -HTTP/1.1 401 NTLM intermediate (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - -HTTP/1.1 200 Things are fine in server land (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - +HTTP/1.1 401 NTLM intermediate (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + +HTTP/1.1 200 Things are fine in server land (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! @@ -253,55 +253,55 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER digest ntlm # Verify data after the test has been "shot" - -GET /%TESTNUMBER0100 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER0100 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="1", uri="/%TESTNUMBER0100", response="53c80666f5e3a4a55f92a66aaf0078bb" -Accept: */* - -GET /%TESTNUMBER0200 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -Accept: */* - -GET /%TESTNUMBER0200 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyV09SS1NUQVRJT04= -Accept: */* - -GET /%TESTNUMBER0300 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER0300 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="4", uri="/%TESTNUMBER0300", response="1aa5d90da9803ca12d04b24e0f19476e" -Accept: */* - -GET /%TESTNUMBER0400 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -Accept: */* - -GET /%TESTNUMBER0400 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyV09SS1NUQVRJT04= -Accept: */* - -GET /%TESTNUMBER0500 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -Accept: */* - -GET /%TESTNUMBER0500 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyV09SS1NUQVRJT04= -Accept: */* - + +GET /%TESTNUMBER0100 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER0100 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="1", uri="/%TESTNUMBER0100", response="53c80666f5e3a4a55f92a66aaf0078bb" +Accept: */* + +GET /%TESTNUMBER0200 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +Accept: */* + +GET /%TESTNUMBER0200 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyV09SS1NUQVRJT04= +Accept: */* + +GET /%TESTNUMBER0300 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER0300 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="4", uri="/%TESTNUMBER0300", response="1aa5d90da9803ca12d04b24e0f19476e" +Accept: */* + +GET /%TESTNUMBER0400 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +Accept: */* + +GET /%TESTNUMBER0400 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyV09SS1NUQVRJT04= +Accept: */* + +GET /%TESTNUMBER0500 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +Accept: */* + +GET /%TESTNUMBER0500 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyV09SS1NUQVRJT04= +Accept: */* + diff --git a/tests/data/test2029 b/tests/data/test2029 index 7adadaa57e39..08a955fed7cd 100644 --- a/tests/data/test2029 +++ b/tests/data/test2029 @@ -15,151 +15,151 @@ NTLM ensure that the order doesn't matter. --> - -HTTP/1.1 401 Need Basic or NTLM auth -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: NTLM -WWW-Authenticate: Basic realm="testrealm" - + +HTTP/1.1 401 Need Basic or NTLM auth +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: NTLM +WWW-Authenticate: Basic realm="testrealm" + This is not the real page! - -HTTP/1.1 401 NTLM intermediate -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - + +HTTP/1.1 401 NTLM intermediate +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + This is still not the real page! - -HTTP/1.1 401 Sorry wrong password -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Basic realm="testrealm" -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Sorry wrong password +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Basic realm="testrealm" +WWW-Authenticate: NTLM + This is a bad password page! - -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Need Basic or NTLM auth (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: NTLM -WWW-Authenticate: Basic realm="testrealm" - + +HTTP/1.1 401 Need Basic or NTLM auth (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: NTLM +WWW-Authenticate: Basic realm="testrealm" + This is not the real page! - -HTTP/1.1 401 NTLM intermediate (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - + +HTTP/1.1 401 NTLM intermediate (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + This is still not the real page! - -HTTP/1.1 401 Sorry wrong password (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Basic realm="testrealm" -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Sorry wrong password (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Basic realm="testrealm" +WWW-Authenticate: NTLM + This is a bad password page! - -HTTP/1.1 401 Sorry wrong password (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM -WWW-Authenticate: Basic realm="testrealm" - + +HTTP/1.1 401 Sorry wrong password (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! - -HTTP/1.1 200 Things are fine in server land (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 NTLM intermediate -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - -HTTP/1.1 401 Sorry wrong password -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Basic realm="testrealm" -WWW-Authenticate: NTLM - + +HTTP/1.1 401 NTLM intermediate +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + +HTTP/1.1 401 Sorry wrong password +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Basic realm="testrealm" +WWW-Authenticate: NTLM + This is a bad password page! -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! -HTTP/1.1 401 NTLM intermediate (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - -HTTP/1.1 401 Sorry wrong password (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Basic realm="testrealm" -WWW-Authenticate: NTLM - +HTTP/1.1 401 NTLM intermediate (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + +HTTP/1.1 401 Sorry wrong password (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Basic realm="testrealm" +WWW-Authenticate: NTLM + This is a bad password page! -HTTP/1.1 401 Sorry wrong password (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM -WWW-Authenticate: Basic realm="testrealm" - +HTTP/1.1 401 Sorry wrong password (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! -HTTP/1.1 200 Things are fine in server land (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - +HTTP/1.1 200 Things are fine in server land (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! @@ -189,42 +189,42 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER ntlm basic # Verify data after the test has been "shot" - -GET /%TESTNUMBER0100 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -Accept: */* - -GET /%TESTNUMBER0100 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyV09SS1NUQVRJT04= -Accept: */* - -GET /%TESTNUMBER0200 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[testuser:testpass]b64% -Accept: */* - -GET /%TESTNUMBER0300 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -Accept: */* - -GET /%TESTNUMBER0300 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyV09SS1NUQVRJT04= -Accept: */* - -GET /%TESTNUMBER0400 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[testuser:wrongpass]b64% -Accept: */* - -GET /%TESTNUMBER0500 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[testuser:testpass]b64% -Accept: */* - + +GET /%TESTNUMBER0100 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +Accept: */* + +GET /%TESTNUMBER0100 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyV09SS1NUQVRJT04= +Accept: */* + +GET /%TESTNUMBER0200 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[testuser:testpass]b64% +Accept: */* + +GET /%TESTNUMBER0300 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +Accept: */* + +GET /%TESTNUMBER0300 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyV09SS1NUQVRJT04= +Accept: */* + +GET /%TESTNUMBER0400 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[testuser:wrongpass]b64% +Accept: */* + +GET /%TESTNUMBER0500 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[testuser:testpass]b64% +Accept: */* + diff --git a/tests/data/test2030 b/tests/data/test2030 index 4961e668d6de..b02d219201f2 100644 --- a/tests/data/test2030 +++ b/tests/data/test2030 @@ -27,191 +27,191 @@ ensure that the order doesn't matter. --> - -HTTP/1.1 401 Need Digest or NTLM auth -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: NTLM -WWW-Authenticate: Digest realm="testrealm", nonce="1" - + +HTTP/1.1 401 Need Digest or NTLM auth +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: NTLM +WWW-Authenticate: Digest realm="testrealm", nonce="1" + This is not the real page! - -HTTP/1.1 401 NTLM intermediate -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - + +HTTP/1.1 401 NTLM intermediate +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + This is still not the real page! - -HTTP/1.1 401 Sorry wrong password -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Digest realm="testrealm", nonce="2" -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Sorry wrong password +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Digest realm="testrealm", nonce="2" +WWW-Authenticate: NTLM + This is a bad password page! - -HTTP/1.1 401 Need Digest or NTLM auth (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: NTLM -WWW-Authenticate: Digest realm="testrealm", nonce="3" - + +HTTP/1.1 401 Need Digest or NTLM auth (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: NTLM +WWW-Authenticate: Digest realm="testrealm", nonce="3" + This is not the real page! - -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Need Digest or NTLM auth (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: Digest realm="testrealm", nonce="4" -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Need Digest or NTLM auth (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: Digest realm="testrealm", nonce="4" +WWW-Authenticate: NTLM + This is not the real page! - -HTTP/1.1 401 NTLM intermediate (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - + +HTTP/1.1 401 NTLM intermediate (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + This is still not the real page! - -HTTP/1.1 401 Sorry wrong password (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM -WWW-Authenticate: Digest realm="testrealm", nonce="5" - + +HTTP/1.1 401 Sorry wrong password (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM +WWW-Authenticate: Digest realm="testrealm", nonce="5" + This is a bad password page! - -HTTP/1.1 401 Need Digest or NTLM auth (4) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: Digest realm="testrealm", nonce="6" -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Need Digest or NTLM auth (4) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: Digest realm="testrealm", nonce="6" +WWW-Authenticate: NTLM + This is not the real page! - -HTTP/1.1 401 Sorry wrong password (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM -WWW-Authenticate: Digest realm="testrealm", nonce="7" - + +HTTP/1.1 401 Sorry wrong password (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM +WWW-Authenticate: Digest realm="testrealm", nonce="7" + This is a bad password page! - -HTTP/1.1 401 Need Digest or NTLM auth (5) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: Digest realm="testrealm", nonce="8" -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Need Digest or NTLM auth (5) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: Digest realm="testrealm", nonce="8" +WWW-Authenticate: NTLM + This is not the real page! - -HTTP/1.1 200 Things are fine in server land (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 NTLM intermediate -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - -HTTP/1.1 401 Sorry wrong password -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: Digest realm="testrealm", nonce="2" -WWW-Authenticate: NTLM - + +HTTP/1.1 401 NTLM intermediate +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + +HTTP/1.1 401 Sorry wrong password +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: Digest realm="testrealm", nonce="2" +WWW-Authenticate: NTLM + This is a bad password page! -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! -HTTP/1.1 401 NTLM intermediate (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - -HTTP/1.1 401 Sorry wrong password (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM -WWW-Authenticate: Digest realm="testrealm", nonce="5" - +HTTP/1.1 401 NTLM intermediate (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + +HTTP/1.1 401 Sorry wrong password (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM +WWW-Authenticate: Digest realm="testrealm", nonce="5" + This is a bad password page! -HTTP/1.1 401 Sorry wrong password (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM -WWW-Authenticate: Digest realm="testrealm", nonce="7" - -HTTP/1.1 401 Sorry wrong password (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM -WWW-Authenticate: Digest realm="testrealm", nonce="7" - +HTTP/1.1 401 Sorry wrong password (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM +WWW-Authenticate: Digest realm="testrealm", nonce="7" + +HTTP/1.1 401 Sorry wrong password (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM +WWW-Authenticate: Digest realm="testrealm", nonce="7" + This is a bad password page! -HTTP/1.1 200 Things are fine in server land (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - +HTTP/1.1 200 Things are fine in server land (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! @@ -242,47 +242,47 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER ntlm digest # Verify data after the test has been "shot" - -GET /%TESTNUMBER0100 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -Accept: */* - -GET /%TESTNUMBER0100 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyV09SS1NUQVRJT04= -Accept: */* - -GET /%TESTNUMBER0200 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="2", uri="/%TESTNUMBER0200", response="2f2d784ba53a0a307758a90e98d25c27" -Accept: */* - -GET /%TESTNUMBER0300 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -Accept: */* - -GET /%TESTNUMBER0300 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyV09SS1NUQVRJT04= -Accept: */* - -GET /%TESTNUMBER0400 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="5", uri="/%TESTNUMBER0400", response="d6262e9147db08c62ff2f53b515861e8" -Accept: */* - -GET /%TESTNUMBER0400 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="5", uri="/%TESTNUMBER0400", response="d6262e9147db08c62ff2f53b515861e8" -Accept: */* - -GET /%TESTNUMBER0500 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="7", uri="/%TESTNUMBER0500", response="198757e61163a779cf24ed4c49c1ad7d" -Accept: */* - + +GET /%TESTNUMBER0100 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +Accept: */* + +GET /%TESTNUMBER0100 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyV09SS1NUQVRJT04= +Accept: */* + +GET /%TESTNUMBER0200 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="2", uri="/%TESTNUMBER0200", response="2f2d784ba53a0a307758a90e98d25c27" +Accept: */* + +GET /%TESTNUMBER0300 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +Accept: */* + +GET /%TESTNUMBER0300 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyV09SS1NUQVRJT04= +Accept: */* + +GET /%TESTNUMBER0400 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="5", uri="/%TESTNUMBER0400", response="d6262e9147db08c62ff2f53b515861e8" +Accept: */* + +GET /%TESTNUMBER0400 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="5", uri="/%TESTNUMBER0400", response="d6262e9147db08c62ff2f53b515861e8" +Accept: */* + +GET /%TESTNUMBER0500 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="7", uri="/%TESTNUMBER0500", response="198757e61163a779cf24ed4c49c1ad7d" +Accept: */* + diff --git a/tests/data/test2031 b/tests/data/test2031 index b464b0b7a2f8..249660f2095a 100644 --- a/tests/data/test2031 +++ b/tests/data/test2031 @@ -11,221 +11,221 @@ NTLM - -HTTP/1.1 401 Need NTLM auth -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Need NTLM auth +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: NTLM + This is not the real page! - -HTTP/1.1 401 NTLM intermediate -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - + +HTTP/1.1 401 NTLM intermediate +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + This is still not the real page! - -HTTP/1.1 401 Sorry wrong password -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Sorry wrong password +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM + This is a bad password page! - -HTTP/1.1 401 Need NTLM auth (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Need NTLM auth (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: NTLM + This is not the real page! - -HTTP/1.1 401 NTLM intermediate (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - + +HTTP/1.1 401 NTLM intermediate (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + This is still not the real page! - -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Need NTLM auth (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Need NTLM auth (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: NTLM + This is not the real page! - -HTTP/1.1 401 NTLM intermediate (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - + +HTTP/1.1 401 NTLM intermediate (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + This is still not the real page! - -HTTP/1.1 401 Sorry wrong password (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Sorry wrong password (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM + This is a bad password page! - -HTTP/1.1 401 Need NTLM auth (4) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Need NTLM auth (4) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: NTLM + This is not the real page! - -HTTP/1.1 401 NTLM intermediate (4) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - + +HTTP/1.1 401 NTLM intermediate (4) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + This is still not the real page! - -HTTP/1.1 401 Sorry wrong password (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Sorry wrong password (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM + This is a bad password page! - -HTTP/1.1 401 Need NTLM auth (5) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: NTLM - + +HTTP/1.1 401 Need NTLM auth (5) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: NTLM + This is not the real page! - -HTTP/1.1 401 NTLM intermediate (5) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - + +HTTP/1.1 401 NTLM intermediate (5) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + This is still not the real page! - -HTTP/1.1 200 Things are fine in server land (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 NTLM intermediate -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - -HTTP/1.1 401 Sorry wrong password -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM - + +HTTP/1.1 401 NTLM intermediate +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + +HTTP/1.1 401 Sorry wrong password +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM + This is a bad password page! -HTTP/1.1 401 NTLM intermediate (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - +HTTP/1.1 401 NTLM intermediate (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! -HTTP/1.1 401 NTLM intermediate (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - -HTTP/1.1 401 Sorry wrong password (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM - +HTTP/1.1 401 NTLM intermediate (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + +HTTP/1.1 401 Sorry wrong password (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM + This is a bad password page! -HTTP/1.1 401 NTLM intermediate (4) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - -HTTP/1.1 401 Sorry wrong password (3) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM - +HTTP/1.1 401 NTLM intermediate (4) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + +HTTP/1.1 401 Sorry wrong password (3) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM + This is a bad password page! -HTTP/1.1 401 NTLM intermediate (5) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - -HTTP/1.1 200 Things are fine in server land (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - +HTTP/1.1 401 NTLM intermediate (5) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + +HTTP/1.1 200 Things are fine in server land (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! @@ -255,57 +255,57 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER ntlm ntlm # Verify data after the test has been "shot" - -GET /%TESTNUMBER0100 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -Accept: */* - -GET /%TESTNUMBER0100 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyV09SS1NUQVRJT04= -Accept: */* - -GET /%TESTNUMBER0200 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -Accept: */* - -GET /%TESTNUMBER0200 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyV09SS1NUQVRJT04= -Accept: */* - -GET /%TESTNUMBER0300 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -Accept: */* - -GET /%TESTNUMBER0300 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyV09SS1NUQVRJT04= -Accept: */* - -GET /%TESTNUMBER0400 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -Accept: */* - -GET /%TESTNUMBER0400 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyV09SS1NUQVRJT04= -Accept: */* - -GET /%TESTNUMBER0500 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -Accept: */* - -GET /%TESTNUMBER0500 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyV09SS1NUQVRJT04= -Accept: */* - + +GET /%TESTNUMBER0100 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +Accept: */* + +GET /%TESTNUMBER0100 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyV09SS1NUQVRJT04= +Accept: */* + +GET /%TESTNUMBER0200 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +Accept: */* + +GET /%TESTNUMBER0200 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyV09SS1NUQVRJT04= +Accept: */* + +GET /%TESTNUMBER0300 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +Accept: */* + +GET /%TESTNUMBER0300 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyV09SS1NUQVRJT04= +Accept: */* + +GET /%TESTNUMBER0400 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +Accept: */* + +GET /%TESTNUMBER0400 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyV09SS1NUQVRJT04= +Accept: */* + +GET /%TESTNUMBER0500 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +Accept: */* + +GET /%TESTNUMBER0500 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyV09SS1NUQVRJT04= +Accept: */* + diff --git a/tests/data/test2032 b/tests/data/test2032 index 06aa1ebfacb8..85018987c5dc 100644 --- a/tests/data/test2032 +++ b/tests/data/test2032 @@ -14,45 +14,45 @@ timing-dependent - -HTTP/1.1 401 Need Basic or NTLM auth -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 29 -WWW-Authenticate: NTLM -WWW-Authenticate: Basic realm="testrealm" - + +HTTP/1.1 401 Need Basic or NTLM auth +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 29 +WWW-Authenticate: NTLM +WWW-Authenticate: Basic realm="testrealm" + This is a bad password page! - -HTTP/1.1 401 Need Basic or NTLM auth (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 27 -WWW-Authenticate: NTLM -WWW-Authenticate: Basic realm="testrealm" - + +HTTP/1.1 401 Need Basic or NTLM auth (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 27 +WWW-Authenticate: NTLM +WWW-Authenticate: Basic realm="testrealm" + This is not the real page! - -HTTP/1.1 401 NTLM intermediate (2) -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 33 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= - + +HTTP/1.1 401 NTLM intermediate (2) +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 33 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAACAAIADAAAACGgAEAq6U1NAWaJCIAAAAAAAAAAAAAAAA4AAAATlRMTUF1dGg= + This is still not the real page! - -HTTP/1.1 200 Things are fine in server land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! @@ -88,27 +88,27 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -GET /%TESTNUMBER0100 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[testuser:testpass]b64% -Accept: */* - -GET /%TESTNUMBER0100 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[testuser:testpass]b64% -Accept: */* - -GET /%TESTNUMBER0200 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -Accept: */* - -GET /%TESTNUMBER0200 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyV09SS1NUQVRJT04= -Accept: */* - + +GET /%TESTNUMBER0100 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[testuser:testpass]b64% +Accept: */* + +GET /%TESTNUMBER0100 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[testuser:testpass]b64% +Accept: */* + +GET /%TESTNUMBER0200 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +Accept: */* + +GET /%TESTNUMBER0200 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoABAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyV09SS1NUQVRJT04= +Accept: */* + diff --git a/tests/data/test2033 b/tests/data/test2033 index 2973eb89879c..32c9edc67c47 100644 --- a/tests/data/test2033 +++ b/tests/data/test2033 @@ -47,12 +47,12 @@ CURL_SSL_BACKEND=schannel # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: localhost:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: localhost:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2034 b/tests/data/test2034 index adb4f1767134..a165bd9e83b9 100644 --- a/tests/data/test2034 +++ b/tests/data/test2034 @@ -43,12 +43,12 @@ simple HTTPS GET with DER public key pinning # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: localhost:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: localhost:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2037 b/tests/data/test2037 index 9f229cfd3ea8..facc52898b70 100644 --- a/tests/data/test2037 +++ b/tests/data/test2037 @@ -43,12 +43,12 @@ simple HTTPS GET with PEM public key pinning # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: localhost:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: localhost:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2039 b/tests/data/test2039 index 7cab984ce5ab..c7e7acb63ff9 100644 --- a/tests/data/test2039 +++ b/tests/data/test2039 @@ -48,14 +48,14 @@ machine %HOSTIP login user2 password passwd2 # # Verify data after the test has been "shot" - -USER userdef -PASS passwddef -PWD -EPSV -TYPE A -LIST -QUIT + +USER userdef +PASS passwddef +PWD +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test2040 b/tests/data/test2040 index 6537d193e3c4..d95eb91a91b4 100644 --- a/tests/data/test2040 +++ b/tests/data/test2040 @@ -47,18 +47,18 @@ HTTP Basic authorization, then without authorization # Verify data after the test has been "shot" - -GET /%TESTNUMBER0100 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[testuser:testpass]b64% -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0200 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER0100 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[testuser:testpass]b64% +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0200 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + Finally, this is the real page! diff --git a/tests/data/test2041 b/tests/data/test2041 index 71112c27f8b2..25c7612fdcb9 100644 --- a/tests/data/test2041 +++ b/tests/data/test2041 @@ -43,12 +43,12 @@ simple HTTPS GET with base64-sha256 public key pinning # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: localhost:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: localhost:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2046 b/tests/data/test2046 index 555515aa4a31..aa57535ed2e6 100644 --- a/tests/data/test2046 +++ b/tests/data/test2046 @@ -57,17 +57,17 @@ http://%hex[%c3%a5%c3%a4%c3%b6]hex%.se:%HTTPPORT/%TESTNUMBER --resolve xn--4cab6 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: xn--4cab6c.se:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: xn--4cab6c.se:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: xn--4cab6c.se:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: xn--4cab6c.se:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2047 b/tests/data/test2047 index 9c671b178536..ee987ec69bb2 100644 --- a/tests/data/test2047 +++ b/tests/data/test2047 @@ -58,19 +58,19 @@ http://%hex[%c3%a5%c3%a4%c3%b6]hex%.se/%TESTNUMBER -x %HOSTIP:%HTTPPORT -w "%{nu # # Verify data after the test has been "shot" - -GET http://xn--4cab6c.se/%TESTNUMBER HTTP/1.1 -Host: xn--4cab6c.se -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://xn--4cab6c.se/%TESTNUMBER0001 HTTP/1.1 -Host: xn--4cab6c.se -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://xn--4cab6c.se/%TESTNUMBER HTTP/1.1 +Host: xn--4cab6c.se +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://xn--4cab6c.se/%TESTNUMBER0001 HTTP/1.1 +Host: xn--4cab6c.se +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test2049 b/tests/data/test2049 index 98be38bee670..0fd0d94d77de 100644 --- a/tests/data/test2049 +++ b/tests/data/test2049 @@ -38,27 +38,27 @@ http://www1.example.com:8081/%TESTNUMBER --connect-to ::%HOSTIP:%HTTPPORT --next # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: www1.example.com:8081 -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: www2.example.com:8082 -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: www3.example.com:8083 -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: www4.example.com:8084 -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: www1.example.com:8081 +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: www2.example.com:8082 +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: www3.example.com:8083 +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: www4.example.com:8084 +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2050 b/tests/data/test2050 index ed4713f9a5fc..96e7253c1e7c 100644 --- a/tests/data/test2050 +++ b/tests/data/test2050 @@ -61,19 +61,19 @@ proxy # # Verify data after the test has been "shot" - -CONNECT connect.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: connect.example.com.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT connect.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: connect.example.com.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + - -GET /%TESTNUMBER HTTP/1.1 -Host: www.example.com.%TESTNUMBER -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: www.example.com.%TESTNUMBER +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2051 b/tests/data/test2051 index ce76cc93c059..8523652f0249 100644 --- a/tests/data/test2051 +++ b/tests/data/test2051 @@ -38,22 +38,22 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -w "%{num_connects}\n" --next --connect-to # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2052 b/tests/data/test2052 index 18fc7c5ebfd9..891912dde109 100644 --- a/tests/data/test2052 +++ b/tests/data/test2052 @@ -39,17 +39,17 @@ http://www.example.com:%HTTPPORT/%TESTNUMBER --resolve www.example.com:%HTTPPORT # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: www.example.com:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: www.example.com:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: www.example.com:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: www.example.com:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2053 b/tests/data/test2053 index a416d528689c..8322f79e72ff 100644 --- a/tests/data/test2053 +++ b/tests/data/test2053 @@ -38,17 +38,17 @@ http://10.0.0.1:8081/%TESTNUMBER --connect-to 10.0.0.1:8081:%HOSTIP:%HTTPPORT -- # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: 10.0.0.1:8081 -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: [fc00::1]:8082 -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: 10.0.0.1:8081 +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: [fc00::1]:8082 +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2054 b/tests/data/test2054 index 8217444e5364..350e55634e38 100644 --- a/tests/data/test2054 +++ b/tests/data/test2054 @@ -38,27 +38,27 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --connect-to foo::bar: --connect-to :123::4 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: www.example.com:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:8083 -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: www.example.com:8084 -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: www.example.com:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:8083 +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: www.example.com:8084 +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2055 b/tests/data/test2055 index 4710970ffd98..44458b504474 100644 --- a/tests/data/test2055 +++ b/tests/data/test2055 @@ -62,19 +62,19 @@ http://www.example.com.%TESTNUMBER/%TESTNUMBER --connect-to ::connect.example.co # # Verify data after the test has been "shot" - -CONNECT connect.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: connect.example.com.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT connect.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: connect.example.com.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + - -GET /%TESTNUMBER HTTP/1.1 -Host: www.example.com.%TESTNUMBER -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: www.example.com.%TESTNUMBER +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2056 b/tests/data/test2056 index 3833663c10f2..474050e64cef 100644 --- a/tests/data/test2056 +++ b/tests/data/test2056 @@ -51,13 +51,13 @@ CURL_STUB_GSS_CREDS="KRB5_Alice" # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Negotiate %b64["KRB5_Alice":HTTP@127.0.0.1:1:AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Negotiate %b64["KRB5_Alice":HTTP@127.0.0.1:1:AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2057 b/tests/data/test2057 index 7e45ae1214c5..4b567ec9b2d7 100644 --- a/tests/data/test2057 +++ b/tests/data/test2057 @@ -67,19 +67,19 @@ CURL_STUB_GSS_CREDS="NTLM_Alice" # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Negotiate %b64["NTLM_Alice":HTTP@127.0.0.1:2:AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA]b64% -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Negotiate %b64["NTLM_Alice":HTTP@127.0.0.1:3:AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Negotiate %b64["NTLM_Alice":HTTP@127.0.0.1:2:AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA]b64% +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Negotiate %b64["NTLM_Alice":HTTP@127.0.0.1:3:AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2058 b/tests/data/test2058 index a797f9648bdb..6dce07107f9e 100644 --- a/tests/data/test2058 +++ b/tests/data/test2058 @@ -13,45 +13,45 @@ CUSTOMREQUEST # Server-side - -HTTP/1.1 100 Continue -Server: Microsoft-IIS/5.0 -Date: Sun, 03 Apr 2005 14:57:45 GMT -X-Powered-By: ASP.NET - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", algorithm="SHA-256", nonce="1053604144" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - + +HTTP/1.1 100 Continue +Server: Microsoft-IIS/5.0 +Date: Sun, 03 Apr 2005 14:57:45 GMT +X-Powered-By: ASP.NET + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", algorithm="SHA-256", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok - -HTTP/1.1 100 Continue -Server: Microsoft-IIS/5.0 -Date: Sun, 03 Apr 2005 14:57:45 GMT -X-Powered-By: ASP.NET - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", algorithm="SHA-256", nonce="1053604144" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 100 Continue +Server: Microsoft-IIS/5.0 +Date: Sun, 03 Apr 2005 14:57:45 GMT +X-Powered-By: ASP.NET + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", algorithm="SHA-256", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok @@ -82,24 +82,24 @@ test # Verify data after the test has been "shot" - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Content-Range: bytes 2-4/5 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 0 - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="fbed69f9f3fd304c8f1acb1a43eb32688b933c0e28055c16b926cbcec070aeed", algorithm=SHA-256 -Content-Range: bytes 2-4/5 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 3 - + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Content-Range: bytes 2-4/5 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 0 + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="fbed69f9f3fd304c8f1acb1a43eb32688b933c0e28055c16b926cbcec070aeed", algorithm=SHA-256 +Content-Range: bytes 2-4/5 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 3 + st diff --git a/tests/data/test2059 b/tests/data/test2059 index 79f71713936a..6ec6089ca197 100644 --- a/tests/data/test2059 +++ b/tests/data/test2059 @@ -13,45 +13,45 @@ CUSTOMREQUEST # Server-side - -HTTP/1.1 100 Continue -Server: Microsoft-IIS/5.0 -Date: Sun, 03 Apr 2005 14:57:45 GMT -X-Powered-By: ASP.NET - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", algorithm="SHA-256", nonce="1053604144", userhash=true -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - + +HTTP/1.1 100 Continue +Server: Microsoft-IIS/5.0 +Date: Sun, 03 Apr 2005 14:57:45 GMT +X-Powered-By: ASP.NET + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", algorithm="SHA-256", nonce="1053604144", userhash=true +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok - -HTTP/1.1 100 Continue -Server: Microsoft-IIS/5.0 -Date: Sun, 03 Apr 2005 14:57:45 GMT -X-Powered-By: ASP.NET - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", algorithm="SHA-256", nonce="1053604144", userhash=true -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 100 Continue +Server: Microsoft-IIS/5.0 +Date: Sun, 03 Apr 2005 14:57:45 GMT +X-Powered-By: ASP.NET + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", algorithm="SHA-256", nonce="1053604144", userhash=true +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok @@ -82,24 +82,24 @@ test # Verify data after the test has been "shot" - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Content-Range: bytes 2-4/5 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 0 - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="fddc3bc7b753b73ab0848fd83cb20cbbca971258eb8d20c941dd5e0b010d66be", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="22d200df1fd02a9d3a7269ef5bbb5bf8f16f184a74907df9b64a3755489c0b42", algorithm=SHA-256, userhash=true -Content-Range: bytes 2-4/5 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 3 - + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Content-Range: bytes 2-4/5 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 0 + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="fddc3bc7b753b73ab0848fd83cb20cbbca971258eb8d20c941dd5e0b010d66be", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="22d200df1fd02a9d3a7269ef5bbb5bf8f16f184a74907df9b64a3755489c0b42", algorithm=SHA-256, userhash=true +Content-Range: bytes 2-4/5 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 3 + st diff --git a/tests/data/test206 b/tests/data/test206 index 2ff05075c77b..7a2acac7005f 100644 --- a/tests/data/test206 +++ b/tests/data/test206 @@ -19,11 +19,11 @@ auth_required # this is returned first since we get no proxy-auth - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" -Content-Length: 33 - + +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" +Content-Length: 33 + And you should ignore this data. @@ -41,19 +41,19 @@ daniel # then this is returned when we get proxy-auth -HTTP/1.1 200 OK +HTTP/1.1 200 OK%CR Server: no - +%CR -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" -Content-Length: 33 - -HTTP/1.1 200 OK +HTTP/1.1 407 Authorization Required to proxy me my dear%CR +Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345"%CR +Content-Length: 33%CR +%CR +HTTP/1.1 200 OK%CR Server: no - +%CR HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Content-Length: 7 @@ -86,23 +86,23 @@ http://test.remote.haxx.se.%TESTNUMBER:8990/path/%TESTNUMBER0002 --proxy=http:// # Verify data after the test has been "shot" - -CONNECT test.remote.haxx.se.%TESTNUMBER:8990 HTTP/1.1 -Host: test.remote.haxx.se.%TESTNUMBER:8990 -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - -CONNECT test.remote.haxx.se.%TESTNUMBER:8990 HTTP/1.1 -Host: test.remote.haxx.se.%TESTNUMBER:8990 -Proxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="test.remote.haxx.se.%TESTNUMBER:8990", response="003e36decb4dbf6366b3ecb9b87c24ec" -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - -GET /path/%TESTNUMBER0002 HTTP/1.1 -Host: test.remote.haxx.se.%TESTNUMBER:8990 -User-Agent: curl/%VERSION -Accept: */* - + +CONNECT test.remote.haxx.se.%TESTNUMBER:8990 HTTP/1.1 +Host: test.remote.haxx.se.%TESTNUMBER:8990 +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +CONNECT test.remote.haxx.se.%TESTNUMBER:8990 HTTP/1.1 +Host: test.remote.haxx.se.%TESTNUMBER:8990 +Proxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="test.remote.haxx.se.%TESTNUMBER:8990", response="003e36decb4dbf6366b3ecb9b87c24ec" +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +GET /path/%TESTNUMBER0002 HTTP/1.1 +Host: test.remote.haxx.se.%TESTNUMBER:8990 +User-Agent: curl/%VERSION +Accept: */* + [DISCONNECT] diff --git a/tests/data/test2060 b/tests/data/test2060 index 4a754b168880..4f8480363225 100644 --- a/tests/data/test2060 +++ b/tests/data/test2060 @@ -13,45 +13,45 @@ CUSTOMREQUEST # Server-side - -HTTP/1.1 100 Continue -Server: Microsoft-IIS/5.0 -Date: Sun, 03 Apr 2005 14:57:45 GMT -X-Powered-By: ASP.NET - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", algorithm="SHA-512-256", nonce="1053604144" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - + +HTTP/1.1 100 Continue +Server: Microsoft-IIS/5.0 +Date: Sun, 03 Apr 2005 14:57:45 GMT +X-Powered-By: ASP.NET + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", algorithm="SHA-512-256", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok - -HTTP/1.1 100 Continue -Server: Microsoft-IIS/5.0 -Date: Sun, 03 Apr 2005 14:57:45 GMT -X-Powered-By: ASP.NET - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", algorithm="SHA-512-256", nonce="1053604144" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 100 Continue +Server: Microsoft-IIS/5.0 +Date: Sun, 03 Apr 2005 14:57:45 GMT +X-Powered-By: ASP.NET + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", algorithm="SHA-512-256", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok @@ -82,24 +82,24 @@ test # Verify data after the test has been "shot" - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Content-Range: bytes 2-4/5 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 0 - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="691867f4a06c79fd0a175c1857e3df7015f6fff3ce8676497d2f1f805b5a8eca", algorithm=SHA-512-256 -Content-Range: bytes 2-4/5 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 3 - + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Content-Range: bytes 2-4/5 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 0 + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="691867f4a06c79fd0a175c1857e3df7015f6fff3ce8676497d2f1f805b5a8eca", algorithm=SHA-512-256 +Content-Range: bytes 2-4/5 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 3 + st diff --git a/tests/data/test2061 b/tests/data/test2061 index 605d827be7c7..718de8a3b604 100644 --- a/tests/data/test2061 +++ b/tests/data/test2061 @@ -8,39 +8,39 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145", algorithm="SHA-256" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145", algorithm="SHA-256" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145", algorithm="SHA-256" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145", algorithm="SHA-256" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! @@ -66,18 +66,18 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --digest # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER", response="9dc55255f1a2537b838311674b621d45346b862a81631bb20e4ce356ef25062d", algorithm=SHA-256 -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER", response="9dc55255f1a2537b838311674b621d45346b862a81631bb20e4ce356ef25062d", algorithm=SHA-256 +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2062 b/tests/data/test2062 index 039354382daa..0899e6a540ae 100644 --- a/tests/data/test2062 +++ b/tests/data/test2062 @@ -8,39 +8,39 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145", algorithm="SHA-512-256" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145", algorithm="SHA-512-256" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145", algorithm="SHA-512-256" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145", algorithm="SHA-512-256" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! @@ -66,18 +66,18 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --digest # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER", response="9d3256ee6526ec40dd48743bb48e51ee9baba587c78f15c3a86166242150af98", algorithm=SHA-512-256 -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER", response="9d3256ee6526ec40dd48743bb48e51ee9baba587c78f15c3a86166242150af98", algorithm=SHA-512-256 +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2063 b/tests/data/test2063 index 07e12f3c778a..ee377d2c89ed 100644 --- a/tests/data/test2063 +++ b/tests/data/test2063 @@ -8,39 +8,39 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145", algorithm="SHA-256", userhash=true -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145", algorithm="SHA-256", userhash=true +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145", algorithm="SHA-256", userhash=true -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145", algorithm="SHA-256", userhash=true +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! @@ -66,18 +66,18 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --digest # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="75af8a3500f771e58a52093a25e7905d6e428a511285c12ea1420c73078dfd61", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER", response="6c470aec384ab1d4e12d3ce1f5b08303d8cad177e52ebe50ec1a3e141adb0cdc", algorithm=SHA-256, userhash=true -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="75af8a3500f771e58a52093a25e7905d6e428a511285c12ea1420c73078dfd61", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER", response="6c470aec384ab1d4e12d3ce1f5b08303d8cad177e52ebe50ec1a3e141adb0cdc", algorithm=SHA-256, userhash=true +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2064 b/tests/data/test2064 index d3142704647e..ec47a2a8cf84 100644 --- a/tests/data/test2064 +++ b/tests/data/test2064 @@ -8,40 +8,40 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 Authorization Required -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="2053604145", algorithm="SHA-256" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="2053604145", algorithm="SHA-256" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 401 Still a bad password you moron -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 - -This is not the real page either + +HTTP/1.1 401 Still a bad password you moron +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 + +This is not the real page either - -HTTP/1.1 401 Authorization Required -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="2053604145", algorithm="SHA-256" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 401 Still a bad password you moron -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 - -This is not the real page either + +HTTP/1.1 401 Authorization Required +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="2053604145", algorithm="SHA-256" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 401 Still a bad password you moron +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 + +This is not the real page either @@ -66,18 +66,18 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:test2pass --digest # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="2053604145", uri="/%TESTNUMBER", response="a9c3ec1036068b336cbabefe9dfcad52ee8b89bc7c91ddbb5bb415c6acdf38a5", algorithm=SHA-256 -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="2053604145", uri="/%TESTNUMBER", response="a9c3ec1036068b336cbabefe9dfcad52ee8b89bc7c91ddbb5bb415c6acdf38a5", algorithm=SHA-256 +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2065 b/tests/data/test2065 index 5365cac3fd71..27a61e7f77b1 100644 --- a/tests/data/test2065 +++ b/tests/data/test2065 @@ -8,40 +8,40 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 Authorization Required -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="2053604145", algorithm="SHA-512-256" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="2053604145", algorithm="SHA-512-256" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 401 Still a bad password you moron -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 - -This is not the real page either + +HTTP/1.1 401 Still a bad password you moron +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 + +This is not the real page either - -HTTP/1.1 401 Authorization Required -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="2053604145", algorithm="SHA-512-256" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 401 Still a bad password you moron -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 - -This is not the real page either + +HTTP/1.1 401 Authorization Required +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="2053604145", algorithm="SHA-512-256" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 401 Still a bad password you moron +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 + +This is not the real page either @@ -66,18 +66,18 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:test2pass --digest # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="2053604145", uri="/%TESTNUMBER", response="0373a49d7d352ff54884faaf762fc6c89281b4112ad8fcbbe1d1ee52dcf7a802", algorithm=SHA-512-256 -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="2053604145", uri="/%TESTNUMBER", response="0373a49d7d352ff54884faaf762fc6c89281b4112ad8fcbbe1d1ee52dcf7a802", algorithm=SHA-512-256 +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2066 b/tests/data/test2066 index 8f5f7aa8a4e9..bf609edb59eb 100644 --- a/tests/data/test2066 +++ b/tests/data/test2066 @@ -8,40 +8,40 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 Authorization Required -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="2053604145", algorithm="SHA-256", userhash=true -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="2053604145", algorithm="SHA-256", userhash=true +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 401 Still a bad password you moron -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 - -This is not the real page either + +HTTP/1.1 401 Still a bad password you moron +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 + +This is not the real page either - -HTTP/1.1 401 Authorization Required -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="2053604145", algorithm="SHA-256", userhash=true -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 401 Still a bad password you moron -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 - -This is not the real page either + +HTTP/1.1 401 Authorization Required +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="2053604145", algorithm="SHA-256", userhash=true +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 401 Still a bad password you moron +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 + +This is not the real page either @@ -66,18 +66,18 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:test2pass --digest # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="75af8a3500f771e58a52093a25e7905d6e428a511285c12ea1420c73078dfd61", realm="testrealm", nonce="2053604145", uri="/%TESTNUMBER", response="374a35326cc09e7d1ec3165aee9de01cae46daac33d8999aa1f483fa7882b86c", algorithm=SHA-256, userhash=true -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="75af8a3500f771e58a52093a25e7905d6e428a511285c12ea1420c73078dfd61", realm="testrealm", nonce="2053604145", uri="/%TESTNUMBER", response="374a35326cc09e7d1ec3165aee9de01cae46daac33d8999aa1f483fa7882b86c", algorithm=SHA-256, userhash=true +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2067 b/tests/data/test2067 index 20120e1873cf..654bda7c054f 100644 --- a/tests/data/test2067 +++ b/tests/data/test2067 @@ -9,35 +9,35 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144", algorithm="SHA-256" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144", algorithm="SHA-256" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144", algorithm="SHA-256" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144", algorithm="SHA-256" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok @@ -67,22 +67,22 @@ HTTP POST --digest with SHA256 and user-specified Content-Length header # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 0 -Content-Type: application/x-www-form-urlencoded - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="67b97af219c92fa7e8685e5bebb8e74892f6c6792e911c52bd2dfbf0b49272eb", algorithm=SHA-256 -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 11 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 0 +Content-Type: application/x-www-form-urlencoded + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="67b97af219c92fa7e8685e5bebb8e74892f6c6792e911c52bd2dfbf0b49272eb", algorithm=SHA-256 +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 11 +Content-Type: application/x-www-form-urlencoded + junkelijunk diff --git a/tests/data/test2068 b/tests/data/test2068 index 867330e135f8..8a89fb87189b 100644 --- a/tests/data/test2068 +++ b/tests/data/test2068 @@ -9,35 +9,35 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144", algorithm="SHA-512-256" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144", algorithm="SHA-512-256" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144", algorithm="SHA-512-256" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144", algorithm="SHA-512-256" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok @@ -67,22 +67,22 @@ HTTP POST Digest with SHA-512-256, userhash and set Content-Length # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 0 -Content-Type: application/x-www-form-urlencoded - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="0ba2f7ec8045446588eea82bb0c3812aedb05f4eac8883ea65040a52e9c5629e", algorithm=SHA-512-256 -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 11 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 0 +Content-Type: application/x-www-form-urlencoded + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="0ba2f7ec8045446588eea82bb0c3812aedb05f4eac8883ea65040a52e9c5629e", algorithm=SHA-512-256 +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 11 +Content-Type: application/x-www-form-urlencoded + junkelijunk diff --git a/tests/data/test2069 b/tests/data/test2069 index 650726d17c5c..6ed1aafe440d 100644 --- a/tests/data/test2069 +++ b/tests/data/test2069 @@ -9,35 +9,35 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144", algorithm="SHA-256", userhash=true -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144", algorithm="SHA-256", userhash=true +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144", algorithm="SHA-256", userhash=true -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144", algorithm="SHA-256", userhash=true +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok @@ -67,22 +67,22 @@ HTTP POST Digest with SHA-256, userhash and set Content-Length header # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 0 -Content-Type: application/x-www-form-urlencoded - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="fddc3bc7b753b73ab0848fd83cb20cbbca971258eb8d20c941dd5e0b010d66be", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="9a29f1dab407e62daa7121185f9f12db6177415e03f35d9a881550095a83378d", algorithm=SHA-256, userhash=true -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 11 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 0 +Content-Type: application/x-www-form-urlencoded + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="fddc3bc7b753b73ab0848fd83cb20cbbca971258eb8d20c941dd5e0b010d66be", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="9a29f1dab407e62daa7121185f9f12db6177415e03f35d9a881550095a83378d", algorithm=SHA-256, userhash=true +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 11 +Content-Type: application/x-www-form-urlencoded + junkelijunk diff --git a/tests/data/test207 b/tests/data/test207 index 4c0e0c72ea1f..afbd44f10e8c 100644 --- a/tests/data/test207 +++ b/tests/data/test207 @@ -17,9 +17,9 @@ Server: fakeit/0.9 fakeitbad/1.0 Transfer-Encoding: chunked Connection: mooo -41 +41%CR aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa - +%CR HTTP/1.1 200 funky chunky! swsclose @@ -48,12 +48,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # curl: (18) transfer closed with outstanding read data remaining diff --git a/tests/data/test2070 b/tests/data/test2070 index c2c0cdee9acf..0dfa5db7277d 100644 --- a/tests/data/test2070 +++ b/tests/data/test2070 @@ -46,12 +46,12 @@ CURL_SSL_BACKEND=schannel # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: localhost:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: localhost:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2073 b/tests/data/test2073 index 8eea2655368f..6000c7db6e21 100644 --- a/tests/data/test2073 +++ b/tests/data/test2073 @@ -47,27 +47,27 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -F 'name=a;filename=a.pdf' --next http://%H ^(Content-Type: multipart/form-data;|------------).* - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 201 - -Content-Disposition: form-data; name="name"; filename="a.pdf" -Content-Type: application/pdf - -a -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 196 - -Content-Disposition: form-data; name="name"; filename="b.jpg" -Content-Type: image/jpeg - -b + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 201 + +Content-Disposition: form-data; name="name"; filename="a.pdf" +Content-Type: application/pdf + +a +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 196 + +Content-Disposition: form-data; name="name"; filename="b.jpg" +Content-Type: image/jpeg + +b diff --git a/tests/data/test2074 b/tests/data/test2074 index 1ef3480b5c25..c6c7e92b61c9 100644 --- a/tests/data/test2074 +++ b/tests/data/test2074 @@ -43,13 +43,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --oauth2-bearer mF_9.B5f-4.1JqM # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Bearer mF_9.B5f-4.1JqM -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Bearer mF_9.B5f-4.1JqM +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2076 b/tests/data/test2076 index 6ef44c2c7294..b99a0ed65bdd 100644 --- a/tests/data/test2076 +++ b/tests/data/test2076 @@ -8,31 +8,31 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 Authorization Required swsclose -WWW-Authenticate: Digest realm="testrealm", nonce="1" -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required swsclose +WWW-Authenticate: Digest realm="testrealm", nonce="1" +Content-Length: 26 + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 200 OK swsclose -Content-Length: 23 - + +HTTP/1.1 200 OK swsclose +Content-Length: 23 + This IS the real page! - -HTTP/1.1 401 Authorization Required swsclose -WWW-Authenticate: Digest realm="testrealm", nonce="1" -Content-Length: 26 - -HTTP/1.1 200 OK swsclose -Content-Length: 23 - + +HTTP/1.1 401 Authorization Required swsclose +WWW-Authenticate: Digest realm="testrealm", nonce="1" +Content-Length: 26 + +HTTP/1.1 200 OK swsclose +Content-Length: 23 + This IS the real page! @@ -58,18 +58,18 @@ HTTP with digest auth and URI contains query # Verify data after the test has been "shot" - -GET /%TESTNUMBER?query HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER?query HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="1", uri="/%TESTNUMBER?query", response="5758bd3bbde7f33236e6ccd278eb59af" -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER?query HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER?query HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="1", uri="/%TESTNUMBER?query", response="5758bd3bbde7f33236e6ccd278eb59af" +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2077 b/tests/data/test2077 index b244b9466cf1..7f6458f895b4 100644 --- a/tests/data/test2077 +++ b/tests/data/test2077 @@ -9,10 +9,10 @@ GSS-API # Server-side - -HTTP/1.1 200 OK swsclose -Content-Length: 23 - + +HTTP/1.1 200 OK swsclose +Content-Length: 23 + This IS the real page! diff --git a/tests/data/test2078 b/tests/data/test2078 index ec1277e5efc9..07342b71e3a1 100644 --- a/tests/data/test2078 +++ b/tests/data/test2078 @@ -9,10 +9,10 @@ GSS-API # Server-side - -HTTP/1.1 200 OK swsclose -Content-Length: 23 - + +HTTP/1.1 200 OK swsclose +Content-Length: 23 + This IS the real page! @@ -38,14 +38,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --negotiate --data name=value 0 - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 10 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 10 +Content-Type: application/x-www-form-urlencoded + name=value diff --git a/tests/data/test2079 b/tests/data/test2079 index 117a712c3f8b..78709f3a2cda 100644 --- a/tests/data/test2079 +++ b/tests/data/test2079 @@ -47,12 +47,12 @@ CURL_SSL_BACKEND=schannel # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: localhost:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: localhost:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test208 b/tests/data/test208 index d66f5cd17a32..9d10a14d02c8 100644 --- a/tests/data/test208 +++ b/tests/data/test208 @@ -51,14 +51,14 @@ the # Verify data after the test has been "shot" -PUT ftp://daniel:mysecret@host.com/we/want/%TESTNUMBER HTTP/1.1 -Host: host.com:21 -Authorization: Basic %b64[daniel:mysecret]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 78 - +PUT ftp://daniel:mysecret@host.com/we/want/%TESTNUMBER HTTP/1.1%CR +Host: host.com:21%CR +Authorization: Basic %b64[daniel:mysecret]b64%%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Proxy-Connection: Keep-Alive%CR +Content-Length: 78%CR +%CR Weird file to diff --git a/tests/data/test2080 b/tests/data/test2080 index d49bd5c453cc..44d16b6ee331 100644 --- a/tests/data/test2080 +++ b/tests/data/test2080 @@ -30,7 +30,7 @@ config file with overly long option # the used option in the config file is too long -26 +2 diff --git a/tests/data/test2081 b/tests/data/test2081 index 7aad41621563..29af09d0be30 100644 --- a/tests/data/test2081 +++ b/tests/data/test2081 @@ -11,18 +11,18 @@ followlocation # Server-side - -HTTP/1.1 301 This is a weirdo text message swsclose -Location: data/%TESTNUMBER0002.txt?coolsite=yes -Content-Length: 62 -Connection: close - + +HTTP/1.1 301 This is a weirdo text message swsclose +Location: data/%TESTNUMBER0002.txt?coolsite=yes +Content-Length: 62 +Connection: close + This server reply is for testing a simple Location: following - -HTTP/1.1 200 This is another weirdo text message swsclose -Connection: close - + +HTTP/1.1 200 This is another weirdo text message swsclose +Connection: close + Thanks for following. @@ -42,30 +42,30 @@ http://user:pass@%HOSTIP:%HTTPPORT/we/want/our/%TESTNUMBER#anchor --location --r # Verify data after the test has been "shot" - -GET /we/want/our/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[user:pass]b64% -User-Agent: curl/%VERSION -Accept: */* - -GET /we/want/our/data/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[user:pass]b64% -User-Agent: curl/%VERSION -Accept: */* -Referer: http://%HOSTIP:%HTTPPORT/we/want/our/%TESTNUMBER - + +GET /we/want/our/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[user:pass]b64% +User-Agent: curl/%VERSION +Accept: */* + +GET /we/want/our/data/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[user:pass]b64% +User-Agent: curl/%VERSION +Accept: */* +Referer: http://%HOSTIP:%HTTPPORT/we/want/our/%TESTNUMBER + - -HTTP/1.1 301 This is a weirdo text message swsclose -Location: data/%TESTNUMBER0002.txt?coolsite=yes -Content-Length: 62 -Connection: close - -HTTP/1.1 200 This is another weirdo text message swsclose -Connection: close - + +HTTP/1.1 301 This is a weirdo text message swsclose +Location: data/%TESTNUMBER0002.txt?coolsite=yes +Content-Length: 62 +Connection: close + +HTTP/1.1 200 This is another weirdo text message swsclose +Connection: close + Thanks for following. http://%HOSTIP:%HTTPPORT/we/want/our/%TESTNUMBER diff --git a/tests/data/test2087 b/tests/data/test2087 index f347bbc61b68..7c7176723412 100644 --- a/tests/data/test2087 +++ b/tests/data/test2087 @@ -47,12 +47,12 @@ CURL_SSL_BACKEND=schannel # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: localhost:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: localhost:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2088 b/tests/data/test2088 index 71839ee37c6a..ea8d42a17a62 100644 --- a/tests/data/test2088 +++ b/tests/data/test2088 @@ -42,12 +42,12 @@ HTTPS GET with client authentication (mtls) # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: localhost:%HTTPS-MTLSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: localhost:%HTTPS-MTLSPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2089 b/tests/data/test2089 index aee93abf6e42..f3a497a97a56 100644 --- a/tests/data/test2089 +++ b/tests/data/test2089 @@ -42,12 +42,12 @@ HTTPS GET with client authentication (mtls) and --insecure # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: localhost:%HTTPS-MTLSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: localhost:%HTTPS-MTLSPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test209 b/tests/data/test209 index 887d04fbeef7..e856cb098aa2 100644 --- a/tests/data/test209 +++ b/tests/data/test209 @@ -14,21 +14,21 @@ NTLM # this is returned first since we get no proxy-auth - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Content-Length: 33 - + +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Content-Length: 33 + And you should ignore this data. # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine in proxy land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 - + +HTTP/1.1 200 Things are fine in proxy land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 + # this is returned when we get a GET! @@ -45,21 +45,21 @@ daniel # then this is returned when we get proxy-auth -HTTP/1.1 200 OK swsbounce +HTTP/1.1 200 OK swsbounce%CR Server: no - +%CR Nice proxy auth sir! -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Content-Length: 33 - -HTTP/1.1 200 Things are fine in proxy land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 - +HTTP/1.1 407 Authorization Required to proxy me my dear%CR +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==%CR +Content-Length: 33%CR +%CR +HTTP/1.1 200 Things are fine in proxy land%CR +Server: Microsoft-IIS/5.0%CR +Content-Type: text/html; charset=iso-8859-1%CR +%CR HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Content-Length: 7 @@ -92,24 +92,24 @@ http://test.remote.example.com.%TESTNUMBER:%HTTPPORT/path/%TESTNUMBER0002 --prox # Verify data after the test has been "shot" - -CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT -Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - -CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT -Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - -GET /path/%TESTNUMBER0002 HTTP/1.1 -Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT +Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT +Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +GET /path/%TESTNUMBER0002 HTTP/1.1 +Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test210 b/tests/data/test210 index 1ee313d76ac9..954ec03648e4 100644 --- a/tests/data/test210 +++ b/tests/data/test210 @@ -33,20 +33,20 @@ data blobb # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD a -CWD path -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -EPSV -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD a +CWD path +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +EPSV +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test2100 b/tests/data/test2100 index efe54a6bc700..9d75e72b8176 100644 --- a/tests/data/test2100 +++ b/tests/data/test2100 @@ -4,6 +4,7 @@ HTTP HTTP GET DOH +httpsrr @@ -69,49 +70,49 @@ http://foo.example.com:%HTTPPORT/%TESTNUMBER --doh-url http://%HOSTIP:%HTTPPORT/ s/com\x00\x00(\x1c|\x01)/com-00-00!/g; - + %if HTTPSRR -POST /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Type: application/dns-message -Content-Length: 33 - -%hex[%00%00%01%00%00%01%00%00%00%00%00%00%03foo%07example%03com-00-00!%00%01]hex%POST /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Type: application/dns-message -Content-Length: 33 - -%hex[%00%00%01%00%00%01%00%00%00%00%00%00%03foo%07example%03com-00-00!%00%01]hex%POST /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Type: application/dns-message -Content-Length: 47 - -%hex[%00%00%01%00%00%01%00%00%00%00%00%00%06_%HTTPPORT%06_https%03foo%07example%03com%00%00A%00%01]hex%GET /%TESTNUMBER HTTP/1.1 -Host: foo.example.com:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - +POST /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Type: application/dns-message +Content-Length: 33 + +%hex[%00%00%01%00%00%01%00%00%00%00%00%00%03foo%07example%03com-00-00!%00%01]hex%POST /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Type: application/dns-message +Content-Length: 33 + +%hex[%00%00%01%00%00%01%00%00%00%00%00%00%03foo%07example%03com-00-00!%00%01]hex%POST /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Type: application/dns-message +Content-Length: 47 + +%hex[%00%00%01%00%00%01%00%00%00%00%00%00%06_%HTTPPORT%06_https%03foo%07example%03com%00%00A%00%01]hex%GET /%TESTNUMBER HTTP/1.1 +Host: foo.example.com:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + %else -POST /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Type: application/dns-message -Content-Length: 33 - -%hex[%00%00%01%00%00%01%00%00%00%00%00%00%03foo%07example%03com-00-00!%00%01]hex%POST /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Type: application/dns-message -Content-Length: 33 - -%hex[%00%00%01%00%00%01%00%00%00%00%00%00%03foo%07example%03com-00-00!%00%01]hex%GET /%TESTNUMBER HTTP/1.1 -Host: foo.example.com:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - +POST /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Type: application/dns-message +Content-Length: 33 + +%hex[%00%00%01%00%00%01%00%00%00%00%00%00%03foo%07example%03com-00-00!%00%01]hex%POST /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Type: application/dns-message +Content-Length: 33 + +%hex[%00%00%01%00%00%01%00%00%00%00%00%00%03foo%07example%03com-00-00!%00%01]hex%GET /%TESTNUMBER HTTP/1.1 +Host: foo.example.com:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + %endif diff --git a/tests/data/test2102 b/tests/data/test2102 index 5ee35bdf6e4e..037931fb8586 100644 --- a/tests/data/test2102 +++ b/tests/data/test2102 @@ -9,7 +9,7 @@ HTTP GET # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -53,7 +53,7 @@ http://examplehost.example:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: examplehost.example:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test211 b/tests/data/test211 index 6830727ab6fb..3e6a8f9ada72 100644 --- a/tests/data/test211 +++ b/tests/data/test211 @@ -34,21 +34,21 @@ data blobb # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD a -CWD path -EPSV -PASV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -PASV -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD a +CWD path +EPSV +PASV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +PASV +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test212 b/tests/data/test212 index 045ad3769a07..6f1d747b5808 100644 --- a/tests/data/test212 +++ b/tests/data/test212 @@ -44,21 +44,21 @@ data blobb s/^(EPRT \|1\|)\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\|/$1/ s/^(PORT )\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3}/$1/ - -USER anonymous -PASS ftp@example.com -PWD -CWD a -CWD path -EPRT |1| -PORT -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -PORT -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD a +CWD path +EPRT |1| +PORT%SP +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +PORT%SP +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test213 b/tests/data/test213 index 877d9276ce80..81b2122bdf8e 100644 --- a/tests/data/test213 +++ b/tests/data/test213 @@ -14,21 +14,21 @@ NTLM # this is returned first since we get no proxy-auth - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Content-Length: 33 - + +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Content-Length: 33 + And you should ignore this data. # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine in proxy land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 - + +HTTP/1.1 200 Things are fine in proxy land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 + # this is returned when we get a GET! @@ -45,21 +45,21 @@ daniel # then this is returned when we get proxy-auth -HTTP/1.1 200 OK swsbounce +HTTP/1.1 200 OK swsbounce%CR Server: no - +%CR Nice proxy auth sir! -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Content-Length: 33 - -HTTP/1.1 200 Things are fine in proxy land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 - +HTTP/1.1 407 Authorization Required to proxy me my dear%CR +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==%CR +Content-Length: 33%CR +%CR +HTTP/1.1 200 Things are fine in proxy land%CR +Server: Microsoft-IIS/5.0%CR +Content-Type: text/html; charset=iso-8859-1%CR +%CR HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Content-Length: 7 @@ -92,26 +92,26 @@ http://test.remote.example.com.%TESTNUMBER:%HTTPPORT/path/%TESTNUMBER0002 --prox # Verify data after the test has been "shot" - -CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.0 -Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT -Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - -CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.0 -Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT -Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - -POST /path/%TESTNUMBER0002 HTTP/1.1 -Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 6 -Content-Type: application/x-www-form-urlencoded - + +CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.0 +Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT +Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.0 +Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT +Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +POST /path/%TESTNUMBER0002 HTTP/1.1 +Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 6 +Content-Type: application/x-www-form-urlencoded + postit diff --git a/tests/data/test214 b/tests/data/test214 index 846b46458e58..f473ea0b9740 100644 --- a/tests/data/test214 +++ b/tests/data/test214 @@ -40,12 +40,12 @@ MSYS2_ARG_CONV_EXCL=http:// # # Verify data after the test has been "shot" - -GET /{}\/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /{}\/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test215 b/tests/data/test215 index 058639f272cb..f06bca11fa06 100644 --- a/tests/data/test215 +++ b/tests/data/test215 @@ -38,19 +38,19 @@ ftp://%HOSTIP:%FTPPORT/a/path/%TESTNUMBER/ ftp://%HOSTIP:%FTPPORT/a/path/%TESTNU # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD a -CWD path -CWD %TESTNUMBER -EPSV -TYPE A -LIST -EPSV -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD a +CWD path +CWD %TESTNUMBER +EPSV +TYPE A +LIST +EPSV +LIST +QUIT diff --git a/tests/data/test216 b/tests/data/test216 index 1be87c0d1ea4..5fbc6153ef18 100644 --- a/tests/data/test216 +++ b/tests/data/test216 @@ -27,19 +27,19 @@ upload this file twice # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD a -CWD path -CWD %TESTNUMBER -EPSV -TYPE I -STOR upload.%TESTNUMBER -EPSV -STOR ..anotherup.%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD a +CWD path +CWD %TESTNUMBER +EPSV +TYPE I +STOR upload.%TESTNUMBER +EPSV +STOR ..anotherup.%TESTNUMBER +QUIT diff --git a/tests/data/test217 b/tests/data/test217 index cb6c6738b6e2..5f400b0c0fef 100644 --- a/tests/data/test217 +++ b/tests/data/test217 @@ -15,9 +15,9 @@ followlocation # this is returned first since we get no proxy-auth - -HTTP/1.1 405 Method Not Allowed swsclose - + +HTTP/1.1 405 Method Not Allowed swsclose + And you should ignore this data. @@ -41,20 +41,20 @@ proxy # Verify data after the test has been "shot" - -CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + # CURLE_RECV_ERROR 56 - -HTTP/1.1 405 Method Not Allowed swsclose - + +HTTP/1.1 405 Method Not Allowed swsclose + 000 405 diff --git a/tests/data/test218 b/tests/data/test218 index b5e2b08b2fb6..656450c3410d 100644 --- a/tests/data/test218 +++ b/tests/data/test218 @@ -9,12 +9,12 @@ chunked Transfer-Encoding # # Server-side - -HTTP/1.0 200 OK -Server: test-server/fake -Content-Type: text/html -Content-Length: 6 - + +HTTP/1.0 200 OK +Server: test-server/fake +Content-Type: text/html +Content-Length: 6 + blaha @@ -40,17 +40,17 @@ just some tiny teeny contents # Verify data after the test has been "shot" -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Transfer-Encoding: chunked - -1e +PUT /%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Transfer-Encoding: chunked%CR +%CR +1e%CR just some tiny teeny contents - -0 - +%CR +0%CR +%CR diff --git a/tests/data/test22 b/tests/data/test22 index b594a9cf74c2..539ef4bc5d8b 100644 --- a/tests/data/test22 +++ b/tests/data/test22 @@ -7,11 +7,11 @@ long URL # Server-side - -HTTP/1.1 200 OK -Funny-head: yesyes -Content-Length: 27 - + +HTTP/1.1 200 OK +Funny-head: yesyes +Content-Length: 27 + This is the proof it works @@ -25,18 +25,18 @@ http get HTTP with URL > 10000 bytes -%HOSTIP:%HTTPPORT/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/%TESTNUMBER +%HOSTIP:%HTTPPORT/%repeat[11000 x a]%/%TESTNUMBER # Verify data after the test has been "shot" - -GET /aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%repeat[11000 x a]%/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test220 b/tests/data/test220 index b87ad7ee2214..a7f89ff885bd 100644 --- a/tests/data/test220 +++ b/tests/data/test220 @@ -9,28 +9,28 @@ compressed # # Server-side - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: GZIP -Content-Length: 44 - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Content-Encoding: GZIP +Content-Length: 44 + %hex[%1f%8b%08%08%79%9e%ab%41%00%03%6c%61%6c%61%6c%61%00%cb%c9%cc%4b%55%30%e4%52%c8%01%d1%46%5c%0a%10%86%31%17%00]hex% %hex[%02%71%60%18%00%00%00]hex% - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: GZIP -Content-Length: 44 - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Content-Encoding: GZIP +Content-Length: 44 + line 1 line 2 line 3 @@ -61,13 +61,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --compressed s/^Accept-Encoding: [a-zA-Z, ]*/Accept-Encoding: xxx/ - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Accept-Encoding: xxx - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Accept-Encoding: xxx + diff --git a/tests/data/test221 b/tests/data/test221 index c5d8fa456b38..d514a688e16a 100644 --- a/tests/data/test221 +++ b/tests/data/test221 @@ -10,30 +10,30 @@ FAILURE # # Server-side - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: gzip -Content-Length: 41 - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Content-Encoding: gzip +Content-Length: 41 + %hex[%08%79%9e%ab%41%00%03%6c%61%6c%61%6c%61%00%cb%c9%cc%4b%55%30%e4%52%c8%01%d1%46%5c%0a%10%86%31%17%00]hex% %hex[%02%71%60%18%00%00%00]hex% # I removed the first three bytes of the gzip compressed contents - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: gzip -Content-Length: 41 - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Content-Encoding: gzip +Content-Length: 41 + @@ -61,13 +61,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --compressed s/^Accept-Encoding: [a-zA-Z, ]*/Accept-Encoding: xxx/ - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Accept-Encoding: xxx - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Accept-Encoding: xxx + 61 diff --git a/tests/data/test222 b/tests/data/test222 index 1a1fe89492ac..e1b3bceb3ad3 100644 --- a/tests/data/test222 +++ b/tests/data/test222 @@ -9,15 +9,15 @@ compressed # # Server-side - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: deflate -Content-Length: 1305 - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Content-Encoding: deflate +Content-Length: 1305 + %hex[%78%9c%dc%58%db%6e%e3%36%10%7d%37%90%7f%60%fd%d4%02%b6%6e%b6%13%39%70%b4%28%72%d9%04%cd%36%c1%da%05%ba%4f%06%2d%d1%36%1b%49%14%48%ca%b9%3c%f4%db%3b%94%28%89%b1%1c%af%77%83%be%04%48%62%72%e6%9c%c3%e1%0c%49%93%99%7c%7a%4a%62%b4%21%5c%50%96%9e%75%5d%cb%e9%22%92%86%2c%a2%e9%ea%ac%7b%33%bd%eb%fb%fe%68%dc%77%bb%9f%82%ce%e4%97%8b%bb%f3%d9%b7%fb%4b%94%71%f6%0f%09%65%3f%a6%42%02%10%4d%bf%4d%67%97%5f%50%77%2d%65%76%6a%db%4b%4e%c4%3a%21%58%5a%29%91%f6%02%87%0f%24%8d%ec%65%d2%d7%3c%d1%77%ac%a1%15%c9%a8%0b%a2%5b%5a%41%07%a1%ca%a6%da%4d%6f%4e%a3%c0%3d%76%bd%89%6d%18%4a%44%84%25%99%e3%28%22%80%18%8f%fd%be%e3%f7%3d%17%39%c3%53%c7%3d%f5%c6%13%db%f0%1b%84%3c%53%1f%51%e0%39%ce%b0%ef%3a%7d%d7%47%8e%77%ea%c1%cf%40%53%2a%c4%ab%38%52%9c%90%b9%58%33%2e%83%30%e7%71%1d%8e%61%6f%e3%97%79%1c%17%70%84%d3%08%c5%74%d1%a6%16%10%1d%1e%11%a1%96%3a%67%49%52%52%52%82%24%63%b5%00%c7%fc%19%2d%19%47%61%4c%49%2a%fb%82%46%04%fd%f5%f5%16%49%8e%53%b1%84%8a%5a%30%8b%46%c8%50%de%19%0c%a2%02%e1%72%04%a5%5a%a9%70%55%df%25%8d%89%38%ea%e4%42%75%d4%18%e2%39%95%f8%c9%42%37%12%89%3c%cb%40%5f%a0%eb%d9%ec%be%57%fc%9d%f6%d0%15%b4%8f%3a%57%45%fb%e2%e6%7c%d6%43%b3%cb%db%3f%2f%e1%f3%f6%e2%77%80%5d%dd%dc%5e%f6%8a%e1%3f%df%dd%5f%5f%7e%85%36%0c%f0%48%62%88%a9%94%ea%67%4c%c8%9e%6e%e6%d0]hex% %hex[%19%7b%a0%44%14%da%28%cf%62%86%23%18%02%96%5a%9e%90%a8%99%75%0f%65%58%88%47%c6%23%d5%84%c8%d2%3c%59%14%f6%e9%f4%f6%a8%13%12%2e%e9%92%86%50%57%30%fd%41%38%f8%98%28%43%81%6a%3c%c1%08%c5%b4%20%1b%19%7b%24%9c%44%47%9d%c5%73%95%a4%1e%92%6b%f2%66%c6%ab%b2%58%47%9d%d9%1a%a8%08%c3%ef%82%a6%6a%33%09%48%6d%9d%6a%95%60%06%9b%0e%79%ce%51%27%c6%e9%2a%c7%2b%22%8a%18%48%ba%a1%9c%a5%09%0c%20%40%47%97%d0%58%1b%1b%2a%71%4c%e5%f3%5c%84%8c%93%60%74%e2%0f%ad%d1%c9%c4%de%b2%6f%81%33%c2%43%90%0c%06%96%7b%6c%60%2b%f3%16%1a%e6%f3%00%7b%6d%6c%20%0b%93%5e%d7%2c%cb%63%cc%9b%b1%8e%47%63%88%61%08%cb%79%db%d3%22%54%03%ba%03%cb%77%5f%11%5e%87%62%38%ca%60%9c%d1%2b%b4%11%0e%c7%c5%b9%e1%5b%23%67%62%eb%8e%e9%99%87%2c%07%5d%cf%ad%bc%da%f0]hex% %hex[%53%0e%e2%0f%6a%8c%31%80%c8%17%22%e4%34%93%70%44%8a%60%a0%4e%87%d7%a6%12%06%a5%4f%c3%f5%5c%ed%e5%e0%82%2c%71%1e%cb%89%6d%1a%4b%18%d4%7f%5e%1d%60%19%94%3d%d8%79%68%56%27%a5%ad%d6%8b%3d%b1%5b%ac%46%6c%cd%12%f2%b6%10%2c%60%ca%4b%15%75%78%da%26%43%eb%d6%02%8d%a6%5c%bd%1c%2e%07%60%ad%a4%68%8d%c8%e2%c5%3b%5c%04%c0%5a%44%d1%1a%91%17%9a%1d%2e%02%60%2d%a2%68%8d%48%b8%86%3d%46%62%b6%3a%5c%aa%a6%68%c1%46%a2%91%e5%59%72%b8%20%80%b5%94%a2%35%22%11%59%1c%2e%02%60%2d%a2%68%8d%08%13%4f%87%8b%00%58%8b%28%9a%51%2f%11%a9%f3%f2%07%6a%56%12%aa%ba%69%ba%b1%cc%73%0e%69%13%24%d0%eb%b7%ea%1a%85%d9%88%1f%28%c9%46%54%c5%d8%08%43%44%dd%1c%0e%57%51%68%2d%53%10%1b%9d%84%72%ce%f8%e1%4a%25%5e%6b%69%b2%59%d7%84%05%55%ad%a0%59%7a%62]hex% @@ -25,14 +25,14 @@ Content-Length: 1305 -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: deflate -Content-Length: 1305 - +HTTP/1.1 200 OK%CR +Date: Mon, 29 Nov 2004 21:56:53 GMT%CR +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29%CR +Vary: Accept-Encoding%CR +Content-Type: text/html; charset=ISO-8859-1%CR +Content-Encoding: deflate%CR +Content-Length: 1305%CR +%CR @@ -43,15 +43,15 @@ Content-Length: 1305 curl curl and libcurl Command line tool and library for client-side URL transfers. - curl and libcurl is a tool for transferring files -using URL syntax. It supports HTTP, HTTPS, FTP, -FTPS, DICT, TELNET, LDAP, FILE, and GOPHER, as -well as HTTP-post, HTTP-put, cookies, FTP upload, -resumed transfers, passwords, portnumbers, SSL -certificates, Kerberos, and proxies. It is powered -by libcurl, the client-side URL transfer library. -There are bindings to libcurl for over 20 -languages and environments. + curl and libcurl is a tool for transferring files%CR +using URL syntax. It supports HTTP, HTTPS, FTP,%CR +FTPS, DICT, TELNET, LDAP, FILE, and GOPHER, as%CR +well as HTTP-post, HTTP-put, cookies, FTP upload,%CR +resumed transfers, passwords, portnumbers, SSL%CR +certificates, Kerberos, and proxies. It is powered%CR +by libcurl, the client-side URL transfer library.%CR +There are bindings to libcurl for over 20%CR +languages and environments.%CR 5784.57 3.16 @@ -172,13 +172,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --compressed s/^Accept-Encoding: [a-zA-Z, ]*/Accept-Encoding: xxx/ - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Accept-Encoding: xxx - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Accept-Encoding: xxx + diff --git a/tests/data/test223 b/tests/data/test223 index ba62b2ca7533..06f2638dd0ff 100644 --- a/tests/data/test223 +++ b/tests/data/test223 @@ -12,27 +12,27 @@ FAILURE # this deflate chunk has three bytes removed from the beginning and is cut # short - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: deflate -Content-Length: 1305 - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Content-Encoding: deflate +Content-Length: 1305 + %hex[%58%db%6e%e3%36%10%7d%37%90%7f%60%fd%d4%02%b6%6e%b6%13%39%70%b4%28%72%d9%04%cd%36%c1%da%05%ba%4f%06%2d%d1%36%1b%49%14%48%ca%b9%3c%f4%db%3b%94%28%89%b1%1c%af%77%83%be%04%48%62%72%e6%9c%c3%e1%0c%49%93%99%7c%7a%4a%62%b4%21%5c%50%96%9e%75%5d%cb%e9%22%92%86%2c%a2%e9%ea%ac%7b%33%bd%eb%fb%fe%68%dc%77%bb%9f%82%ce%e4%97%8b%bb%f3%d9%b7%fb%4b%94%71%f6%0f%09%65%3f%a6%42%02%10%4d%bf%4d%67%97%5f%50%77%2d%65%76%6a%db%4b%4e%c4%3a%21%58%5a%29%91%f6%02%87%0f%24%8d%ec%65%d2%d7%3c%d1%77%ac%a1%15%c9%a8%0b%a2%5b%5a%41%07%a1%ca%a6%da%4d%6f%4e%a3%c0%3d%76%bd%89%6d%18%4a%44%84%25%99%e3%28%22%80%18%8f%fd%be%e3%f7%3d%17%39%c3%53%c7%3d%f5%c6%13%db%f0%1b%84%3c%53%1f%51%e0%39%ce%b0%ef%3a%7d%d7%47%8e%77%ea%c1%cf%40%53%2a%c4%ab%38%52%9c%90%b9%58%33%2e%83%30%e7%71%1d%8e%61%6f%e3%97%79%1c%17%70%84%d3%08%c5%74%d1%a6%16%10%1d%1e%11%a1%96%3a%67%49%52%52%52%82%24%63%b5%00%c7%fc%19%2d%19%47%61%4c%49%2a%fb%82%46%04%fd%f5%f5%16%49%8e%53%b1%84%8a%5a%30%8b%46%c8%50%de%19%0c%a2%02%e1%72%04%a5%5a%a9%70%55%df%25%8d%89%38%ea%e4%42%75%d4%18%e2%39%95%f8%c9%42%37%12%89%3c%cb%40%5f%a0%eb%d9%ec%be%57%fc%9d%f6%d0%15%b4%8f%3a%57%45%fb%e2%e6%7c%d6%43%b3%cb%db%3f%2f%e1%f3%f6%e2%77%80%5d%dd%dc%5e%f6%8a%e1%3f%df%dd%5f%5f%7e%85%36%0c%f0%48%62%88%a9%94%ea%67%4c%c8%9e%6e%e6%d0]hex% - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: deflate -Content-Length: 1305 - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Content-Encoding: deflate +Content-Length: 1305 + @@ -60,13 +60,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --compressed s/^Accept-Encoding: [a-zA-Z, ]*/Accept-Encoding: xxx/ - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Accept-Encoding: xxx - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Accept-Encoding: xxx + 61 diff --git a/tests/data/test224 b/tests/data/test224 index 99400cd1d821..2067e7a1857f 100644 --- a/tests/data/test224 +++ b/tests/data/test224 @@ -9,27 +9,27 @@ compressed # # Server-side - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: gzip -Content-Length: 2186 - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Content-Encoding: gzip +Content-Length: 2186 + %hex[%1f%8b%08%1c%bf%bc%ab%41%02%03%30%00%74%68%69%73%20%69%73%20%61%6e%20%65%78%74%72%61%20%66%69%65%6c%64%20%74%68%61%74%20%6d%75%73%74%20%62%65%20%72%65%6d%6f%76%65%64%5f%5f%5f%5f%5f%6c%6f%6e%67%2d%66%69%6c%65%6e%61%6d%65%2dxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx%00%74%68%69%73%20%69%73%20%61%20%63%6f%6d%6d%65%6e%74%20%74%68%61%74%20%6d%75%73%74%20%62%65%20%73%6b%69%70%70%65%64%00%2b%cd%4b%ce%cf%2d%28%4a%2d%2e%4e%4d%51%48%af%ca%2c%50%48%49%2c%49%54%28%cf%2c%c9%50%c8%c9%cf%4b%87%88%65%a4%26%a6%a4%16%71%01%00%b8%50%9e%cb%2d%00%00%00]hex% - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: gzip -Content-Length: 2186 - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Content-Encoding: gzip +Content-Length: 2186 + uncompressed gzip data with long gzip header @@ -58,13 +58,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --compressed s/^Accept-Encoding: [a-zA-Z, ]*/Accept-Encoding: xxx/ - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Accept-Encoding: xxx - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Accept-Encoding: xxx + diff --git a/tests/data/test227 b/tests/data/test227 index f7b445185d7d..e0a6af9f76c6 100644 --- a/tests/data/test227 +++ b/tests/data/test227 @@ -37,21 +37,21 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -Q "NOOP 1" -Q "+NOOP 2" -Q "-NOOP 3" -Q "*FA # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -NOOP 1 -FAIL -EPSV -PASV -TYPE I -NOOP 2 -FAIL HARD -SIZE %TESTNUMBER -RETR %TESTNUMBER -NOOP 3 -QUIT + +USER anonymous +PASS ftp@example.com +PWD +NOOP 1 +FAIL +EPSV +PASV +TYPE I +NOOP 2 +FAIL HARD +SIZE %TESTNUMBER +RETR %TESTNUMBER +NOOP 3 +QUIT diff --git a/tests/data/test228 b/tests/data/test228 index 8e7d73ff0c98..e9acda8ddb3d 100644 --- a/tests/data/test228 +++ b/tests/data/test228 @@ -37,16 +37,16 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER --ftp-account "one count" # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -ACCT one count -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +ACCT one count +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test229 b/tests/data/test229 index 71da135fc0e9..9b79392a9681 100644 --- a/tests/data/test229 +++ b/tests/data/test229 @@ -29,10 +29,10 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER --ftp-account "one count" # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -ACCT one count + +USER anonymous +PASS ftp@example.com +ACCT one count 11 diff --git a/tests/data/test230 b/tests/data/test230 index 47663ad294c6..45f0a7f884c7 100644 --- a/tests/data/test230 +++ b/tests/data/test230 @@ -9,15 +9,15 @@ compressed # # Server-side - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: deflate, identity, gzip -Content-Length: 1328 - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Content-Encoding: deflate, identity, gzip +Content-Length: 1328 + %hex[%1f%8b%08%00%fa%65%fa%59%00%03%01%19%05%e6%fa%78%9c%dc%58%db%6e%e3%36%10%7d%37%90%7f%60%fd%d4%02%b6%6e%b6%13%39%70%b4%28%72%d9%04%cd%36%c1%da%05%ba%4f%06%2d%d1%36%1b%49%14%48%ca%b9%3c%f4%db%3b%94%28%89%b1%1c%af%77%83%be%04%48%62%72%e6%9c%c3%e1%0c%49%93%99%7c%7a%4a%62%b4%21%5c%50%96%9e%75%5d%cb%e9%22%92%86%2c%a2%e9%ea%ac%7b%33%bd%eb%fb%fe%68%dc%77%bb%9f%82%ce%e4%97%8b%bb%f3%d9%b7%fb%4b%94%71%f6%0f%09%65%3f%a6%42%02%10%4d%bf%4d%67%97%5f%50%77%2d%65%76%6a%db%4b%4e%c4%3a%21%58%5a%29%91%f6%02%87%0f%24%8d%ec%65%d2%d7%3c%d1%77%ac%a1%15%c9%a8%0b%a2%5b%5a%41%07%a1%ca%a6%da%4d%6f%4e%a3%c0%3d%76%bd%89%6d%18%4a%44%84%25%99%e3%28%22%80%18%8f%fd%be%e3%f7%3d%17%39%c3%53%c7%3d%f5%c6%13%db%f0%1b%84%3c%53%1f%51%e0%39%ce%b0%ef%3a%7d%d7%47%8e%77%ea%c1%cf%40%53%2a%c4%ab%38%52%9c%90%b9%58%33%2e%83%30%e7%71%1d%8e%61%6f%e3%97%79%1c%17%70%84%d3%08%c5%74%d1%a6%16%10%1d%1e%11%a1%96%3a%67%49%52%52%52%82%24%63%b5%00%c7%fc%19%2d%19%47%61%4c%49%2a%fb%82%46%04%fd%f5%f5%16%49%8e%53%b1%84%8a%5a%30%8b%46%c8%50%de%19%0c%a2%02%e1%72%04%a5%5a%a9%70%55%df%25%8d%89%38%ea%e4%42%75%d4%18%e2%39%95%f8%c9%42%37%12%89%3c%cb%40%5f%a0%eb%d9%ec%be%57%fc%9d%f6%d0%15%b4%8f%3a%57%45%fb%e2%e6%7c%d6%43%b3%cb%db%3f%2f%e1%f3%f6%e2%77%80%5d%dd%dc%5e%f6%8a%e1%3f%df%dd%5f%5f%7e%85%36%0c%f0%48%62%88%a9%94%ea%67%4c%c8%9e%6e%e6%d0]hex% %hex[%19%7b%a0%44%14%da%28%cf%62%86%23%18%02%96%5a%9e%90%a8%99%75%0f%65%58%88%47%c6%23%d5%84%c8%d2%3c%59%14%f6%e9%f4%f6%a8%13%12%2e%e9%92%86%50%57%30%fd%41%38%f8%98%28%43%81%6a%3c%c1%08%c5%b4%20%1b%19%7b%24%9c%44%47%9d%c5%73%95%a4%1e%92%6b%f2%66%c6%ab%b2%58%47%9d%d9%1a%a8%08%c3%ef%82%a6%6a%33%09%48%6d%9d%6a%95%60%06%9b%0e%79%ce%51%27%c6%e9%2a%c7%2b%22%8a%18%48%ba%a1%9c%a5%09%0c%20%40%47%97%d0%58%1b%1b%2a%71%4c%e5%f3%5c%84%8c%93%60%74%e2%0f%ad%d1%c9%c4%de%b2%6f%81%33%c2%43%90%0c%06%96%7b%6c%60%2b%f3%16%1a%e6%f3%00%7b%6d%6c%20%0b%93%5e%d7%2c%cb%63%cc%9b%b1%8e%47%63%88%61%08%cb%79%db%d3%22%54%03%ba%03%cb%77%5f%11%5e%87%62%38%ca%60%9c%d1%2b%b4%11%0e%c7%c5%b9%e1%5b%23%67%62%eb%8e%e9%99%87%2c%07%5d%cf%ad%bc%da%f0]hex% %hex[%53%0e%e2%0f%6a%8c%31%80%c8%17%22%e4%34%93%70%44%8a%60%a0%4e%87%d7%a6%12%06%a5%4f%c3%f5%5c%ed%e5%e0%82%2c%71%1e%cb%89%6d%1a%4b%18%d4%7f%5e%1d%60%19%94%3d%d8%79%68%56%27%a5%ad%d6%8b%3d%b1%5b%ac%46%6c%cd%12%f2%b6%10%2c%60%ca%4b%15%75%78%da%26%43%eb%d6%02%8d%a6%5c%bd%1c%2e%07%60%ad%a4%68%8d%c8%e2%c5%3b%5c%04%c0%5a%44%d1%1a%91%17%9a%1d%2e%02%60%2d%a2%68%8d%48%b8%86%3d%46%62%b6%3a%5c%aa%a6%68%c1%46%a2%91%e5%59%72%b8%20%80%b5%94%a2%35%22%11%59%1c%2e%02%60%2d%a2%68%8d%08%13%4f%87%8b%00%58%8b%28%9a%51%2f%11%a9%f3%f2%07%6a%56%12%aa%ba%69%ba%b1%cc%73%0e%69%13%24%d0%eb%b7%ea%1a%85%d9%88%1f%28%c9%46%54%c5%d8%08%43%44%dd%1c%0e%57%51%68%2d%53%10%1b%9d%84%72%ce%f8%e1%4a%25%5e%6b%69%b2%59%d7%84%05%55%ad%a0%59%7a%62]hex% @@ -25,14 +25,14 @@ Content-Length: 1328 -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: deflate, identity, gzip -Content-Length: 1328 - +HTTP/1.1 200 OK%CR +Date: Mon, 29 Nov 2004 21:56:53 GMT%CR +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29%CR +Vary: Accept-Encoding%CR +Content-Type: text/html; charset=ISO-8859-1%CR +Content-Encoding: deflate, identity, gzip%CR +Content-Length: 1328%CR +%CR @@ -43,15 +43,15 @@ Content-Length: 1328 curl curl and libcurl Command line tool and library for client-side URL transfers. - curl and libcurl is a tool for transferring files -using URL syntax. It supports HTTP, HTTPS, FTP, -FTPS, DICT, TELNET, LDAP, FILE, and GOPHER, as -well as HTTP-post, HTTP-put, cookies, FTP upload, -resumed transfers, passwords, portnumbers, SSL -certificates, Kerberos, and proxies. It is powered -by libcurl, the client-side URL transfer library. -There are bindings to libcurl for over 20 -languages and environments. + curl and libcurl is a tool for transferring files%CR +using URL syntax. It supports HTTP, HTTPS, FTP,%CR +FTPS, DICT, TELNET, LDAP, FILE, and GOPHER, as%CR +well as HTTP-post, HTTP-put, cookies, FTP upload,%CR +resumed transfers, passwords, portnumbers, SSL%CR +certificates, Kerberos, and proxies. It is powered%CR +by libcurl, the client-side URL transfer library.%CR +There are bindings to libcurl for over 20%CR +languages and environments.%CR 5784.57 3.16 @@ -172,13 +172,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --compressed s/^Accept-Encoding: [a-zA-Z, ]*/Accept-Encoding: xxx/ - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Accept-Encoding: xxx - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Accept-Encoding: xxx + diff --git a/tests/data/test2300 b/tests/data/test2300 index 8b2877468609..e9ceb65f0479 100644 --- a/tests/data/test2300 +++ b/tests/data/test2300 @@ -8,13 +8,13 @@ WebSockets # # Server-side - -HTTP/1.1 101 Switching to WebSockets swsclose -Server: test-server/fake -Upgrade: websocket -Connection: Upgrade -Sec-WebSocket-Accept: HkPsVga7+8LuxM4RGQ5p9tZHeYs= - + +HTTP/1.1 101 Switching to WebSockets swsclose +Server: test-server/fake +Upgrade: websocket +Connection: Upgrade +Sec-WebSocket-Accept: HkPsVga7+8LuxM4RGQ5p9tZHeYs= + # allow upgrade @@ -47,16 +47,16 @@ WebSockets upgrade only # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Upgrade: websocket -Sec-WebSocket-Version: 13 -Sec-WebSocket-Key: NDMyMTUzMjE2MzIxNzMyMQ== -Connection: Upgrade - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Upgrade: websocket +Sec-WebSocket-Version: 13 +Sec-WebSocket-Key: NDMyMTUzMjE2MzIxNzMyMQ== +Connection: Upgrade + 52 diff --git a/tests/data/test2301 b/tests/data/test2301 index 1b968c767285..a0fe4f1dec97 100644 --- a/tests/data/test2301 +++ b/tests/data/test2301 @@ -8,14 +8,14 @@ WebSockets # # Server-side - -HTTP/1.1 101 Switching to WebSockets -Server: test-server/fake -Upgrade: websocket -Connection: Upgrade -Something: else -Sec-WebSocket-Accept: HkPsVga7+8LuxM4RGQ5p9tZHeYs= - + +HTTP/1.1 101 Switching to WebSockets +Server: test-server/fake +Upgrade: websocket +Connection: Upgrade +Something: else +Sec-WebSocket-Accept: HkPsVga7+8LuxM4RGQ5p9tZHeYs= + %hex[%89%00]hex% # allow upgrade @@ -52,16 +52,16 @@ ws://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: webbie-sox/3 -Accept: */* -Upgrade: websocket -Sec-WebSocket-Version: 13 -Sec-WebSocket-Key: NDMyMTUzMjE2MzIxNzMyMQ== -Connection: Upgrade - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: webbie-sox/3 +Accept: */* +Upgrade: websocket +Sec-WebSocket-Version: 13 +Sec-WebSocket-Key: NDMyMTUzMjE2MzIxNzMyMQ== +Connection: Upgrade + %hex[%8a%00]hex% diff --git a/tests/data/test2302 b/tests/data/test2302 index 8e2d34877f5f..889d014e2d85 100644 --- a/tests/data/test2302 +++ b/tests/data/test2302 @@ -8,14 +8,14 @@ WebSockets # # Sends a PING + a 5 byte hello TEXT - -HTTP/1.1 101 Switching to WebSockets -Server: test-server/fake -Upgrade: websocket -Connection: Upgrade -Something: else -Sec-WebSocket-Accept: HkPsVga7+8LuxM4RGQ5p9tZHeYs= - + +HTTP/1.1 101 Switching to WebSockets +Server: test-server/fake +Upgrade: websocket +Connection: Upgrade +Something: else +Sec-WebSocket-Accept: HkPsVga7+8LuxM4RGQ5p9tZHeYs= + %hex[%89%00%81%05hello]hex% # allow upgrade @@ -53,20 +53,20 @@ ws://%HOSTIP:%HTTPPORT/%TESTNUMBER # PONG with no data and the 32 bit mask # - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: webbie-sox/3 -Accept: */* -Upgrade: websocket -Sec-WebSocket-Version: 13 -Sec-WebSocket-Key: NDMyMTUzMjE2MzIxNzMyMQ== -Connection: Upgrade - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: webbie-sox/3 +Accept: */* +Upgrade: websocket +Sec-WebSocket-Version: 13 +Sec-WebSocket-Key: NDMyMTUzMjE2MzIxNzMyMQ== +Connection: Upgrade + %hex[%8a%808321]hex% -68 65 6c 6c 6f +68 65 6c 6c 6f%SP RECFLAGS: 1 diff --git a/tests/data/test2303 b/tests/data/test2303 index 8ad45cbecaf4..5c68deaff177 100644 --- a/tests/data/test2303 +++ b/tests/data/test2303 @@ -7,12 +7,12 @@ WebSockets # - -HTTP/1.1 200 Oblivious -Server: test-server/fake -Something: else -Content-Length: 6 - + +HTTP/1.1 200 Oblivious +Server: test-server/fake +Something: else +Content-Length: 6 + hello @@ -43,16 +43,16 @@ ws://%HOSTIP:%HTTPPORT/%TESTNUMBER - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: webbie-sox/3 -Accept: */* -Upgrade: websocket -Sec-WebSocket-Version: 13 -Sec-WebSocket-Key: NDMyMTUzMjE2MzIxNzMyMQ== -Connection: Upgrade - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: webbie-sox/3 +Accept: */* +Upgrade: websocket +Sec-WebSocket-Version: 13 +Sec-WebSocket-Key: NDMyMTUzMjE2MzIxNzMyMQ== +Connection: Upgrade + # 22 == CURLE_HTTP_RETURNED_ERROR diff --git a/tests/data/test2304 b/tests/data/test2304 index 8ed75d96a9cf..fda6186f6353 100644 --- a/tests/data/test2304 +++ b/tests/data/test2304 @@ -52,7 +52,7 @@ ws://%HOSTIP:%HTTPPORT/%TESTNUMBER # PONG with no data and the 32 bit mask # - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: websocket/%TESTNUMBER diff --git a/tests/data/test2306 b/tests/data/test2306 index 620f7b5ecc12..713cc27c9301 100644 --- a/tests/data/test2306 +++ b/tests/data/test2306 @@ -9,22 +9,22 @@ HTTP GET # This reproduces the #11101 issue, when the second response comes back # with the first header being "folded" - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Content-Type: text/html +Funny-head: yesyes + -foo- HTTP/1.1 200 OK swsclose - Access-Control-Allow-Origin: * +%TABAccess-Control-Allow-Origin: * Connection: Keep-Alive Content-Type: text/html; charset=utf-8 Date: Wed, 10 May 2023 14:58:08 GMT @@ -54,15 +54,15 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER http://%HOSTIP:%HTTPPORT/%TESTNUMBER0002 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + diff --git a/tests/data/test2308 b/tests/data/test2308 index 3881d353db6c..dfbe0db82e0a 100644 --- a/tests/data/test2308 +++ b/tests/data/test2308 @@ -8,17 +8,17 @@ HTTP GET # # This reproduces the #13669 issue - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Content-Type: text/html +Funny-head: yesyes + -foo- @@ -44,11 +44,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + Returned 23, should be 23. diff --git a/tests/data/test2309 b/tests/data/test2309 index 4ba78ee91e17..88d4b03affd7 100644 --- a/tests/data/test2309 +++ b/tests/data/test2309 @@ -8,7 +8,7 @@ HTTP # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -54,13 +54,13 @@ password $y$j9T$WUVjiVvDbRAWafDLs6cab1$01NX.oaZKf5lw8MR2Nk9Yaxv4CqbE0IaDF.GpGxPu - -GET http://github.com/ HTTP/1.1 -Host: github.com -Authorization: Basic %b64[daniel:$y$j9T$WUVjiVvDbRAWafDLs6cab1$01NX.oaZKf5lw8MR2Nk9Yaxv4CqbE0IaDF.GpGxPul1]b64% -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://github.com/ HTTP/1.1 +Host: github.com +Authorization: Basic %b64[daniel:$y$j9T$WUVjiVvDbRAWafDLs6cab1$01NX.oaZKf5lw8MR2Nk9Yaxv4CqbE0IaDF.GpGxPul1]b64% +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test232 b/tests/data/test232 index 7f39d7a2fea8..94cb1b9f99d9 100644 --- a/tests/data/test232 +++ b/tests/data/test232 @@ -9,15 +9,15 @@ compressed # # Server-side - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: deflate -Content-Length: 1287 - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Content-Encoding: deflate +Content-Length: 1287 + %hex[%dd%58%db%6e%e3%36%10%7d%37%90%7f%60%fd%d4%02%b6%6e%b6%13%39%70%b4%28%72%d9%04%cd%36%c1%da%05%ba%4f%06%2d%d1%36%1b%49%14%48%ca%b9%3c%f4%db%3b%94%28%89%b1%1c%af%77%83%be%04%48%62%72%e6%9c%c3%e1%0c%49%93%99%7c%7a%4a%62%b4%21%5c%50%96%9e%75%5d%cb%e9%22%92%86%2c%a2%e9%ea%ac%7b%33%bd%eb%fb%fe%68%dc%77%bb%9f%82%ce%e4%97%8b%bb%f3%d9%b7%fb%4b%94%71%f6%0f%09%65%3f%a6%42%02%10%4d%bf%4d%67%97%5f%50%77%2d%65%76%6a%db%4b%4e%c4%3a%21%58%5a%29%91%f6%02%87%0f%24%8d%ec%65%d2%d7%3c%d1%77%ac%a1%15%c9%a8%0b%a2%5b%5a%41%07%a1%ca%a6%da%4d%6f%4e%a3%c0%3d%76%bd%89%6d%18%4a%44%84%25%99%e3%28%22%80%18%8f%fd%be%e3%f7%3d%17%39%c3%53%c7%3d%f5%c6%13%db%f0%1b%84%3c%53%1f%51%e0%39%ce%b0%ef%3a%7d%d7%47%8e%77%ea%c1%cf%40%53%2a%c4%ab%38%52%9c%90%b9%58%33%2e%83%30%e7%71%1d%8e%61%6f%e3%97%79%1c%17%70%84%d3%08%c5%74%d1%a6%16%10%1d%1e%11%a1%96%3a%67%49%52%52%52%82%24%63%b5%00%c7%fc%19%2d%19%47%61%4c%49%2a%fb%82%46%04%fd%f5%f5%16%49%8e%53%b1%84%8a%5a%30%8b%46%c8%50%de%19%0c%a2%02%e1%72%04%a5%5a%a9%70%55%df%25%8d%89%38%ea%e4%42%75%d4%18%e2%39%95%f8%c9%42%37%12%89%3c%cb%40%5f%a0%eb%d9%ec%be%57%fc%9d%f6%d0%15%b4%8f%3a%57%45%fb%e2%e6%7c%d6%43%b3%cb%db%3f%2f%e1%f3%f6%e2%77%80%5d%dd%dc%5e%f6%8a%e1%3f%df%dd%5f%5f%7e%85%36%0c%f0%48%62%88%a9%94%ea%67%4c%c8%9e%6e%e6%d0]hex% %hex[%19%7b%a0%44%14%da%28%cf%62%86%23%18%02%96%5a%9e%90%a8%99%75%0f%65%58%88%47%c6%23%d5%84%c8%d2%3c%59%14%f6%e9%f4%f6%a8%13%12%2e%e9%92%86%50%57%30%fd%41%38%f8%98%28%43%81%6a%3c%c1%08%c5%b4%20%1b%19%7b%24%9c%44%47%9d%c5%73%95%a4%1e%92%6b%f2%66%c6%ab%b2%58%47%9d%d9%1a%a8%08%c3%ef%82%a6%6a%33%09%48%6d%9d%6a%95%60%06%9b%0e%79%ce%51%27%c6%e9%2a%c7%2b%22%8a%18%48%ba%a1%9c%a5%09%0c%20%40%47%97%d0%58%1b%1b%2a%71%4c%e5%f3%5c%84%8c%93%60%74%e2%0f%ad%d1%c9%c4%de%b2%6f%81%33%c2%43%90%0c%06%96%7b%6c%60%2b%f3%16%1a%e6%f3%00%7b%6d%6c%20%0b%93%5e%d7%2c%cb%63%cc%9b%b1%8e%47%63%88%61%08%cb%79%db%d3%22%54%03%ba%03%cb%77%5f%11%5e%87%62%38%ca%60%9c%d1%2b%b4%11%0e%c7%c5%b9%e1%5b%23%67%62%eb%8e%e9%99%87%2c%07%5d%cf%ad%bc%da%f0]hex% %hex[%53%0e%e2%0f%6a%8c%31%80%c8%17%22%e4%34%93%70%44%8a%60%a0%4e%87%d7%a6%12%06%a5%4f%c3%f5%5c%ed%e5%e0%82%2c%71%1e%cb%89%6d%1a%4b%18%d4%7f%5e%1d%60%19%94%3d%d8%79%68%56%27%a5%ad%d6%8b%3d%b1%5b%ac%46%6c%cd%12%f2%b6%10%2c%60%ca%4b%15%75%78%da%26%43%eb%d6%02%8d%a6%5c%bd%1c%2e%07%60%ad%a4%68%8d%c8%e2%c5%3b%5c%04%c0%5a%44%d1%1a%91%17%9a%1d%2e%02%60%2d%a2%68%8d%48%b8%86%3d%46%62%b6%3a%5c%aa%a6%68%c1%46%a2%91%e5%59%72%b8%20%80%b5%94%a2%35%22%11%59%1c%2e%02%60%2d%a2%68%8d%08%13%4f%87%8b%00%58%8b%28%9a%51%2f%11%a9%f3%f2%07%6a%56%12%aa%ba%69%ba%b1%cc%73%0e%69%13%24%d0%eb%b7%ea%1a%85%d9%88%1f%28%c9%46%54%c5%d8%08%43%44%dd%1c%0e%57%51%68%2d%53%10%1b%9d%84%72%ce%f8%e1%4a%25%5e%6b%69%b2%59%d7%84%05%55%ad%a0%59%7a%62]hex% @@ -25,14 +25,14 @@ Content-Length: 1287 -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: deflate -Content-Length: 1287 - +HTTP/1.1 200 OK%CR +Date: Mon, 29 Nov 2004 21:56:53 GMT%CR +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29%CR +Vary: Accept-Encoding%CR +Content-Type: text/html; charset=ISO-8859-1%CR +Content-Encoding: deflate%CR +Content-Length: 1287%CR +%CR @@ -43,15 +43,15 @@ Content-Length: 1287 curl curl and libcurl Command line tool and library for client-side URL transfers. - curl and libcurl is a tool for transferring files -using URL syntax. It supports HTTP, HTTPS, FTP, -FTPS, DICT, TELNET, LDAP, FILE, and GOPHER, as -well as HTTP-post, HTTP-put, cookies, FTP upload, -resumed transfers, passwords, portnumbers, SSL -certificates, Kerberos, and proxies. It is powered -by libcurl, the client-side URL transfer library. -There are bindings to libcurl for over 20 -languages and environments. + curl and libcurl is a tool for transferring files%CR +using URL syntax. It supports HTTP, HTTPS, FTP,%CR +FTPS, DICT, TELNET, LDAP, FILE, and GOPHER, as%CR +well as HTTP-post, HTTP-put, cookies, FTP upload,%CR +resumed transfers, passwords, portnumbers, SSL%CR +certificates, Kerberos, and proxies. It is powered%CR +by libcurl, the client-side URL transfer library.%CR +There are bindings to libcurl for over 20%CR +languages and environments.%CR 5784.57 3.16 @@ -172,13 +172,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --compressed s/^Accept-Encoding: [a-zA-Z, ]*/Accept-Encoding: xxx/ - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Accept-Encoding: xxx - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Accept-Encoding: xxx + diff --git a/tests/data/test233 b/tests/data/test233 index fa83d750d144..f802232fb0f5 100644 --- a/tests/data/test233 +++ b/tests/data/test233 @@ -75,22 +75,22 @@ proxy # # Verify data after the test has been "shot" - -GET http://first.host.it.is/we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: first.host.it.is -Proxy-Authorization: Basic %b64[testing:this]b64% -Authorization: Basic %b64[iam:myself]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://goto.second.host.now/%TESTNUMBER0002 HTTP/1.1 -Host: goto.second.host.now -Proxy-Authorization: Basic %b64[testing:this]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://first.host.it.is/we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: first.host.it.is +Proxy-Authorization: Basic %b64[testing:this]b64% +Authorization: Basic %b64[iam:myself]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://goto.second.host.now/%TESTNUMBER0002 HTTP/1.1 +Host: goto.second.host.now +Proxy-Authorization: Basic %b64[testing:this]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test234 b/tests/data/test234 index 2902da1528d2..601580b7fd96 100644 --- a/tests/data/test234 +++ b/tests/data/test234 @@ -77,23 +77,23 @@ proxy # # Verify data after the test has been "shot" - -GET http://first.host.it.is/we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: first.host.it.is -Proxy-Authorization: Basic %b64[testing:this]b64% -Authorization: Basic %b64[iam:myself]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://goto.second.host.now/%TESTNUMBER0002 HTTP/1.1 -Host: goto.second.host.now -Proxy-Authorization: Basic %b64[testing:this]b64% -Authorization: Basic %b64[iam:myself]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://first.host.it.is/we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: first.host.it.is +Proxy-Authorization: Basic %b64[testing:this]b64% +Authorization: Basic %b64[iam:myself]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://goto.second.host.now/%TESTNUMBER0002 HTTP/1.1 +Host: goto.second.host.now +Proxy-Authorization: Basic %b64[testing:this]b64% +Authorization: Basic %b64[iam:myself]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test235 b/tests/data/test235 index 7081a776c8f5..651dd55cd130 100644 --- a/tests/data/test235 +++ b/tests/data/test235 @@ -33,15 +33,15 @@ worx? # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -STOR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +STOR %TESTNUMBER +QUIT this is the *****crap******** that we're gonna upload diff --git a/tests/data/test236 b/tests/data/test236 index a66fa046d93e..735b5bf583b7 100644 --- a/tests/data/test236 +++ b/tests/data/test236 @@ -34,15 +34,15 @@ Test data # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -STOR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +STOR %TESTNUMBER +QUIT # (25) Failed FTP upload: 550 diff --git a/tests/data/test237 b/tests/data/test237 index 010f4f4322f0..fe407993fa30 100644 --- a/tests/data/test237 +++ b/tests/data/test237 @@ -34,11 +34,11 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER --disable-epsv 14 - -USER anonymous -PASS ftp@example.com -PWD -PASV + +USER anonymous +PASS ftp@example.com +PWD +PASV diff --git a/tests/data/test238 b/tests/data/test238 index 6e2af83d7e45..bd01546ea618 100644 --- a/tests/data/test238 +++ b/tests/data/test238 @@ -31,12 +31,12 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER 13 - -USER anonymous -PASS ftp@example.com -PWD -EPSV -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +QUIT diff --git a/tests/data/test239 b/tests/data/test239 index 230fcc31ad65..7985c877bbd2 100644 --- a/tests/data/test239 +++ b/tests/data/test239 @@ -13,35 +13,35 @@ NTLM # this is returned first since we get no proxy-auth - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Content-Length: 34 - + +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Content-Length: 34 + Hey you, authenticate or go away! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine in proxy land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 42 - + +HTTP/1.1 200 Things are fine in proxy land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 42 + Contents of that page you requested, sir. - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Content-Length: 34 - -HTTP/1.1 200 Things are fine in proxy land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 42 - + +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Content-Length: 34 + +HTTP/1.1 200 Things are fine in proxy land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 42 + Contents of that page you requested, sir. @@ -67,25 +67,25 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --proxy http://%HOSTIP:%HTTPPORT --proxy-us # Verify data after the test has been "shot" - -POST http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 0 -Content-Type: application/x-www-form-urlencoded - -POST http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 6 -Content-Type: application/x-www-form-urlencoded - + +POST http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 0 +Content-Type: application/x-www-form-urlencoded + +POST http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 6 +Content-Type: application/x-www-form-urlencoded + postit diff --git a/tests/data/test24 b/tests/data/test24 index 888c63573314..eba34b5772d0 100644 --- a/tests/data/test24 +++ b/tests/data/test24 @@ -31,12 +31,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --fail --silent --show-error # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 22 diff --git a/tests/data/test240 b/tests/data/test240 index 75bd4bb3de69..9941df77ac17 100644 --- a/tests/data/test240 +++ b/tests/data/test240 @@ -45,12 +45,12 @@ HTTP-IPv6 GET # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOST6IP:%HTTP6PORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOST6IP:%HTTP6PORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test2400 b/tests/data/test2400 index 9d53f68b96c5..1fed4b71e643 100644 --- a/tests/data/test2400 +++ b/tests/data/test2400 @@ -11,14 +11,14 @@ HTTPS # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + -foo- @@ -49,8 +49,8 @@ HTTP/2 GET over HTTPS # # Verify data after the test has been "shot" - -HTTP/2 200 + +HTTP/2 200%SP date: Tue, 09 Nov 2010 14:49:00 GMT content-length: 6 content-type: text/html diff --git a/tests/data/test2401 b/tests/data/test2401 index 8f686e850333..94787f1c6fda 100644 --- a/tests/data/test2401 +++ b/tests/data/test2401 @@ -11,13 +11,13 @@ HTTPS # # Server-side - -HTTP/1.1 201 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close -Content-Length: 0 -Funny-head: yesyes - + +HTTP/1.1 201 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close +Content-Length: 0 +Funny-head: yesyes + @@ -46,25 +46,25 @@ HTTP/2 POST over HTTPS # # Verify data after the test has been "shot" - -HTTP/2 201 -date: Tue, 09 Nov 2010 14:49:00 GMT -content-length: 0 -funny-head: yesyes -server: nghttpx -via: 1.1 nghttpx - + +HTTP/2 201%SP +date: Tue, 09 Nov 2010 14:49:00 GMT +content-length: 0 +funny-head: yesyes +server: nghttpx +via: 1.1 nghttpx + - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTP2TLSPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 3 -Content-Type: application/x-www-form-urlencoded -X-Forwarded-Proto: https -Via: 2 nghttpx - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTP2TLSPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 3 +Content-Type: application/x-www-form-urlencoded +X-Forwarded-Proto: https +Via: 2 nghttpx + moo diff --git a/tests/data/test2402 b/tests/data/test2402 index 5133a0944a83..1903534dc81a 100644 --- a/tests/data/test2402 +++ b/tests/data/test2402 @@ -10,36 +10,36 @@ verbose logs # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: server.example.com -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: server.example.com +Content-Length: 47 + file contents should appear once for each file - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: server.example.com -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: server.example.com +Content-Length: 47 + file contents should appear once for each file - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: server.example.com -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: server.example.com +Content-Length: 47 + file contents should appear once for each file - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: server.example.com -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: server.example.com +Content-Length: 47 + file contents should appear once for each file @@ -67,7 +67,7 @@ HTTP GET multiple files over HTTP/2 using HTTPS # Verify data after the test has been "shot" - + GET /path/%TESTNUMBER0001 HTTP/1.1 Host: %HOSTIP:%HTTPPORT Accept: */* diff --git a/tests/data/test2403 b/tests/data/test2403 index 5901866265cb..34141d6780e1 100644 --- a/tests/data/test2403 +++ b/tests/data/test2403 @@ -13,7 +13,7 @@ HTTPS # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Content-Length: 6 @@ -50,8 +50,8 @@ HTTP/2 GET using %{header_json} # # Verify data after the test has been "shot" - -HTTP/2 200 + +HTTP/2 200%SP date: Tue, 09 Nov 2010 14:49:00 GMT content-length: 6 content-type: text/html diff --git a/tests/data/test2404 b/tests/data/test2404 index 881a32120fe5..1ed03968dbac 100644 --- a/tests/data/test2404 +++ b/tests/data/test2404 @@ -10,36 +10,36 @@ verbose logs # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: server.example.com -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: server.example.com +Content-Length: 47 + file contents should appear once for each file - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: server.example.com -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: server.example.com +Content-Length: 47 + file contents should appear once for each file - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: server.example.com -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: server.example.com +Content-Length: 47 + file contents should appear once for each file - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: server.example.com -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: server.example.com +Content-Length: 47 + file contents should appear once for each file @@ -67,7 +67,7 @@ HTTP/2 using STREAM_WEIGHTs # Verify data after the test has been "shot" - + GET /path/%TESTNUMBER0001 HTTP/1.1 Host: %HOSTIP:%HTTPPORT Accept: */* diff --git a/tests/data/test2405 b/tests/data/test2405 index 8489156e7315..ee25b1de53e4 100644 --- a/tests/data/test2405 +++ b/tests/data/test2405 @@ -44,7 +44,5 @@ http://%HOSTIP:%HTTP2PORT/%TESTNUMBER # Verify data after the test has been "shot" - - diff --git a/tests/data/test2406 b/tests/data/test2406 index bc6cc41ad28d..6426b2cc846a 100644 --- a/tests/data/test2406 +++ b/tests/data/test2406 @@ -11,14 +11,14 @@ HTTPS # # Server-side - -HTTP/1.1 404 nope -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 404 nope +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + -foo- @@ -48,8 +48,8 @@ HTTP/2 over HTTPS with -f # # Verify data after the test has been "shot" - -HTTP/2 404 + +HTTP/2 404%SP date: Tue, 09 Nov 2010 14:49:00 GMT content-length: 6 content-type: text/html diff --git a/tests/data/test241 b/tests/data/test241 index f8cf6e9a43a2..2188722ecc73 100644 --- a/tests/data/test241 +++ b/tests/data/test241 @@ -43,12 +43,12 @@ HTTP-IPv6 GET (using ip6-localhost) # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: ip6-localhost:%HTTP6PORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: ip6-localhost:%HTTP6PORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test242 b/tests/data/test242 index 2e9f89165a98..43b07f8cea5d 100644 --- a/tests/data/test242 +++ b/tests/data/test242 @@ -40,13 +40,13 @@ HTTP-IPv6 GET with username+password in URL # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOST6IP:%HTTP6PORT -Authorization: Basic %b64[foobar:barfoo]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOST6IP:%HTTP6PORT +Authorization: Basic %b64[foobar:barfoo]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test243 b/tests/data/test243 index 3952571b6ed1..b8e62f050308 100644 --- a/tests/data/test243 +++ b/tests/data/test243 @@ -13,56 +13,56 @@ NTLM # Server-side - -HTTP/1.1 407 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts" -Proxy-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Connection: close - + +HTTP/1.1 407 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts" +Proxy-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Connection: close + This is not the real page # this is returned first since we get no proxy-auth - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Content-Length: 34 - + +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Content-Length: 34 + Hey you, authenticate or go away! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine in proxy land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 42 - + +HTTP/1.1 200 Things are fine in proxy land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 42 + Contents of that page you requested, sir. - -HTTP/1.1 407 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts" -Proxy-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Connection: close - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Content-Length: 34 - -HTTP/1.1 200 Things are fine in proxy land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 42 - + +HTTP/1.1 407 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts" +Proxy-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Connection: close + +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Content-Length: 34 + +HTTP/1.1 200 Things are fine in proxy land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 42 + Contents of that page you requested, sir. @@ -88,33 +88,33 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --proxy http://%HOSTIP:%HTTPPORT --proxy-us # Verify data after the test has been "shot" - -POST http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 6 -Content-Type: application/x-www-form-urlencoded - -postitPOST http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 0 -Content-Type: application/x-www-form-urlencoded - -POST http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 6 -Content-Type: application/x-www-form-urlencoded - + +POST http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 6 +Content-Type: application/x-www-form-urlencoded + +postitPOST http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 0 +Content-Type: application/x-www-form-urlencoded + +POST http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 6 +Content-Type: application/x-www-form-urlencoded + postit diff --git a/tests/data/test244 b/tests/data/test244 index 782be2be403f..a54ce3f6a525 100644 --- a/tests/data/test244 +++ b/tests/data/test244 @@ -41,14 +41,14 @@ FTP dir listing with nocwd and URL encoded path # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE A -LIST fir#t/third/%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE A +LIST fir#t/third/%TESTNUMBER +QUIT diff --git a/tests/data/test245 b/tests/data/test245 index da263692153c..8abef87e3a41 100644 --- a/tests/data/test245 +++ b/tests/data/test245 @@ -9,35 +9,35 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok @@ -64,22 +64,22 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u auser:apasswd --digest -d "junkelijunk" # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 0 -Content-Type: application/x-www-form-urlencoded - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="379a439b1737ba257c1d2f103914b18b" -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 11 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 0 +Content-Type: application/x-www-form-urlencoded + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="379a439b1737ba257c1d2f103914b18b" +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 11 +Content-Type: application/x-www-form-urlencoded + junkelijunk diff --git a/tests/data/test246 b/tests/data/test246 index 3ab338213c47..9227dfe6a431 100644 --- a/tests/data/test246 +++ b/tests/data/test246 @@ -9,45 +9,45 @@ HTTP Digest auth # Server-side - -HTTP/1.1 100 Continue -Server: Microsoft-IIS/5.0 -Date: Sun, 03 Apr 2005 14:57:45 GMT -X-Powered-By: ASP.NET - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - + +HTTP/1.1 100 Continue +Server: Microsoft-IIS/5.0 +Date: Sun, 03 Apr 2005 14:57:45 GMT +X-Powered-By: ASP.NET + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok - -HTTP/1.1 100 Continue -Server: Microsoft-IIS/5.0 -Date: Sun, 03 Apr 2005 14:57:45 GMT -X-Powered-By: ASP.NET - -HTTP/1.1 401 authentication please -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 100 Continue +Server: Microsoft-IIS/5.0 +Date: Sun, 03 Apr 2005 14:57:45 GMT +X-Powered-By: ASP.NET + +HTTP/1.1 401 authentication please +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok @@ -74,22 +74,22 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u auser:apasswd --digest -d "junkelijunk" # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 0 -Content-Type: application/x-www-form-urlencoded - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="761e6fc9a760c39d587092e8d840e740" -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 11 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 0 +Content-Type: application/x-www-form-urlencoded + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="761e6fc9a760c39d587092e8d840e740" +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 11 +Content-Type: application/x-www-form-urlencoded + junkelijunk diff --git a/tests/data/test247 b/tests/data/test247 index 8b154f419b78..43401696c483 100644 --- a/tests/data/test247 +++ b/tests/data/test247 @@ -35,12 +35,12 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -T %LOGDIR/test%TESTNUMBER.txt -z "apr 1 2005 # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -MDTM %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +MDTM %TESTNUMBER +QUIT diff --git a/tests/data/test248 b/tests/data/test248 index b497dd7af282..f7d15cd630a5 100644 --- a/tests/data/test248 +++ b/tests/data/test248 @@ -44,15 +44,15 @@ that FTP works so does it? - -USER anonymous -PASS ftp@example.com -PWD -MDTM %TESTNUMBER -EPSV -TYPE I -STOR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +MDTM %TESTNUMBER +EPSV +TYPE I +STOR %TESTNUMBER +QUIT diff --git a/tests/data/test249 b/tests/data/test249 index 82b0a1406c8e..30eb4dbcce01 100644 --- a/tests/data/test249 +++ b/tests/data/test249 @@ -40,13 +40,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -z "dec 12 12:00:00 1999 GMT" # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -If-Modified-Since: Sun, 12 Dec 1999 12:00:00 GMT - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +If-Modified-Since: Sun, 12 Dec 1999 12:00:00 GMT + diff --git a/tests/data/test25 b/tests/data/test25 index b00ef84ece69..3cfcb14190d5 100644 --- a/tests/data/test25 +++ b/tests/data/test25 @@ -73,37 +73,37 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER -L --max-redirs 5 # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /want/data/reply/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /want/data/reply/data/reply/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /want/data/reply/data/reply/data/reply/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /want/data/reply/data/reply/data/reply/data/reply/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /want/data/reply/data/reply/data/reply/data/reply/data/reply/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /want/data/reply/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /want/data/reply/data/reply/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /want/data/reply/data/reply/data/reply/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /want/data/reply/data/reply/data/reply/data/reply/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /want/data/reply/data/reply/data/reply/data/reply/data/reply/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test250 b/tests/data/test250 index 4f01ea79a38a..550aca257a2e 100644 --- a/tests/data/test250 +++ b/tests/data/test250 @@ -46,14 +46,14 @@ ftp://%HOSTIP:%FTPPORT/ # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test2500 b/tests/data/test2500 index 8bcb5e0c62f9..f92cabfd32b6 100644 --- a/tests/data/test2500 +++ b/tests/data/test2500 @@ -10,7 +10,7 @@ HTTP/3 # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT @@ -50,15 +50,15 @@ HTTP/3 GET: ^X-Forwarded-Proto:.* ^Via:.* - + GET https://localhost:%HTTP3PORT/%TESTNUMBER HTTP/1.1 Host: localhost:%HTTP3PORT User-Agent: curl/%VERSION Accept: */* - -HTTP/3 200 + +HTTP/3 200%SP date: Tue, 09 Nov 2010 14:49:00 GMT last-modified: Tue, 13 Jun 2000 12:10:00 GMT etag: "21025-dc7-39462498" diff --git a/tests/data/test2501 b/tests/data/test2501 index d05395754d55..99167ec48e86 100644 --- a/tests/data/test2501 +++ b/tests/data/test2501 @@ -11,13 +11,13 @@ HTTPS # # Server-side - -HTTP/1.1 201 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close -Content-Length: 0 -Funny-head: yesyes - + +HTTP/1.1 201 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close +Content-Length: 0 +Funny-head: yesyes + @@ -46,23 +46,23 @@ HTTP/3 POST # # Verify data after the test has been "shot" - -HTTP/3 201 -date: Tue, 09 Nov 2010 14:49:00 GMT -content-length: 0 -funny-head: yesyes -via: 1.1 nghttpx - + +HTTP/3 201%SP +date: Tue, 09 Nov 2010 14:49:00 GMT +content-length: 0 +funny-head: yesyes +via: 1.1 nghttpx + - -POST https://%HOSTIP:%HTTP3PORT/2501 HTTP/1.1 -Host: %HOSTIP:%HTTP3PORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 3 -Content-Type: application/x-www-form-urlencoded -Via: 3 nghttpx - + +POST https://%HOSTIP:%HTTP3PORT/2501 HTTP/1.1 +Host: %HOSTIP:%HTTP3PORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 3 +Content-Type: application/x-www-form-urlencoded +Via: 3 nghttpx + moo diff --git a/tests/data/test2502 b/tests/data/test2502 index 8625ee7b74b2..ab460c29d534 100644 --- a/tests/data/test2502 +++ b/tests/data/test2502 @@ -10,36 +10,36 @@ verbose logs # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: server.example.com -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: server.example.com +Content-Length: 47 + file contents should appear once for each file - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: server.example.com -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: server.example.com +Content-Length: 47 + file contents should appear once for each file - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: server.example.com -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: server.example.com +Content-Length: 47 + file contents should appear once for each file - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: server.example.com -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: server.example.com +Content-Length: 47 + file contents should appear once for each file @@ -66,7 +66,7 @@ HTTP GET multiple over HTTP/3 # Verify data after the test has been "shot" - + GET https://localhost:%HTTP3PORT/path/%TESTNUMBER0001 HTTP/1.1 Host: %HOSTIP:%HTTPPORT Accept: */* diff --git a/tests/data/test2503 b/tests/data/test2503 index f95486ce0f97..722d0ceb7adf 100644 --- a/tests/data/test2503 +++ b/tests/data/test2503 @@ -12,7 +12,7 @@ HTTPS # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Content-Length: 6 @@ -49,8 +49,8 @@ HTTP/3 header-api # # Verify data after the test has been "shot" - -HTTP/3 200 + +HTTP/3 200%SP date: Tue, 09 Nov 2010 14:49:00 GMT content-length: 6 content-type: text/html diff --git a/tests/data/test251 b/tests/data/test251 index 9ed8c9488009..a743b2824fc3 100644 --- a/tests/data/test251 +++ b/tests/data/test251 @@ -46,14 +46,14 @@ ftp://%HOSTIP:%FTPPORT/ -P %CLIENTIP ^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3} ^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\| - -USER anonymous -PASS ftp@example.com -PWD -PORT 127,0,0,1,243,212 -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +PORT 127,0,0,1,243,212 +TYPE A +LIST +QUIT diff --git a/tests/data/test252 b/tests/data/test252 index 1480ee1ec1dc..77fb9246bb1e 100644 --- a/tests/data/test252 +++ b/tests/data/test252 @@ -45,14 +45,14 @@ FTP IPv6 dir list PASV # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test253 b/tests/data/test253 index 01ec416ac62e..cde0b2f8d1eb 100644 --- a/tests/data/test253 +++ b/tests/data/test253 @@ -46,16 +46,16 @@ FTP IPv6 dir list with EPRT # Verify data after the test has been "shot" -s/^(EPRT \|2\|::1\|)(.*)/$1/ +s/^(EPRT \|2\|::1\|)(\S*)/$1/ - -USER anonymous -PASS ftp@example.com -PWD + +USER anonymous +PASS ftp@example.com +PWD EPRT |2|::1| -TYPE A -LIST -QUIT +TYPE A +LIST +QUIT diff --git a/tests/data/test254 b/tests/data/test254 index 90b58a0b3067..632548424568 100644 --- a/tests/data/test254 +++ b/tests/data/test254 @@ -46,14 +46,14 @@ FTP IPv6 dir list PASV and --disable-epsv # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test255 b/tests/data/test255 index 1a1526a10caf..ef7b08e0608a 100644 --- a/tests/data/test255 +++ b/tests/data/test255 @@ -47,16 +47,16 @@ FTP IPv6 dir list with EPRT and --disable-eprt # Verify data after the test has been "shot" -s/^(EPRT \|2\|::1\|)(.*)/$1/ +s/^(EPRT \|2\|::1\|)(\S*)/$1/ - -USER anonymous -PASS ftp@example.com -PWD + +USER anonymous +PASS ftp@example.com +PWD EPRT |2|::1| -TYPE A -LIST -QUIT +TYPE A +LIST +QUIT diff --git a/tests/data/test256 b/tests/data/test256 index aa60459548e1..ca76e738612e 100644 --- a/tests/data/test256 +++ b/tests/data/test256 @@ -45,15 +45,15 @@ proxy 33 - -GET http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Proxy-Authorization: Basic %b64[daniel:stenberg]b64% -Range: bytes=78- -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Proxy-Authorization: Basic %b64[daniel:stenberg]b64% +Range: bytes=78- +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + # the download target file must remain untouched diff --git a/tests/data/test257 b/tests/data/test257 index 4a245b0120fe..4c3a24620043 100644 --- a/tests/data/test257 +++ b/tests/data/test257 @@ -85,27 +85,27 @@ machine anotherone.com login user2 password passwd2 # Verify data after the test has been "shot" - -GET http://supersite.com/want/%TESTNUMBER HTTP/1.1 -Host: supersite.com -Authorization: Basic %b64[user1:passwd1]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://anotherone.com/%TESTNUMBER0002 HTTP/1.1 -Host: anotherone.com -Authorization: Basic %b64[user2:passwd2]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://athird.com/%TESTNUMBER0003 HTTP/1.1 -Host: athird.com -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://supersite.com/want/%TESTNUMBER HTTP/1.1 +Host: supersite.com +Authorization: Basic %b64[user1:passwd1]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://anotherone.com/%TESTNUMBER0002 HTTP/1.1 +Host: anotherone.com +Authorization: Basic %b64[user2:passwd2]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://athird.com/%TESTNUMBER0003 HTTP/1.1 +Host: athird.com +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test258 b/tests/data/test258 index 23acb0200655..d361a3ade4c3 100644 --- a/tests/data/test258 +++ b/tests/data/test258 @@ -24,12 +24,12 @@ Proxy-Connection: close Content-Length: 0 - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok @@ -40,11 +40,11 @@ Proxy-Authenticate: Digest realm="many secrets", nonce="911" Proxy-Connection: close Content-Length: 0 -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - +HTTP/1.1 200 A OK%CR +Server: Microsoft-IIS/6.0%CR +Content-Type: text/html; charset=iso-8859-1%CR +Content-Length: 3%CR +%CR ok @@ -82,57 +82,57 @@ bar ^(Content-Type: multipart/form-data;|------).* -POST http://remotehost:54321/we/want/%TESTNUMBER HTTP/1.1 -Host: remotehost:54321 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 433 -Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce - -------------------------------7c633d5c27ce -Content-Disposition: form-data; name="name" - -daniel -------------------------------7c633d5c27ce -Content-Disposition: form-data; name="tool" - -curl -------------------------------7c633d5c27ce -Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt" -Content-Type: text/plain - +POST http://remotehost:54321/we/want/%TESTNUMBER HTTP/1.1%CR +Host: remotehost:54321%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Proxy-Connection: Keep-Alive%CR +Content-Length: 433%CR +Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce%CR +%CR +------------------------------7c633d5c27ce%CR +Content-Disposition: form-data; name="name"%CR +%CR +daniel%CR +------------------------------7c633d5c27ce%CR +Content-Disposition: form-data; name="tool"%CR +%CR +curl%CR +------------------------------7c633d5c27ce%CR +Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt"%CR +Content-Type: text/plain%CR +%CR foo- This is a moo- bar - -------------------------------7c633d5c27ce-- -POST http://remotehost:54321/we/want/%TESTNUMBER HTTP/1.1 -Host: remotehost:54321 -Proxy-Authorization: Digest username="uuuser", realm="many secrets", nonce="911", uri="/we/want/%TESTNUMBER", response="2501654ca391f0b5c8c12a1da77e34cd" -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 433 -Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce - -------------------------------7c633d5c27ce -Content-Disposition: form-data; name="name" - -daniel -------------------------------7c633d5c27ce -Content-Disposition: form-data; name="tool" - -curl -------------------------------7c633d5c27ce -Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt" -Content-Type: text/plain - +%CR +------------------------------7c633d5c27ce--%CR +POST http://remotehost:54321/we/want/%TESTNUMBER HTTP/1.1%CR +Host: remotehost:54321%CR +Proxy-Authorization: Digest username="uuuser", realm="many secrets", nonce="911", uri="/we/want/%TESTNUMBER", response="2501654ca391f0b5c8c12a1da77e34cd"%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Proxy-Connection: Keep-Alive%CR +Content-Length: 433%CR +Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce%CR +%CR +------------------------------7c633d5c27ce%CR +Content-Disposition: form-data; name="name"%CR +%CR +daniel%CR +------------------------------7c633d5c27ce%CR +Content-Disposition: form-data; name="tool"%CR +%CR +curl%CR +------------------------------7c633d5c27ce%CR +Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt"%CR +Content-Type: text/plain%CR +%CR foo- This is a moo- bar - -------------------------------7c633d5c27ce-- +%CR +------------------------------7c633d5c27ce--%CR diff --git a/tests/data/test259 b/tests/data/test259 index 2b65e5076b18..adf7c2f5f3f4 100644 --- a/tests/data/test259 +++ b/tests/data/test259 @@ -21,12 +21,12 @@ Proxy-Authenticate: Digest realm="many secrets", nonce="911" Content-Length: 0 - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok @@ -36,11 +36,11 @@ Server: test-server/fake Proxy-Authenticate: Digest realm="many secrets", nonce="911" Content-Length: 0 -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - +HTTP/1.1 200 A OK%CR +Server: Microsoft-IIS/6.0%CR +Content-Type: text/html; charset=iso-8859-1%CR +Content-Length: 3%CR +%CR ok @@ -78,59 +78,59 @@ bar ^(Content-Type: multipart/form-data;|------).* -POST http://remotehost:54321/we/want/%TESTNUMBER HTTP/1.1 -Host: remotehost:54321 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Expect: 100-continue -Content-Length: 433 -Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce - -------------------------------7c633d5c27ce -Content-Disposition: form-data; name="name" - -daniel -------------------------------7c633d5c27ce -Content-Disposition: form-data; name="tool" - -curl -------------------------------7c633d5c27ce -Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt" -Content-Type: text/plain - +POST http://remotehost:54321/we/want/%TESTNUMBER HTTP/1.1%CR +Host: remotehost:54321%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Proxy-Connection: Keep-Alive%CR +Expect: 100-continue%CR +Content-Length: 433%CR +Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce%CR +%CR +------------------------------7c633d5c27ce%CR +Content-Disposition: form-data; name="name"%CR +%CR +daniel%CR +------------------------------7c633d5c27ce%CR +Content-Disposition: form-data; name="tool"%CR +%CR +curl%CR +------------------------------7c633d5c27ce%CR +Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt"%CR +Content-Type: text/plain%CR +%CR foo- This is a moo- bar - -------------------------------7c633d5c27ce-- -POST http://remotehost:54321/we/want/%TESTNUMBER HTTP/1.1 -Host: remotehost:54321 -Proxy-Authorization: Digest username="uuuser", realm="many secrets", nonce="911", uri="/we/want/%TESTNUMBER", response="b479994d13e60f3aa192a67c5892ddc5" -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Expect: 100-continue -Content-Length: 433 -Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce - -------------------------------7c633d5c27ce -Content-Disposition: form-data; name="name" - -daniel -------------------------------7c633d5c27ce -Content-Disposition: form-data; name="tool" - -curl -------------------------------7c633d5c27ce -Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt" -Content-Type: text/plain - +%CR +------------------------------7c633d5c27ce--%CR +POST http://remotehost:54321/we/want/%TESTNUMBER HTTP/1.1%CR +Host: remotehost:54321%CR +Proxy-Authorization: Digest username="uuuser", realm="many secrets", nonce="911", uri="/we/want/%TESTNUMBER", response="b479994d13e60f3aa192a67c5892ddc5"%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Proxy-Connection: Keep-Alive%CR +Expect: 100-continue%CR +Content-Length: 433%CR +Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce%CR +%CR +------------------------------7c633d5c27ce%CR +Content-Disposition: form-data; name="name"%CR +%CR +daniel%CR +------------------------------7c633d5c27ce%CR +Content-Disposition: form-data; name="tool"%CR +%CR +curl%CR +------------------------------7c633d5c27ce%CR +Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt"%CR +Content-Type: text/plain%CR +%CR foo- This is a moo- bar - -------------------------------7c633d5c27ce-- +%CR +------------------------------7c633d5c27ce--%CR diff --git a/tests/data/test26 b/tests/data/test26 index 9e334bc5b50a..80a63378b76a 100644 --- a/tests/data/test26 +++ b/tests/data/test26 @@ -31,12 +31,12 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER -o - -o - # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test260 b/tests/data/test260 index b72d6cd1663d..46f6e0f5178b 100644 --- a/tests/data/test260 +++ b/tests/data/test260 @@ -42,12 +42,12 @@ HTTP GET URL without slash but with question mark # # Verify data after the test has been "shot" - -GET /?%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /?%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test261 b/tests/data/test261 index d5f940372e8d..59cc16fec250 100644 --- a/tests/data/test261 +++ b/tests/data/test261 @@ -34,15 +34,15 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test262 b/tests/data/test262 index fae51caeae9d..442d04e387f8 100644 --- a/tests/data/test262 +++ b/tests/data/test262 @@ -41,12 +41,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 8 diff --git a/tests/data/test263 b/tests/data/test263 index 648702529713..396d811f9497 100644 --- a/tests/data/test263 +++ b/tests/data/test263 @@ -41,13 +41,13 @@ HTTP-IPv6 GET with proxy specified using IPv6-numerical address # # Verify data after the test has been "shot" - -GET http://veryveryremotesite.com/%TESTNUMBER HTTP/1.1 -Host: veryveryremotesite.com -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://veryveryremotesite.com/%TESTNUMBER HTTP/1.1 +Host: veryveryremotesite.com +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test264 b/tests/data/test264 index 8eae539bdc03..2bc54db5aa17 100644 --- a/tests/data/test264 +++ b/tests/data/test264 @@ -9,12 +9,12 @@ HTTP proxy Basic auth # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Type: text/html -Content-Length: 26 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Type: text/html +Content-Length: 26 + the content would go here @@ -37,14 +37,14 @@ proxy # Verify data after the test has been "shot" - -GET http://we.want.that.site.com/%TESTNUMBER HTTP/1.1 -Host: we.want.that.site.com -Proxy-Authorization: Basic %b64[fake:user]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://we.want.that.site.com/%TESTNUMBER HTTP/1.1 +Host: we.want.that.site.com +Proxy-Authorization: Basic %b64[fake:user]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test265 b/tests/data/test265 index fd0a09717f92..3068c05f87cf 100644 --- a/tests/data/test265 +++ b/tests/data/test265 @@ -14,23 +14,23 @@ NTLM # this is returned first since we get no proxy-auth - -HTTP/1.0 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Connection: Keep-Alive -Content-Length: 1033 - + +HTTP/1.0 407 Authorization Required to proxy me my dear +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Connection: Keep-Alive +Content-Length: 1033 + And you should ignore this data. -QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ +%repeat[999 x Q]% # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine in proxy land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 - + +HTTP/1.1 200 Things are fine in proxy land +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 + # this is returned when we get a GET! @@ -47,22 +47,22 @@ daniel # then this is returned when we get proxy-auth -HTTP/1.1 200 OK swsbounce +HTTP/1.1 200 OK swsbounce%CR Server: no - +%CR Nice proxy auth sir! -HTTP/1.0 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Connection: Keep-Alive -Content-Length: 1033 - -HTTP/1.1 200 Things are fine in proxy land -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 - +HTTP/1.0 407 Authorization Required to proxy me my dear%CR +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==%CR +Connection: Keep-Alive%CR +Content-Length: 1033%CR +%CR +HTTP/1.1 200 Things are fine in proxy land%CR +Server: Microsoft-IIS/5.0%CR +Content-Type: text/html; charset=iso-8859-1%CR +%CR HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Content-Length: 7 @@ -95,26 +95,26 @@ http://test.remote.example.com.%TESTNUMBER:%HTTPPORT/path/%TESTNUMBER0002 --prox # Verify data after the test has been "shot" - -CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT -Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - -CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT -Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - -POST /path/%TESTNUMBER0002 HTTP/1.1 -Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 6 -Content-Type: application/x-www-form-urlencoded - + +CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT +Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT +Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + +POST /path/%TESTNUMBER0002 HTTP/1.1 +Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 6 +Content-Type: application/x-www-form-urlencoded + postit diff --git a/tests/data/test266 b/tests/data/test266 index 8604c609b89e..5190abe00470 100644 --- a/tests/data/test266 +++ b/tests/data/test266 @@ -11,32 +11,32 @@ DELAY # Server-side -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked -Trailer: chunky-trailer -Connection: mooo - -40 -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -30 -bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb -21;heresatest=moooo +HTTP/1.1 200 funky chunky!%CR +Server: fakeit/0.9 fakeitbad/1.0%CR +Transfer-Encoding: chunked%CR +Trailer: chunky-trailer%CR +Connection: mooo%CR +%CR +40%CR +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa%CR +30%CR +bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb%CR +21;heresatest=moooo%CR cccccccccccccccccccccccccccccccc - -0 -chunky-trailer: header data - +%CR +0%CR +chunky-trailer: header data%CR +%CR -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked -Trailer: chunky-trailer -Connection: mooo - +HTTP/1.1 200 funky chunky!%CR +Server: fakeit/0.9 fakeitbad/1.0%CR +Transfer-Encoding: chunked%CR +Trailer: chunky-trailer%CR +Connection: mooo%CR +%CR aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcccccccccccccccccccccccccccccccc -chunky-trailer: header data +chunky-trailer: header data%CR writedelay: 10 @@ -60,21 +60,21 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -D %LOGDIR/heads%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked -Trailer: chunky-trailer -Connection: mooo - -chunky-trailer: header data + +HTTP/1.1 200 funky chunky! +Server: fakeit/0.9 fakeitbad/1.0 +Transfer-Encoding: chunked +Trailer: chunky-trailer +Connection: mooo + +chunky-trailer: header data diff --git a/tests/data/test267 b/tests/data/test267 index f24c7f6a9178..393c186e05a5 100644 --- a/tests/data/test267 +++ b/tests/data/test267 @@ -15,39 +15,39 @@ NTLM This is supposed to be returned when the server gets a first Authorization: NTLM line passed-in from the client --> - -HTTP/1.1 401 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + This is not the real page either! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine in server land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - -HTTP/1.1 200 Things are fine in server land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + +HTTP/1.1 200 Things are fine in server land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! @@ -73,27 +73,27 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --ntlm -d "data" -H "H # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* -Header1: yes -Header2: no -Content-Length: 0 -Content-Type: application/x-www-form-urlencoded - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Accept: */* -Header1: yes -Header2: no -Content-Length: 4 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* +Header1: yes +Header2: no +Content-Length: 0 +Content-Type: application/x-www-form-urlencoded + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Accept: */* +Header1: yes +Header2: no +Content-Length: 4 +Content-Type: application/x-www-form-urlencoded + data diff --git a/tests/data/test268 b/tests/data/test268 index 0d205fe73462..cd3c75a39e56 100644 --- a/tests/data/test268 +++ b/tests/data/test268 @@ -9,7 +9,7 @@ variables # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test269 b/tests/data/test269 index e9e7843d44b1..1c68b339b2dd 100644 --- a/tests/data/test269 +++ b/tests/data/test269 @@ -40,12 +40,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --ignore-content-length # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test27 b/tests/data/test27 index 75c73acc2bfd..4bf293787cff 100644 --- a/tests/data/test27 +++ b/tests/data/test27 @@ -36,24 +36,24 @@ cookies # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Cookie: thewinneris=nowayyouwin - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Cookie: thewinneris=nowayyouwin - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Cookie: thewinneris=nowayyouwin + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Cookie: thewinneris=nowayyouwin + diff --git a/tests/data/test270 b/tests/data/test270 index efa183f1559b..6f1db343a769 100644 --- a/tests/data/test270 +++ b/tests/data/test270 @@ -36,15 +36,15 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER --ftp-skip-pasv-ip --disable-epsv # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -PASV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +PASV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test272 b/tests/data/test272 index 2857c3eac3a1..36f472f173ff 100644 --- a/tests/data/test272 +++ b/tests/data/test272 @@ -29,12 +29,12 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -z "2004 jan 1 12:12:12 UTC" # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -MDTM %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +MDTM %TESTNUMBER +QUIT diff --git a/tests/data/test273 b/tests/data/test273 index eb7ab1cc6a27..2573020e047d 100644 --- a/tests/data/test273 +++ b/tests/data/test273 @@ -8,39 +8,39 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -Content-Type: text/html; charset=iso-8859-1 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +Content-Type: text/html; charset=iso-8859-1 + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -Content-Type: text/html; charset=iso-8859-1 - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +Content-Type: text/html; charset=iso-8859-1 + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! @@ -66,18 +66,18 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --digest # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER", response="576ae57b1db0039f8c0de43ef58e49e3" -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER", response="576ae57b1db0039f8c0de43ef58e49e3" +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test274 b/tests/data/test274 index bb7200614840..8ac515252c9a 100644 --- a/tests/data/test274 +++ b/tests/data/test274 @@ -34,12 +34,12 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER -L --max-redirs 0 # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test275 b/tests/data/test275 index d3a68a4211cf..deec548ae855 100644 --- a/tests/data/test275 +++ b/tests/data/test275 @@ -14,10 +14,10 @@ proxytunnel # # Server-side - -HTTP/1.1 200 OK -Connected-fine: sure - + +HTTP/1.1 200 OK +Connected-fine: sure + @@ -30,9 +30,9 @@ Content-Length: 9 contents -HTTP/1.1 200 OK -Connected-fine: sure - +HTTP/1.1 200 OK%CR +Connected-fine: sure%CR +%CR HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -64,27 +64,27 @@ proxy # # Verify data after the test has been "shot" - -CONNECT remotesite.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: remotesite.com.%TESTNUMBER:%HTTPPORT -Proxy-Authorization: Basic %b64[youare:yourself]b64% -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT remotesite.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: remotesite.com.%TESTNUMBER:%HTTPPORT +Proxy-Authorization: Basic %b64[youare:yourself]b64% +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + - -GET /we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: remotesite.com.%TESTNUMBER:%HTTPPORT -Authorization: Basic %b64[iam:myself]b64% -User-Agent: curl/%VERSION -Accept: */* - -GET /we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: remotesite.com.%TESTNUMBER:%HTTPPORT -Authorization: Basic %b64[iam:myself]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: remotesite.com.%TESTNUMBER:%HTTPPORT +Authorization: Basic %b64[iam:myself]b64% +User-Agent: curl/%VERSION +Accept: */* + +GET /we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: remotesite.com.%TESTNUMBER:%HTTPPORT +Authorization: Basic %b64[iam:myself]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test276 b/tests/data/test276 index 6814f9ed7b25..18daa52711ee 100644 --- a/tests/data/test276 +++ b/tests/data/test276 @@ -59,17 +59,17 @@ HTTP Location: following with multiple question marks in URLs # Verify data after the test has been "shot" - -GET /want?uri=http://anything/%TESTNUMBER?secondq/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /data/%TESTNUMBER0002.txt?coolsite=http://anotherurl/?a_second/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want?uri=http://anything/%TESTNUMBER?secondq/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /data/%TESTNUMBER0002.txt?coolsite=http://anotherurl/?a_second/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test277 b/tests/data/test277 index 69a17fea5ef1..0f8cdaa3e05b 100644 --- a/tests/data/test277 +++ b/tests/data/test277 @@ -40,19 +40,19 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER -F name=daniel -H "Content-Type: text/ s/^--------------------------[A-Za-z0-9]*/--------------------------/ s/boundary=------------------------[A-Za-z0-9]*/boundary=------------------------/ - -POST /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 158 -Content-Type: text/info; boundary=------------------------ - --------------------------- -Content-Disposition: attachment; name="name" - -daniel ----------------------------- + +POST /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 158 +Content-Type: text/info; boundary=------------------------ + +-------------------------- +Content-Disposition: attachment; name="name" + +daniel +---------------------------- diff --git a/tests/data/test278 b/tests/data/test278 index eebd2e4623fb..46515b3c363d 100644 --- a/tests/data/test278 +++ b/tests/data/test278 @@ -9,13 +9,13 @@ HTTP proxy Basic auth # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Type: text/html -Content-Length: 27 - -the content would go here + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Type: text/html +Content-Length: 27 + +the content would go here @@ -37,14 +37,14 @@ proxy # Verify data after the test has been "shot" - -GET http://we.want.that.site.com/%TESTNUMBER HTTP/1.1 -Host: we.want.that.site.com -Proxy-Authorization: Basic %b64[fake:]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://we.want.that.site.com/%TESTNUMBER HTTP/1.1 +Host: we.want.that.site.com +Proxy-Authorization: Basic %b64[fake:]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test279 b/tests/data/test279 index 627be88f9169..e0383b2aaef5 100644 --- a/tests/data/test279 +++ b/tests/data/test279 @@ -10,13 +10,13 @@ HTTP proxy Basic auth # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Type: text/html -Content-Length: 27 - -the content would go here + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Type: text/html +Content-Length: 27 + +the content would go here @@ -38,14 +38,14 @@ proxy # Verify data after the test has been "shot" - -GET http://we.want.that.site.com/%TESTNUMBER HTTP/1.1 -Host: we.want.that.site.com -Proxy-Authorization: Basic %b64[fake:]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://we.want.that.site.com/%TESTNUMBER HTTP/1.1 +Host: we.want.that.site.com +Proxy-Authorization: Basic %b64[fake:]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test28 b/tests/data/test28 index 667d8f97f61a..3d6b7ca13636 100644 --- a/tests/data/test28 +++ b/tests/data/test28 @@ -58,17 +58,17 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER -L # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /online/1,1795,Welcome,00.html/%TESTNUMBER0002.txt?logout=TRUE HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /online/1,1795,Welcome,00.html/%TESTNUMBER0002.txt?logout=TRUE HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test280 b/tests/data/test280 index 1aee4b517f11..9959188dad8e 100644 --- a/tests/data/test280 +++ b/tests/data/test280 @@ -46,16 +46,16 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER/ --ftp-alternative-to-user "USER replacement" # # Verify data after the test has been "shot" - -USER anonymous -USER replacement -PASS ftp@example.com -PWD -CWD %TESTNUMBER -EPSV -TYPE A -LIST -QUIT + +USER anonymous +USER replacement +PASS ftp@example.com +PWD +CWD %TESTNUMBER +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test281 b/tests/data/test281 index 23af513a02a7..b02486e6432f 100644 --- a/tests/data/test281 +++ b/tests/data/test281 @@ -43,13 +43,13 @@ Weird 22 - -PUT /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 38 - + +PUT /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 38 + Weird file to diff --git a/tests/data/test282 b/tests/data/test282 index 68d3b428cbcd..96bd16eab4de 100644 --- a/tests/data/test282 +++ b/tests/data/test282 @@ -32,12 +32,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test287 b/tests/data/test287 index 85d557ec96d9..92407c994fa8 100644 --- a/tests/data/test287 +++ b/tests/data/test287 @@ -11,9 +11,9 @@ proxytunnel # Server-side - -HTTP/1.1 405 Method Not Allowed swsclose - + +HTTP/1.1 405 Method Not Allowed swsclose + And you should ignore this data. @@ -37,20 +37,20 @@ proxy # Verify data after the test has been "shot" - -CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT -Proxy-Connection: Keep-Alive -User-Agent: looser/2007 - + +CONNECT test.remote.example.com.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: test.remote.example.com.%TESTNUMBER:%HTTPPORT +Proxy-Connection: Keep-Alive +User-Agent: looser/2007 + # CURLE_RECV_ERROR 56 - -HTTP/1.1 405 Method Not Allowed swsclose - + +HTTP/1.1 405 Method Not Allowed swsclose + diff --git a/tests/data/test29 b/tests/data/test29 index 689ac43ee1c4..b20e8fe6290d 100644 --- a/tests/data/test29 +++ b/tests/data/test29 @@ -9,11 +9,11 @@ FAILURE # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + _data_result_data_ @@ -39,12 +39,12 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER -m 2 # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 28 diff --git a/tests/data/test290 b/tests/data/test290 index e7048a5384d5..99f7299c8b9f 100644 --- a/tests/data/test290 +++ b/tests/data/test290 @@ -30,14 +30,14 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER --max-filesize 30 63 - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +QUIT diff --git a/tests/data/test291 b/tests/data/test291 index 05cc2b444a06..33ddb32ba3f4 100644 --- a/tests/data/test291 +++ b/tests/data/test291 @@ -33,15 +33,15 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER --max-filesize 100 # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test292 b/tests/data/test292 index 0ae74a9bc045..1bbe98d836f7 100644 --- a/tests/data/test292 +++ b/tests/data/test292 @@ -43,12 +43,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --max-filesize 1000 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test293 b/tests/data/test293 index 04f98999103e..129fb5b32f70 100644 --- a/tests/data/test293 +++ b/tests/data/test293 @@ -47,12 +47,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --max-filesize 2 63 - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test294 b/tests/data/test294 index 67108aedb91f..55d08f053f33 100644 --- a/tests/data/test294 +++ b/tests/data/test294 @@ -47,16 +47,16 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER/ --ftp-account "data for acct" # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -ACCT data for acct -PWD -CWD %TESTNUMBER -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +ACCT data for acct +PWD +CWD %TESTNUMBER +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test295 b/tests/data/test295 index ebb1a3697604..ff5f89169d66 100644 --- a/tests/data/test295 +++ b/tests/data/test295 @@ -37,9 +37,9 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER/ 67 - -USER anonymous -PASS ftp@example.com + +USER anonymous +PASS ftp@example.com diff --git a/tests/data/test296 b/tests/data/test296 index c88ec99bf7cf..8f38eab457ef 100644 --- a/tests/data/test296 +++ b/tests/data/test296 @@ -31,18 +31,18 @@ FTP CWD with --ftp-method multicwd # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD first -CWD second -CWD third -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD first +CWD second +CWD third +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test297 b/tests/data/test297 index 99c10d3e135b..e361425398a4 100644 --- a/tests/data/test297 +++ b/tests/data/test297 @@ -31,16 +31,16 @@ FTP CWD with --ftp-method singlecwd # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD first/second/third -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD first/second/third +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test298 b/tests/data/test298 index 5188c85477d1..5af79e7ff952 100644 --- a/tests/data/test298 +++ b/tests/data/test298 @@ -31,15 +31,15 @@ FTP CWD with --ftp-method nocwd # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE first/second/third/%TESTNUMBER -RETR first/second/third/%TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE first/second/third/%TESTNUMBER +RETR first/second/third/%TESTNUMBER +QUIT diff --git a/tests/data/test299 b/tests/data/test299 index 932e065b8b51..a5ecd4f5f1b1 100644 --- a/tests/data/test299 +++ b/tests/data/test299 @@ -39,14 +39,14 @@ FTP over HTTP proxy with user:pass not in url # Verify data after the test has been "shot" - -GET ftp://michal:aybabtu@host.com/we/want/%TESTNUMBER HTTP/1.1 -Host: host.com:21 -Authorization: Basic %b64[michal:aybabtu]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET ftp://michal:aybabtu@host.com/we/want/%TESTNUMBER HTTP/1.1 +Host: host.com:21 +Authorization: Basic %b64[michal:aybabtu]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test3 b/tests/data/test3 index a7cb4f8839ed..3f4b4ee9e2c0 100644 --- a/tests/data/test3 +++ b/tests/data/test3 @@ -9,20 +9,20 @@ HTTP Basic auth # # Server-side - -HTTP/1.0 200 OK -Server: test-server/fake -Content-Type: text/html -Content-Length: 0 - + +HTTP/1.0 200 OK +Server: test-server/fake +Content-Type: text/html +Content-Length: 0 + this is data even though Content-Length is set to zero - -HTTP/1.0 200 OK -Server: test-server/fake -Content-Type: text/html -Content-Length: 0 - + +HTTP/1.0 200 OK +Server: test-server/fake +Content-Type: text/html +Content-Length: 0 + @@ -43,15 +43,15 @@ HTTP POST with auth and contents but with content-length set to 0 # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[fake:-user]b64% -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 37 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[fake:-user]b64% +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 37 +Content-Type: application/x-www-form-urlencoded + fooo=mooo&pooo=clue&doo=%20%20%20++++ diff --git a/tests/data/test30 b/tests/data/test30 index 6d6a7f645274..c76b3bafbbaa 100644 --- a/tests/data/test30 +++ b/tests/data/test30 @@ -27,12 +27,12 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 52 diff --git a/tests/data/test300 b/tests/data/test300 index 3dbf0f01d9c9..7a56f9cc7e06 100644 --- a/tests/data/test300 +++ b/tests/data/test300 @@ -40,12 +40,12 @@ simple HTTPS GET # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test3000 b/tests/data/test3000 index e46012d2788e..558c216b5ba4 100644 --- a/tests/data/test3000 +++ b/tests/data/test3000 @@ -42,12 +42,12 @@ HTTPS localhost, first subaltname matches, CN does not match # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: localhost:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: localhost:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test3001 b/tests/data/test3001 index ce53eb9aa0a4..11c0efd6d86a 100644 --- a/tests/data/test3001 +++ b/tests/data/test3001 @@ -42,12 +42,12 @@ HTTPS localhost, last subject alt name matches, CN does not match # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: localhost:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: localhost:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test3002 b/tests/data/test3002 index 206bb7d4d9f4..95d454dee1b0 100644 --- a/tests/data/test3002 +++ b/tests/data/test3002 @@ -19,11 +19,11 @@ smtp SMTP multiple and invalid (first) --mail-rcpt and --mail-rcpt-allowfails - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt-allowfails --mail-rcpt invalid.one --mail-rcpt recipient.two@example.com --mail-rcpt recipient.three@example.com --mail-rcpt recipient.four@example.com --mail-rcpt recipient.five@example.com --mail-from sender@example.com -T - @@ -33,23 +33,23 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt-allowfails --mail-rcpt invalid. # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -RCPT TO: -RCPT TO: -RCPT TO: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +RCPT TO: +RCPT TO: +RCPT TO: +RCPT TO: +DATA +QUIT - -From: different -To: another - -body -. + +From: different +To: another + +body +. diff --git a/tests/data/test3003 b/tests/data/test3003 index dea4bd651726..0a90820ad73d 100644 --- a/tests/data/test3003 +++ b/tests/data/test3003 @@ -19,11 +19,11 @@ smtp SMTP multiple and invalid (last) --mail-rcpt and --mail-rcpt-allowfails - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt-allowfails --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-rcpt recipient.three@example.com --mail-rcpt recipient.four@example.com --mail-rcpt invalid.five --mail-from sender@example.com -T - @@ -33,23 +33,23 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt-allowfails --mail-rcpt recipien # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -RCPT TO: -RCPT TO: -RCPT TO: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +RCPT TO: +RCPT TO: +RCPT TO: +RCPT TO: +DATA +QUIT - -From: different -To: another - -body -. + +From: different +To: another + +body +. diff --git a/tests/data/test3004 b/tests/data/test3004 index a995ddee542e..80261f67030d 100644 --- a/tests/data/test3004 +++ b/tests/data/test3004 @@ -19,11 +19,11 @@ smtp SMTP multiple and invalid (middle) --mail-rcpt and --mail-rcpt-allowfails - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt-allowfails --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-rcpt invalid.three --mail-rcpt recipient.four@example.com --mail-rcpt recipient.five@example.com --mail-from sender@example.com -T - @@ -33,23 +33,23 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt-allowfails --mail-rcpt recipien # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -RCPT TO: -RCPT TO: -RCPT TO: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +RCPT TO: +RCPT TO: +RCPT TO: +RCPT TO: +DATA +QUIT - -From: different -To: another - -body -. + +From: different +To: another + +body +. diff --git a/tests/data/test3005 b/tests/data/test3005 index 8fd333062281..ef417a9cd592 100644 --- a/tests/data/test3005 +++ b/tests/data/test3005 @@ -19,11 +19,11 @@ smtp SMTP multiple invalid (all but one) --mail-rcpt and --mail-rcpt-allowfails - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt-allowfails --mail-rcpt invalid.one --mail-rcpt recipient.two@example.com --mail-rcpt invalid.three --mail-rcpt invalid.four --mail-rcpt invalid.five --mail-from sender@example.com -T - @@ -33,23 +33,23 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt-allowfails --mail-rcpt invalid. # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -RCPT TO: -RCPT TO: -RCPT TO: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +RCPT TO: +RCPT TO: +RCPT TO: +RCPT TO: +DATA +QUIT - -From: different -To: another - -body -. + +From: different +To: another + +body +. diff --git a/tests/data/test3006 b/tests/data/test3006 index 5ebf0bdf1643..4cb13ba17d43 100644 --- a/tests/data/test3006 +++ b/tests/data/test3006 @@ -19,11 +19,11 @@ smtp SMTP with multiple invalid (all) --mail-rcpt and --mail-rcpt-allowfails - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt-allowfails --mail-rcpt invalid.one --mail-rcpt invalid.two --mail-rcpt invalid.three --mail-rcpt invalid.four --mail-rcpt invalid.five --mail-from sender@example.com -T - @@ -37,15 +37,15 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt-allowfails --mail-rcpt invalid. 55 - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -RCPT TO: -RCPT TO: -RCPT TO: -RCPT TO: -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +RCPT TO: +RCPT TO: +RCPT TO: +RCPT TO: +QUIT diff --git a/tests/data/test3007 b/tests/data/test3007 index 9a4aede6f85b..d6222408852d 100644 --- a/tests/data/test3007 +++ b/tests/data/test3007 @@ -19,11 +19,11 @@ smtp SMTP with invalid --mail-rcpt and --mail-rcpt-allowfails - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt-allowfails --mail-rcpt invalid.one --mail-from sender@example.com -T - @@ -37,11 +37,11 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt-allowfails --mail-rcpt invalid. 55 - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +QUIT diff --git a/tests/data/test3008 b/tests/data/test3008 index 51afb047e8c6..67bad12e8588 100644 --- a/tests/data/test3008 +++ b/tests/data/test3008 @@ -43,12 +43,12 @@ http://%HOSTIP:%HTTPPORT/this/is/the/%TESTNUMBER -O --output-dir %PWD/%LOGDIR # # Verify data after the test has been "shot" - -GET /this/is/the/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /this/is/the/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + -foo- diff --git a/tests/data/test3009 b/tests/data/test3009 index 213e8ae682bc..55497fcaec21 100644 --- a/tests/data/test3009 +++ b/tests/data/test3009 @@ -43,12 +43,12 @@ http://%HOSTIP:%HTTPPORT/this/is/the/%TESTNUMBER -O --output-dir %PWD/not-there # # Verify data after the test has been "shot" - -GET /this/is/the/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /this/is/the/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 23 diff --git a/tests/data/test301 b/tests/data/test301 index af394784ecd4..3db2f0e2fe0c 100644 --- a/tests/data/test301 +++ b/tests/data/test301 @@ -40,13 +40,13 @@ HTTPS GET with user and password # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPSPORT -Authorization: Basic %b64[fake:user]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPSPORT +Authorization: Basic %b64[fake:user]b64% +User-Agent: curl/%VERSION +Accept: */* + [insert full protocol verifiction dump here] diff --git a/tests/data/test3011 b/tests/data/test3011 index f5b2f1d8c651..afd7bf4c41c9 100644 --- a/tests/data/test3011 +++ b/tests/data/test3011 @@ -43,12 +43,12 @@ http://%HOSTIP:%HTTPPORT/this/is/the/%TESTNUMBER -O --output-dir %PWD/%LOGDIR/tm # # Verify data after the test has been "shot" - -GET /this/is/the/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /this/is/the/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + -foo- diff --git a/tests/data/test3012 b/tests/data/test3012 index a9c950587431..f987e393d554 100644 --- a/tests/data/test3012 +++ b/tests/data/test3012 @@ -47,12 +47,12 @@ http://%HOSTIP:%HTTPPORT/this/is/the/%TESTNUMBER -OJR --output-dir %PWD/%LOGDIR # # Verify data after the test has been "shot" - -GET /this/is/the/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /this/is/the/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + -foo- diff --git a/tests/data/test3013 b/tests/data/test3013 index 183667e6823c..1a4e29ae874f 100644 --- a/tests/data/test3013 +++ b/tests/data/test3013 @@ -46,17 +46,17 @@ http://%HOSTIP:%HTTPPORT/this/is/the/%TESTNUMBER -O --output-dir %PWD/%LOGDIR ht # # Verify data after the test has been "shot" - -GET /this/is/the/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /another/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /this/is/the/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /another/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + -foo- diff --git a/tests/data/test3014 b/tests/data/test3014 index eb5c705716b0..e1e6471a4a8d 100644 --- a/tests/data/test3014 +++ b/tests/data/test3014 @@ -45,12 +45,12 @@ Content-Type: text/plain testdata 4 - -GET /1439 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /1439 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test3015 b/tests/data/test3015 index 41e0640bc239..cf535a29a28c 100644 --- a/tests/data/test3015 +++ b/tests/data/test3015 @@ -12,30 +12,30 @@ chunked Transfer-Encoding # # Server-side - -HTTP/1.1 302 OK -Date: Sun, 13 Sep 2020 15:00 GMT -Content-Length: 8 -Connection: close -Content-Type: text/plain -Location: ./%TESTNUMBER0001 - + +HTTP/1.1 302 OK +Date: Sun, 13 Sep 2020 15:00 GMT +Content-Length: 8 +Connection: close +Content-Type: text/plain +Location: ./%TESTNUMBER0001 + monster -HTTP/1.1 200 OK -Date: Sun, 13 Sep 2020 15:00 GMT -Transfer-Encoding: chunked -Connection: close -Content-Type: text/plain; charset=us-ascii - -0007 -bigger -0008 +HTTP/1.1 200 OK%CR +Date: Sun, 13 Sep 2020 15:00 GMT%CR +Transfer-Encoding: chunked%CR +Connection: close%CR +Content-Type: text/plain; charset=us-ascii%CR +%CR +0007%CR +bigger %CR +0008%CR monster - -0 - +%CR +0%CR +%CR @@ -57,17 +57,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -w "%{num_headers}\n" -L -o%DEV_NULL # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test302 b/tests/data/test302 index 3f235b201bb2..dae1437da32c 100644 --- a/tests/data/test302 +++ b/tests/data/test302 @@ -12,9 +12,9 @@ FAILURE # Server-side - -HTTP/1.1 405 Method Not Allowed swsclose - + +HTTP/1.1 405 Method Not Allowed swsclose + And you should ignore this data. diff --git a/tests/data/test3023 b/tests/data/test3023 index b4210bf4820c..6afe91b67a47 100644 --- a/tests/data/test3023 +++ b/tests/data/test3023 @@ -46,12 +46,12 @@ CURL_SSL_BACKEND=schannel # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: localhost:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: localhost:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test3024 b/tests/data/test3024 index 7e4b5bb6f4d8..88a6e625629e 100644 --- a/tests/data/test3024 +++ b/tests/data/test3024 @@ -46,12 +46,12 @@ CURL_SSL_BACKEND=schannel # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: localhost:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: localhost:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test3027 b/tests/data/test3027 index 05a811f4e801..aaa3e547046c 100644 --- a/tests/data/test3027 +++ b/tests/data/test3027 @@ -40,16 +40,16 @@ data blobb # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -MDTM %TESTNUMBER -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +MDTM %TESTNUMBER +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test3028 b/tests/data/test3028 index bc69e862af08..6f4f45014a92 100644 --- a/tests/data/test3028 +++ b/tests/data/test3028 @@ -52,21 +52,21 @@ proxy s/^PROXY TCP4 %CLIENTIP %HOSTIP (\d*) %PROXYPORT/proxy-line/ - -CONNECT %HOSTIP:%HTTPPORT HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT %HOSTIP:%HTTPPORT HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + - -proxy-line -GET /page HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +proxy-line +GET /page HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test303 b/tests/data/test303 index f2aad9dfb74e..7be81b7dc9dd 100644 --- a/tests/data/test303 +++ b/tests/data/test303 @@ -10,11 +10,11 @@ FAILURE # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + _data_result_data_ @@ -43,12 +43,12 @@ HTTPS with 8 secs timeout # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + 28 diff --git a/tests/data/test3031 b/tests/data/test3031 index 58edc376dda8..fc9b525458d2 100644 --- a/tests/data/test3031 +++ b/tests/data/test3031 @@ -7,7 +7,7 @@ # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -43,14 +43,14 @@ http://%HOSTIP:%HTTPPORT/this/is/the/%TESTNUMBER --dump-header %PWD/%LOGDIR/tmp/ # # Verify data after the test has been "shot" - -GET /this/is/the/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /this/is/the/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test3032 b/tests/data/test3032 index 985ff4ff6440..470a1196670f 100644 --- a/tests/data/test3032 +++ b/tests/data/test3032 @@ -9,60 +9,60 @@ HTTP # Server-side - -HTTP/1.1 301 redirect swsbounce -Content-Length: 0 -Location: http://%HOSTIP:%HTTPPORT/%TESTNUMBER -Part: data - + +HTTP/1.1 301 redirect swsbounce +Content-Length: 0 +Location: http://%HOSTIP:%HTTPPORT/%TESTNUMBER +Part: data + - -HTTP/1.1 301 redirect swsbounce -Content-Length: 0 -Location: http://%HOSTIP:%HTTPPORT/%TESTNUMBER -Part: data1 - + +HTTP/1.1 301 redirect swsbounce +Content-Length: 0 +Location: http://%HOSTIP:%HTTPPORT/%TESTNUMBER +Part: data1 + - -HTTP/1.1 301 redirect swsbounce -Content-Length: 0 -Location: http://%HOSTIP:%HTTPPORT/%TESTNUMBER -Part: data2 - + +HTTP/1.1 301 redirect swsbounce +Content-Length: 0 +Location: http://%HOSTIP:%HTTPPORT/%TESTNUMBER +Part: data2 + - -HTTP/1.1 200 OK -Content-Type: text/html -Content-Length: 30 -Part: data3 - + +HTTP/1.1 200 OK +Content-Type: text/html +Content-Length: 30 +Part: data3 + XXXXXXXXXXXXXXXXXXXXXXXXXXXXX - -HTTP/1.1 301 redirect swsbounce -Content-Length: 0 -Location: http://%HOSTIP:%HTTPPORT/%TESTNUMBER -Part: data - -HTTP/1.1 301 redirect swsbounce -Content-Length: 0 -Location: http://%HOSTIP:%HTTPPORT/%TESTNUMBER -Part: data1 - -HTTP/1.1 301 redirect swsbounce -Content-Length: 0 -Location: http://%HOSTIP:%HTTPPORT/%TESTNUMBER -Part: data2 - -HTTP/1.1 200 OK -Content-Type: text/html -Content-Length: 30 -Part: data3 - + +HTTP/1.1 301 redirect swsbounce +Content-Length: 0 +Location: http://%HOSTIP:%HTTPPORT/%TESTNUMBER +Part: data + +HTTP/1.1 301 redirect swsbounce +Content-Length: 0 +Location: http://%HOSTIP:%HTTPPORT/%TESTNUMBER +Part: data1 + +HTTP/1.1 301 redirect swsbounce +Content-Length: 0 +Location: http://%HOSTIP:%HTTPPORT/%TESTNUMBER +Part: data2 + +HTTP/1.1 200 OK +Content-Type: text/html +Content-Length: 30 +Part: data3 + XXXXXXXXXXXXXXXXXXXXXXXXXXXXX @@ -86,27 +86,27 @@ HTTP redirect loop 3x swsbounce test # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test3035 b/tests/data/test3035 index 19fefa23183f..a7c2148b1211 100644 --- a/tests/data/test3035 +++ b/tests/data/test3035 @@ -15,47 +15,47 @@ retry # # the first chunk # - -HTTP/1.1 200 OK swsbounce swsclose -Accept-Ranges: bytes -Content-Type: text/html -Content-Length: 26 - + +HTTP/1.1 200 OK swsbounce swsclose +Accept-Ranges: bytes +Content-Type: text/html +Content-Length: 26 + abcde # # the second chunk # - -HTTP/1.1 206 Partial Content swsbounce swsclose -Content-Type: text/html -Content-Length: 21 -Content-Range: bytes 5-25/26 - + +HTTP/1.1 206 Partial Content swsbounce swsclose +Content-Type: text/html +Content-Length: 21 +Content-Range: bytes 5-25/26 + fghijk # # some nonsense that curl should ignore as unresumable # - -HTTP/1.1 404 Not Found swsbounce -Content-Type: text/html -Content-Length: 5 - + +HTTP/1.1 404 Not Found swsbounce +Content-Type: text/html +Content-Length: 5 + body # # some more nonsense that curl should ignore as unresumable # - -HTTP/1.1 200 OK swsbounce -Accept-Ranges: bytes -Content-Type: text/html -Content-Length: 30 - + +HTTP/1.1 200 OK swsbounce +Accept-Ranges: bytes +Content-Type: text/html +Content-Length: 30 + XXXXXXXXXXXXXXXXXXXXXXXXXXXXX @@ -87,36 +87,36 @@ HTTP retry failed download with keep data and auto-resume # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=5- -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=11- -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=11- -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=11- -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=5- +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=11- +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=11- +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=11- +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test304 b/tests/data/test304 index 2283192e2232..06feb3a382b0 100644 --- a/tests/data/test304 +++ b/tests/data/test304 @@ -35,7 +35,7 @@ HTTPS multipart formpost # We create this file before the command is invoked! -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +%repeat[1000 x a]% @@ -45,28 +45,28 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa ^(Content-Type: multipart/form-data;|------).* -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 1410 -Content-Type: multipart/form-data; boundary=----------------------------qrstuvwxyz0123456789AB - -------------------------------qrstuvwxyz0123456789AB -Content-Disposition: form-data; name="name" - -daniel -------------------------------qrstuvwxyz0123456789AB -Content-Disposition: form-data; name="tool" - -curl -------------------------------qrstuvwxyz0123456789AB -Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt" -Content-Type: text/plain - -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa - -------------------------------qrstuvwxyz0123456789AB-- +POST /we/want/%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPSPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Content-Length: 1410%CR +Content-Type: multipart/form-data; boundary=----------------------------qrstuvwxyz0123456789AB%CR +%CR +------------------------------qrstuvwxyz0123456789AB%CR +Content-Disposition: form-data; name="name"%CR +%CR +daniel%CR +------------------------------qrstuvwxyz0123456789AB%CR +Content-Disposition: form-data; name="tool"%CR +%CR +curl%CR +------------------------------qrstuvwxyz0123456789AB%CR +Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt"%CR +Content-Type: text/plain%CR +%CR +%repeat[1000 x a]% +%CR +------------------------------qrstuvwxyz0123456789AB--%CR diff --git a/tests/data/test306 b/tests/data/test306 index e0b5f9075200..ff7a07707ebc 100644 --- a/tests/data/test306 +++ b/tests/data/test306 @@ -52,12 +52,12 @@ HTTPS GET, receive no headers only data! # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test307 b/tests/data/test307 index 650daaea1c17..d327e88351bf 100644 --- a/tests/data/test307 +++ b/tests/data/test307 @@ -43,12 +43,12 @@ simple HTTPS GET with openssl engine # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test309 b/tests/data/test309 index 29058d4c9665..0a9e9a89ca45 100644 --- a/tests/data/test309 +++ b/tests/data/test309 @@ -10,37 +10,37 @@ followlocation # Server-side - -HTTP/1.1 301 This is a weirdo text message swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Location: https://%HOSTIP:%HTTPSPORT/data/%TESTNUMBER0002.txt?coolsite=yes -Connection: close - + +HTTP/1.1 301 This is a weirdo text message swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Location: https://%HOSTIP:%HTTPSPORT/data/%TESTNUMBER0002.txt?coolsite=yes +Connection: close + This server reply is for testing a simple Location: following to HTTPS URL - -HTTP/1.1 200 Followed here fine swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 52 - + +HTTP/1.1 200 Followed here fine swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 52 + If this is received, the location following worked - -HTTP/1.1 301 This is a weirdo text message swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Location: https://%HOSTIP:%HTTPSPORT/data/%TESTNUMBER0002.txt?coolsite=yes -Connection: close - -HTTP/1.1 200 Followed here fine swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 52 - + +HTTP/1.1 301 This is a weirdo text message swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Location: https://%HOSTIP:%HTTPSPORT/data/%TESTNUMBER0002.txt?coolsite=yes +Connection: close + +HTTP/1.1 200 Followed here fine swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 52 + If this is received, the location following worked @@ -65,17 +65,17 @@ HTTP Location: redirect to HTTPS URL # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /data/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.1 -Host: %HOSTIP:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /data/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.1 +Host: %HOSTIP:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test31 b/tests/data/test31 index 8de7adc7836a..8d99df6da8af 100644 --- a/tests/data/test31 +++ b/tests/data/test31 @@ -12,64 +12,64 @@ cookiejar -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 4 -Content-Type: text/html -Funny-head: yesyes +HTTP/1.1 200 OK%CR +Date: Tue, 09 Nov 2010 14:49:00 GMT%CR +Server: test-server/fake%CR +Content-Length: 4%CR +Content-Type: text/html%CR +Funny-head: yesyes%CR Set-Cookie: blankdomain=sure; domain=; path=/ -Set-Cookie: foobar=name; domain=anything.com; path=/ ; secure -Set-Cookie:ismatch=this ; domain=test31.curl; path=/silly/ -Set-Cookie:ISMATCH=this ; domain=test31.curl; path=/silly/ -Set-Cookie: overwrite=this ; domain=test31.curl; path=/overwrite/ -Set-Cookie: overwrite=this2 ; domain=test31.curl; path=/overwrite -Set-Cookie: sec1value=secure1 ; domain=test31.curl; path=/secure1/ ; secure -Set-Cookie: sec2value=secure2 ; domain=test31.curl; path=/secure2/ ; secure= -Set-Cookie: sec3value=secure3 ; domain=test31.curl; path=/secure3/ ; secure= -Set-Cookie: sec4value=secure4 ; secure=; domain=test31.curl; path=/secure4/ ; -Set-Cookie: sec5value=secure5 ; secure; domain=test31.curl; path=/secure5/ ; -Set-Cookie: sec6value=secure6 ; secure ; domain=test31.curl; path=/secure6/ ; -Set-Cookie: sec7value=secure7 ; secure ; domain=test31.curl; path=/secure7/ ; -Set-Cookie: sec8value=secure8 ; secure= ; domain=test31.curl; path=/secure8/ ; -Set-Cookie: secure=very1 ; secure=; domain=test31.curl; path=/secure9/; -Set-Cookie: httpo1=value1 ; domain=test31.curl; path=/p1/; httponly -Set-Cookie: httpo2=value2 ; domain=test31.curl; path=/p2/; httponly= -Set-Cookie: httpo3=value3 ; httponly; domain=test31.curl; path=/p3/; -Set-Cookie: httpo4=value4 ; httponly=; domain=test31.curl; path=/p4/; -Set-Cookie: httponly=myvalue1 ; domain=test31.curl; path=/p4/; httponly -Set-Cookie: httpandsec=myvalue2 ; domain=test31.curl; path=/p4/; httponly; secure -Set-Cookie: httpandsec2=myvalue3; domain=test31.curl; path=/p4/; httponly=; secure -Set-Cookie: httpandsec3=myvalue4 ; domain=test31.curl; path=/p4/; httponly; secure= -Set-Cookie: httpandsec4=myvalue5 ; domain=test31.curl; path=/p4/; httponly=; secure= -Set-Cookie: httpandsec5=myvalue6 ; domain=test31.curl; path=/p4/; secure; httponly= -Set-Cookie: httpandsec6=myvalue7 ; domain=test31.curl; path=/p4/; secure=; httponly= -Set-Cookie: httpandsec7=myvalue8 ; domain=test31.curl; path=/p4/; secure; httponly -Set-Cookie: httpandsec8=myvalue9; domain=test31.curl; path=/p4/; secure=; httponly -Set-Cookie: partmatch=present; domain=test31.curl ; path=/; -Set-Cookie:eat=this; domain=moo.foo.moo; -Set-Cookie: eat=this-too; domain=.foo.moo; -Set-Cookie: nodomainnovalue +Set-Cookie: foobar=name; domain=anything.com; path=/ ; secure%CR +Set-Cookie:ismatch=this ; domain=test31.curl; path=/silly/%CR +Set-Cookie:ISMATCH=this ; domain=test31.curl; path=/silly/%CR +Set-Cookie: overwrite=this ; domain=test31.curl; path=/overwrite/%CR +Set-Cookie: overwrite=this2 ; domain=test31.curl; path=/overwrite%CR +Set-Cookie: sec1value=secure1 ; domain=test31.curl; path=/secure1/ ; secure%CR +Set-Cookie: sec2value=secure2 ; domain=test31.curl; path=/secure2/ ; secure=%CR +Set-Cookie: sec3value=secure3 ; domain=test31.curl; path=/secure3/ ; secure=%CR +Set-Cookie: sec4value=secure4 ; secure=; domain=test31.curl; path=/secure4/ ; %CR +Set-Cookie: sec5value=secure5 ; secure; domain=test31.curl; path=/secure5/ ; %CR +Set-Cookie: sec6value=secure6 ; secure ; domain=test31.curl; path=/secure6/ ; %CR +Set-Cookie: sec7value=secure7 ; secure ; domain=test31.curl; path=/secure7/ ; %CR +Set-Cookie: sec8value=secure8 ; secure= ; domain=test31.curl; path=/secure8/ ; %CR +Set-Cookie: secure=very1 ; secure=; domain=test31.curl; path=/secure9/; %CR +Set-Cookie: httpo1=value1 ; domain=test31.curl; path=/p1/; httponly%CR +Set-Cookie: httpo2=value2 ; domain=test31.curl; path=/p2/; httponly=%CR +Set-Cookie: httpo3=value3 ; httponly; domain=test31.curl; path=/p3/;%CR +Set-Cookie: httpo4=value4 ; httponly=; domain=test31.curl; path=/p4/; %CR +Set-Cookie: httponly=myvalue1 ; domain=test31.curl; path=/p4/; httponly%CR +Set-Cookie: httpandsec=myvalue2 ; domain=test31.curl; path=/p4/; httponly; secure%CR +Set-Cookie: httpandsec2=myvalue3; domain=test31.curl; path=/p4/; httponly=; secure%CR +Set-Cookie: httpandsec3=myvalue4 ; domain=test31.curl; path=/p4/; httponly; secure=%CR +Set-Cookie: httpandsec4=myvalue5 ; domain=test31.curl; path=/p4/; httponly=; secure=%CR +Set-Cookie: httpandsec5=myvalue6 ; domain=test31.curl; path=/p4/; secure; httponly=%CR +Set-Cookie: httpandsec6=myvalue7 ; domain=test31.curl; path=/p4/; secure=; httponly=%CR +Set-Cookie: httpandsec7=myvalue8 ; domain=test31.curl; path=/p4/; secure; httponly%CR +Set-Cookie: httpandsec8=myvalue9; domain=test31.curl; path=/p4/; secure=; httponly%CR +Set-Cookie: partmatch=present; domain=test31.curl ; path=/;%CR +Set-Cookie:eat=this; domain=moo.foo.moo;%CR +Set-Cookie: eat=this-too; domain=.foo.moo;%CR +Set-Cookie: nodomainnovalue%CR %if large-time -Set-Cookie: nodomain=value; expires=Fri Feb 13 11:56:27 GMT 2525 -Set-Cookie: novalue; domain=reallysilly -Set-Cookie: test=yes; domain=foo.com; expires=Sat Feb 2 11:56:27 GMT 2525 -Set-Cookie: test2=yes; domain=se; expires=Sat Feb 2 11:56:27 GMT 2525 +Set-Cookie: nodomain=value; expires=Fri Feb 13 11:56:27 GMT 2525%CR +Set-Cookie: novalue; domain=reallysilly%CR +Set-Cookie: test=yes; domain=foo.com; expires=Sat Feb 2 11:56:27 GMT 2525%CR +Set-Cookie: test2=yes; domain=se; expires=Sat Feb 2 11:56:27 GMT 2525%CR %else -Set-Cookie: nodomain=value; expires=Fri Feb 13 11:56:27 GMT 2037 -Set-Cookie: novalue; domain=reallysilly -Set-Cookie: test=yes; domain=foo.com; expires=Sat Feb 2 11:56:27 GMT 2030 -Set-Cookie: test2=yes; domain=se; expires=Sat Feb 2 11:56:27 GMT 2030 +Set-Cookie: nodomain=value; expires=Fri Feb 13 11:56:27 GMT 2037%CR +Set-Cookie: novalue; domain=reallysilly%CR +Set-Cookie: test=yes; domain=foo.com; expires=Sat Feb 2 11:56:27 GMT 2030%CR +Set-Cookie: test2=yes; domain=se; expires=Sat Feb 2 11:56:27 GMT 2030%CR %endif -Set-Cookie: magic=yessir; path=/silly/; HttpOnly -Set-Cookie: blexp=yesyes; domain=test31.curl; domain=test31.curl; expiry=totally bad; -Set-Cookie: partialip=nono; domain=.0.0.1; -Set-Cookie: withspaces= yes within and around ; -Set-Cookie: withspaces2 =before equals; -Set-Cookie: prespace= yes before; -Set-Cookie: securewithspace=after ; secure = +Set-Cookie: magic=yessir; path=/silly/; HttpOnly%CR +Set-Cookie: blexp=yesyes; domain=test31.curl; domain=test31.curl; expiry=totally bad;%CR +Set-Cookie: partialip=nono; domain=.0.0.1;%CR +Set-Cookie: withspaces= yes within and around ;%CR +Set-Cookie: withspaces2 =before equals;%CR +Set-Cookie: prespace= yes before;%CR +Set-Cookie: securewithspace=after ; secure =%CR Set-Cookie: %hex[%c3%82%c2%b3%c3%83%5c%78%39%32%c3%83%5c%78%39%61%c3%83%5c%78%38%64%c3%83%5c%78%39%37]hex%=%96%A6g%9Ay%B0%A5g%A7tm%7C%95%9A - +%CR boo @@ -99,12 +99,12 @@ local-http # Verify data after the test has been "shot" - -GET /we/want/%TESTNUMBER HTTP/1.1 -Host: test31.curl:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/%TESTNUMBER HTTP/1.1 +Host: test31.curl:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # Netscape HTTP Cookie File diff --git a/tests/data/test310 b/tests/data/test310 index f2415a329fb8..7021462febf3 100644 --- a/tests/data/test310 +++ b/tests/data/test310 @@ -42,12 +42,12 @@ simple HTTPS GET # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: localhost:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: localhost:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test3100 b/tests/data/test3100 index 32ce6d3bedfb..83aedb11318d 100644 --- a/tests/data/test3100 +++ b/tests/data/test3100 @@ -10,43 +10,43 @@ RTSP Basic auth # Server-side - -RTSP/1.0 401 Unauthorized please swsbounce -Server: RTSPD/libcurl-test -CSeq: 1 -WWW-Authenticate: Basic realm="please-auth-me" - + +RTSP/1.0 401 Unauthorized please swsbounce +Server: RTSPD/libcurl-test +CSeq: 1 +WWW-Authenticate: Basic realm="please-auth-me" + - -RTSP/1.0 200 OK -Server: RTSPD/libcurl-test -CSeq: 2 -Content-Base: rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER -Content-Length: 80 -Curl-private: swsclose - -v=0 -s=rtspd SDP -i=A fake SDP reply -u=http://www.curl.example.com/fakesdp.ps + +RTSP/1.0 200 OK +Server: RTSPD/libcurl-test +CSeq: 2 +Content-Base: rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER +Content-Length: 80 +Curl-private: swsclose + +v=0 +s=rtspd SDP +i=A fake SDP reply +u=http://www.curl.example.com/fakesdp.ps - -RTSP/1.0 401 Unauthorized please swsbounce -Server: RTSPD/libcurl-test -CSeq: 1 -WWW-Authenticate: Basic realm="please-auth-me" - -RTSP/1.0 200 OK -Server: RTSPD/libcurl-test -CSeq: 2 -Content-Base: rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER -Content-Length: 80 -Curl-private: swsclose - -v=0 -s=rtspd SDP -i=A fake SDP reply -u=http://www.curl.example.com/fakesdp.ps + +RTSP/1.0 401 Unauthorized please swsbounce +Server: RTSPD/libcurl-test +CSeq: 1 +WWW-Authenticate: Basic realm="please-auth-me" + +RTSP/1.0 200 OK +Server: RTSPD/libcurl-test +CSeq: 2 +Content-Base: rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER +Content-Length: 80 +Curl-private: swsclose + +v=0 +s=rtspd SDP +i=A fake SDP reply +u=http://www.curl.example.com/fakesdp.ps @@ -69,16 +69,16 @@ rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -DESCRIBE rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER RTSP/1.0 -CSeq: 1 -Accept: application/sdp - -DESCRIBE rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER RTSP/1.0 -CSeq: 2 -Accept: application/sdp -Authorization: Basic %b64[user:pass]b64%d29yZA== - + +DESCRIBE rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER RTSP/1.0 +CSeq: 1 +Accept: application/sdp + +DESCRIBE rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER RTSP/1.0 +CSeq: 2 +Accept: application/sdp +Authorization: Basic %b64[user:pass]b64%d29yZA== + diff --git a/tests/data/test3101 b/tests/data/test3101 index d5fd882db065..5989e7ea46cd 100644 --- a/tests/data/test3101 +++ b/tests/data/test3101 @@ -8,43 +8,43 @@ HTTP Basic auth # Server-side - -HTTP/1.1 401 Authorization Required swsbounce -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" -Content-Length: 26 -Content-Type: text/html; charset=iso-8859-1 - + +HTTP/1.1 401 Authorization Required swsbounce +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" +Content-Length: 26 +Content-Type: text/html; charset=iso-8859-1 + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 200 OK -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 -Connection: close - + +HTTP/1.1 200 OK +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 +Connection: close + This IS the real page! - -HTTP/1.1 401 Authorization Required swsbounce -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" -Content-Length: 26 -Content-Type: text/html; charset=iso-8859-1 - -HTTP/1.1 200 OK -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 -Connection: close - + +HTTP/1.1 401 Authorization Required swsbounce +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +WWW-Authenticate: Basic realm="gimme all yer s3cr3ts" +Content-Length: 26 +Content-Type: text/html; charset=iso-8859-1 + +HTTP/1.1 200 OK +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 +Connection: close + This IS the real page! @@ -72,16 +72,16 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[user:pass]b64%d29yZA== -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[user:pass]b64%d29yZA== +Accept: */* + diff --git a/tests/data/test3102 b/tests/data/test3102 index 9142c46460b4..5b20a67d5042 100644 --- a/tests/data/test3102 +++ b/tests/data/test3102 @@ -38,11 +38,11 @@ https://%HOSTIP:%HTTPSPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPSPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPSPORT +Accept: */* + diff --git a/tests/data/test3103 b/tests/data/test3103 index 423c4adaacf3..c0075aab3931 100644 --- a/tests/data/test3103 +++ b/tests/data/test3103 @@ -8,7 +8,7 @@ cookies # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -48,7 +48,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - + GET http://localhost/ HTTP/1.1 Host: localhost Accept: */* diff --git a/tests/data/test3104 b/tests/data/test3104 index 296bdc1dc172..42a91b00e6d5 100644 --- a/tests/data/test3104 +++ b/tests/data/test3104 @@ -8,7 +8,7 @@ cookies # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -48,7 +48,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - + GET http://example.com/ HTTP/1.1 Host: example.com Accept: */* diff --git a/tests/data/test314 b/tests/data/test314 index 287ccb886e95..4f14957a432d 100644 --- a/tests/data/test314 +++ b/tests/data/test314 @@ -9,15 +9,15 @@ compressed # # Server-side - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: br -Content-Length: 1056 - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Content-Encoding: br +Content-Length: 1056 + %hex[%1b%b0%13%00%9c%05%76%1b%5d%81%a4%3c%8b%e9%99%06%83%bf%97]hex% %hex[%20%3c%ab%aa%1e%97%8f%df%c8%d5%e5%30%c8%4d%30%7b%fe%82%55%09%2e%bd%14%50%ca%58%35%6d%32%4f%32%e1%27%cc%4a%ef%da%f6%fb%cb%c5%63%f0%78%30%8a%78%f1%ff%db%2f%55%22%46%c5%f8%48%02%61%23%6c%f6%fe%77%27%c4%13%20%74%f8%66%e7%07%08%24%50%89%74%5d%4f%a5%dd%13%ad]hex% %hex[%4a%56%c8%be%86%eb%e6%b2%50%b1%19%fb%8a%92%23%31%53%2a%dc%6a%3e%fd%45%ed%63%67%74%c8%fd%6a%69%a1%92%c4%29%fc%9d%9b%94%34%68%7b%e0%a3%88%ec%41%24%80%59%75%b6%36%32%b6%4a%5c%f6%62%49%cb%d2%7e%c1%34%c8%f8%7a%e8%51%03%f6%55%1d%83%62%43%68%50%40%aa%82%d3%8b%94%67%15%12%59%f8%f9%e5%73%11%67%2b%6f%c7%cd%ad%ca%d5%c4%b0%2b%24%1a%52%77%c1%57%f1%e6%6c%f1%e6%c9%50%ee%da%05%9e%5e%a4%7c%fa%cd%e9%7b%96%12%e5%7c%7a%10%22%41%a1%df%8a%e2%69%25%6b%ed%54%c6%0e%69%8e%e8%78%d2%0b%32%8e%db%b2%f2%6d%9f%48%dc%2b%4c%48%3d%88%97%89%81%d7%7d%53%95%c6%ee%b7%50%5d%cc%be%17%53%80%d9%60%c2%c1%37%88%f0%55%91%28%1e%98%f3%1d%7f%af%43%7a%6b%9e%b3%70%e2%80%7b%39%63%ab%fd%f0%73%8e%f7%e3%0e%e3%b6%e1%6c%70%cc%fa%8f%a3%e5%7a%54%d7%2d%87%3d%69%7c%5d%7e%b0%c2%b8%c9%66%3b%1d%ed%f7%9b%7d%84%b9%08%10%15%26%77%6b%95%ae%e0%5c%90%70%06%f8%e5%9f%b0%53%13%39%5c%29%97%e7%66%26%75%44%76%61%3b%3e%5b%e6%cd%c3%61%19%49%f3%11%70%fd%c2%8a%7c%89%23%f7%13%4f%e2%6e%6c%bd%d3%e0%23%a4%87%3d%11%7d%f7%a8%87%fd%c4%e1%cf%fa%ba%09%9a%d6%e6%e1%a2%46%1e%71%7a%7c%1c%1c%26%78%32%f8%f1%de%b6%1f%6e%ae%eb%d0%ce%c8%c8%60%d4%f1%63%fa%85%43%5a%72%b8%2b%e2%f9%02%54%6b%d2%6a%49%2e%aa%06%1e%bc%df%94%c2%d0%ea%a2%f6%a0%8a%3d%84%de%aa%09%e6%44%12%a5%cc%fb%f2%ae%9d%56%29%59%57%93%63%e8%6d%84%0d%32%e6%9e%51%2c%b4%d3%4b%87%1e%85%a2%4e%a5%b1%72%01%5c%59%39%aa%dd%22%42%40%57%1d%0d%b2%13%99%63%88%43%6e%db%3d%05%7b%17%cc%51%0e%82%c1%61%ac%84%18%82%1d%38%4a%d6%73%96%52%11%31%50%e9%b5%89%70%1a%6a%59%08%71%e6%54%40%9d%1a%21%48%7c%48%64%43%62%0d%4b%03%02%ba%e2%a9%6b%27%20%48%e3%bd%84%90%3d%50%52%83%05%dc%d3%88%b2%41%3f%da%14%56%42%8b%6c%78%f0%89%c2%02]hex% @@ -27,14 +27,14 @@ Content-Length: 1056 -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: br -Content-Length: 1056 - +HTTP/1.1 200 OK%CR +Date: Mon, 29 Nov 2004 21:56:53 GMT%CR +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29%CR +Vary: Accept-Encoding%CR +Content-Type: text/html; charset=ISO-8859-1%CR +Content-Encoding: br%CR +Content-Length: 1056%CR +%CR @@ -45,15 +45,15 @@ Content-Length: 1056 curl curl and libcurl Command line tool and library for client-side URL transfers. - curl and libcurl is a tool for transferring files -using URL syntax. It supports HTTP, HTTPS, FTP, -FTPS, DICT, TELNET, LDAP, FILE, and GOPHER, as -well as HTTP-post, HTTP-put, cookies, FTP upload, -resumed transfers, passwords, portnumbers, SSL -certificates, Kerberos, and proxies. It is powered -by libcurl, the client-side URL transfer library. -There are bindings to libcurl for over 20 -languages and environments. + curl and libcurl is a tool for transferring files%CR +using URL syntax. It supports HTTP, HTTPS, FTP,%CR +FTPS, DICT, TELNET, LDAP, FILE, and GOPHER, as%CR +well as HTTP-post, HTTP-put, cookies, FTP upload,%CR +resumed transfers, passwords, portnumbers, SSL%CR +certificates, Kerberos, and proxies. It is powered%CR +by libcurl, the client-side URL transfer library.%CR +There are bindings to libcurl for over 20%CR +languages and environments.%CR 5784.57 3.16 @@ -174,13 +174,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --compressed s/^Accept-Encoding: [a-zA-Z, ]*/Accept-Encoding: xxx/ - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Accept-Encoding: xxx - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Accept-Encoding: xxx + diff --git a/tests/data/test315 b/tests/data/test315 index 9be36dc0f21e..d13b4236cf01 100644 --- a/tests/data/test315 +++ b/tests/data/test315 @@ -11,28 +11,28 @@ FAILURE # Server-side # this brotli chunk has three bytes removed from the beginning and is cut off - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: br -Content-Length: 1056 - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Content-Encoding: br +Content-Length: 1056 + %hex[%00%9c%05%76%1b%5d%81%a4%3c%8b%e9%99%06%83%bf%97]hex% %hex[%20%3c%ab%aa%1e%97%8f%df%c8%d5%e5%30%c8%4d%30%7b%fe%82%55%09%2e%bd%14%50%ca%58%35%6d%32%4f%32%e1%27%cc%4a%ef%da%f6%fb%cb%c5%63%f0%78%30%8a%78%f1%ff%db%2f%55%22%46%c5%f8%48%02%61%23%6c%f6%fe%77%27%c4%13%20%74%f8%66%e7%07%08%24%50%89%74%5d%4f%a5%dd%13%ad]hex% - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: br -Content-Length: 1056 - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Content-Encoding: br +Content-Length: 1056 + @@ -60,13 +60,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --compressed s/^Accept-Encoding: [a-zA-Z, ]*/Accept-Encoding: xxx/ - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Accept-Encoding: xxx - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Accept-Encoding: xxx + 61 diff --git a/tests/data/test316 b/tests/data/test316 index 0ac38bde3642..520414f1ba1c 100644 --- a/tests/data/test316 +++ b/tests/data/test316 @@ -11,155 +11,28 @@ compressed # Length of not-encoded content is 16512 what is greater than default value of # CURL_MAX_WRITE_SIZE (16384) - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: br -Content-Length: 31 - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Content-Encoding: br +Content-Length: 31 + %hex[%1b%7f%40%00%64%f1%98%cf%28%1a%eb%af%c7%12%ac%41%ab%42%62%51%f3%c8%ea%d9%7b%9f%dc%1b%00%48%00%0a]hex% - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: br -Content-Length: 31 - -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Content-Encoding: br +Content-Length: 31 + +%repeat[128 x 0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF%0a]% @@ -187,13 +60,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --compressed s/^Accept-Encoding: [a-zA-Z, ]*/Accept-Encoding: xxx/ - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Accept-Encoding: xxx - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Accept-Encoding: xxx + diff --git a/tests/data/test317 b/tests/data/test317 index e510c98b45ca..fb19620cd2d6 100644 --- a/tests/data/test317 +++ b/tests/data/test317 @@ -75,22 +75,22 @@ proxy # # Verify data after the test has been "shot" - -GET http://first.host.it.is/we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: first.host.it.is -Proxy-Authorization: Basic %b64[testing:this]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Authorization: s3cr3t - -GET http://goto.second.host.now/%TESTNUMBER0002 HTTP/1.1 -Host: goto.second.host.now -Proxy-Authorization: Basic %b64[testing:this]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://first.host.it.is/we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: first.host.it.is +Proxy-Authorization: Basic %b64[testing:this]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Authorization: s3cr3t + +GET http://goto.second.host.now/%TESTNUMBER0002 HTTP/1.1 +Host: goto.second.host.now +Proxy-Authorization: Basic %b64[testing:this]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test318 b/tests/data/test318 index 9f712782be0d..990b6371a011 100644 --- a/tests/data/test318 +++ b/tests/data/test318 @@ -75,23 +75,23 @@ proxy # # Verify data after the test has been "shot" - -GET http://first.host.it.is/we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: first.host.it.is -Proxy-Authorization: Basic %b64[testing:this]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Authorization: s3cr3t - -GET http://goto.second.host.now/%TESTNUMBER0002 HTTP/1.1 -Host: goto.second.host.now -Proxy-Authorization: Basic %b64[testing:this]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Authorization: s3cr3t - + +GET http://first.host.it.is/we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: first.host.it.is +Proxy-Authorization: Basic %b64[testing:this]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Authorization: s3cr3t + +GET http://goto.second.host.now/%TESTNUMBER0002 HTTP/1.1 +Host: goto.second.host.now +Proxy-Authorization: Basic %b64[testing:this]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Authorization: s3cr3t + diff --git a/tests/data/test319 b/tests/data/test319 index d6ad42e9b1c1..6258a12720e0 100644 --- a/tests/data/test319 +++ b/tests/data/test319 @@ -10,14 +10,14 @@ Transfer-Encoding # # Server-side - -HTTP/1.1 200 OK swsclose -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Content-Type: text/html; charset=ISO-8859-1 -Transfer-Encoding: gobbledigook -Content-Length: 44 - + +HTTP/1.1 200 OK swsclose +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Content-Type: text/html; charset=ISO-8859-1 +Transfer-Encoding: gobbledigook +Content-Length: 44 + %hex[%1f%8b%08%08%79%9e%ab%41%00%03%6c%61%6c%61%6c%61%00%cb%c9%cc%4b%55%30%e4%52%c8%01%d1%46%5c]hex% %hex[%10%86%31%17%00]hex% %hex[%02%71%60%18%00%00%00]hex% @@ -48,12 +48,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --raw # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test32 b/tests/data/test32 index f61369304170..d02a541ae3d2 100644 --- a/tests/data/test32 +++ b/tests/data/test32 @@ -42,12 +42,12 @@ HTTP with -d and -G # # Verify data after the test has been "shot" - -GET /%TESTNUMBER?foo=moo&moo=poo HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER?foo=moo&moo=poo HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test320 b/tests/data/test320 index edf74bc58557..00615e5d71e3 100644 --- a/tests/data/test320 +++ b/tests/data/test320 @@ -10,9 +10,9 @@ TLS-SRP # Server-side -HTTP/1.0 200 OK -Content-type: text/html - +HTTP/1.0 200 OK%CR +Content-type: text/html%CR +%CR

This is GnuTLS

@@ -28,10 +28,10 @@ Content-type: text/html CipherAES-NNN-CBC MACSHA1 CiphersuiteSRP_SHA_AES_NNN_CBC_SHA1

-

Your HTTP header was:

Host: localhost:9011
-User-Agent: curl-test-suite
-Accept: */*
-
+

Your HTTP header was:

Host: localhost:9011%CR
+User-Agent: curl-test-suite%CR
+Accept: */*%CR
+%CR
 

@@ -56,16 +56,14 @@ simple TLS-SRP HTTPS GET, check user in response # Verify data after the test has been "shot" - - - -HTTP/1.0 200 OK -Content-type: text/html - + +HTTP/1.0 200 OK +Content-type: text/html + FINE -User-Agent: curl-test-suite -Accept: */* - +User-Agent: curl-test-suite +Accept: */* + s/^

Connected as user 'jsmith'.*/FINE/ diff --git a/tests/data/test3201 b/tests/data/test3201 index 730da8d93275..ddbf9bc24b37 100644 --- a/tests/data/test3201 +++ b/tests/data/test3201 @@ -50,14 +50,14 @@ proxy s/^PROXY TCP4 192.168.1.1 %HOSTIP (\d*) %HTTPPORT/proxy-line/ - -proxy-line -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Testno: %TESTNUMBER - + +proxy-line +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Testno: %TESTNUMBER + diff --git a/tests/data/test3202 b/tests/data/test3202 index 48a74e132cf3..d4ea6a33c317 100644 --- a/tests/data/test3202 +++ b/tests/data/test3202 @@ -55,13 +55,13 @@ proxy s/^PROXY TCP6 2001:db8:: ::1 (\d*) %HTTP6PORT/proxy-line/ - -proxy-line -GET /%TESTNUMBER HTTP/1.1 -Host: %HOST6IP:%HTTP6PORT -User-Agent: curl/%VERSION -Accept: */* - + +proxy-line +GET /%TESTNUMBER HTTP/1.1 +Host: %HOST6IP:%HTTP6PORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test3204 b/tests/data/test3204 index 8cc9c2f5b5fb..925919977868 100644 --- a/tests/data/test3204 +++ b/tests/data/test3204 @@ -37,13 +37,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --etag-compare %LOGDIR/etag%TESTNUMBER --et # Verify that the file still exists with the correct etag value. - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -If-None-Match: "21025-dc7-39462498" - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +If-None-Match: "21025-dc7-39462498" + "21025-dc7-39462498" diff --git a/tests/data/test3206 b/tests/data/test3206 new file mode 100644 index 000000000000..676b85592b21 --- /dev/null +++ b/tests/data/test3206 @@ -0,0 +1,48 @@ + + + +IMAP +Clear Text +FETCH +CUSTOMREQUEST + + + +# +# Server-side + + +%repeat[120 x Testing large IMAP literal with custom FETCH. XXXXXXXXXXXXX%0d]% + + +* 456 FETCH (BODY[TEXT] {7201}%CR +%repeat[120 x Testing large IMAP literal with custom FETCH. XXXXXXXXXXXXX%0d]% + + + +# +# Client-side + + +imap + + +IMAP custom FETCH with larger literal response (~7KB) + + + imap://%HOSTIP:%IMAPPORT/%TESTNUMBER/ -u user:secret -X 'FETCH 456 BODY[TEXT]' + + + +# +# Verify data after the test has been "shot" + + +A001 CAPABILITY +A002 LOGIN user secret +A003 SELECT %TESTNUMBER +A004 FETCH 456 BODY[TEXT] +A005 LOGOUT + + + diff --git a/tests/data/test3207 b/tests/data/test3207 index 7902d0ae298f..4806ef5474d6 100644 --- a/tests/data/test3207 +++ b/tests/data/test3207 @@ -16,135 +16,8 @@ Content-Length: 29 run 1: foobar and so on fun! - -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! -run 1: foobar and so on fun! + +%repeat[128 x run 1: foobar and so on fun!%0a]% diff --git a/tests/data/test3208 b/tests/data/test3208 index 04b3c00413bf..e87f95333114 100644 --- a/tests/data/test3208 +++ b/tests/data/test3208 @@ -9,18 +9,18 @@ libtest # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + -foo- @@ -46,7 +46,7 @@ https://%HOSTIP:%HTTPSPORT/%TESTNUMBER # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPSPORT Accept: */* diff --git a/tests/data/test3215 b/tests/data/test3215 index 70c12e9d36cb..97183c21d487 100644 --- a/tests/data/test3215 +++ b/tests/data/test3215 @@ -24,11 +24,11 @@ smtp SMTP DSN - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt " NOTIFY=SUCCESS,FAILURE" --mail-from " RET=HDRS" -T - @@ -38,19 +38,19 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt " NOTIFY # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: RET=HDRS -RCPT TO: NOTIFY=SUCCESS,FAILURE -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: RET=HDRS +RCPT TO: NOTIFY=SUCCESS,FAILURE +DATA +QUIT - -From: different -To: another - -body -. + +From: different +To: another + +body +. diff --git a/tests/data/test325 b/tests/data/test325 index 4f5826252043..aba1fccaf94d 100644 --- a/tests/data/test325 +++ b/tests/data/test325 @@ -49,12 +49,12 @@ HTTPS with attempted redirect to denied HTTP # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + # 1 - Protocol http not supported or disabled in libcurl diff --git a/tests/data/test326 b/tests/data/test326 index 920a9c1af686..4c3ed3e08524 100644 --- a/tests/data/test326 +++ b/tests/data/test326 @@ -9,29 +9,29 @@ HTTP GET # Server-side -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Content-Type: text/html; charset=ISO-8859-1 -Transfer-Encoding: chunked - -18 +HTTP/1.1 200 OK%CR +Date: Mon, 29 Nov 2004 21:56:53 GMT%CR +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29%CR +Content-Type: text/html; charset=ISO-8859-1%CR +Transfer-Encoding: chunked%CR +%CR +18%CR line 1 line 2 line 3 - -0 - +%CR +0%CR +%CR -18 +18%CR line 1 line 2 line 3 - -0 - +%CR +0%CR +%CR @@ -53,12 +53,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --raw # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test327 b/tests/data/test327 index 6e86c3722b54..6fcc4669a29d 100644 --- a/tests/data/test327 +++ b/tests/data/test327 @@ -52,18 +52,18 @@ cookies # Verify data after the test has been "shot" - -GET /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /we/want/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Cookie: foobar=name - + +GET /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /we/want/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Cookie: foobar=name + # Netscape HTTP Cookie File diff --git a/tests/data/test328 b/tests/data/test328 index cb891b044fa0..602b6efa19ae 100644 --- a/tests/data/test328 +++ b/tests/data/test328 @@ -44,12 +44,12 @@ http://%HOSTIP:%HTTPPORT/hello/%TESTNUMBER --compressed ^Accept-Encoding:.* - -GET /hello/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /hello/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test329 b/tests/data/test329 index 93135c5ec105..d47566f1b25a 100644 --- a/tests/data/test329 +++ b/tests/data/test329 @@ -8,23 +8,23 @@ cookies # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Type: text/html -Funny-head: yesyes -Set-Cookie: testn1=yes; path=/we/want/; domain=.host.foo.com; Max-Age=-1; -Set-Cookie: test=yes; path=/we/want/; domain=.host.foo.com; Max-Age=0; -Content-Length: 4 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Type: text/html +Funny-head: yesyes +Set-Cookie: testn1=yes; path=/we/want/; domain=.host.foo.com; Max-Age=-1; +Set-Cookie: test=yes; path=/we/want/; domain=.host.foo.com; Max-Age=0; +Content-Length: 4 + boo - -HTTP/1.1 200 OK -Funny-head: yesyes -Content-Length: 4 - + +HTTP/1.1 200 OK +Funny-head: yesyes +Content-Length: 4 + moo @@ -59,19 +59,19 @@ cookies # Verify data after the test has been "shot" - -GET /we/want/%TESTNUMBER HTTP/1.1 -Host: host.foo.com -User-Agent: curl/%VERSION -Accept: */* -Cookie: tester=yes; test=no - -GET /we/want/%TESTNUMBER0002 HTTP/1.1 -Host: host.foo.com -User-Agent: curl/%VERSION -Accept: */* -Cookie: tester=yes - + +GET /we/want/%TESTNUMBER HTTP/1.1 +Host: host.foo.com +User-Agent: curl/%VERSION +Accept: */* +Cookie: tester=yes; test=no + +GET /we/want/%TESTNUMBER0002 HTTP/1.1 +Host: host.foo.com +User-Agent: curl/%VERSION +Accept: */* +Cookie: tester=yes + diff --git a/tests/data/test33 b/tests/data/test33 index 34afff35b705..e2ba7da4c6f3 100644 --- a/tests/data/test33 +++ b/tests/data/test33 @@ -42,14 +42,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -T%LOGDIR/test%TESTNUMBER.txt -C 50 # Verify data after the test has been "shot" - -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Content-Range: bytes 50-99/100 -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 50 - + +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Content-Range: bytes 50-99/100 +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 50 + 012345678 012345678 012345678 diff --git a/tests/data/test330 b/tests/data/test330 index 4344e2d4b27a..04cc67cd7cff 100644 --- a/tests/data/test330 +++ b/tests/data/test330 @@ -74,20 +74,20 @@ proxy # # Verify data after the test has been "shot" - -GET http://first.host.it.is/we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: first.host.it.is -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Cookie: test=yes - -GET http://goto.second.host.now/%TESTNUMBER0002 HTTP/1.1 -Host: goto.second.host.now -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://first.host.it.is/we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: first.host.it.is +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Cookie: test=yes + +GET http://goto.second.host.now/%TESTNUMBER0002 HTTP/1.1 +Host: goto.second.host.now +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test331 b/tests/data/test331 index 8ab268203f88..4b613c5e1356 100644 --- a/tests/data/test331 +++ b/tests/data/test331 @@ -50,20 +50,20 @@ proxy # Verify data after the test has been "shot" - -GET http://moo/we/want/%TESTNUMBER HTTP/1.1 -Host: moo -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://moo/we/want/%TESTNUMBER0002 HTTP/1.1 -Host: moo -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Cookie: moo=yes - + +GET http://moo/we/want/%TESTNUMBER HTTP/1.1 +Host: moo +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://moo/we/want/%TESTNUMBER0002 HTTP/1.1 +Host: moo +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Cookie: moo=yes + diff --git a/tests/data/test334 b/tests/data/test334 index 159335093b8d..3bbf85eae7bb 100644 --- a/tests/data/test334 +++ b/tests/data/test334 @@ -31,12 +31,12 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test335 b/tests/data/test335 index 327296df32be..9266d0006de0 100644 --- a/tests/data/test335 +++ b/tests/data/test335 @@ -74,28 +74,28 @@ http://digest:a-lot@data.from.server.requiring.digest.hohoho.com/%TESTNUMBER --p # Verify data after the test has been "shot" - -GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 -Host: data.from.server.requiring.digest.hohoho.com -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 -Host: data.from.server.requiring.digest.hohoho.com -Proxy-Authorization: Digest username="foo", realm="weirdorealm", nonce="12345", uri="/%TESTNUMBER", response="f61609cd8f5bb205ef4e169b2c5626cb" -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 -Host: data.from.server.requiring.digest.hohoho.com -Proxy-Authorization: Digest username="foo", realm="weirdorealm", nonce="12345", uri="/%TESTNUMBER", response="f61609cd8f5bb205ef4e169b2c5626cb" -Authorization: Digest username="digest", realm="realmweirdo", nonce="123456", uri="/%TESTNUMBER", response="ea0f4cb7a119a1a6f6c6c6c2e4190860" -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 +Host: data.from.server.requiring.digest.hohoho.com +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 +Host: data.from.server.requiring.digest.hohoho.com +Proxy-Authorization: Digest username="foo", realm="weirdorealm", nonce="12345", uri="/%TESTNUMBER", response="f61609cd8f5bb205ef4e169b2c5626cb" +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://data.from.server.requiring.digest.hohoho.com/%TESTNUMBER HTTP/1.1 +Host: data.from.server.requiring.digest.hohoho.com +Proxy-Authorization: Digest username="foo", realm="weirdorealm", nonce="12345", uri="/%TESTNUMBER", response="f61609cd8f5bb205ef4e169b2c5626cb" +Authorization: Digest username="digest", realm="realmweirdo", nonce="123456", uri="/%TESTNUMBER", response="ea0f4cb7a119a1a6f6c6c6c2e4190860" +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test336 b/tests/data/test336 index f50b42adb332..ddf4266b46b6 100644 --- a/tests/data/test336 +++ b/tests/data/test336 @@ -41,18 +41,18 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER --range 3-6 # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -PASV -TYPE I -SIZE %TESTNUMBER -REST 3 -RETR %TESTNUMBER -ABOR -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +PASV +TYPE I +SIZE %TESTNUMBER +REST 3 +RETR %TESTNUMBER +ABOR +QUIT diff --git a/tests/data/test337 b/tests/data/test337 index d44a712fbbb7..a54f964e10fe 100644 --- a/tests/data/test337 +++ b/tests/data/test337 @@ -41,18 +41,18 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER --range 3-6 # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -PASV -TYPE I -SIZE %TESTNUMBER -REST 3 -RETR %TESTNUMBER -ABOR -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +PASV +TYPE I +SIZE %TESTNUMBER +REST 3 +RETR %TESTNUMBER +ABOR +QUIT diff --git a/tests/data/test338 b/tests/data/test338 index d3acd5f098df..384320d89fb2 100644 --- a/tests/data/test338 +++ b/tests/data/test338 @@ -45,17 +45,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --next http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + [DISCONNECT] diff --git a/tests/data/test339 b/tests/data/test339 index 8c43402757c6..ce191e09cf13 100644 --- a/tests/data/test339 +++ b/tests/data/test339 @@ -9,23 +9,23 @@ HTTP GET # Server-side -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked -Trailer: chunky-trailer -Connection: mooo -ETag: W/"asdf" - -40 -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -30 -bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb -21;heresatest=moooo +HTTP/1.1 200 funky chunky!%CR +Server: fakeit/0.9 fakeitbad/1.0%CR +Transfer-Encoding: chunked%CR +Trailer: chunky-trailer%CR +Connection: mooo%CR +ETag: W/"asdf"%CR +%CR +40%CR +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa%CR +30%CR +bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb%CR +21;heresatest=moooo%CR cccccccccccccccccccccccccccccccc - -0 -chunky-trailer: header data - +%CR +0%CR +chunky-trailer: header data%CR +%CR @@ -46,12 +46,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --etag-save %LOGDIR/etag%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + W/"asdf" diff --git a/tests/data/test34 b/tests/data/test34 index 5d81a5a8f784..2af255cfee8d 100644 --- a/tests/data/test34 +++ b/tests/data/test34 @@ -15,15 +15,15 @@ Server: fakeit/0.9 fakeitbad/1.0 Transfer-Encoding: chunked Connection: mooo -40 -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -30 -bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb -21;heresatest=moooo +40%CR +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa%CR +30%CR +bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb%CR +21;heresatest=moooo%CR cccccccccccccccccccccccccccccccc - -0 - +%CR +0%CR +%CR HTTP/1.1 200 funky chunky! @@ -52,12 +52,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test340 b/tests/data/test340 index c003e42afa91..d971a07c099e 100644 --- a/tests/data/test340 +++ b/tests/data/test340 @@ -28,10 +28,10 @@ FTP using %00 in path with singlecwd # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD + +USER anonymous +PASS ftp@example.com +PWD 3 diff --git a/tests/data/test341 b/tests/data/test341 index b6e429a222c2..5b715c74a7b2 100644 --- a/tests/data/test341 +++ b/tests/data/test341 @@ -9,13 +9,13 @@ HTTP GET # Server-side -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked -Trailer: chunky-trailer -Connection: mooo -ETag: "asdf" - +HTTP/1.1 200 funky chunky!%CR +Server: fakeit/0.9 fakeitbad/1.0%CR +Transfer-Encoding: chunked%CR +Trailer: chunky-trailer%CR +Connection: mooo%CR +ETag: "asdf"%CR +%CR 40 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 30 @@ -46,13 +46,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --etag-compare %LOGDIR/etag%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -If-None-Match: "" - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +If-None-Match: "" + diff --git a/tests/data/test342 b/tests/data/test342 index 79f60256350c..e442bd77deef 100644 --- a/tests/data/test342 +++ b/tests/data/test342 @@ -44,13 +44,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --etag-compare %LOGDIR/etag%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -If-None-Match: "21025-dc7-39462498" - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +If-None-Match: "21025-dc7-39462498" + diff --git a/tests/data/test343 b/tests/data/test343 index dd13708ce895..0d244ebfb2da 100644 --- a/tests/data/test343 +++ b/tests/data/test343 @@ -44,13 +44,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --etag-compare %LOGDIR/etag%TESTNUMBER --et # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -If-None-Match: "21025-dc7-39462498" - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +If-None-Match: "21025-dc7-39462498" + "21025-dc7-11111" diff --git a/tests/data/test344 b/tests/data/test344 index 197c00489bdb..4621dd6a9f91 100644 --- a/tests/data/test344 +++ b/tests/data/test344 @@ -41,13 +41,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --etag-compare %LOGDIR/etag%TESTNUMBER --et # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -If-None-Match: "" - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +If-None-Match: "" + "21025-dc7-11111" diff --git a/tests/data/test345 b/tests/data/test345 index c6da676a83d8..9009beac670a 100644 --- a/tests/data/test345 +++ b/tests/data/test345 @@ -44,13 +44,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --etag-compare %LOGDIR/etag%TESTNUMBER --et # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -If-None-Match: "21025-dc7-39462498" - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +If-None-Match: "21025-dc7-39462498" + "21025-dc7-11111" diff --git a/tests/data/test346 b/tests/data/test346 index a94da860b0e2..816177ebc9d3 100644 --- a/tests/data/test346 +++ b/tests/data/test346 @@ -44,15 +44,15 @@ HTTP GET over proxy with credentials using blank passwords # - -GET http://remote.example/%TESTNUMBER HTTP/1.1 -Host: remote.example -Proxy-Authorization: Basic %b64[puser:]b64% -Authorization: Basic %b64[suser:]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://remote.example/%TESTNUMBER HTTP/1.1 +Host: remote.example +Proxy-Authorization: Basic %b64[puser:]b64% +Authorization: Basic %b64[suser:]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test347 b/tests/data/test347 index 606335c0d060..4940f0cc17d8 100644 --- a/tests/data/test347 +++ b/tests/data/test347 @@ -9,23 +9,23 @@ HTTP GET # Server-side -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked -Trailer: chunky-trailer -Connection: mooo -ETag: - -40 -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -30 -bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb -21;heresatest=moooo +HTTP/1.1 200 funky chunky!%CR +Server: fakeit/0.9 fakeitbad/1.0%CR +Transfer-Encoding: chunked%CR +Trailer: chunky-trailer%CR +Connection: mooo%CR +ETag: %CR +%CR +40%CR +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa%CR +30%CR +bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb%CR +21;heresatest=moooo%CR cccccccccccccccccccccccccccccccc - -0 -chunky-trailer: header data - +%CR +0%CR +chunky-trailer: header data%CR +%CR @@ -46,12 +46,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --etag-save %LOGDIR/etag%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test348 b/tests/data/test348 index 55e9d608ddc8..108e089444df 100644 --- a/tests/data/test348 +++ b/tests/data/test348 @@ -44,14 +44,14 @@ that FTP works so does it? - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -STOR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +STOR %TESTNUMBER +QUIT # 70 - CURLE_REMOTE_DISK_FULL diff --git a/tests/data/test349 b/tests/data/test349 index c1106f2ac3ca..07d9d07a0087 100644 --- a/tests/data/test349 +++ b/tests/data/test349 @@ -31,12 +31,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --fail-with-body # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 22 diff --git a/tests/data/test35 b/tests/data/test35 index 8abf22a301c2..f53117f036d6 100644 --- a/tests/data/test35 +++ b/tests/data/test35 @@ -35,14 +35,14 @@ http://%HOSTIP:%HTTPPORT/we/want/%TESTNUMBER --data-binary @%LOGDIR/test%TESTNUM # Verify data after the test has been "shot" - -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 47 -Content-Type: application/x-www-form-urlencoded - + +POST /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 47 +Content-Type: application/x-www-form-urlencoded + %hex[This%00 is binary data with an embedded NUL byte]hex% diff --git a/tests/data/test350 b/tests/data/test350 index 3eb8b80aa6bd..9bc9237836f2 100644 --- a/tests/data/test350 +++ b/tests/data/test350 @@ -41,15 +41,15 @@ ftp://%HOSTIP:%FTPPORT// --ftp-method multicwd # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD / -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD / +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test351 b/tests/data/test351 index ffa93e3e2987..4ac29ecee6e9 100644 --- a/tests/data/test351 +++ b/tests/data/test351 @@ -41,14 +41,14 @@ ftp://%HOSTIP:%FTPPORT// --ftp-method nocwd # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE A -LIST / -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE A +LIST / +QUIT diff --git a/tests/data/test352 b/tests/data/test352 index 0cc4d69fd1e4..2311bfa457f8 100644 --- a/tests/data/test352 +++ b/tests/data/test352 @@ -41,15 +41,15 @@ ftp://%HOSTIP:%FTPPORT// --ftp-method singlecwd # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD / -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD / +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test353 b/tests/data/test353 index a94828bd6b98..4b4889926363 100644 --- a/tests/data/test353 +++ b/tests/data/test353 @@ -41,14 +41,14 @@ ftp://%HOSTIP:%FTPPORT/ --ftp-method singlecwd # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test354 b/tests/data/test354 index dc6d732d8ba2..641cd01f8b5a 100644 --- a/tests/data/test354 +++ b/tests/data/test354 @@ -37,14 +37,14 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test355 b/tests/data/test355 index 67f7777ff504..5a5e7e70f388 100644 --- a/tests/data/test355 +++ b/tests/data/test355 @@ -44,12 +44,12 @@ h1 example.com 80 h1 %HOSTIP %HTTPPORT "20290222 22:19:28" 0 0 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test356 b/tests/data/test356 index 8d7cd45b17da..1162a4743394 100644 --- a/tests/data/test356 +++ b/tests/data/test356 @@ -50,12 +50,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --alt-svc "%LOGDIR/altsvc-%TESTNUMBER" # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # strip out the (dynamic) expire date from the file so that the rest diff --git a/tests/data/test357 b/tests/data/test357 index 8883cfffe80e..d0b7b7325f4a 100644 --- a/tests/data/test357 +++ b/tests/data/test357 @@ -61,20 +61,20 @@ http://%HOSTIP:%HTTPPORT/we/want/%TESTNUMBER -T %LOGDIR/test%TESTNUMBER.txt --ex # Verify data after the test has been "shot" - -PUT /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 1053701 -Expect: 100-continue - -PUT /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 1053701 - + +PUT /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 1053701 +Expect: 100-continue + +PUT /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 1053701 + %repeat[1053700 x x]% diff --git a/tests/data/test358 b/tests/data/test358 index 327662b41ba8..3bdd5b4b325e 100644 --- a/tests/data/test358 +++ b/tests/data/test358 @@ -11,15 +11,15 @@ HTTP/2 # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes -Alt-Svc: h2=":%HTTP2PORT", ma=315360000; persist=0 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes +Alt-Svc: h2=":%HTTP2PORT", ma=315360000; persist=0 + -foo- @@ -55,28 +55,28 @@ h2 %HOSTIP %HTTPPORT h2 %HOSTIP %HTTP2PORT "20290222 22:19:28" 0 0 # # Verify data after the test has been "shot" - -HTTP/1.1 101 Switching Protocols -Connection: Upgrade -Upgrade: h2c - -HTTP/2 200 -date: Tue, 09 Nov 2010 14:49:00 GMT -content-length: 6 -content-type: text/html -funny-head: yesyes -alt-svc: h2=":%HTTP2PORT", ma=315360000; persist=0 -via: 1.1 nghttpx - + +HTTP/1.1 101 Switching Protocols +Connection: Upgrade +Upgrade: h2c + +HTTP/2 200%SP +date: Tue, 09 Nov 2010 14:49:00 GMT +content-length: 6 +content-type: text/html +funny-head: yesyes +alt-svc: h2=":%HTTP2PORT", ma=315360000; persist=0 +via: 1.1 nghttpx + -foo- -HTTP/2 200 -date: Tue, 09 Nov 2010 14:49:00 GMT -content-length: 6 -content-type: text/html -funny-head: yesyes -alt-svc: h2=":%HTTP2PORT", ma=315360000; persist=0 -via: 1.1 nghttpx - +HTTP/2 200%SP +date: Tue, 09 Nov 2010 14:49:00 GMT +content-length: 6 +content-type: text/html +funny-head: yesyes +alt-svc: h2=":%HTTP2PORT", ma=315360000; persist=0 +via: 1.1 nghttpx + -foo- diff --git a/tests/data/test359 b/tests/data/test359 index 2dd898118fa9..1a2f9d73a892 100644 --- a/tests/data/test359 +++ b/tests/data/test359 @@ -11,15 +11,15 @@ HTTP/2 # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes -Alt-Svc: h2=":%HTTP2PORT", ma=315360000; persist=0 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes +Alt-Svc: h2=":%HTTP2PORT", ma=315360000; persist=0 + -foo- @@ -55,28 +55,28 @@ h2 %HOSTIP %HTTPSPORT h2 %HOSTIP %HTTP2PORT "20290222 22:19:28" 0 0 # # Verify data after the test has been "shot" - -HTTP/1.1 101 Switching Protocols -Connection: Upgrade -Upgrade: h2c - -HTTP/2 200 -date: Tue, 09 Nov 2010 14:49:00 GMT -content-length: 6 -content-type: text/html -funny-head: yesyes -alt-svc: h2=":%HTTP2PORT", ma=315360000; persist=0 -via: 1.1 nghttpx - + +HTTP/1.1 101 Switching Protocols +Connection: Upgrade +Upgrade: h2c + +HTTP/2 200%SP +date: Tue, 09 Nov 2010 14:49:00 GMT +content-length: 6 +content-type: text/html +funny-head: yesyes +alt-svc: h2=":%HTTP2PORT", ma=315360000; persist=0 +via: 1.1 nghttpx + -foo- -HTTP/2 200 -date: Tue, 09 Nov 2010 14:49:00 GMT -content-length: 6 -content-type: text/html -funny-head: yesyes -alt-svc: h2=":%HTTP2PORT", ma=315360000; persist=0 -via: 1.1 nghttpx - +HTTP/2 200%SP +date: Tue, 09 Nov 2010 14:49:00 GMT +content-length: 6 +content-type: text/html +funny-head: yesyes +alt-svc: h2=":%HTTP2PORT", ma=315360000; persist=0 +via: 1.1 nghttpx + -foo- diff --git a/tests/data/test36 b/tests/data/test36 index 1f055726bce8..5ca66c8d4683 100644 --- a/tests/data/test36 +++ b/tests/data/test36 @@ -16,11 +16,11 @@ Server: fakeit/0.9 fakeitbad/1.0 Transfer-Encoding: chunked Connection: mooo -2 +2%CR a - -ILLEGAL -bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb +%CR +ILLEGAL%CR +bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb%CR HTTP/1.1 200 funky chunky! @@ -52,12 +52,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER 56 - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test360 b/tests/data/test360 index f98d03a036cc..471f0c0f3dab 100644 --- a/tests/data/test360 +++ b/tests/data/test360 @@ -7,7 +7,7 @@ - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test361 b/tests/data/test361 index 4fbf3d5ea24e..c333a8ce0848 100644 --- a/tests/data/test361 +++ b/tests/data/test361 @@ -31,17 +31,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER http://%HOSTIP:%HTTPPORT/%TESTNUMBER --fail # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 22 diff --git a/tests/data/test362 b/tests/data/test362 index e8ce9731ed83..2259211adcce 100644 --- a/tests/data/test362 +++ b/tests/data/test362 @@ -37,15 +37,15 @@ that FTP works so does it? - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -STOR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +STOR %TESTNUMBER +QUIT diff --git a/tests/data/test363 b/tests/data/test363 index d2d9661f7088..82d86f2de250 100644 --- a/tests/data/test363 +++ b/tests/data/test363 @@ -21,13 +21,13 @@ Content-Length: 9 contents - -HTTP/1.1 200 Mighty fine indeed - + +HTTP/1.1 200 Mighty fine indeed + -HTTP/1.1 200 Mighty fine indeed - +HTTP/1.1 200 Mighty fine indeed%CR +%CR HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake swsclose @@ -67,21 +67,21 @@ http://test.%TESTNUMBER:%HTTPPORT/we/want/that/page/%TESTNUMBER -p -x %HOSTIP:%P # # Verify data after the test has been "shot" - -CONNECT test.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: test.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT test.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: test.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + - -POST /we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: test.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 27 -Content-Type: application/x-www-form-urlencoded - + +POST /we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: test.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 27 +Content-Type: application/x-www-form-urlencoded + datatopost=ohthatsfunyesyes diff --git a/tests/data/test364 b/tests/data/test364 index 5a02d7022741..8ee8969c5048 100644 --- a/tests/data/test364 +++ b/tests/data/test364 @@ -37,13 +37,13 @@ HTTPS PUT of small file # Verify data after the test has been "shot" - -PUT /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 1201 - + +PUT /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 1201 + %repeat[200 x banana]% diff --git a/tests/data/test365 b/tests/data/test365 index 40f0540bcc13..0add463decc2 100644 --- a/tests/data/test365 +++ b/tests/data/test365 @@ -19,10 +19,10 @@ Transfer-Encoding: chunked Content-Type: text/html Funny-head: yesyes -10 -chunked data fun -0 - +10%CR +chunked data fun%CR +0%CR +%CR HTTP/1.1 200 OK @@ -54,12 +54,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test366 b/tests/data/test366 index d2193ff14a5c..03fd9933cfcb 100644 --- a/tests/data/test366 +++ b/tests/data/test366 @@ -37,12 +37,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --retry 2 --retry-max-time 10 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test367 b/tests/data/test367 index bd3bc0a88783..335d59e6627e 100644 --- a/tests/data/test367 +++ b/tests/data/test367 @@ -36,13 +36,13 @@ http://:example@%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[:example]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[:example]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test368 b/tests/data/test368 index 69b63e94f6c6..188aeb990250 100644 --- a/tests/data/test368 +++ b/tests/data/test368 @@ -37,13 +37,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -r 4 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=4- -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=4- +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test369 b/tests/data/test369 index 17a6b4480adf..b86f582a05a7 100644 --- a/tests/data/test369 +++ b/tests/data/test369 @@ -36,12 +36,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --etag-save %LOGDIR/nowhere/etag%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test37 b/tests/data/test37 index d5e79824c6e2..c6fbd1076eaf 100644 --- a/tests/data/test37 +++ b/tests/data/test37 @@ -33,12 +33,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER 52 - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test371 b/tests/data/test371 index b58237f35960..e1fbd894a68d 100644 --- a/tests/data/test371 +++ b/tests/data/test371 @@ -42,12 +42,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -o %LOGDIR/dump -o %LOGDIR/dump2 --no-progr # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + Warning: Got more output options than URLs diff --git a/tests/data/test372 b/tests/data/test372 index e1cf356ddd7a..f399f93cd0a4 100644 --- a/tests/data/test372 +++ b/tests/data/test372 @@ -7,14 +7,14 @@ HTTP GET - -HTTP/1.1 200 OK -Date: Thu, 22 Jul 2010 11:22:33 GMT -Connection: close -Content-Type: text/html -X-Control: swsclose -Content-Length: 2 - + +HTTP/1.1 200 OK +Date: Thu, 22 Jul 2010 11:22:33 GMT +Connection: close +Content-Type: text/html +X-Control: swsclose +Content-Length: 2 + %hex[%00]hex% @@ -35,12 +35,12 @@ proxy - -GET /binary-zero-in-data-section/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /binary-zero-in-data-section/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 0 diff --git a/tests/data/test373 b/tests/data/test373 index 5a51fe968f13..10f8404e0f33 100644 --- a/tests/data/test373 +++ b/tests/data/test373 @@ -9,37 +9,37 @@ chunked Transfer-Encoding -HTTP/1.1 200 OK -Date: Thu, 22 Jul 2010 11:22:33 GMT -Connection: close -Content-Type: text/html -Transfer-Encoding: chunked -X-Control: swsclose - -100 +HTTP/1.1 200 OK%CR +Date: Thu, 22 Jul 2010 11:22:33 GMT%CR +Connection: close%CR +Content-Type: text/html%CR +Transfer-Encoding: chunked%CR +X-Control: swsclose%CR +%CR +100%CR %repeat[255 x %00]% - -100 +%CR +100%CR %repeat[255 x %00]% - -100 +%CR +100%CR %repeat[255 x %00]% - -100 +%CR +100%CR %repeat[255 x %00]% - -0 - +%CR +0%CR +%CR - -HTTP/1.1 200 OK -Date: Thu, 22 Jul 2010 11:22:33 GMT -Connection: close -Content-Type: text/html -Transfer-Encoding: chunked -X-Control: swsclose - + +HTTP/1.1 200 OK +Date: Thu, 22 Jul 2010 11:22:33 GMT +Connection: close +Content-Type: text/html +Transfer-Encoding: chunked +X-Control: swsclose + %repeat[255 x %00]% %repeat[255 x %00]% %repeat[255 x %00]% @@ -64,12 +64,12 @@ http://%HOSTIP:%HTTPPORT/chunked-transfer-encoding/%TESTNUMBER - -GET /chunked-transfer-encoding/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /chunked-transfer-encoding/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 0 diff --git a/tests/data/test374 b/tests/data/test374 index d85bb7855f6a..6f10edfe3808 100644 --- a/tests/data/test374 +++ b/tests/data/test374 @@ -8,13 +8,13 @@ gif data - -HTTP/1.1 200 OK -Date: Thu, 22 Jul 2010 11:22:33 GMT -Connection: close -Content-Type: image/gif -X-Control: swsclose - + +HTTP/1.1 200 OK +Date: Thu, 22 Jul 2010 11:22:33 GMT +Connection: close +Content-Type: image/gif +X-Control: swsclose + %hex[%47%49%46%38%39%61%14%00%14%00%a1%04%00%fe%00%00%ff%00%00%1e%42%ee%1f%42%ef%21%ff%0b%4e%45%54%53%43%41%50%45%32%2e%30%03%01%00%00%00%21%fe%24%43%72%65%61%74%65%64%20%62%79%20%46%61%62%69%61%6e%20%4b%65%69%6c%20%77%69%74%68%20%54%68%65%20%47%49%4d%50%00%21%f9%04%00%0a%00%ff%00%2c%00%00%00%00%14%00%14%00%00%02%11%8c%8f%a9%cb%ed%0f%a3%9c%b4%da%8b%b3%de%bc%fb%af%15%00%21%f9%04%01%0a%00%02%00%2c%00%00%00%00%14%00%14%00%00%02%11%9c%8f%a9%cb%ed%0f%a3%9c%b4%da%8b%b3%de%bc%fb%af%15%00%21%f9%04%00%0a%00%ff%00%2c%00%00%00%00%14%00%14%00%00%02%11%94%8f%a9%cb%ed%0f%a3%9c%b4%da%8b%b3%de%bc%fb%af%15%00%21%f9%04%00%0a%00%ff%00%2c%00%00%00%00%14%00%14%00%00%02%11%84%8f%a9%cb%ed%0f%a3%9c%b4%da%8b%b3%de%bc%fb%af%15%00%3b]hex% @@ -35,12 +35,12 @@ http://%HOSTIP:%HTTPPORT/gif/%TESTNUMBER - -GET /gif/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /gif/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 0 diff --git a/tests/data/test376 b/tests/data/test376 index 6913788a3b2d..16c28002d6aa 100644 --- a/tests/data/test376 +++ b/tests/data/test376 @@ -45,12 +45,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -o %LOGDIR/save-%TESTNUMBER --remove-on-err 18 - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # the file should be empty now diff --git a/tests/data/test378 b/tests/data/test378 index 9777b878b966..09279fc1d714 100644 --- a/tests/data/test378 +++ b/tests/data/test378 @@ -29,7 +29,7 @@ Reject using -T and -d at once 2 -Warning: You can only select one HTTP request method! You asked for both PUT +Warning: You can only select one HTTP request method! You asked for both PUT%SP Warning: (-T, --upload-file) and POST (-d, --data). diff --git a/tests/data/test379 b/tests/data/test379 index 0d727ccf26b5..3e452f1d3063 100644 --- a/tests/data/test379 +++ b/tests/data/test379 @@ -48,12 +48,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -o %LOGDIR/save --remove-on-error --no-clob 18 - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # this file should be untouched diff --git a/tests/data/test38 b/tests/data/test38 index abd2d3e362ae..d48e743a4600 100644 --- a/tests/data/test38 +++ b/tests/data/test38 @@ -41,13 +41,13 @@ download on. 33 - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=78- -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=78- +User-Agent: curl/%VERSION +Accept: */* + # the download target file must remain untouched diff --git a/tests/data/test380 b/tests/data/test380 index f9ccafdabc28..6fe29288b641 100644 --- a/tests/data/test380 +++ b/tests/data/test380 @@ -48,14 +48,14 @@ machine %HOSTIP login mary password yram # # Verify data after the test has been "shot" - -USER mary -PASS yram -PWD -EPSV -TYPE A -LIST -QUIT + +USER mary +PASS yram +PWD +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test381 b/tests/data/test381 index 41b9eb779c74..9ec9b5a89ba9 100644 --- a/tests/data/test381 +++ b/tests/data/test381 @@ -52,14 +52,14 @@ machine %HOSTIP login mary password yram # # Verify data after the test has been "shot" - -USER mary -PASS drfrank -PWD -EPSV -TYPE A -LIST -QUIT + +USER mary +PASS drfrank +PWD +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test383 b/tests/data/test383 index 2094460db3ab..2f4191ad8dbc 100644 --- a/tests/data/test383 +++ b/tests/data/test383 @@ -42,14 +42,14 @@ HTTP with --json # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Content-Type: application/json -Accept: application/json -Content-Length: 21 - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Content-Type: application/json +Accept: application/json +Content-Length: 21 + { "drink": "coffee" } diff --git a/tests/data/test384 b/tests/data/test384 index 50f94c009c9d..33cd9f5da082 100644 --- a/tests/data/test384 +++ b/tests/data/test384 @@ -45,14 +45,14 @@ HTTP with --json from stdin # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: foobar/* -Content-Type: application/json -Content-Length: 22 - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: foobar/* +Content-Type: application/json +Content-Length: 22 + { "drink": "coffee" } diff --git a/tests/data/test385 b/tests/data/test385 index c28a9f08f6fd..fbcebc7ab4b3 100644 --- a/tests/data/test385 +++ b/tests/data/test385 @@ -42,14 +42,14 @@ HTTP with --json x 2 # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Content-Type: drinks/hot -Accept: application/json -Content-Length: 41 - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Content-Type: drinks/hot +Accept: application/json +Content-Length: 41 + { "drink": "coffee", "crunch": "cookie" } diff --git a/tests/data/test386 b/tests/data/test386 index c49d75b2aa62..c267ef62ae13 100644 --- a/tests/data/test386 +++ b/tests/data/test386 @@ -56,19 +56,19 @@ HTTP with --json + --next # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Content-Type: application/json -Accept: application/json -Content-Length: 21 - -{ "drink": "coffee" }GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Content-Type: application/json +Accept: application/json +Content-Length: 21 + +{ "drink": "coffee" }GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test387 b/tests/data/test387 index a6d2ab03fcab..d068be96b859 100644 --- a/tests/data/test387 +++ b/tests/data/test387 @@ -9,7 +9,7 @@ gzip # # Server-side - + HTTP/1.1 200 OK Content-Length: 6 Transfer-Encoding: gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip,gzip @@ -38,14 +38,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -sS --tr-encoding # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -TE: gzip -Connection: TE - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +TE: gzip +Connection: TE + # CURLE_BAD_CONTENT_ENCODING is 61 diff --git a/tests/data/test388 b/tests/data/test388 index 23a5cc7c4252..b8e426f906f3 100644 --- a/tests/data/test388 +++ b/tests/data/test388 @@ -10,35 +10,35 @@ HTTP Digest auth # Server-side # First reply back and ask for Digest auth - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # second reply back - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 200 OK -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 200 OK +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! @@ -46,24 +46,24 @@ This IS the real page! # This is the second request, and this sends back a response saying that # the request contained stale data. We want an update. Set swsbounce to # bounce on to data1003 on the second request. - -HTTP/1.1 401 Authorization re-negotiation please swsbounce -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, nonce="999999", stale=true, qop="crazy, auth" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization re-negotiation please swsbounce +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, nonce="999999", stale=true, qop="crazy, auth" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # The second request to the 1002 section will bounce this one back instead # thanks to the swsbounce keyword up there - -HTTP/1.1 200 OK -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 30 - + +HTTP/1.1 200 OK +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 30 + This IS the second real page! @@ -91,66 +91,66 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER0001 -u testuser:testpass --digest http://%H ^Authorization.*cnonce - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER0001", response="ea598bbfdb5c54b7352c977e3885e44d" -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER0002", response="921a8e6db782d6359db1f40d9ed7e6a6" -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="999999", uri="/%TESTNUMBER0002", cnonce="MTA4MzIr", nc="00000001", qop="auth", response="25291c357671604a16c0242f56721c07", algorithm=MD5 -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER0001", response="ea598bbfdb5c54b7352c977e3885e44d" +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER0002", response="921a8e6db782d6359db1f40d9ed7e6a6" +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="999999", uri="/%TESTNUMBER0002", cnonce="MTA4MzIr", nc="00000001", qop="auth", response="25291c357671604a16c0242f56721c07", algorithm=MD5 +User-Agent: curl/%VERSION +Accept: */* + - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 200 OK -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 200 OK +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 401 Authorization re-negotiation please swsbounce -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, nonce="999999", stale=true, qop="crazy, auth" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 200 OK -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 30 - +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 401 Authorization re-negotiation please swsbounce +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", algorithm=MD5, nonce="999999", stale=true, qop="crazy, auth" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 200 OK +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 30 + This IS the second real page! diff --git a/tests/data/test389 b/tests/data/test389 index a38d70eef636..65bf1e9ad964 100644 --- a/tests/data/test389 +++ b/tests/data/test389 @@ -46,12 +46,12 @@ local-http # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: curlmachine.localhost:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: curlmachine.localhost:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test39 b/tests/data/test39 index 1829617499f7..1ca61c80874c 100644 --- a/tests/data/test39 +++ b/tests/data/test39 @@ -7,12 +7,12 @@ HTTP FORMPOST # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 10 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 10 + blablabla @@ -46,66 +46,66 @@ foo ^(Content-Type: multipart/form-data;|-------).* -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 1234 -Content-Type: multipart/form-data; boundary=----------------------------24e78000bd32 - -------------------------------24e78000bd32 -Content-Disposition: form-data; name="name" - -daniel -------------------------------24e78000bd32 -Content-Disposition: form-data; name="tool" - -curl -------------------------------24e78000bd32 -Content-Disposition: form-data; name="str1" - -@literal -------------------------------24e78000bd32 -Content-Disposition: form-data; name="str2" - - diff --git a/tests/data/test391 b/tests/data/test391 index 279c562de317..9989debe3e82 100644 --- a/tests/data/test391 +++ b/tests/data/test391 @@ -56,17 +56,17 @@ http://%HOSTIP:%HTTPPORT/../../%TESTNUMBER --path-as-is -L # # Verify data after the test has been "shot" - -GET /../../%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /../../%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test392 b/tests/data/test392 index a9f756d94828..a6b20cb6c6d3 100644 --- a/tests/data/test392 +++ b/tests/data/test392 @@ -9,15 +9,15 @@ secure - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 4 -Content-Type: text/html -Funny-head: yesyes -Set-Cookie: foobar=name; path=/; secure - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 4 +Content-Type: text/html +Funny-head: yesyes +Set-Cookie: foobar=name; path=/; secure + boo @@ -45,18 +45,18 @@ local-http # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: localhost:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: localhost:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Cookie: foobar=name - + +GET /%TESTNUMBER HTTP/1.1 +Host: localhost:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: localhost:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Cookie: foobar=name + diff --git a/tests/data/test393 b/tests/data/test393 index a9cad7079205..ddd44aae528b 100644 --- a/tests/data/test393 +++ b/tests/data/test393 @@ -47,12 +47,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --max-filesize 2000000 63 - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test394 b/tests/data/test394 index 3533447f578d..c6b4556330ff 100644 --- a/tests/data/test394 +++ b/tests/data/test394 @@ -46,12 +46,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER 8 - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test395 b/tests/data/test395 index 8dbd4e964d45..e787397e4f83 100644 --- a/tests/data/test395 +++ b/tests/data/test395 @@ -42,12 +42,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test396 b/tests/data/test396 index f5606dde77a1..5dd3faed1352 100644 --- a/tests/data/test396 +++ b/tests/data/test396 @@ -9,29 +9,29 @@ compressed # # Server-side - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: zstd -Content-Length: 1309 - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Content-Encoding: zstd +Content-Length: 1309 + %hex[%28%b5%2f%fd%64%b1%12%7d%28%00%86%3f%bd%28%e0%d0%ba%01%b0%03%b6%72%a6%27%9f%a8%20%8c%5a%e1%02%85%fd%81%fe%40%32%f0%ef%9a%08%df%c9%f3%9b%10%a3%65%98%a1%8d%c0%cc%0b%b7%00%b3%00%ac%00%f3%21%b7%f6%a4%da%73%bb%79%1a%1e%dd%da%fb%ba%6e%9b%3d%d0%be%b3%49%9f%ac%f1%51%da%6d%18%52%ef%34%ec%ba%ed%bc%a6%b7%58%19%46%aa%81%aa%1a%a8%a6%77%51%90%89%82%58%d3%54%61%92%eb%18%56%aa%01%6a%1a%b0%a6%47%55%90%6b%82%5c%95]hex% %hex[%85%c9%96%32%6a%fa%46%c9%b0%a2%26%14%26%a7%e6%3d%08%83%10%f6%90%57%4a%96%34%41%1e%b2%6d%58%d6%be%d0%62%c6%b7%ab%74%63%6f%9d%6f%df%30%0f%70%f7%76%1e%cf%c1%92%c1%54%60%1e%a7%ce%fb%93%42%ae%d6%16%d6%b9%67%89%a8%c8%1c%40%20%00%40%08%2b%78%50%90%8a%e4%ba%20%10%18%86%07%01%a7%4e%69%b5%da%ef%31%49%d4%83%a0%da%f9%de%9e%47%b7%8c%02%18%d3%53%fb%9b%13%3b%4e%8d%14%72%4c%d5%f3%f6%58%7b%df%d7%99%bd%f6%f8%da%bb%93%81%1c%52%77%ee%8b%34%32%c8%21%db%1b%c3%72%ef%e7%f7%cc%b0%ce%bd%f5%ce%bc%1b%6e%d4%e6%66%5e%6f%0d%72%5c%30%98%6c%eb%ea%75%2b%dd%62%fc%47%ee%45%b2%b7%ee%db%21%47%24%a3%a5%5c%f7%be%e7%85%b5%da%8b%6e%17%dd%b7%1c%24%3e%4a%1b%03%72%7c%7c%91%84%65%21%02%42%21%b2%5c%18%12%5e%14%61%80%70%79%51%c6%f2%70%b1%64%5e%94%39%60%40%48%80%1c%51%44%26%e1%45%98%28%22%93%59%78%7f%dd%72%5c%f7%ef%32%3c%29%23%de%aa%f1%df%41%8e%6f%3a%37%1e%df%cf%c7%50%7a%ef%cd%d7%e8%f7%5d%24%26%5e%cb%b5%b5%49%ed%06%d9%ad%fb%dc%20%bf%e7%3d%ef%61%88%f5%c7%8e%e6%1d%64%f9%59%c6%db%8c%b7%59%cb%ac%e5%c6%f9%c6%39%64%8e%a5%cd%a9%b1%a3%71%f3%c3%cd%4f%f5%c9%aa%4f%f6%e1%dc%0f%e7%42%66%9f%b2%bd%37%db%61%c8%fc%58%73%22%a7%a1%de%31%bc%b4%8b%9b%46%c0%34%1d%ad%46%cf%22%d8%57%3b%2f%37%5d%fb%ac%7b%86%91%8b%21%55%61%b7%76%56%d3%30%9c%24%d2%15%9d%a1%64%62%48%5d%52%84%62%68%49%24%ab%22%99%78%a4%1d%67%39%86%95%09%85%5d%d4%e8%0c%27%94%14%c1%6e%6d%cd%9b%63%48%91%48%d6%45%91%60%ed%56%7b%8d%c6%9d%34%de%e9%61%08%39%a4%bf%b5%b7%6a%3d%0c%21%8c%e1%b7%47%88%56%45%24%96%45%a3%dc%66%2f%50%ac%a9%8a%64%93%7e%28%49%a4%a2%22%d6%44%a3%65%28%10%f0%2e%18%4c%6d%ee%ce%cb%d0%9a%58%14%4c%4e%86%d3%43%6e%9b%d5%da%1f%04%cd%69%dc%a7%d1%53%ab%2d%6b%73%2d%21%c3%88%84%9a%2a%57%c5%9a%50%d3%34%55%d4%75%51%91%49%55%31%ac%3c%d6%ef%8d%75%6e%d3%19%32%43%ef%8a%01%81%35%b5%ce%90%bd%25%27%66%1b%d4%3b%86%1c%ef%ac%f6%c5%3c%da%b3%c6%77%db%b9%5d%64%88%65%5b%d7%b9%9a%6b%3b%5f%bb%5d%7b%c8%72%4a%ae%69%42%61%58%49%15%25%51%30%4d%d3%76%cd%65%78%79%5b%37%af%db%af%f6%e0%51%70%86%c1%01%eb%0f%80%e8%a0%81%95%73%68%66%40%06%00%20%80%41%01%40%42%c2%20%23%4a%03%21%f3%e7%0c%f9%1a%bf%b7%48%ca]hex% %hex[%ce%88%93%e0%97%05%94%c4%49%f0%4d%01%55%d0%62%92%5f%16%24%63%8d%05%9e%44%ae%c1%39%87%63%a3%bb%91%d6%0e%76%79%d0%b6%68%7d%bb%9c%a8%a4%7c%aa%58%ff%82%f3%36%a4%ff%09%b4%c5%f5%7f%85%c7%bf%8b%32%f9%3f%72%50%30%87%b3%d6%26%26%6c%39%86%71%96%a3%02%d9%5a%00%b4%fe%3e%eb%4c%cc%89%46%76%37%2a%bc%11%76%3f%f0%5d%31%66%8e%71%6e%71%f6%6e%ff%de%03%99%f8%de%10%33%85%cf%40%b4%7f%76%20%61%65%2c%23%ed%98%3b%d6%15%5c%6b%62%33%70%09%4c%db%32%e6%3e%8a%f6%39%00%28%b7%b0%e5%b4%42%44%9a%8c%62%a9%68%19%5c%36%33%42%47%7f%86%65%49%e7%89%68%1b%31%e8%0d%b8%b8%8c%ad%84%2d%b8%26%c4%d6%19%4e%dc%34%13%f4%34%bd%ea%6c%d3%cc%22%59%64%8e%3d%67%f7%92%1f%d9%6d%1c%42%86%e9%60%36%86%17%68%da%d5%b8%e0%e4%c0%1e%c4%16%b9%19%64%89%63%69%06%4e%c4%46%c2%41%1d%dc%07%79%aa%21%b7%cd%64%a6%5d%01%9b%ed%5c%07%cc%fb%ec%91%49%43%c8%bb%9e%9d%73%e6%94%61%1a%8c%8c%b2%bd%c6%75%0e%7b%3d%4b%64%6e%d8%6d%d8%3b%93%87%10%76%4d%bb%86%99%4b%c3%2e%1b%91%8f%ad%99%01%35%bb%13%0c%c0%d0%06%0d%2b%af%f1%0c%d8%65%b9%00%a7%fd%81%98%91%94%83%40%cc%f4%39%96%da%a0%05%21%42%18%d3%88%1d%81%83%32%38%39%30%da%61%8b%5b%08%99%1d%d6%70%62%81%88%80%3c%b0%ce%b8%99%d0%10%d2%cc%44%6f%ce%17%48%11%73%a6%5c%7c%37%68%f3%d0%ee%60%b9%2f%c6%78%d7%da%aa%0e%eb%c8%ba%ce%cd%2a%09%2a%ad%9a%25%46%9d%2d%08%05%b4%b5%7a%51%c7%f3%3b%0d%bd%ea%90%6b%d3%f9%ac%fa%b1%e6%9d%3b%39%8e%79%82%d1%ea%8b%50%a5%7b%da%5e%18%9b%71%d8%92%49%e6%70%4b%18%40%fe%75%35%44%19%1a%4b%5c%8e%dd%b8%f3%9c%a8%6c%d2%5e%5e%ff%d2%f6%9c%c7%de%78%2e%3a%86%25%df%a9%80%6e%38%8c%8d%85%c3%90%8c%08%fb%b3%74%24%c8%87%ce%bb%3b%cb%75%af%48%e1%59]hex% -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: zstd -Content-Length: 1309 - +HTTP/1.1 200 OK%CR +Date: Mon, 29 Nov 2004 21:56:53 GMT%CR +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29%CR +Vary: Accept-Encoding%CR +Content-Type: text/html; charset=ISO-8859-1%CR +Content-Encoding: zstd%CR +Content-Length: 1309%CR +%CR @@ -42,15 +42,15 @@ Content-Length: 1309 curl curl and libcurl Command line tool and library for client-side URL transfers. - curl and libcurl is a tool for transferring files -using URL syntax. It supports HTTP, HTTPS, FTP, -FTPS, DICT, TELNET, LDAP, FILE, and GOPHER, as -well as HTTP-post, HTTP-put, cookies, FTP upload, -resumed transfers, passwords, portnumbers, SSL -certificates, Kerberos, and proxies. It is powered -by libcurl, the client-side URL transfer library. -There are bindings to libcurl for over 20 -languages and environments. + curl and libcurl is a tool for transferring files%CR +using URL syntax. It supports HTTP, HTTPS, FTP,%CR +FTPS, DICT, TELNET, LDAP, FILE, and GOPHER, as%CR +well as HTTP-post, HTTP-put, cookies, FTP upload,%CR +resumed transfers, passwords, portnumbers, SSL%CR +certificates, Kerberos, and proxies. It is powered%CR +by libcurl, the client-side URL transfer library.%CR +There are bindings to libcurl for over 20%CR +languages and environments.%CR 5784.57 3.16 @@ -171,13 +171,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --compressed s/^Accept-Encoding: [a-zA-Z, ]*/Accept-Encoding: xxx/ - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Accept-Encoding: xxx - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Accept-Encoding: xxx + diff --git a/tests/data/test397 b/tests/data/test397 index 7528cd35595b..9048087a185c 100644 --- a/tests/data/test397 +++ b/tests/data/test397 @@ -11,156 +11,29 @@ compressed # Length of not-encoded content is 16512 what is greater than default value of # CURL_MAX_WRITE_SIZE (16384) - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: zstd -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Content-Encoding: zstd +Content-Length: 47 + %hex[%28%b5%2f%fd%64%80%3f%0d%01%00%88%30%31%32%33%34%35%36%37%38%39%41%42%43%44%45%46]hex% %hex[%04%00%7c%9f%60%78%00%04%1a%1d%d2%ab%4d%3a%97%82%af%b9%9c]hex% - -HTTP/1.1 200 OK -Date: Mon, 29 Nov 2004 21:56:53 GMT -Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 -Vary: Accept-Encoding -Content-Type: text/html; charset=ISO-8859-1 -Content-Encoding: zstd -Content-Length: 47 - -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF -0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF + +HTTP/1.1 200 OK +Date: Mon, 29 Nov 2004 21:56:53 GMT +Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29 +Vary: Accept-Encoding +Content-Type: text/html; charset=ISO-8859-1 +Content-Encoding: zstd +Content-Length: 47 + +%repeat[128 x 0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF%0a]% @@ -188,13 +61,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --compressed s/^Accept-Encoding: [a-zA-Z, ]*/Accept-Encoding: xxx/ - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Accept-Encoding: xxx - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Accept-Encoding: xxx + diff --git a/tests/data/test398 b/tests/data/test398 index eab125272cac..2f0971165231 100644 --- a/tests/data/test398 +++ b/tests/data/test398 @@ -46,12 +46,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 8 diff --git a/tests/data/test4 b/tests/data/test4 index 58e1650b0739..8b0479c1f8b4 100644 --- a/tests/data/test4 +++ b/tests/data/test4 @@ -37,25 +37,25 @@ Replaced internal and added custom HTTP headers # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -extra-header: here -Accept: replaced -X-Custom-Header: -X-Test: foo; -X-Test2: foo; - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -extra-header: here -Accept: replaced -X-Custom-Header: -X-Test: foo; -X-Test2: foo; - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +extra-header: here +Accept: replaced +X-Custom-Header: +X-Test: foo;%SP +X-Test2: foo; + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +extra-header: here +Accept: replaced +X-Custom-Header: +X-Test: foo;%SP +X-Test2: foo; + diff --git a/tests/data/test40 b/tests/data/test40 index 16e9426c865d..959a7505dc08 100644 --- a/tests/data/test40 +++ b/tests/data/test40 @@ -9,32 +9,32 @@ followlocation # # Server-side - -HTTP/1.1 302 OK swsclose -Location: ../moo.html/?name=d a niel&testcase=/%TESTNUMBER0002 -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.1 302 OK swsclose +Location: ../moo.html/?name=d a niel&testcase=/%TESTNUMBER0002%repeat[4 x ]% +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + - -HTTP/1.1 200 OK swsclose -Location: this should be ignored -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.1 200 OK swsclose +Location: this should be ignored +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + body - -HTTP/1.1 302 OK swsclose -Location: ../moo.html/?name=d a niel&testcase=/%TESTNUMBER0002 -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - -HTTP/1.1 200 OK swsclose -Location: this should be ignored -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.1 302 OK swsclose +Location: ../moo.html/?name=d a niel&testcase=/%TESTNUMBER0002%repeat[4 x ]% +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + +HTTP/1.1 200 OK swsclose +Location: this should be ignored +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + body @@ -56,17 +56,17 @@ http://%HOSTIP:%HTTPPORT/we/are/all/twits/%TESTNUMBER -L # # Verify data after the test has been "shot" - -GET /we/are/all/twits/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /we/are/all/moo.html/?name=d+a+niel&testcase=/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/are/all/twits/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /we/are/all/moo.html/?name=d+a+niel&testcase=/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test400 b/tests/data/test400 index 47fdd49e3ea7..32f85f856ef7 100644 --- a/tests/data/test400 +++ b/tests/data/test400 @@ -45,16 +45,16 @@ FTPS dir list PASV unencrypted data # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PBSZ 0 -PROT C -PWD -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PBSZ 0 +PROT C +PWD +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test4000 b/tests/data/test4000 index 0f9e0d528fa5..147757526bc1 100644 --- a/tests/data/test4000 +++ b/tests/data/test4000 @@ -40,12 +40,12 @@ HTTPS GET with ECH GREASE # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test401 b/tests/data/test401 index 8ff16a5c0dde..27752cd8d92b 100644 --- a/tests/data/test401 +++ b/tests/data/test401 @@ -42,16 +42,16 @@ that FTPS works so does it? - -USER anonymous -PASS ftp@example.com -PBSZ 0 -PROT C -PWD -EPSV -TYPE I -STOR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PBSZ 0 +PROT C +PWD +EPSV +TYPE I +STOR %TESTNUMBER +QUIT diff --git a/tests/data/test402 b/tests/data/test402 index a62267dd1523..a038efd3c88a 100644 --- a/tests/data/test402 +++ b/tests/data/test402 @@ -28,9 +28,9 @@ FTP SSL required on non-SSL server 64 - -AUTH SSL -AUTH TLS + +AUTH SSL +AUTH TLS diff --git a/tests/data/test403 b/tests/data/test403 index f451bf8f4335..20609c2d1360 100644 --- a/tests/data/test403 +++ b/tests/data/test403 @@ -47,17 +47,17 @@ FTPS with CCC not supported by server # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PBSZ 0 -PROT C -CCC -PWD -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PBSZ 0 +PROT C +CCC +PWD +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test406 b/tests/data/test406 index 9cd5047d85e7..0e1b70ebfc4a 100644 --- a/tests/data/test406 +++ b/tests/data/test406 @@ -50,16 +50,16 @@ FTPS dir list, PORT with specified IP ^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3} ^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\| - -USER anonymous -PASS ftp@example.com -PBSZ 0 -PROT C -PWD -PORT 127,0,0,1,243,212 -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PBSZ 0 +PROT C +PWD +PORT 127,0,0,1,243,212 +TYPE A +LIST +QUIT diff --git a/tests/data/test407 b/tests/data/test407 index 33a07cd12694..edbd188c6e9c 100644 --- a/tests/data/test407 +++ b/tests/data/test407 @@ -39,22 +39,22 @@ data blobb # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PBSZ 0 -PROT C -PWD -CWD a -CWD path -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -EPSV -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PBSZ 0 +PROT C +PWD +CWD a +CWD path +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +EPSV +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test408 b/tests/data/test408 index 13c9c51179c2..e60c771617bf 100644 --- a/tests/data/test408 +++ b/tests/data/test408 @@ -40,19 +40,19 @@ Moooooooooooo ^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3} ^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\| - -USER anonymous -PASS ftp@example.com -PBSZ 0 -PROT C -PWD -CWD CWD -CWD STOR -CWD RETR -PORT 127,0,0,1,5,109 -TYPE I -STOR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PBSZ 0 +PROT C +PWD +CWD CWD +CWD STOR +CWD RETR +PORT 127,0,0,1,5,109 +TYPE I +STOR %TESTNUMBER +QUIT Moooooooooooo diff --git a/tests/data/test409 b/tests/data/test409 index f7a014248c82..872261b28f69 100644 --- a/tests/data/test409 +++ b/tests/data/test409 @@ -42,16 +42,16 @@ that FTP works so does it? - -USER anonymous -PASS ftp@example.com -PBSZ 0 -PROT C -PWD -EPSV -TYPE I -STOR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PBSZ 0 +PROT C +PWD +EPSV +TYPE I +STOR %TESTNUMBER +QUIT diff --git a/tests/data/test410 b/tests/data/test410 index f947fcdc1d4f..3eb4eb4c8b07 100644 --- a/tests/data/test410 +++ b/tests/data/test410 @@ -43,13 +43,13 @@ Long: %repeat[3500 x header content]% # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* -Long: %repeat[3500 x header content]% - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* +Long: %repeat[3500 x header content]% + diff --git a/tests/data/test412 b/tests/data/test412 index 4c90c98ec1e0..7a8e83e68524 100644 --- a/tests/data/test412 +++ b/tests/data/test412 @@ -52,13 +52,13 @@ h1 whohoo 12345 h1 %HOSTIP %HTTPPORT "20290222 22:19:28" 0 0 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: whohoo.:12345 -User-Agent: curl/%VERSION -Accept: */* -Alt-Used: %HOSTIP:%HTTPPORT - + +GET /%TESTNUMBER HTTP/1.1 +Host: whohoo.:12345 +User-Agent: curl/%VERSION +Accept: */* +Alt-Used: %HOSTIP:%HTTPPORT + diff --git a/tests/data/test413 b/tests/data/test413 index 913a444d9ff2..e365b1dfea0a 100644 --- a/tests/data/test413 +++ b/tests/data/test413 @@ -52,13 +52,13 @@ h1 whohoo. 12345 h1 %HOSTIP %HTTPPORT "20290222 22:19:28" 0 0 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: whohoo:12345 -User-Agent: curl/%VERSION -Accept: */* -Alt-Used: %HOSTIP:%HTTPPORT - + +GET /%TESTNUMBER HTTP/1.1 +Host: whohoo:12345 +User-Agent: curl/%VERSION +Accept: */* +Alt-Used: %HOSTIP:%HTTPPORT + diff --git a/tests/data/test414 b/tests/data/test414 index 8a697ae125c6..936cf72b05fa 100644 --- a/tests/data/test414 +++ b/tests/data/test414 @@ -62,23 +62,23 @@ https://attack.invalid:%HTTPSPORT/a/b/%TESTNUMBER --insecure -c %LOGDIR/cookie%T # # Verify data after the test has been "shot" - -GET /a/b/%TESTNUMBER HTTP/1.1 -Host: attack.invalid:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /a/b/%TESTNUMBER0002 HTTP/1.1 -Host: attack.invalid:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /a/b/%TESTNUMBER0003 HTTP/1.1 -Host: attack.invalid:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* -Cookie: SESSIONID=originaltoken; second=originaltoken - + +GET /a/b/%TESTNUMBER HTTP/1.1 +Host: attack.invalid:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /a/b/%TESTNUMBER0002 HTTP/1.1 +Host: attack.invalid:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /a/b/%TESTNUMBER0003 HTTP/1.1 +Host: attack.invalid:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* +Cookie: SESSIONID=originaltoken; second=originaltoken + diff --git a/tests/data/test415 b/tests/data/test415 index f0cecd267f5f..93172299f9e7 100644 --- a/tests/data/test415 +++ b/tests/data/test415 @@ -12,7 +12,7 @@ HTTP GET HTTP/1.1 200 OK swsclose Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: -6 +Content-Length: %CR-6 Content-Type: text/html Funny-head: yesyes @@ -41,12 +41,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # built-in curl returns weird_server_reply diff --git a/tests/data/test416 b/tests/data/test416 index b6b10b3df2c0..50397a205236 100644 --- a/tests/data/test416 +++ b/tests/data/test416 @@ -38,14 +38,14 @@ FTP growing file support # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test417 b/tests/data/test417 index 5ac1755542db..5acd91a5b13b 100644 --- a/tests/data/test417 +++ b/tests/data/test417 @@ -38,12 +38,12 @@ https - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPSPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPSPORT +User-Agent: curl/%VERSION +Accept: */* + s/^(.*):(.*)[\r\n]*// diff --git a/tests/data/test418 b/tests/data/test418 index fa502f1b5627..4bcbd57c2eb7 100644 --- a/tests/data/test418 +++ b/tests/data/test418 @@ -46,7 +46,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -sS --tr-encoding # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test42 b/tests/data/test42 index 85a4c88c65a2..007f83e2474b 100644 --- a/tests/data/test42 +++ b/tests/data/test42 @@ -9,32 +9,32 @@ followlocation # # Server-side - -HTTP/1.1 302 OK swsclose -Location: ../m o o.html/%TESTNUMBER0002 -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.1 302 OK swsclose +Location: ../m o o.html/%TESTNUMBER0002%repeat[4 x ]% +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + - -HTTP/1.1 200 OK swsclose -Location: this should be ignored -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.1 200 OK swsclose +Location: this should be ignored +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + body - -HTTP/1.1 302 OK swsclose -Location: ../m o o.html/%TESTNUMBER0002 -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - -HTTP/1.1 200 OK swsclose -Location: this should be ignored -Date: Tue, 09 Nov 2010 14:49:00 GMT -Connection: close - + +HTTP/1.1 302 OK swsclose +Location: ../m o o.html/%TESTNUMBER0002%repeat[4 x ]% +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + +HTTP/1.1 200 OK swsclose +Location: this should be ignored +Date: Tue, 09 Nov 2010 14:49:00 GMT +Connection: close + body @@ -56,17 +56,17 @@ http://%HOSTIP:%HTTPPORT/we/are/all/twits/%TESTNUMBER -L # # Verify data after the test has been "shot" - -GET /we/are/all/twits/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /we/are/all/m%20o%20o.html/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/are/all/twits/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /we/are/all/m%20o%20o.html/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test420 b/tests/data/test420 index c635264da7f9..c1d6173f4fea 100644 --- a/tests/data/test420 +++ b/tests/data/test420 @@ -10,7 +10,7 @@ cookies # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Accept-Ranges: bytes @@ -56,7 +56,7 @@ cookies # # Verify data after the test has been "shot" - + GET /func_test/del_cookie HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test421 b/tests/data/test421 index 2c79c1f8f16d..6cc2bc27637d 100644 --- a/tests/data/test421 +++ b/tests/data/test421 @@ -8,7 +8,7 @@ header_json # # Server-side - + HTTP/1.1 200 OK server: nginx date: Tue, 07 Mar 2023 15:14:41 GMT @@ -21,7 +21,7 @@ referrer-policy: strict-origin-when-cross-origin access-control-allow-methods: GET, POST, PUT, DELETE, OPTIONS access-control-max-age: 1728000 access-control-allow-headers: Authorization, Content-Type, AuthorizationOauth, X-EARLY-ACCESS -access-control-expose-headers: +access-control-expose-headers:%SP vary: Accept etag: W/"2678f9ab2ba550d164e7cc014aefd31e" cache-control: max-age=0, private, must-revalidate @@ -53,7 +53,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -w '%{stderr}%{header_json}\n' -s # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test423 b/tests/data/test423 index 6c6e725b0119..01313a9655e0 100644 --- a/tests/data/test423 +++ b/tests/data/test423 @@ -9,7 +9,7 @@ # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test424 b/tests/data/test424 index 9ae6b1fab960..ff3509650542 100644 --- a/tests/data/test424 +++ b/tests/data/test424 @@ -9,7 +9,7 @@ # # Server-side - + HTTP/1.1 301 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -23,7 +23,7 @@ Funny-head: yesyes Location: http://anotherhost.example:2023/%TESTNUMBER0002?moo.html - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test425 b/tests/data/test425 index 399ca1983f8c..3ff4c0b0b7ac 100644 --- a/tests/data/test425 +++ b/tests/data/test425 @@ -9,7 +9,7 @@ HTTP PUT # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Content-Length: 6 @@ -40,13 +40,13 @@ content # # Verify data after the test has been "shot" - -PUT /%TESTNUMBER/?fullpath HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 8 - + +PUT /%TESTNUMBER/?fullpath HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 8 + content diff --git a/tests/data/test427 b/tests/data/test427 index 1e08810ebdfb..e7e09e98fc23 100644 --- a/tests/data/test427 +++ b/tests/data/test427 @@ -10,7 +10,7 @@ cookies # # Server-side - + HTTP/1.1 301 move along Date: Tue, 09 Nov 2010 14:49:00 GMT Accept-Ranges: bytes @@ -25,7 +25,7 @@ Location: %TESTNUMBER0002 -foo- - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Accept-Ranges: bytes @@ -59,7 +59,7 @@ cookies # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test428 b/tests/data/test428 index 4c5c7edc358f..a066e7c09053 100644 --- a/tests/data/test428 +++ b/tests/data/test428 @@ -10,7 +10,7 @@ variables # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test429 b/tests/data/test429 index 4091d1be0d77..302263cc2f00 100644 --- a/tests/data/test429 +++ b/tests/data/test429 @@ -10,7 +10,7 @@ variables # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -33,13 +33,13 @@ Funny-head: yesyes http -FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF=contents2023 +%repeat[129 x F]%=contents2023 Expand environment variable in config file - too long name ---expand-data {{FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF}} +--expand-data {{%repeat[129 x F]%}} http://%HOSTIP:%HTTPPORT/%TESTNUMBER -K %LOGDIR/cmd @@ -57,7 +57,7 @@ Accept: */* Content-Length: 133 Content-Type: application/x-www-form-urlencoded -{{FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF}} +{{%repeat[129 x F]%}} diff --git a/tests/data/test43 b/tests/data/test43 index 1c36f1c60c67..37545fe524db 100644 --- a/tests/data/test43 +++ b/tests/data/test43 @@ -63,19 +63,19 @@ proxy # Verify data after the test has been "shot" - -GET http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://%HOSTIP:%HTTPPORT/want/data/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://%HOSTIP:%HTTPPORT/want/data/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test430 b/tests/data/test430 index 377c2d48b9d2..fb68dcf3f79f 100644 --- a/tests/data/test430 +++ b/tests/data/test430 @@ -70,31 +70,31 @@ Three -K uses with --next and --data in each # # Verify data after the test has been "shot" - -POST /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -a: a -Content-Length: 1 -Content-Type: application/x-www-form-urlencoded - -aPOST /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -b: b -Content-Length: 1 -Content-Type: application/x-www-form-urlencoded - -bPOST /%TESTNUMBER0003 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -c: c -Content-Length: 1 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +a: a +Content-Length: 1 +Content-Type: application/x-www-form-urlencoded + +aPOST /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +b: b +Content-Length: 1 +Content-Type: application/x-www-form-urlencoded + +bPOST /%TESTNUMBER0003 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +c: c +Content-Length: 1 +Content-Type: application/x-www-form-urlencoded + c diff --git a/tests/data/test431 b/tests/data/test431 index 9622d64e1d26..54bf7ae6ecbd 100644 --- a/tests/data/test431 +++ b/tests/data/test431 @@ -64,31 +64,31 @@ Two -K uses with --next and then one on cmdline # # Verify data after the test has been "shot" - -POST /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -a: a -Content-Length: 1 -Content-Type: application/x-www-form-urlencoded - -aPOST /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -b: b -Content-Length: 1 -Content-Type: application/x-www-form-urlencoded - -bPOST /%TESTNUMBER0003 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -c: c -Content-Length: 1 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +a: a +Content-Length: 1 +Content-Type: application/x-www-form-urlencoded + +aPOST /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +b: b +Content-Length: 1 +Content-Type: application/x-www-form-urlencoded + +bPOST /%TESTNUMBER0003 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +c: c +Content-Length: 1 +Content-Type: application/x-www-form-urlencoded + c diff --git a/tests/data/test432 b/tests/data/test432 index 02a46111d324..5b0066f7d384 100644 --- a/tests/data/test432 +++ b/tests/data/test432 @@ -69,31 +69,31 @@ Use -K with --next and --config from within # # Verify data after the test has been "shot" - -POST /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -a: a -Content-Length: 1 -Content-Type: application/x-www-form-urlencoded - -aPOST /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -b: b -Content-Length: 1 -Content-Type: application/x-www-form-urlencoded - -bPOST /%TESTNUMBER0003 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -c: c -Content-Length: 1 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +a: a +Content-Length: 1 +Content-Type: application/x-www-form-urlencoded + +aPOST /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +b: b +Content-Length: 1 +Content-Type: application/x-www-form-urlencoded + +bPOST /%TESTNUMBER0003 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +c: c +Content-Length: 1 +Content-Type: application/x-www-form-urlencoded + c diff --git a/tests/data/test433 b/tests/data/test433 index d063c4316140..c6c77d90bb97 100644 --- a/tests/data/test433 +++ b/tests/data/test433 @@ -9,10 +9,10 @@ # Server-side -HTTP/1.1 200 OK -Content-Length: 6 -Content-Type: text/1 - +HTTP/1.1 200 OK%CR +Content-Length: 6%CR +Content-Type: text/1%CR +%CR -foo- @@ -44,15 +44,15 @@ Verify XDG_CONFIG_HOME use to find curlrc # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -a: a -Content-Length: 11 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +a: a +Content-Length: 11 +Content-Type: application/x-www-form-urlencoded + curlrc read diff --git a/tests/data/test434 b/tests/data/test434 index 63d8ce7c6e28..16445746c1b8 100644 --- a/tests/data/test434 +++ b/tests/data/test434 @@ -35,12 +35,12 @@ http # - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test435 b/tests/data/test435 index 4d13ebb81ea4..46ef5166741f 100644 --- a/tests/data/test435 +++ b/tests/data/test435 @@ -9,10 +9,10 @@ HTTP GET # # Server-side - -HTTP/1.1 200 OK -Content-Length: 0 - + +HTTP/1.1 200 OK +Content-Length: 0 + @@ -33,17 +33,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER http://%HOSTIP:%HTTPPORT/%TESTNUMBER -w 'lo # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # replace the number with a fixed string since the port number is not @@ -51,17 +51,17 @@ Accept: */* s/local port == (\d+)/local port == [digits]/ - -HTTP/1.1 200 OK -Content-Length: 0 - + +HTTP/1.1 200 OK +Content-Length: 0 + local port == [digits] local ip == 127.0.0.1 remote_ip == %HOSTIP remote_port == %HTTPPORT -HTTP/1.1 200 OK -Content-Length: 0 - +HTTP/1.1 200 OK +Content-Length: 0 + local port == [digits] local ip == 127.0.0.1 remote_ip == %HOSTIP diff --git a/tests/data/test436 b/tests/data/test436 index dfd39f2b3946..e3e39c5fdc90 100644 --- a/tests/data/test436 +++ b/tests/data/test436 @@ -8,11 +8,11 @@ # # Server-side - -HTTP/1.1 200 OK -Content-Length: 6 -Content-Type: text/1 - + +HTTP/1.1 200 OK +Content-Length: 6 +Content-Type: text/1 + -foo- @@ -44,15 +44,15 @@ Find .curlrc in .config/curlrc via CURL_HOME # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -a: a -Content-Length: 11 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +a: a +Content-Length: 11 +Content-Type: application/x-www-form-urlencoded + curlrc read diff --git a/tests/data/test437 b/tests/data/test437 index 1322fb05946b..b5f3988b8269 100644 --- a/tests/data/test437 +++ b/tests/data/test437 @@ -48,12 +48,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --alt-svc "%LOGDIR/altsvc-%TESTNUMBER" # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # strip out the (dynamic) expire date from the file so that the rest diff --git a/tests/data/test438 b/tests/data/test438 index b07b4ccd827e..23d43f7a0808 100644 --- a/tests/data/test438 +++ b/tests/data/test438 @@ -11,15 +11,15 @@ HTTP/2 # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-Head: yesyes -Alt-Svc: h1="%HOST6IP:%HTTP6PORT", ma=315360000; persist=0 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-Head: yesyes +Alt-Svc: h1="%HOST6IP:%HTTP6PORT", ma=315360000; persist=0 + -foo- @@ -55,24 +55,24 @@ h1 %HOSTIP %HTTPPORT h1 %HOST6IP %HTTP6PORT "20290222 22:19:28" 0 0 # # Verify data after the test has been "shot" - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-Head: yesyes -Alt-Svc: h1="%HOST6IP:%HTTP6PORT", ma=315360000; persist=0 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-Head: yesyes +Alt-Svc: h1="%HOST6IP:%HTTP6PORT", ma=315360000; persist=0 + -foo- -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-Head: yesyes -Alt-Svc: h1="%HOST6IP:%HTTP6PORT", ma=315360000; persist=0 - +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-Head: yesyes +Alt-Svc: h1="%HOST6IP:%HTTP6PORT", ma=315360000; persist=0 + -foo- diff --git a/tests/data/test439 b/tests/data/test439 index dc1ae43f9e01..9a5b0522af6e 100644 --- a/tests/data/test439 +++ b/tests/data/test439 @@ -9,7 +9,7 @@ aws-sigv4 # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -46,7 +46,7 @@ aws-sigv4 with query # # Verify data after the test has been "shot" - + GET /439/?name=me&noval&aim=b%aad&&&weirdo=*.//- HTTP/1.1 Host: fake.fake.fake:8000 Authorization: AWS4-HMAC-SHA256 Credential=user/19700101/us-east-2/es/aws4_request, SignedHeaders=host;x-amz-date, Signature=9dd8592929306832a6673d10063491391e486e5f50de4647ea7c2c797277e0a6 diff --git a/tests/data/test44 b/tests/data/test44 index bc103e031b34..02823b93ee97 100644 --- a/tests/data/test44 +++ b/tests/data/test44 @@ -46,30 +46,30 @@ bar ^(Content-Type: multipart/form-data;|------).* -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 432 -Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce - -------------------------------7c633d5c27ce -Content-Disposition: form-data; name="name" - -daniel -------------------------------7c633d5c27ce -Content-Disposition: form-data; name="tool" - -curl -------------------------------7c633d5c27ce -Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt" -Content-Type: text/plain - +POST /we/want/%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Content-Length: 432%CR +Content-Type: multipart/form-data; boundary=----------------------------7c633d5c27ce%CR +%CR +------------------------------7c633d5c27ce%CR +Content-Disposition: form-data; name="name"%CR +%CR +daniel%CR +------------------------------7c633d5c27ce%CR +Content-Disposition: form-data; name="tool"%CR +%CR +curl%CR +------------------------------7c633d5c27ce%CR +Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt"%CR +Content-Type: text/plain%CR +%CR foo- This is a moo- bar - -------------------------------7c633d5c27ce-- +%CR +------------------------------7c633d5c27ce--%CR diff --git a/tests/data/test440 b/tests/data/test440 index 81cf738473bd..161e6e3d9a98 100644 --- a/tests/data/test440 +++ b/tests/data/test440 @@ -11,14 +11,14 @@ trailing-dot # we use this as response to a CONNECT - -HTTP/1.1 403 not OK at all -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Funny-head: yesyes - + +HTTP/1.1 403 not OK at all +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Funny-head: yesyes + -foo- @@ -52,21 +52,21 @@ test-duphandle # we let it CONNECT to the server to confirm HSTS but deny from there - -CONNECT this.hsts.example.:443 HTTP/1.1 -Host: this.hsts.example.:443 -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT this.hsts.example.:443 HTTP/1.1 +Host: this.hsts.example.:443 +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + - -HTTP/1.1 403 not OK at all -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Funny-head: yesyes - + +HTTP/1.1 403 not OK at all +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Funny-head: yesyes + https://this.hsts.example./%TESTNUMBER # Proxy CONNECT aborted @@ -74,7 +74,7 @@ https://this.hsts.example./%TESTNUMBER 56 -Allocations: 1100 +Allocations: 145 diff --git a/tests/data/test441 b/tests/data/test441 index 02aca4d0e0f6..033c5343041b 100644 --- a/tests/data/test441 +++ b/tests/data/test441 @@ -11,14 +11,14 @@ trailing-dot # we use this as response to a CONNECT - -HTTP/1.1 403 not OK at all -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Funny-head: yesyes - + +HTTP/1.1 403 not OK at all +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Funny-head: yesyes + -foo- @@ -51,21 +51,21 @@ test-duphandle # we let it CONNECT to the server to confirm HSTS but deny from there - -CONNECT this.hsts.example:443 HTTP/1.1 -Host: this.hsts.example:443 -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT this.hsts.example:443 HTTP/1.1 +Host: this.hsts.example:443 +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + - -HTTP/1.1 403 not OK at all -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Funny-head: yesyes - + +HTTP/1.1 403 not OK at all +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Funny-head: yesyes + https://this.hsts.example/%TESTNUMBER # Proxy CONNECT aborted diff --git a/tests/data/test442 b/tests/data/test442 index fb881d3b67f9..77bf4f2cb970 100644 --- a/tests/data/test442 +++ b/tests/data/test442 @@ -201,13 +201,13 @@ cookies # # Verify data after the test has been "shot" - -GET /a/b/%TESTNUMBER HTTP/1.1 -Host: attack.invalid:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Cookie: name150=could-be-large-150; name149=could-be-large-149; name148=could-be-large-148; name147=could-be-large-147; name146=could-be-large-146; name145=could-be-large-145; name144=could-be-large-144; name143=could-be-large-143; name142=could-be-large-142; name141=could-be-large-141; name140=could-be-large-140; name139=could-be-large-139; name138=could-be-large-138; name137=could-be-large-137; name136=could-be-large-136; name135=could-be-large-135; name134=could-be-large-134; name133=could-be-large-133; name132=could-be-large-132; name131=could-be-large-131; name130=could-be-large-130; name129=could-be-large-129; name128=could-be-large-128; name127=could-be-large-127; name126=could-be-large-126; name125=could-be-large-125; name124=could-be-large-124; name123=could-be-large-123; name122=could-be-large-122; name121=could-be-large-121; name120=could-be-large-120; name119=could-be-large-119; name118=could-be-large-118; name117=could-be-large-117; name116=could-be-large-116; name115=could-be-large-115; name114=could-be-large-114; name113=could-be-large-113; name112=could-be-large-112; name111=could-be-large-111; name110=could-be-large-110; name109=could-be-large-109; name108=could-be-large-108; name107=could-be-large-107; name106=could-be-large-106; name105=could-be-large-105; name104=could-be-large-104; name103=could-be-large-103; name102=could-be-large-102; name101=could-be-large-101; name100=could-be-large-100; name99=could-be-large-99; name98=could-be-large-98; name97=could-be-large-97; name96=could-be-large-96; name95=could-be-large-95; name94=could-be-large-94; name93=could-be-large-93; name92=could-be-large-92; name91=could-be-large-91; name90=could-be-large-90; name89=could-be-large-89; name88=could-be-large-88; name87=could-be-large-87; name86=could-be-large-86; name85=could-be-large-85; name84=could-be-large-84; name83=could-be-large-83; name82=could-be-large-82; name81=could-be-large-81; name80=could-be-large-80; name79=could-be-large-79; name78=could-be-large-78; name77=could-be-large-77; name76=could-be-large-76; name75=could-be-large-75; name74=could-be-large-74; name73=could-be-large-73; name72=could-be-large-72; name71=could-be-large-71; name70=could-be-large-70; name69=could-be-large-69; name68=could-be-large-68; name67=could-be-large-67; name66=could-be-large-66; name65=could-be-large-65; name64=could-be-large-64; name63=could-be-large-63; name62=could-be-large-62; name61=could-be-large-61; name60=could-be-large-60; name59=could-be-large-59; name58=could-be-large-58; name57=could-be-large-57; name56=could-be-large-56; name55=could-be-large-55; name54=could-be-large-54; name53=could-be-large-53; name52=could-be-large-52; name51=could-be-large-51; name50=could-be-large-50; name49=could-be-large-49; name48=could-be-large-48; name47=could-be-large-47; name46=could-be-large-46; name45=could-be-large-45; name44=could-be-large-44; name43=could-be-large-43; name42=could-be-large-42; name41=could-be-large-41; name40=could-be-large-40; name39=could-be-large-39; name38=could-be-large-38; name37=could-be-large-37; name36=could-be-large-36; name35=could-be-large-35; name34=could-be-large-34; name33=could-be-large-33; name32=could-be-large-32; name31=could-be-large-31; name30=could-be-large-30; name29=could-be-large-29; name28=could-be-large-28; name27=could-be-large-27; name26=could-be-large-26; name25=could-be-large-25; name24=could-be-large-24; name23=could-be-large-23; name22=could-be-large-22; name21=could-be-large-21; name20=could-be-large-20; name19=could-be-large-19; name18=could-be-large-18; name17=could-be-large-17; name16=could-be-large-16; name15=could-be-large-15; name14=could-be-large-14; name13=could-be-large-13; name12=could-be-large-12; name11=could-be-large-11; name10=could-be-large-10; name9=could-be-large-9; name8=could-be-large-8; name7=could-be-large-7; name6=could-be-large-6; name5=could-be-large-5; name4=could-be-large-4; name3=could-be-large-3; name2=could-be-large-2; name1=could-be-large-1 - + +GET /a/b/%TESTNUMBER HTTP/1.1 +Host: attack.invalid:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Cookie: name150=could-be-large-150; name149=could-be-large-149; name148=could-be-large-148; name147=could-be-large-147; name146=could-be-large-146; name145=could-be-large-145; name144=could-be-large-144; name143=could-be-large-143; name142=could-be-large-142; name141=could-be-large-141; name140=could-be-large-140; name139=could-be-large-139; name138=could-be-large-138; name137=could-be-large-137; name136=could-be-large-136; name135=could-be-large-135; name134=could-be-large-134; name133=could-be-large-133; name132=could-be-large-132; name131=could-be-large-131; name130=could-be-large-130; name129=could-be-large-129; name128=could-be-large-128; name127=could-be-large-127; name126=could-be-large-126; name125=could-be-large-125; name124=could-be-large-124; name123=could-be-large-123; name122=could-be-large-122; name121=could-be-large-121; name120=could-be-large-120; name119=could-be-large-119; name118=could-be-large-118; name117=could-be-large-117; name116=could-be-large-116; name115=could-be-large-115; name114=could-be-large-114; name113=could-be-large-113; name112=could-be-large-112; name111=could-be-large-111; name110=could-be-large-110; name109=could-be-large-109; name108=could-be-large-108; name107=could-be-large-107; name106=could-be-large-106; name105=could-be-large-105; name104=could-be-large-104; name103=could-be-large-103; name102=could-be-large-102; name101=could-be-large-101; name100=could-be-large-100; name99=could-be-large-99; name98=could-be-large-98; name97=could-be-large-97; name96=could-be-large-96; name95=could-be-large-95; name94=could-be-large-94; name93=could-be-large-93; name92=could-be-large-92; name91=could-be-large-91; name90=could-be-large-90; name89=could-be-large-89; name88=could-be-large-88; name87=could-be-large-87; name86=could-be-large-86; name85=could-be-large-85; name84=could-be-large-84; name83=could-be-large-83; name82=could-be-large-82; name81=could-be-large-81; name80=could-be-large-80; name79=could-be-large-79; name78=could-be-large-78; name77=could-be-large-77; name76=could-be-large-76; name75=could-be-large-75; name74=could-be-large-74; name73=could-be-large-73; name72=could-be-large-72; name71=could-be-large-71; name70=could-be-large-70; name69=could-be-large-69; name68=could-be-large-68; name67=could-be-large-67; name66=could-be-large-66; name65=could-be-large-65; name64=could-be-large-64; name63=could-be-large-63; name62=could-be-large-62; name61=could-be-large-61; name60=could-be-large-60; name59=could-be-large-59; name58=could-be-large-58; name57=could-be-large-57; name56=could-be-large-56; name55=could-be-large-55; name54=could-be-large-54; name53=could-be-large-53; name52=could-be-large-52; name51=could-be-large-51; name50=could-be-large-50; name49=could-be-large-49; name48=could-be-large-48; name47=could-be-large-47; name46=could-be-large-46; name45=could-be-large-45; name44=could-be-large-44; name43=could-be-large-43; name42=could-be-large-42; name41=could-be-large-41; name40=could-be-large-40; name39=could-be-large-39; name38=could-be-large-38; name37=could-be-large-37; name36=could-be-large-36; name35=could-be-large-35; name34=could-be-large-34; name33=could-be-large-33; name32=could-be-large-32; name31=could-be-large-31; name30=could-be-large-30; name29=could-be-large-29; name28=could-be-large-28; name27=could-be-large-27; name26=could-be-large-26; name25=could-be-large-25; name24=could-be-large-24; name23=could-be-large-23; name22=could-be-large-22; name21=could-be-large-21; name20=could-be-large-20; name19=could-be-large-19; name18=could-be-large-18; name17=could-be-large-17; name16=could-be-large-16; name15=could-be-large-15; name14=could-be-large-14; name13=could-be-large-13; name12=could-be-large-12; name11=could-be-large-11; name10=could-be-large-10; name9=could-be-large-9; name8=could-be-large-8; name7=could-be-large-7; name6=could-be-large-6; name5=could-be-large-5; name4=could-be-large-4; name3=could-be-large-3; name2=could-be-large-2; name1=could-be-large-1 + Allocations: 1100 diff --git a/tests/data/test443 b/tests/data/test443 index 975d8fdaee71..13b8bad87d5c 100644 --- a/tests/data/test443 +++ b/tests/data/test443 @@ -41,26 +41,26 @@ Cookie header in request no longer than 8K http://attack.invalid:%HTTPPORT/a/b/%TESTNUMBER -b %LOGDIR/cookie%TESTNUMBER --resolve attack.invalid:%HTTPPORT:%HOSTIP -L -attack.invalid TRUE / FALSE 0 huge-1 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-1 -attack.invalid TRUE / FALSE 0 huge-2 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-2 -attack.invalid TRUE / FALSE 0 huge-3 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-3 -attack.invalid TRUE / FALSE 0 huge-4 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-4 -attack.invalid TRUE / FALSE 0 huge-5 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-5 -attack.invalid TRUE / FALSE 0 huge-6 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-6 -attack.invalid TRUE / FALSE 0 huge-7 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-7 -attack.invalid TRUE / FALSE 0 huge-8 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-8 -attack.invalid TRUE / FALSE 0 huge-9 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-9 -attack.invalid TRUE / FALSE 0 huge-10 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-10 -attack.invalid TRUE / FALSE 0 huge-11 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-11 -attack.invalid TRUE / FALSE 0 huge-12 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-12 -attack.invalid TRUE / FALSE 0 huge-13 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-13 -attack.invalid TRUE / FALSE 0 huge-14 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-14 -attack.invalid TRUE / FALSE 0 huge-15 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-15 -attack.invalid TRUE / FALSE 0 huge-16 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-16 -attack.invalid TRUE / FALSE 0 huge-17 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-17 -attack.invalid TRUE / FALSE 0 huge-18 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-18 -attack.invalid TRUE / FALSE 0 huge-19 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-19 -attack.invalid TRUE / FALSE 0 huge-20 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-20 +attack.invalid TRUE / FALSE 0 huge-1 %repeat[500 x a]%-1 +attack.invalid TRUE / FALSE 0 huge-2 %repeat[500 x a]%-2 +attack.invalid TRUE / FALSE 0 huge-3 %repeat[500 x a]%-3 +attack.invalid TRUE / FALSE 0 huge-4 %repeat[500 x a]%-4 +attack.invalid TRUE / FALSE 0 huge-5 %repeat[500 x a]%-5 +attack.invalid TRUE / FALSE 0 huge-6 %repeat[500 x a]%-6 +attack.invalid TRUE / FALSE 0 huge-7 %repeat[500 x a]%-7 +attack.invalid TRUE / FALSE 0 huge-8 %repeat[500 x a]%-8 +attack.invalid TRUE / FALSE 0 huge-9 %repeat[500 x a]%-9 +attack.invalid TRUE / FALSE 0 huge-10 %repeat[500 x a]%-10 +attack.invalid TRUE / FALSE 0 huge-11 %repeat[500 x a]%-11 +attack.invalid TRUE / FALSE 0 huge-12 %repeat[500 x a]%-12 +attack.invalid TRUE / FALSE 0 huge-13 %repeat[500 x a]%-13 +attack.invalid TRUE / FALSE 0 huge-14 %repeat[500 x a]%-14 +attack.invalid TRUE / FALSE 0 huge-15 %repeat[500 x a]%-15 +attack.invalid TRUE / FALSE 0 huge-16 %repeat[500 x a]%-16 +attack.invalid TRUE / FALSE 0 huge-17 %repeat[500 x a]%-17 +attack.invalid TRUE / FALSE 0 huge-18 %repeat[500 x a]%-18 +attack.invalid TRUE / FALSE 0 huge-19 %repeat[500 x a]%-19 +attack.invalid TRUE / FALSE 0 huge-20 %repeat[500 x a]%-20 cookies @@ -70,13 +70,13 @@ cookies # # Verify data after the test has been "shot" - -GET /a/b/%TESTNUMBER HTTP/1.1 -Host: attack.invalid:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Cookie: huge-20=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-20; huge-19=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-19; huge-18=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-18; huge-17=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-17; huge-16=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-16; huge-15=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-15; huge-14=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-14; huge-13=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-13; huge-12=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-12; huge-11=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-11; huge-10=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-10; huge-9=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-9; huge-8=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-8; huge-7=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-7; huge-6=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-6 - + +GET /a/b/%TESTNUMBER HTTP/1.1 +Host: attack.invalid:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Cookie: huge-20=%repeat[500 x a]%-20; huge-19=%repeat[500 x a]%-19; huge-18=%repeat[500 x a]%-18; huge-17=%repeat[500 x a]%-17; huge-16=%repeat[500 x a]%-16; huge-15=%repeat[500 x a]%-15; huge-14=%repeat[500 x a]%-14; huge-13=%repeat[500 x a]%-13; huge-12=%repeat[500 x a]%-12; huge-11=%repeat[500 x a]%-11; huge-10=%repeat[500 x a]%-10; huge-9=%repeat[500 x a]%-9; huge-8=%repeat[500 x a]%-8; huge-7=%repeat[500 x a]%-7; huge-6=%repeat[500 x a]%-6 + diff --git a/tests/data/test444 b/tests/data/test444 index 8df990280a6c..4c092bef1b94 100644 --- a/tests/data/test444 +++ b/tests/data/test444 @@ -126,12 +126,12 @@ cookies # # Verify data after the test has been "shot" - -GET /a/b/%TESTNUMBER HTTP/1.1 -Host: attack.invalid:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /a/b/%TESTNUMBER HTTP/1.1 +Host: attack.invalid:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # Netscape HTTP Cookie File diff --git a/tests/data/test446 b/tests/data/test446 index 7f98912560a8..ceae26b7e77a 100644 --- a/tests/data/test446 +++ b/tests/data/test446 @@ -1,4 +1,4 @@ - + @@ -12,18 +12,18 @@ trailing-dot # we use this as response to a CONNECT - -HTTP/1.1 200 OK - + +HTTP/1.1 200 OK + - + HTTP/1.1 200 OK Content-Length: 6 Strict-Transport-Security: max-age=604800 -foo- - + HTTP/1.1 200 OK Content-Length: 6 Strict-Transport-Security: max-age=6048000 @@ -58,7 +58,7 @@ HSTS with two URLs # we let it CONNECT to the server to confirm HSTS but deny from there - + GET http://this.hsts.example./%TESTNUMBER HTTP/1.1 Host: this.hsts.example. User-Agent: curl/%VERSION diff --git a/tests/data/test447 b/tests/data/test447 index 2783b750b61d..f3966f7d2766 100644 --- a/tests/data/test447 +++ b/tests/data/test447 @@ -10,7 +10,7 @@ growing file # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test448 b/tests/data/test448 index 108ead9b5955..fae30bd533d4 100644 --- a/tests/data/test448 +++ b/tests/data/test448 @@ -10,7 +10,7 @@ variables # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test449 b/tests/data/test449 index 73c96772811e..9c5f5cfede34 100644 --- a/tests/data/test449 +++ b/tests/data/test449 @@ -10,7 +10,7 @@ variables # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test45 b/tests/data/test45 index e7c3b65926c9..54c41dec92bd 100644 --- a/tests/data/test45 +++ b/tests/data/test45 @@ -59,17 +59,17 @@ simple HTTP Location: without protocol in initial URL # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /want/data.cgi?moo=http://&/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /want/data.cgi?moo=http://&/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test450 b/tests/data/test450 index 5dcfb85ce67c..61d181b00d86 100644 --- a/tests/data/test450 +++ b/tests/data/test450 @@ -9,7 +9,7 @@ variables # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test451 b/tests/data/test451 index 7c8fe7d93bb8..503a77835e7c 100644 --- a/tests/data/test451 +++ b/tests/data/test451 @@ -9,7 +9,7 @@ variables # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test455 b/tests/data/test455 index 7e468e75243b..5a5e42f6d67a 100644 --- a/tests/data/test455 +++ b/tests/data/test455 @@ -8,7 +8,7 @@ variables # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test457 b/tests/data/test457 index aa391d7fd009..39b050464cd6 100644 --- a/tests/data/test457 +++ b/tests/data/test457 @@ -15,16 +15,16 @@ Server: fakeit/0.9 fakeitbad/1.0 Transfer-Encoding: chunked Connection: mooo -40 -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -30 -bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb -21;heresatest=moooo +40%CR +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa%CR +30%CR +bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb%CR +21;heresatest=moooo%CR cccccccccccccccccccccccccccccc c - -0 - +%CR +0%CR +%CR HTTP/1.1 200 funky chunky! @@ -53,12 +53,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --max-filesize 143 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # curl: (63) Exceeded the maximum allowed file size (143) diff --git a/tests/data/test458 b/tests/data/test458 index 58e705226486..66027b087e53 100644 --- a/tests/data/test458 +++ b/tests/data/test458 @@ -9,7 +9,7 @@ variables # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -50,14 +50,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -K %LOGDIR/cmd # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION Accept: */* - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test459 b/tests/data/test459 index 198e67d2a3e0..539aa0729dc1 100644 --- a/tests/data/test459 +++ b/tests/data/test459 @@ -9,7 +9,7 @@ HTTP # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -56,7 +56,7 @@ Content-Type: application/x-www-form-urlencoded arg -Warning: %LOGDIR/config:1: warning: 'data' uses unquoted whitespace. This may +Warning: %LOGDIR/config:1: warning: 'data' uses unquoted whitespace. This may%SP Warning: cause side-effects. Consider double quotes. diff --git a/tests/data/test46 b/tests/data/test46 index 0a0e84914ff3..715616e23c23 100644 --- a/tests/data/test46 +++ b/tests/data/test46 @@ -11,23 +11,23 @@ cookiejar # Server-side - -HTTP/1.1 200 OK -Server: Microsoft-IIS/4.0 -Date: Tue, 25 Sep 2001 19:37:44 GMT -Content-Type: text/html + +HTTP/1.1 200 OK +Server: Microsoft-IIS/4.0 +Date: Tue, 25 Sep 2001 19:37:44 GMT +Content-Type: text/html %if large-time -Set-Cookie: ckyPersistent=permanent; expires=Fri, 13-Feb-2525 11:56:27 GMT; path=/ +Set-Cookie: ckyPersistent=permanent; expires=Fri, 13-Feb-2525 11:56:27 GMT; path=/ %else -Set-Cookie: ckyPersistent=permanent; expires=Fri, 13-Feb-2037 11:56:27 GMT; path=/ +Set-Cookie: ckyPersistent=permanent; expires=Fri, 13-Feb-2037 11:56:27 GMT; path=/ %endif -Set-Cookie: ckySession=temporary; path=/ -Set-Cookie: ASPSESSIONIDQGGQQSJJ=GKNBDIFAAOFDPDAIEAKDIBKE; path=/ -Set-Cookie: justaname=; path=/; -Set-Cookie: simplyhuge=zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz -Cache-control: private -Content-Length: 41 - +Set-Cookie: ckySession=temporary; path=/ +Set-Cookie: ASPSESSIONIDQGGQQSJJ=GKNBDIFAAOFDPDAIEAKDIBKE; path=/ +Set-Cookie: justaname=; path=/; +Set-Cookie: simplyhuge=%repeat[3998 x z]% +Cache-control: private +Content-Length: 41 + This server reply is for testing cookies @@ -65,7 +65,7 @@ www.loser.com FALSE / FALSE 2139150993 UID 99 domain..tld FALSE / FALSE 2139150993 mooo indeed #HttpOnly_domain..tld FALSE /want FALSE 2139150993 mooo2 indeed2 %endif -domain..tld FALSE /want FALSE 0 empty +domain..tld FALSE /want FALSE 0 empty%TAB cookies @@ -74,32 +74,32 @@ cookies # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: domain..tld:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Cookie: empty=; mooo2=indeed2; mooo=indeed - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: domain..tld:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Cookie: empty=; mooo2=indeed2; mooo=indeed + # Netscape HTTP Cookie File # https://curl.se/docs/http-cookies.html # This file was generated by libcurl! Edit at your own risk. -domain..tld FALSE /want/ FALSE 0 simplyhuge zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz -domain..tld FALSE / FALSE 0 justaname +domain..tld FALSE /want/ FALSE 0 simplyhuge %repeat[3998 x z]% +domain..tld FALSE / FALSE 0 justaname%TAB domain..tld FALSE / FALSE 0 ASPSESSIONIDQGGQQSJJ GKNBDIFAAOFDPDAIEAKDIBKE domain..tld FALSE / FALSE 0 ckySession temporary domain..tld FALSE / FALSE %days[400] ckyPersistent permanent %if large-time -domain..tld FALSE /want FALSE 0 empty +domain..tld FALSE /want FALSE 0 empty%TAB #HttpOnly_domain..tld FALSE /want FALSE 22139150993 mooo2 indeed2 domain..tld FALSE / FALSE 22139150993 mooo indeed www.loser.com FALSE / FALSE 22139150993 UID 99 www.fake.come FALSE / FALSE 22147483647 cookiecliente si %else -domain..tld FALSE /want FALSE 0 empty +domain..tld FALSE /want FALSE 0 empty%TAB #HttpOnly_domain..tld FALSE /want FALSE 2139150993 mooo2 indeed2 domain..tld FALSE / FALSE 2139150993 mooo indeed www.loser.com FALSE / FALSE 2139150993 UID 99 diff --git a/tests/data/test461 b/tests/data/test461 index 03d7c7a22cb7..a8e917640a02 100644 --- a/tests/data/test461 +++ b/tests/data/test461 @@ -10,7 +10,7 @@ HTTP GET # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Content-Length: 6 @@ -38,7 +38,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -H host: # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 User-Agent: curl/%VERSION Accept: */* diff --git a/tests/data/test462 b/tests/data/test462 index fdbce3b46210..3fbcae7313f3 100644 --- a/tests/data/test462 +++ b/tests/data/test462 @@ -30,7 +30,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -K %LOGDIR/cmd # Verify data after the test has been "shot" -26 +2 diff --git a/tests/data/test468 b/tests/data/test468 index 0b06a4d32eef..8242b309fdd1 100644 --- a/tests/data/test468 +++ b/tests/data/test468 @@ -10,7 +10,7 @@ HTTP # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -46,7 +46,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -K %LOGDIR/cmd%TESTNUMBER -w "" # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test469 b/tests/data/test469 index 87754a264654..1be56737492f 100644 --- a/tests/data/test469 +++ b/tests/data/test469 @@ -8,7 +8,7 @@ HTTP # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test47 b/tests/data/test47 index 42086999b4de..11775d3c43ee 100644 --- a/tests/data/test47 +++ b/tests/data/test47 @@ -35,12 +35,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -0 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.0 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.0 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test470 b/tests/data/test470 index 547121d11a8a..b0b720f91efd 100644 --- a/tests/data/test470 +++ b/tests/data/test470 @@ -8,7 +8,7 @@ HTTP # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test471 b/tests/data/test471 index 4a08fed278d7..e434198ad131 100644 --- a/tests/data/test471 +++ b/tests/data/test471 @@ -54,17 +54,17 @@ Reject HTTP/1.1 to HTTP/2 switch on the same connection # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # curl: (1) Version mismatch (from HTTP/1 to HTTP/2) diff --git a/tests/data/test472 b/tests/data/test472 index d624760040d7..61d72e30d7b3 100644 --- a/tests/data/test472 +++ b/tests/data/test472 @@ -9,7 +9,7 @@ aws-sigv4 # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -47,7 +47,7 @@ aws-sigv4 with query # # Verify data after the test has been "shot" - + GET /472/a=%E3%81%82 HTTP/1.1 Host: fake.fake.fake:8000 Authorization: AWS4-HMAC-SHA256 Credential=user/19700101/us-east-2/es/aws4_request, SignedHeaders=host;x-amz-date, Signature=b8783c8387a5249b084642126fe1f8e07e12a2847820fd5b6cd64b2047149da4 diff --git a/tests/data/test473 b/tests/data/test473 index 874813c4e691..315f50006aa9 100644 --- a/tests/data/test473 +++ b/tests/data/test473 @@ -9,24 +9,24 @@ HTTP GET # Server-side -HTTP/1.1 301 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 +HTTP/1.1 301 funky chunky!%CR +Server: fakeit/0.9 fakeitbad/1.0%CR Location: /redirected -Transfer-Encoding: chunked -Trailer: chunky-trailer -Connection: mooo -ETag: W/"asdf" - -40 -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -30 -bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb -21;heresatest=moooo +Transfer-Encoding: chunked%CR +Trailer: chunky-trailer%CR +Connection: mooo%CR +ETag: W/"asdf"%CR +%CR +40%CR +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa%CR +30%CR +bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb%CR +21;heresatest=moooo%CR cccccccccccccccccccccccccccccccc - -0 -chunky-trailer: header data - +%CR +0%CR +chunky-trailer: header data%CR +%CR @@ -47,12 +47,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --etag-save %LOGDIR/etag%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + W/"asdf" diff --git a/tests/data/test474 b/tests/data/test474 index fc5575d71b8f..ffc3c0339dc9 100644 --- a/tests/data/test474 +++ b/tests/data/test474 @@ -9,7 +9,7 @@ # # Server-side - + HTTP/1.1 301 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Content-Length: 0 @@ -18,7 +18,7 @@ Content-Type: text/html Location: https://%HOSTIP:%HTTPSPORT/%TESTNUMBER0002 - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Content-Length: 0 diff --git a/tests/data/test475 b/tests/data/test475 index 32ad8071f540..852dbcb44812 100644 --- a/tests/data/test475 +++ b/tests/data/test475 @@ -33,14 +33,14 @@ FTP PASV upload ASCII file %repeat[1750 x a line of text used for verifying this !%0a]% - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE A -STOR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE A +STOR %TESTNUMBER +QUIT diff --git a/tests/data/test476 b/tests/data/test476 index 792488fd174c..b53104b11626 100644 --- a/tests/data/test476 +++ b/tests/data/test476 @@ -29,14 +29,14 @@ FTP PASV upload ASCII file already using CRLF %repeat[1750 x a line of text used for verifying this !%0a]% - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE A -STOR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE A +STOR %TESTNUMBER +QUIT diff --git a/tests/data/test477 b/tests/data/test477 index 12843918efce..5e083360ce76 100644 --- a/tests/data/test477 +++ b/tests/data/test477 @@ -51,17 +51,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --max-filesize 5 -L # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test478 b/tests/data/test478 index 6558363f508c..b1fb2299c0dd 100644 --- a/tests/data/test478 +++ b/tests/data/test478 @@ -8,7 +8,7 @@ HTTP # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -60,14 +60,14 @@ login debbie - -GET http://github.com/ HTTP/1.1 -Host: github.com -Authorization: Basic %b64[debbie:second%0D]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://github.com/ HTTP/1.1 +Host: github.com +Authorization: Basic %b64[debbie:second%0D]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test479 b/tests/data/test479 index d7ce4652fae2..46f62846985d 100644 --- a/tests/data/test479 +++ b/tests/data/test479 @@ -8,7 +8,7 @@ HTTP # # Server-side - + HTTP/1.1 301 Follow this you fool Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -22,7 +22,7 @@ Location: http://b.com/%TESTNUMBER0002 -foo- - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -35,7 +35,7 @@ Connection: close target - + HTTP/1.1 301 Follow this you fool Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -87,21 +87,21 @@ default - -GET http://a.com/ HTTP/1.1 -Host: a.com -Authorization: Basic %b64[alice:alicespassword]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://b.com/%TESTNUMBER0002 HTTP/1.1 -Host: b.com -Authorization: Basic %b64[bob:]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://a.com/ HTTP/1.1 +Host: a.com +Authorization: Basic %b64[alice:alicespassword]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://b.com/%TESTNUMBER0002 HTTP/1.1 +Host: b.com +Authorization: Basic %b64[bob:]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test48 b/tests/data/test48 index 24fa0abbb38b..564e8f3a7419 100644 --- a/tests/data/test48 +++ b/tests/data/test48 @@ -36,17 +36,17 @@ HTTP with -d and -G and -I # # Verify data after the test has been "shot" - -HEAD /%TESTNUMBER?foo=moo&moo=poo HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -HEAD /%TESTNUMBER?foo=moo&moo=poo HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +HEAD /%TESTNUMBER?foo=moo&moo=poo HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +HEAD /%TESTNUMBER?foo=moo&moo=poo HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + [DISCONNECT] diff --git a/tests/data/test483 b/tests/data/test483 index 5d86f467d0d1..7c3251004e2c 100644 --- a/tests/data/test483 +++ b/tests/data/test483 @@ -10,12 +10,12 @@ cookies # # Server-side - + HTTP/1.1 200 OK -Set-Cookie: name=value; expires=Fri Feb 13 11:56:27 GMT 2132 -Set-Cookie: name2=value; expires=Fri Feb 13 11:56:27 ; 2132 -Set-Cookie: name3=value; expires=Fri Feb 13 11:56:27 ...................................................GMT 2132 -Set-Cookie: name4=value; expires=Fri Feb 13 11:56:27 ....................................................GMT 2132 +Set-Cookie: name=value; expires=Fri Feb 13 11:56:27 GMT 2132 +Set-Cookie: name2=value; expires=Fri Feb 13 11:56:27 ; 2132 +Set-Cookie: name3=value; expires=Fri Feb 13 11:56:27 ...................................................GMT 2132 +Set-Cookie: name4=value; expires=Fri Feb 13 11:56:27 ....................................................GMT 2132 Accept-Ranges: bytes Content-Length: 6 Connection: close @@ -45,7 +45,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -c %LOGDIR/c%TESTNUMBER # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test486 b/tests/data/test486 index 53efae597a1b..068b94dd3e6d 100644 --- a/tests/data/test486 +++ b/tests/data/test486 @@ -8,7 +8,7 @@ HTTP # # Server-side - + HTTP/1.1 301 Follow this you fool Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -22,7 +22,7 @@ Location: http://b.com/%TESTNUMBER0002 -foo- - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -35,7 +35,7 @@ Connection: close target - + HTTP/1.1 301 Follow this you fool Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -86,20 +86,20 @@ default - -GET http://a.com/ HTTP/1.1 -Host: a.com -Authorization: Basic %b64[alice:alicespassword]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://b.com/%TESTNUMBER0002 HTTP/1.1 -Host: b.com -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://a.com/ HTTP/1.1 +Host: a.com +Authorization: Basic %b64[alice:alicespassword]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://b.com/%TESTNUMBER0002 HTTP/1.1 +Host: b.com +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test487 b/tests/data/test487 index 3ac508b2e54f..f7ed37245aa6 100644 --- a/tests/data/test487 +++ b/tests/data/test487 @@ -8,7 +8,7 @@ variables # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -41,7 +41,7 @@ Variable using 64dec with bad base64 # # Verify data after the test has been "shot" - + GET /[64dec-fail]/%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test488 b/tests/data/test488 index ec32810bb5d4..bb9838836194 100644 --- a/tests/data/test488 +++ b/tests/data/test488 @@ -10,7 +10,7 @@ HTTP GET # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -47,7 +47,7 @@ http://%HOSTIP:%HTTPPORT/b # # Verify data after the test has been "shot" - + GET /a HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test489 b/tests/data/test489 index 03c42c5d1e43..d610d5c50a16 100644 --- a/tests/data/test489 +++ b/tests/data/test489 @@ -10,7 +10,7 @@ HTTP GET # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -47,7 +47,7 @@ http://%HOSTIP:%HTTPPORT/b # # Verify data after the test has been "shot" - + GET /a HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test49 b/tests/data/test49 index 996cf018bde1..6e0061cd2bdb 100644 --- a/tests/data/test49 +++ b/tests/data/test49 @@ -56,17 +56,17 @@ http://%HOSTIP:%HTTPPORT/we/are/all/twits/%TESTNUMBER -L # # Verify data after the test has been "shot" - -GET /we/are/all/twits/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /we/are/all/moo.html/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/are/all/twits/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /we/are/all/moo.html/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test490 b/tests/data/test490 index a0bc8f353963..f691ae0abd9a 100644 --- a/tests/data/test490 +++ b/tests/data/test490 @@ -45,20 +45,20 @@ surprise! # # Verify data after the test has been "shot" - -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 10 - + +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 10 + surprise! -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 10 - +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 10 + surprise! diff --git a/tests/data/test491 b/tests/data/test491 index 15bb756b55b6..f6ae7d5bcf3a 100644 --- a/tests/data/test491 +++ b/tests/data/test491 @@ -45,13 +45,13 @@ surprise! # # Verify data after the test has been "shot" - -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 10 - + +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 10 + surprise! diff --git a/tests/data/test492 b/tests/data/test492 index d576cca1cfdb..bc52e305cf3a 100644 --- a/tests/data/test492 +++ b/tests/data/test492 @@ -48,38 +48,38 @@ second %TESTNUMBER contents # # Verify data after the test has been "shot" - -PUT /one/first%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Testno: %TESTNUMBER -Content-Length: 19 - + +PUT /one/first%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Testno: %TESTNUMBER +Content-Length: 19 + first %TESTNUMBER contents -PUT /two/first%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Testno: %TESTNUMBER -Content-Length: 19 - +PUT /two/first%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Testno: %TESTNUMBER +Content-Length: 19 + first %TESTNUMBER contents -PUT /one/second%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Testno: %TESTNUMBER -Content-Length: 20 - +PUT /one/second%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Testno: %TESTNUMBER +Content-Length: 20 + second %TESTNUMBER contents -PUT /two/second%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Testno: %TESTNUMBER -Content-Length: 20 - +PUT /two/second%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Testno: %TESTNUMBER +Content-Length: 20 + second %TESTNUMBER contents diff --git a/tests/data/test493 b/tests/data/test493 index d157f0355fa9..bc2f20b0685c 100644 --- a/tests/data/test493 +++ b/tests/data/test493 @@ -11,14 +11,14 @@ url_effective # we use this as response to a CONNECT - -HTTP/1.1 403 not OK at all -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Funny-head: yesyes - + +HTTP/1.1 403 not OK at all +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Funny-head: yesyes + -foo- @@ -50,21 +50,21 @@ test-duphandle # we let it CONNECT to the server to confirm HSTS but deny from there - -CONNECT this.hsts.example:443 HTTP/1.1 -Host: this.hsts.example:443 -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT this.hsts.example:443 HTTP/1.1 +Host: this.hsts.example:443 +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + - -HTTP/1.1 403 not OK at all -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 6 -Connection: close -Funny-head: yesyes - + +HTTP/1.1 403 not OK at all +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 6 +Connection: close +Funny-head: yesyes + https://this.hsts.example/%TESTNUMBER # Proxy CONNECT aborted diff --git a/tests/data/test494 b/tests/data/test494 index 648318729d11..ed4717a4d5ef 100644 --- a/tests/data/test494 +++ b/tests/data/test494 @@ -46,15 +46,15 @@ machine %HOSTIP login user1 password passwd1 # # Verify data after the test has been "shot" - -USER user1 -PASS passwd1 -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER user1 +PASS passwd1 +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test495 b/tests/data/test495 index d7313bac3c8a..e3c60664798c 100644 --- a/tests/data/test495 +++ b/tests/data/test495 @@ -44,13 +44,13 @@ http://foo%40bar:secret@%HOSTIP:%HTTPPORT/%TESTNUMBER --netrc-optional # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[foo@bar:secret]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[foo@bar:secret]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test497 b/tests/data/test497 index 02ec8e802f8e..e71370251da5 100644 --- a/tests/data/test497 +++ b/tests/data/test497 @@ -41,7 +41,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test499 b/tests/data/test499 index d4040b07ce99..07433871ac0c 100644 --- a/tests/data/test499 +++ b/tests/data/test499 @@ -9,7 +9,7 @@ HTTP GET # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -23,7 +23,7 @@ Funny-head: yesyes -foo- - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -54,7 +54,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -I # # Verify data after the test has been "shot" - + HEAD /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test5 b/tests/data/test5 index 8d4078fb77c7..807eb55929a8 100644 --- a/tests/data/test5 +++ b/tests/data/test5 @@ -39,13 +39,13 @@ proxy # # Verify data after the test has been "shot" - -GET http://%HOSTIP:%HTTPPORT/we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://%HOSTIP:%HTTPPORT/we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test50 b/tests/data/test50 index ce4fd1660194..a468ad656e46 100644 --- a/tests/data/test50 +++ b/tests/data/test50 @@ -56,17 +56,17 @@ http://%HOSTIP:%HTTPPORT/we/are/all/twits/%TESTNUMBER -L # # Verify data after the test has been "shot" - -GET /we/are/all/twits/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /we/are/moo.html/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/are/all/twits/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /we/are/moo.html/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test500 b/tests/data/test500 index 7904110c7e0a..df964293dc02 100644 --- a/tests/data/test500 +++ b/tests/data/test500 @@ -8,18 +8,18 @@ HTTP GET # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + -foo- @@ -48,11 +48,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER %LOGDIR/ip%TESTNUMBER IP %HOSTIP - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + Allocations: 82 diff --git a/tests/data/test503 b/tests/data/test503 index ea2dfcd7f468..dc008ebd8113 100644 --- a/tests/data/test503 +++ b/tests/data/test503 @@ -16,9 +16,9 @@ multi connection-monitor - -HTTP/1.1 200 Mighty fine indeed - + +HTTP/1.1 200 Mighty fine indeed + HTTP/1.1 200 OK swsclose @@ -29,8 +29,8 @@ ETag: "21025-dc7-39462498" -HTTP/1.1 200 Mighty fine indeed - +HTTP/1.1 200 Mighty fine indeed%CR +%CR HTTP/1.1 200 OK swsclose Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -70,20 +70,20 @@ moo # Verify data after the test has been "shot" - -CONNECT machine.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: machine.%TESTNUMBER:%HTTPPORT -Proxy-Authorization: Basic %b64[test%2520:ing%2541]b64% -Proxy-Connection: Keep-Alive - + +CONNECT machine.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: machine.%TESTNUMBER:%HTTPPORT +Proxy-Authorization: Basic %b64[test%2520:ing%2541]b64% +Proxy-Connection: Keep-Alive + [DISCONNECT] - -GET /%TESTNUMBER HTTP/1.1 -Host: machine.%TESTNUMBER:%HTTPPORT -Authorization: Basic %b64[test:ing]b64% -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: machine.%TESTNUMBER:%HTTPPORT +Authorization: Basic %b64[test:ing]b64% +Accept: */* + [DISCONNECT] diff --git a/tests/data/test505 b/tests/data/test505 index 53a9d47927c0..d7ecebce187c 100644 --- a/tests/data/test505 +++ b/tests/data/test505 @@ -52,16 +52,16 @@ upload works? - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -STOR %TESTNUMBER -RNFR %TESTNUMBER -RNTO %TESTNUMBER-forreal -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +STOR %TESTNUMBER +RNFR %TESTNUMBER +RNTO %TESTNUMBER-forreal +QUIT diff --git a/tests/data/test508 b/tests/data/test508 index cc1932a35f65..69079a365a57 100644 --- a/tests/data/test508 +++ b/tests/data/test508 @@ -9,13 +9,13 @@ POST callback # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello @@ -41,13 +41,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 45 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 45 +Content-Type: application/x-www-form-urlencoded + this is what we post to the silly web server diff --git a/tests/data/test51 b/tests/data/test51 index 277da000fbaf..f2a7d00f17b0 100644 --- a/tests/data/test51 +++ b/tests/data/test51 @@ -56,17 +56,17 @@ http://%HOSTIP:%HTTPPORT/we/are/all/twits/%TESTNUMBER -L # # Verify data after the test has been "shot" - -GET /we/are/all/twits/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/are/all/twits/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test510 b/tests/data/test510 index ed16920dd756..ede81fb8e647 100644 --- a/tests/data/test510 +++ b/tests/data/test510 @@ -10,13 +10,13 @@ chunked Transfer-Encoding # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello @@ -42,24 +42,24 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Transfer-Encoding: chunked -Content-Type: application/x-www-form-urlencoded -Expect: 100-continue - -3 -one -3 -two -5 -three -1d -and a final longer crap: four -0 - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Transfer-Encoding: chunked +Content-Type: application/x-www-form-urlencoded +Expect: 100-continue + +3 +one +3 +two +5 +three +1d +and a final longer crap: four +0 + diff --git a/tests/data/test511 b/tests/data/test511 index adcabe8bda6c..a07c9e43f8f9 100644 --- a/tests/data/test511 +++ b/tests/data/test511 @@ -39,14 +39,14 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER 78 - -USER anonymous -PASS ftp@example.com -PWD -MDTM %TESTNUMBER -TYPE I -SIZE %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +MDTM %TESTNUMBER +TYPE I +SIZE %TESTNUMBER +QUIT diff --git a/tests/data/test512 b/tests/data/test512 index 8935a12c77ec..55436fd1c786 100644 --- a/tests/data/test512 +++ b/tests/data/test512 @@ -9,12 +9,12 @@ HTTP GET # # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: yes -Connection: close - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: yes +Connection: close + hello @@ -40,11 +40,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + diff --git a/tests/data/test513 b/tests/data/test513 index cc97336105c5..d61d2be4a5c0 100644 --- a/tests/data/test513 +++ b/tests/data/test513 @@ -33,8 +33,6 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - - # 42 - aborted by callback 42 diff --git a/tests/data/test514 b/tests/data/test514 index fcf1a07ca35a..9ab14de7c643 100644 --- a/tests/data/test514 +++ b/tests/data/test514 @@ -8,18 +8,18 @@ HTTP HEAD # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + @@ -44,11 +44,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -HEAD /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +HEAD /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + diff --git a/tests/data/test515 b/tests/data/test515 index 9bf6131edd4e..75817365ff13 100644 --- a/tests/data/test515 +++ b/tests/data/test515 @@ -8,12 +8,12 @@ HTTP POST # # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 3 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 3 + OK @@ -39,13 +39,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 0 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 0 +Content-Type: application/x-www-form-urlencoded + diff --git a/tests/data/test516 b/tests/data/test516 index e8b522c32dc9..dbd6352aa939 100644 --- a/tests/data/test516 +++ b/tests/data/test516 @@ -10,12 +10,12 @@ FORM # # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 3 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 3 + OK @@ -44,12 +44,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 0 - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 0 + diff --git a/tests/data/test518 b/tests/data/test518 index 2fa7bfb5ca51..0da7360d98a9 100644 --- a/tests/data/test518 +++ b/tests/data/test518 @@ -9,18 +9,18 @@ HTTP GET # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + -foo- @@ -54,11 +54,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + disable diff --git a/tests/data/test519 b/tests/data/test519 index 53f2f19487fa..6121c12e3ed7 100644 --- a/tests/data/test519 +++ b/tests/data/test519 @@ -9,34 +9,34 @@ HTTP GET # # Server-side - -HTTP/1.1 200 OK swsbounce -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 8 - + +HTTP/1.1 200 OK swsbounce +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 8 + content - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 9 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 9 + content2 - -HTTP/1.1 200 OK swsbounce -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 8 - + +HTTP/1.1 200 OK swsbounce +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 8 + content -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 9 - +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 9 + content2 @@ -62,17 +62,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[monster:underbed]b64% -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[anothermonster:inwardrobe]b64% -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[monster:underbed]b64% +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[anothermonster:inwardrobe]b64% +Accept: */* + diff --git a/tests/data/test52 b/tests/data/test52 index e636ed959c9b..39e7d68f7732 100644 --- a/tests/data/test52 +++ b/tests/data/test52 @@ -56,17 +56,17 @@ http://%HOSTIP:%HTTPPORT/we/are/all/twits/%TESTNUMBER -L # # Verify data after the test has been "shot" - -GET /we/are/all/twits/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /we/are/all/twits/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/are/all/twits/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /we/are/all/twits/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test520 b/tests/data/test520 index 6a27bb3f8e49..6709cef01f7f 100644 --- a/tests/data/test520 +++ b/tests/data/test520 @@ -38,16 +38,16 @@ ftp://%HOSTIP:%FTPPORT/520 # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -MDTM 520 -EPSV -TYPE I -SIZE 520 -RETR 520 -QUIT + +USER anonymous +PASS ftp@example.com +PWD +MDTM 520 +EPSV +TYPE I +SIZE 520 +RETR 520 +QUIT diff --git a/tests/data/test521 b/tests/data/test521 index 90473b33a0b7..c35c08967e0b 100644 --- a/tests/data/test521 +++ b/tests/data/test521 @@ -44,15 +44,15 @@ ftp://%HOSTIP/%TESTNUMBER/ %FTPPORT # # Verify data after the test has been "shot" - -USER xxx -PASS yyy -PWD -CWD %TESTNUMBER -EPSV -TYPE A -LIST -QUIT + +USER xxx +PASS yyy +PWD +CWD %TESTNUMBER +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test522 b/tests/data/test522 index cc849f47a66d..2134e98c8113 100644 --- a/tests/data/test522 +++ b/tests/data/test522 @@ -10,15 +10,15 @@ CURLOPT_PORT # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 + hello @@ -43,12 +43,12 @@ http://%HOSTIP/%TESTNUMBER %HTTPPORT # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[xxx:yyy]b64% -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[xxx:yyy]b64% +Accept: */* + hello diff --git a/tests/data/test523 b/tests/data/test523 index f414bf81d924..4c67bc6d4b28 100644 --- a/tests/data/test523 +++ b/tests/data/test523 @@ -12,15 +12,15 @@ CURLOPT_PROXY # # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 + hello @@ -49,13 +49,13 @@ proxy # # Verify data after the test has been "shot" - -GET http://www.example.com:19999/%TESTNUMBER HTTP/1.1 -Host: www.example.com:19999 -Authorization: Basic %b64[xxx:yyy]b64% -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://www.example.com:19999/%TESTNUMBER HTTP/1.1 +Host: www.example.com:19999 +Authorization: Basic %b64[xxx:yyy]b64% +Accept: */* +Proxy-Connection: Keep-Alive + hello diff --git a/tests/data/test524 b/tests/data/test524 index 3b383003fb53..ca365c472242 100644 --- a/tests/data/test524 +++ b/tests/data/test524 @@ -32,10 +32,10 @@ ftp://%HOSTIP:%FTPPORT/path/to/ # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD + +USER anonymous +PASS ftp@example.com +PWD # 3 is CURLE_URL_MALFORMAT diff --git a/tests/data/test525 b/tests/data/test525 index 2b96a7fd9673..f22f437e6155 100644 --- a/tests/data/test525 +++ b/tests/data/test525 @@ -41,15 +41,15 @@ Moooooooooooo ^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3} ^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\| - -USER anonymous -PASS ftp@example.com -PWD -CWD path -PORT 127,0,0,1,5,109 -TYPE I -STOR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +PORT 127,0,0,1,5,109 +TYPE I +STOR %TESTNUMBER +QUIT Moooooooooooo diff --git a/tests/data/test526 b/tests/data/test526 index 85b24d5db924..e8b7c45a541e 100644 --- a/tests/data/test526 +++ b/tests/data/test526 @@ -39,25 +39,25 @@ ftp://%HOSTIP:%FTPPORT/path/%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -EPSV -SIZE %TESTNUMBER -RETR %TESTNUMBER -EPSV -SIZE %TESTNUMBER -RETR %TESTNUMBER -EPSV -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +EPSV +SIZE %TESTNUMBER +RETR %TESTNUMBER +EPSV +SIZE %TESTNUMBER +RETR %TESTNUMBER +EPSV +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test527 b/tests/data/test527 index 3cfe7998cc16..de764a5449e8 100644 --- a/tests/data/test527 +++ b/tests/data/test527 @@ -39,25 +39,25 @@ ftp://%HOSTIP:%FTPPORT/path/%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -EPSV -SIZE %TESTNUMBER -RETR %TESTNUMBER -EPSV -SIZE %TESTNUMBER -RETR %TESTNUMBER -EPSV -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +EPSV +SIZE %TESTNUMBER +RETR %TESTNUMBER +EPSV +SIZE %TESTNUMBER +RETR %TESTNUMBER +EPSV +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test528 b/tests/data/test528 index 7cb9e8b1149f..7daf4d5f13b4 100644 --- a/tests/data/test528 +++ b/tests/data/test528 @@ -9,12 +9,12 @@ multi # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 47 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 47 + file contents should appear once for each file @@ -43,23 +43,23 @@ http://%HOSTIP:%HTTPPORT/path/%TESTNUMBER # Verify data after the test has been "shot" - -GET /path/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /path/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /path/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /path/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /path/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /path/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /path/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /path/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + diff --git a/tests/data/test529 b/tests/data/test529 index 1c21c15efe0d..1626af9ba043 100644 --- a/tests/data/test529 +++ b/tests/data/test529 @@ -41,15 +41,15 @@ Moooooooooooo ^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3} ^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\| - -USER anonymous -PASS ftp@example.com -PWD -CWD path -PORT 127,0,0,1,5,109 -TYPE I -STOR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +PORT 127,0,0,1,5,109 +TYPE I +STOR %TESTNUMBER +QUIT Moooooooooooo diff --git a/tests/data/test53 b/tests/data/test53 index 0bbc5d63734e..0c044a109279 100644 --- a/tests/data/test53 +++ b/tests/data/test53 @@ -8,14 +8,14 @@ cookies # Server-side - -HTTP/1.1 200 OK -Server: Microsoft-IIS/4.0 -Date: Tue, 25 Sep 2001 19:37:44 GMT -Content-Type: text/html -Connection: close -Content-Length: 21 - + +HTTP/1.1 200 OK +Server: Microsoft-IIS/4.0 +Date: Tue, 25 Sep 2001 19:37:44 GMT +Content-Type: text/html +Connection: close +Content-Length: 21 + This server says moo @@ -43,13 +43,13 @@ cookies # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Cookie: mooo=indeed - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Cookie: mooo=indeed + diff --git a/tests/data/test530 b/tests/data/test530 index 42e27a0d838e..32ffbcab5a5f 100644 --- a/tests/data/test530 +++ b/tests/data/test530 @@ -43,7 +43,5 @@ http://%HOSTIP:%HTTPPORT/file%TESTNUMBER # Verify data after the test has been "shot" - - diff --git a/tests/data/test531 b/tests/data/test531 index 59501d5ead4e..e018d7d60cd9 100644 --- a/tests/data/test531 +++ b/tests/data/test531 @@ -44,15 +44,15 @@ don't upload this ^PORT \d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3},\d{1,3} ^EPRT \|1\|\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\|\d{1,5}\| - -USER anonymous -PASS ftp@example.com -PWD -CWD path -PORT 127,0,0,1,5,109 -TYPE I -STOR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +PORT 127,0,0,1,5,109 +TYPE I +STOR %TESTNUMBER +QUIT diff --git a/tests/data/test532 b/tests/data/test532 index ac97e89b9cab..b65d6ead6215 100644 --- a/tests/data/test532 +++ b/tests/data/test532 @@ -39,25 +39,25 @@ ftp://%HOSTIP:%FTPPORT/path/%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -EPSV -SIZE %TESTNUMBER -RETR %TESTNUMBER -EPSV -SIZE %TESTNUMBER -RETR %TESTNUMBER -EPSV -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +EPSV +SIZE %TESTNUMBER +RETR %TESTNUMBER +EPSV +SIZE %TESTNUMBER +RETR %TESTNUMBER +EPSV +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test533 b/tests/data/test533 index 1dbceb6dd3b5..86554ba72635 100644 --- a/tests/data/test533 +++ b/tests/data/test533 @@ -37,19 +37,19 @@ ftp://%HOSTIP:%FTPPORT/path/%TESTNUMBER ftp://%HOSTIP:%FTPPORT/path/%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -EPSV -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +EPSV +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test534 b/tests/data/test534 index 0e0f35abdd15..aa02dfbb3f0e 100644 --- a/tests/data/test534 +++ b/tests/data/test534 @@ -38,16 +38,16 @@ ftp://non-existing-host.haxx.se/path/%TESTNUMBER ftp://%HOSTIP:%FTPPORT/path/%TE # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test535 b/tests/data/test535 index aa52197767e1..986ffb3bc5e9 100644 --- a/tests/data/test535 +++ b/tests/data/test535 @@ -8,23 +8,23 @@ multi - -HTTP/1.1 404 Badness -Date: Tue, 09 Nov 2010 14:49:00 GMT -ETag: "21025-dc7-39462498" -Content-Length: 6 -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 404 Badness +Date: Tue, 09 Nov 2010 14:49:00 GMT +ETag: "21025-dc7-39462498" +Content-Length: 6 +Content-Type: text/html +Funny-head: yesyes + hejsan - -HTTP/1.1 200 Fine -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 13 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 Fine +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 13 +Connection: close +Content-Type: text/html + fine content @@ -55,15 +55,15 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER http://%HOSTIP:%HTTPPORT/%TESTNUMBER0001 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + diff --git a/tests/data/test536 b/tests/data/test536 index dc78f2a6513f..58a9ede4f483 100644 --- a/tests/data/test536 +++ b/tests/data/test536 @@ -13,15 +13,15 @@ CURLINFO_USED_PROXY # # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 + hello @@ -55,7 +55,7 @@ proxy # # Verify data after the test has been "shot" - + GET http://usingproxy.com/ HTTP/1.1 Host: usingproxy.com Accept: */* diff --git a/tests/data/test537 b/tests/data/test537 index c227a72cb15a..5cac2ed91794 100644 --- a/tests/data/test537 +++ b/tests/data/test537 @@ -9,18 +9,18 @@ HTTP GET # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + -foo- @@ -54,11 +54,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + Maximum allocated: 3200000 diff --git a/tests/data/test538 b/tests/data/test538 index e411db88f5cf..8f7b04f8e438 100644 --- a/tests/data/test538 +++ b/tests/data/test538 @@ -37,9 +37,9 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER 41 - -USER anonymous -PASS ftp@example.com + +USER anonymous +PASS ftp@example.com diff --git a/tests/data/test539 b/tests/data/test539 index 7985a52347e0..b98fb4b908cd 100644 --- a/tests/data/test539 +++ b/tests/data/test539 @@ -43,21 +43,21 @@ ftp://%HOSTIP:%FTPPORT/path/to/the/file/%TESTNUMBER ftp://%HOSTIP:%FTPPORT/path/ # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path/to/the/file -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -SYST -CWD / -EPSV -SIZE path/to/the/file/%TESTNUMBER0001 -RETR path/to/the/file/%TESTNUMBER0001 -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path/to/the/file +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +SYST +CWD / +EPSV +SIZE path/to/the/file/%TESTNUMBER0001 +RETR path/to/the/file/%TESTNUMBER0001 +QUIT diff --git a/tests/data/test54 b/tests/data/test54 index 8a463118ccd6..901620fa62d6 100644 --- a/tests/data/test54 +++ b/tests/data/test54 @@ -11,7 +11,7 @@ followlocation HTTP/1.1 302 This is a weirdo text message swsclose Connection: close -Location: +Location:%SP This server reply is for testing @@ -32,12 +32,12 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER -L # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test540 b/tests/data/test540 index 977996a2fad0..c3238e33053f 100644 --- a/tests/data/test540 +++ b/tests/data/test540 @@ -16,41 +16,41 @@ connection-monitor # this is returned first since we get no proxy-auth - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" -Content-Length: 33 - + +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" +Content-Length: 33 + And you should ignore this data. # then this is returned when we get proxy-auth - -HTTP/1.1 200 OK -Content-Length: 21 -Server: no - + +HTTP/1.1 200 OK +Content-Length: 21 +Server: no + Nice proxy auth sir! - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" -Content-Length: 33 - -HTTP/1.1 200 OK -Content-Length: 21 -Server: no - + +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" +Content-Length: 33 + +HTTP/1.1 200 OK +Content-Length: 21 +Server: no + Nice proxy auth sir! -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" -Content-Length: 33 - -HTTP/1.1 200 OK -Content-Length: 21 -Server: no - +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" +Content-Length: 33 + +HTTP/1.1 200 OK +Content-Length: 21 +Server: no + Nice proxy auth sir! @@ -80,29 +80,29 @@ http://test.remote.example.com/path/%TESTNUMBER http://%HOSTIP:%HTTPPORT silly:p # Verify data after the test has been "shot" - -GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 -Host: custom.set.host.name -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 -Host: custom.set.host.name -Proxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="/path/%TESTNUMBER", response="ca507dcf189196b6a5374d3233042261" -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 -Host: custom.set.host.name -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 -Host: custom.set.host.name -Proxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="/path/%TESTNUMBER", response="ca507dcf189196b6a5374d3233042261" -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 +Host: custom.set.host.name +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 +Host: custom.set.host.name +Proxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="/path/%TESTNUMBER", response="ca507dcf189196b6a5374d3233042261" +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 +Host: custom.set.host.name +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 +Host: custom.set.host.name +Proxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="/path/%TESTNUMBER", response="ca507dcf189196b6a5374d3233042261" +Accept: */* +Proxy-Connection: Keep-Alive + [DISCONNECT] diff --git a/tests/data/test541 b/tests/data/test541 index 787faa3d98c5..f10ce2dadd93 100644 --- a/tests/data/test541 +++ b/tests/data/test541 @@ -43,16 +43,16 @@ works? - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -STOR %TESTNUMBER -EPSV -STOR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +STOR %TESTNUMBER +EPSV +STOR %TESTNUMBER +QUIT diff --git a/tests/data/test542 b/tests/data/test542 index b39b1b30d1a5..8f6bdf89453e 100644 --- a/tests/data/test542 +++ b/tests/data/test542 @@ -16,9 +16,9 @@ that FTP works so does it? - -Content-Length: 51 -Accept-ranges: bytes + +Content-Length: 51 +Accept-ranges: bytes @@ -44,14 +44,14 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER # There's no MTDM in the protocol here since this code doesn't ask for the # time/date of the file - -USER anonymous -PASS ftp@example.com -PWD -TYPE I -SIZE %TESTNUMBER -REST 0 -QUIT + +USER anonymous +PASS ftp@example.com +PWD +TYPE I +SIZE %TESTNUMBER +REST 0 +QUIT diff --git a/tests/data/test544 b/tests/data/test544 index a35c9cf70721..adfeadcf09ff 100644 --- a/tests/data/test544 +++ b/tests/data/test544 @@ -9,12 +9,12 @@ HTTP POST # # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 3 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 3 + OK @@ -40,13 +40,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 4 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 4 +Content-Type: application/x-www-form-urlencoded + This diff --git a/tests/data/test545 b/tests/data/test545 index 0bdb6281536e..99bf04685187 100644 --- a/tests/data/test545 +++ b/tests/data/test545 @@ -9,12 +9,12 @@ HTTP POST # # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 3 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 3 + OK @@ -40,16 +40,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -^User-Agent:.* - - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 46 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 46 +Content-Type: application/x-www-form-urlencoded + %hex[This%00 is test binary data with an embedded NUL]hex% diff --git a/tests/data/test546 b/tests/data/test546 index f8f01641a0aa..5fb7c0c096ee 100644 --- a/tests/data/test546 +++ b/tests/data/test546 @@ -44,19 +44,19 @@ ftp://%HOSTIP:%FTPPORT/path/%TESTNUMBER ftp://%HOSTIP:%FTPPORT/path/%TESTNUMBER # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -EPSV -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +EPSV +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT data diff --git a/tests/data/test547 b/tests/data/test547 index de07800814a8..764a23130190 100644 --- a/tests/data/test547 +++ b/tests/data/test547 @@ -12,56 +12,56 @@ NTLM # Server-side - -HTTP/1.1 407 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts" -Proxy-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Connection: close - + +HTTP/1.1 407 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts" +Proxy-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Connection: close + This is not the real page # this is returned first since we get no proxy-auth - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Content-Length: 34 - + +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Content-Length: 34 + Hey you, authenticate or go away! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine in proxy land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 42 - + +HTTP/1.1 200 Things are fine in proxy land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 42 + Contents of that page you requested, sir. - -HTTP/1.1 407 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts" -Proxy-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Connection: close - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Content-Length: 34 - -HTTP/1.1 200 Things are fine in proxy land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 42 - + +HTTP/1.1 407 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts" +Proxy-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Connection: close + +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Content-Length: 34 + +HTTP/1.1 200 Things are fine in proxy land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 42 + Contents of that page you requested, sir. @@ -91,31 +91,31 @@ http://test.remote.example.com/path/%TESTNUMBER http://%HOSTIP:%HTTPPORT testuse # Verify data after the test has been "shot" - -POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 -Host: test.remote.example.com -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 36 -Content-Type: application/x-www-form-urlencoded - + +POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 +Host: test.remote.example.com +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 36 +Content-Type: application/x-www-form-urlencoded + this is the blurb we want to upload -POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 -Host: test.remote.example.com -Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 0 -Content-Type: application/x-www-form-urlencoded - -POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 -Host: test.remote.example.com -Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 36 -Content-Type: application/x-www-form-urlencoded - +POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 +Host: test.remote.example.com +Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 0 +Content-Type: application/x-www-form-urlencoded + +POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 +Host: test.remote.example.com +Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 36 +Content-Type: application/x-www-form-urlencoded + this is the blurb we want to upload diff --git a/tests/data/test548 b/tests/data/test548 index 2ad40e4589df..d75c49559ef5 100644 --- a/tests/data/test548 +++ b/tests/data/test548 @@ -12,56 +12,56 @@ NTLM # Server-side - -HTTP/1.1 407 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts" -Proxy-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Connection: close - + +HTTP/1.1 407 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts" +Proxy-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Connection: close + This is not the real page # this is returned first since we get no proxy-auth - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Content-Length: 34 - + +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Content-Length: 34 + Hey you, authenticate or go away! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine in proxy land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 42 - + +HTTP/1.1 200 Things are fine in proxy land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 42 + Contents of that page you requested, sir. - -HTTP/1.1 407 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts" -Proxy-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Connection: close - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Content-Length: 34 - -HTTP/1.1 200 Things are fine in proxy land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 42 - + +HTTP/1.1 407 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts" +Proxy-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Connection: close + +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Content-Length: 34 + +HTTP/1.1 200 Things are fine in proxy land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 42 + Contents of that page you requested, sir. @@ -91,31 +91,31 @@ http://test.remote.example.com/path/%TESTNUMBER http://%HOSTIP:%HTTPPORT testuse # Verify data after the test has been "shot" - -POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 -Host: test.remote.example.com -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 36 -Content-Type: application/x-www-form-urlencoded - + +POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 +Host: test.remote.example.com +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 36 +Content-Type: application/x-www-form-urlencoded + this is the blurb we want to upload -POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 -Host: test.remote.example.com -Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 0 -Content-Type: application/x-www-form-urlencoded - -POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 -Host: test.remote.example.com -Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 36 -Content-Type: application/x-www-form-urlencoded - +POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 +Host: test.remote.example.com +Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 0 +Content-Type: application/x-www-form-urlencoded + +POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 +Host: test.remote.example.com +Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 36 +Content-Type: application/x-www-form-urlencoded + this is the blurb we want to upload diff --git a/tests/data/test549 b/tests/data/test549 index 95b2def5cf9e..6fc17603f5b3 100644 --- a/tests/data/test549 +++ b/tests/data/test549 @@ -11,15 +11,15 @@ HTTP proxy # # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 + hello @@ -49,12 +49,12 @@ ftp://www.example.com/moo/%TESTNUMBER http://%HOSTIP:%HTTPPORT # # Verify data after the test has been "shot" - -GET ftp://www.example.com/moo/%TESTNUMBER;type=i HTTP/1.1 -Host: www.example.com:21 -Accept: */* -Proxy-Connection: Keep-Alive - + +GET ftp://www.example.com/moo/%TESTNUMBER;type=i HTTP/1.1 +Host: www.example.com:21 +Accept: */* +Proxy-Connection: Keep-Alive + hello diff --git a/tests/data/test55 b/tests/data/test55 index ea014f4aaea4..73e474fd3b2b 100644 --- a/tests/data/test55 +++ b/tests/data/test55 @@ -48,17 +48,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -L - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test550 b/tests/data/test550 index a4ee2b49b22f..ae87565aea3a 100644 --- a/tests/data/test550 +++ b/tests/data/test550 @@ -11,15 +11,15 @@ CURLOPT_PROXY # # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 + hello @@ -49,12 +49,12 @@ ftp://www.example.com/moo/%TESTNUMBER http://%HOSTIP:%HTTPPORT ascii # # Verify data after the test has been "shot" - -GET ftp://www.example.com/moo/%TESTNUMBER;type=a HTTP/1.1 -Host: www.example.com:21 -Accept: */* -Proxy-Connection: Keep-Alive - + +GET ftp://www.example.com/moo/%TESTNUMBER;type=a HTTP/1.1 +Host: www.example.com:21 +Accept: */* +Proxy-Connection: Keep-Alive + hello diff --git a/tests/data/test551 b/tests/data/test551 index c7a560e812a0..87579d48f81c 100644 --- a/tests/data/test551 +++ b/tests/data/test551 @@ -14,39 +14,39 @@ HTTP proxy Digest auth # as a bonus, ww use an excessive nonce length - -HTTP/1.1 407 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Proxy-Authenticate: Digest realm="something fun to read", nonce="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" -Content-Type: text/html; charset=iso-8859-1 -Connection: close - + +HTTP/1.1 407 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Proxy-Authenticate: Digest realm="something fun to read", nonce="%repeat[400 x A]%" +Content-Type: text/html; charset=iso-8859-1 +Connection: close + This is not the real page # This is supposed to be returned when the server gets the Digest # Authorization: line passed-in from the client - -HTTP/1.1 200 Things are fine in proxy land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 42 - + +HTTP/1.1 200 Things are fine in proxy land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 42 + Contents of that page you requested, sir. - -HTTP/1.1 407 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Proxy-Authenticate: Digest realm="something fun to read", nonce="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" -Content-Type: text/html; charset=iso-8859-1 -Connection: close - -HTTP/1.1 200 Things are fine in proxy land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 42 - + +HTTP/1.1 407 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Proxy-Authenticate: Digest realm="something fun to read", nonce="%repeat[400 x A]%" +Content-Type: text/html; charset=iso-8859-1 +Connection: close + +HTTP/1.1 200 Things are fine in proxy land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 42 + Contents of that page you requested, sir. @@ -76,23 +76,23 @@ http://test.remote.example.com/path/%TESTNUMBER http://%HOSTIP:%HTTPPORT s1lly:p # Verify data after the test has been "shot" - -POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 -Host: test.remote.example.com -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 36 -Content-Type: application/x-www-form-urlencoded - + +POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 +Host: test.remote.example.com +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 36 +Content-Type: application/x-www-form-urlencoded + this is the blurb we want to upload -POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 -Host: test.remote.example.com -Proxy-Authorization: Digest username="s1lly", realm="something fun to read", nonce="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", uri="/path/%TESTNUMBER", response="3325240726fbdaf1e61f3a0dd40b930c" -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 36 -Content-Type: application/x-www-form-urlencoded - +POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 +Host: test.remote.example.com +Proxy-Authorization: Digest username="s1lly", realm="something fun to read", nonce="%repeat[400 x A]%", uri="/path/%TESTNUMBER", response="3325240726fbdaf1e61f3a0dd40b930c" +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 36 +Content-Type: application/x-www-form-urlencoded + this is the blurb we want to upload diff --git a/tests/data/test552 b/tests/data/test552 index b38a6b5e295b..32b877bf82e1 100644 --- a/tests/data/test552 +++ b/tests/data/test552 @@ -16,24 +16,24 @@ HTTP proxy Digest auth # as a bonus, ww use an excessive nonce length - -HTTP/1.1 407 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Proxy-Authenticate: Digest realm="something fun to read", nonce="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" -Content-Type: text/html; charset=iso-8859-1 -Connection: close - + +HTTP/1.1 407 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Proxy-Authenticate: Digest realm="something fun to read", nonce="%repeat[400 x A]%" +Content-Type: text/html; charset=iso-8859-1 +Connection: close + This is not the real page # This is supposed to be returned when the server gets the Digest # Authorization: line passed-in from the client - -HTTP/1.1 200 Things are fine in proxy land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 42 - + +HTTP/1.1 200 Things are fine in proxy land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 42 + Contents of that page you requested, sir. @@ -70,21 +70,21 @@ http://test.remote.example.com/path/%TESTNUMBER http://s1lly:pers0n@%HOSTIP:%HTT # Verify data after the test has been "shot" -POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 -Host: test.remote.example.com -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 70000 -Content-Type: application/x-www-form-urlencoded - -%repeat[7000 x test data%00]%POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 -Host: test.remote.example.com -Proxy-Authorization: Digest username="s1lly", realm="something fun to read", nonce="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", uri="/path/%TESTNUMBER", response="be7aedc47d821b6d847c445ded782c43" -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 70000 -Content-Type: application/x-www-form-urlencoded - +POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1%CR +Host: test.remote.example.com%CR +Accept: */*%CR +Proxy-Connection: Keep-Alive%CR +Content-Length: 70000%CR +Content-Type: application/x-www-form-urlencoded%CR +%CR +%repeat[7000 x test data%00]%POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1%CR +Host: test.remote.example.com%CR +Proxy-Authorization: Digest username="s1lly", realm="something fun to read", nonce="%repeat[400 x A]%", uri="/path/%TESTNUMBER", response="be7aedc47d821b6d847c445ded782c43"%CR +Accept: */*%CR +Proxy-Connection: Keep-Alive%CR +Content-Length: 70000%CR +Content-Type: application/x-www-form-urlencoded%CR +%CR %repeat[7000 x test data%00]% diff --git a/tests/data/test553 b/tests/data/test553 index 4500751a1232..69f822033062 100644 --- a/tests/data/test553 +++ b/tests/data/test553 @@ -10,11 +10,11 @@ huge request header # Server-side - -HTTP/1.1 200 Fine! -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Length: 6 - + +HTTP/1.1 200 Fine! +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Length: 6 + hello @@ -41,21 +41,21 @@ http://%HOSTIP:%HTTPPORT/path/%TESTNUMBER # Verify data after the test has been "shot" - -POST /path/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Header0: %repeat[5000 x A]% -Header1: %repeat[5000 x A]% -Header2: %repeat[5000 x A]% -Header3: %repeat[5000 x A]% -Header4: %repeat[5000 x A]% -Header5: %repeat[5000 x A]% -Header6: %repeat[5000 x A]% -Header7: %repeat[5000 x A]% -Content-Length: 40960 -Content-Type: application/x-www-form-urlencoded - + +POST /path/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Header0: %repeat[5000 x A]% +Header1: %repeat[5000 x A]% +Header2: %repeat[5000 x A]% +Header3: %repeat[5000 x A]% +Header4: %repeat[5000 x A]% +Header5: %repeat[5000 x A]% +Header6: %repeat[5000 x A]% +Header7: %repeat[5000 x A]% +Content-Length: 40960 +Content-Type: application/x-www-form-urlencoded + %repeat[40960 x A]% diff --git a/tests/data/test554 b/tests/data/test554 index 1e2fc5f6b58a..9336930f920e 100644 --- a/tests/data/test554 +++ b/tests/data/test554 @@ -10,29 +10,29 @@ FORM # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello @@ -69,68 +69,68 @@ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------- # boundary string and since 5 of them are in the body contents, we see # (5*12) == 60 bytes less -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 780 -Content-Type: multipart/form-data; boundary=---------------------------- - ------------------------------- -Content-Disposition: form-data; name="sendfile"; filename="postit2.c" - +POST /%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +Accept: */*%CR +Content-Length: 780%CR +Content-Type: multipart/form-data; boundary=----------------------------%CR +%CR +------------------------------%CR +Content-Disposition: form-data; name="sendfile"; filename="postit2.c"%CR +%CR this is what we post to the silly web server - ------------------------------- -Content-Disposition: form-data; name="callbackdata" - +%CR +------------------------------%CR +Content-Disposition: form-data; name="callbackdata"%CR +%CR this is what we post to the silly web server - ------------------------------- -Content-Disposition: form-data; name="filename" - -postit2.c ------------------------------- -Content-Disposition: form-data; name="submit" -Content-Type: text/plain - -send ------------------------------- -Content-Disposition: form-data; name="somename"; filename="somefile.txt" -Content-Type: text/plain - -blah blah --------------------------------- -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 794 -Content-Type: multipart/form-data; boundary=---------------------------- - ------------------------------- -Content-Disposition: form-data; name="sendfile alternative"; filename="file name 2" - +%CR +------------------------------%CR +Content-Disposition: form-data; name="filename"%CR +%CR +postit2.c%CR +------------------------------%CR +Content-Disposition: form-data; name="submit"%CR +Content-Type: text/plain%CR +%CR +send%CR +------------------------------%CR +Content-Disposition: form-data; name="somename"; filename="somefile.txt"%CR +Content-Type: text/plain%CR +%CR +blah blah%CR +--------------------------------%CR +POST /%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +Accept: */*%CR +Content-Length: 794%CR +Content-Type: multipart/form-data; boundary=----------------------------%CR +%CR +------------------------------%CR +Content-Disposition: form-data; name="sendfile alternative"; filename="file name 2"%CR +%CR this is what we post to the silly web server - ------------------------------- -Content-Disposition: form-data; name="callbackdata" - +%CR +------------------------------%CR +Content-Disposition: form-data; name="callbackdata"%CR +%CR this is what we post to the silly web server - ------------------------------- -Content-Disposition: form-data; name="filename" - -postit2.c ------------------------------- -Content-Disposition: form-data; name="submit" -Content-Type: text/plain - -send ------------------------------- -Content-Disposition: form-data; name="somename"; filename="somefile.txt" -Content-Type: text/plain - -blah blah --------------------------------- +%CR +------------------------------%CR +Content-Disposition: form-data; name="filename"%CR +%CR +postit2.c%CR +------------------------------%CR +Content-Disposition: form-data; name="submit"%CR +Content-Type: text/plain%CR +%CR +send%CR +------------------------------%CR +Content-Disposition: form-data; name="somename"; filename="somefile.txt"%CR +Content-Type: text/plain%CR +%CR +blah blah%CR +--------------------------------%CR diff --git a/tests/data/test555 b/tests/data/test555 index f3633f0b1c64..1d42c8da2f92 100644 --- a/tests/data/test555 +++ b/tests/data/test555 @@ -17,56 +17,56 @@ NTLM # Server-side - -HTTP/1.1 407 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts" -Proxy-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Connection: close - + +HTTP/1.1 407 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts" +Proxy-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Connection: close + This is not the real page # this is returned first since we get no proxy-auth - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Content-Length: 34 - + +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Content-Length: 34 + Hey you, authenticate or go away! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine in proxy land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 42 - + +HTTP/1.1 200 Things are fine in proxy land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 42 + Contents of that page you requested, sir. - -HTTP/1.1 407 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" -Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts" -Proxy-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Connection: close - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Content-Length: 34 - -HTTP/1.1 200 Things are fine in proxy land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 42 - + +HTTP/1.1 407 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Proxy-Authenticate: Blackmagic realm="gimme all yer s3cr3ts" +Proxy-Authenticate: Basic realm="gimme all yer s3cr3ts" +Proxy-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Connection: close + +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Content-Length: 34 + +HTTP/1.1 200 Things are fine in proxy land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 42 + Contents of that page you requested, sir. @@ -96,31 +96,31 @@ http://test.remote.example.com/path/%TESTNUMBER http://%HOSTIP:%HTTPPORT testuse # Verify data after the test has been "shot" - -POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 -Host: test.remote.example.com -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 36 -Content-Type: application/x-www-form-urlencoded - + +POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 +Host: test.remote.example.com +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 36 +Content-Type: application/x-www-form-urlencoded + this is the blurb we want to upload -POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 -Host: test.remote.example.com -Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 0 -Content-Type: application/x-www-form-urlencoded - -POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 -Host: test.remote.example.com -Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -Accept: */* -Proxy-Connection: Keep-Alive -Content-Length: 36 -Content-Type: application/x-www-form-urlencoded - +POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 +Host: test.remote.example.com +Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 0 +Content-Type: application/x-www-form-urlencoded + +POST http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 +Host: test.remote.example.com +Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +Accept: */* +Proxy-Connection: Keep-Alive +Content-Length: 36 +Content-Type: application/x-www-form-urlencoded + this is the blurb we want to upload diff --git a/tests/data/test556 b/tests/data/test556 index e531f012ea4b..88d8ce84c858 100644 --- a/tests/data/test556 +++ b/tests/data/test556 @@ -7,13 +7,13 @@ HTTP GET - -HTTP/1.1 200 OK swsclose -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -Content-Length: 6 -Connection: close - + +HTTP/1.1 200 OK swsclose +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +Content-Length: 6 +Connection: close + -foo- @@ -38,10 +38,10 @@ http://%HOSTIP:%HTTPPORT # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: ninja - + +GET /%TESTNUMBER HTTP/1.1 +Host: ninja + diff --git a/tests/data/test559 b/tests/data/test559 index 982209ce9df4..1cd494fac877 100644 --- a/tests/data/test559 +++ b/tests/data/test559 @@ -19,9 +19,9 @@ Accept-Ranges: bytes Content-Length: 2049 Connection: close Content-Type: text/html -Silly-header: ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ +Silly-header: %repeat[511 x Z]% -ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ +%repeat[2048 x Z]% diff --git a/tests/data/test56 b/tests/data/test56 index 32590f27c705..5ced385bb0cf 100644 --- a/tests/data/test56 +++ b/tests/data/test56 @@ -44,18 +44,18 @@ header "Transfer-Encoding: chunked" # Verify data after the test has been "shot" - -POST /that.site.com/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: %repeat[99999 x a]% -Accept: */* -Transfer-Encoding: chunked -Content-Type: application/x-www-form-urlencoded - -c -we post this -0 - + +POST /that.site.com/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: %repeat[99999 x a]% +Accept: */* +Transfer-Encoding: chunked +Content-Type: application/x-www-form-urlencoded + +c +we post this +0 + diff --git a/tests/data/test560 b/tests/data/test560 index 30641a166858..316baf48fbfc 100644 --- a/tests/data/test560 +++ b/tests/data/test560 @@ -10,12 +10,12 @@ multi # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 7 - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 7 + MooMoo @@ -43,11 +43,11 @@ https://%HOSTIP:%HTTPSPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPSPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPSPORT +Accept: */* + diff --git a/tests/data/test561 b/tests/data/test561 index 09e381745c42..d3ad14111934 100644 --- a/tests/data/test561 +++ b/tests/data/test561 @@ -12,15 +12,15 @@ type= # # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 + hello @@ -50,12 +50,12 @@ FTP RETR with CURLOPT_PROXY_TRANSFER_MODE, ASCII transfer and type=i # # Verify data after the test has been "shot" - -GET ftp://www.example.com/moo/%TESTNUMBER;type=i HTTP/1.1 -Host: www.example.com:21 -Accept: */* -Proxy-Connection: Keep-Alive - + +GET ftp://www.example.com/moo/%TESTNUMBER;type=i HTTP/1.1 +Host: www.example.com:21 +Accept: */* +Proxy-Connection: Keep-Alive + hello diff --git a/tests/data/test562 b/tests/data/test562 index d1793891d077..d7871f18ec28 100644 --- a/tests/data/test562 +++ b/tests/data/test562 @@ -39,14 +39,14 @@ FTP a type=A URL and CURLOPT_PORT set # There's no MTDM in the protocol here since this code doesn't ask for the # time/date of the file - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE A -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE A +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test563 b/tests/data/test563 index b7c61db768b9..12f0368d58d8 100644 --- a/tests/data/test563 +++ b/tests/data/test563 @@ -9,13 +9,13 @@ HTTP proxy # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Accept-Ranges: bytes -Content-Length: 6 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Accept-Ranges: bytes +Content-Length: 6 + hello @@ -48,12 +48,12 @@ ftp_proxy=http://%HOSTIP:%HTTPPORT/ # Verify data after the test has been "shot" - -GET ftp://%HOSTIP:%FTPPORT/%TESTNUMBER;type=A HTTP/1.1 -Host: %HOSTIP:%FTPPORT -Accept: */* -Proxy-Connection: Keep-Alive - + +GET ftp://%HOSTIP:%FTPPORT/%TESTNUMBER;type=A HTTP/1.1 +Host: %HOSTIP:%FTPPORT +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test564 b/tests/data/test564 index 96a6f9b1a6b7..6dad35318b31 100644 --- a/tests/data/test564 +++ b/tests/data/test564 @@ -45,16 +45,16 @@ proxy # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD path -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD path +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT data diff --git a/tests/data/test565 b/tests/data/test565 index b8e418ec7b9e..fc1c9c310f17 100644 --- a/tests/data/test565 +++ b/tests/data/test565 @@ -10,44 +10,44 @@ chunked Transfer-Encoding # # Server-side - -HTTP/1.1 100 Continue -Server: Microsoft-IIS/5.0 -Date: Sun, 03 Apr 2005 14:57:45 GMT -X-Powered-By: ASP.NET - -HTTP/1.1 401 authentication please swsbounce -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - + +HTTP/1.1 100 Continue +Server: Microsoft-IIS/5.0 +Date: Sun, 03 Apr 2005 14:57:45 GMT +X-Powered-By: ASP.NET + +HTTP/1.1 401 authentication please swsbounce +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok - -HTTP/1.1 100 Continue -Server: Microsoft-IIS/5.0 -Date: Sun, 03 Apr 2005 14:57:45 GMT -X-Powered-By: ASP.NET - -HTTP/1.1 401 authentication please swsbounce -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 100 Continue +Server: Microsoft-IIS/5.0 +Date: Sun, 03 Apr 2005 14:57:45 GMT +X-Powered-By: ASP.NET + +HTTP/1.1 401 authentication please swsbounce +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok @@ -78,33 +78,33 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Transfer-Encoding: chunked -Content-Type: application/x-www-form-urlencoded - -0 - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="foo", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="877424f750af047634dbd94f9933217b" -Accept: */* -Transfer-Encoding: chunked -Content-Type: application/x-www-form-urlencoded -Expect: 100-continue - -3 -one -3 -two -5 -three -1d -and a final longer crap: four -0 - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Transfer-Encoding: chunked +Content-Type: application/x-www-form-urlencoded + +0 + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="foo", realm="testrealm", nonce="1053604144", uri="/%TESTNUMBER", response="877424f750af047634dbd94f9933217b" +Accept: */* +Transfer-Encoding: chunked +Content-Type: application/x-www-form-urlencoded +Expect: 100-continue + +3 +one +3 +two +5 +three +1d +and a final longer crap: four +0 + diff --git a/tests/data/test566 b/tests/data/test566 index 1ff92f4e21b8..0b2e5e23a3e1 100644 --- a/tests/data/test566 +++ b/tests/data/test566 @@ -8,18 +8,18 @@ HTTP GET # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 0 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 0 +Connection: close +Content-Type: text/html +Funny-head: yesyes + @@ -47,11 +47,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER %LOGDIR/ip%TESTNUMBER CL 0 - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + diff --git a/tests/data/test567 b/tests/data/test567 index f6cdec42a1f6..05f1cfeb4e61 100644 --- a/tests/data/test567 +++ b/tests/data/test567 @@ -10,12 +10,12 @@ OPTIONS # Server-side - -RTSP/1.0 200 OK -Server: RTSPD/libcurl-test -CSeq: 1 -Public: DESCRIBE, OPTIONS, SETUP, TEARDOWN, PLAY, PAUSE -Curl-Private: swsclose + +RTSP/1.0 200 OK +Server: RTSPD/libcurl-test +CSeq: 1 +Public: DESCRIBE, OPTIONS, SETUP, TEARDOWN, PLAY, PAUSE +Curl-Private: swsclose @@ -37,12 +37,12 @@ rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER - -OPTIONS rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER RTSP/1.0 -CSeq: 1 -User-Agent: test%TESTNUMBER -Test-Number: %TESTNUMBER - + +OPTIONS rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER RTSP/1.0 +CSeq: 1 +User-Agent: test%TESTNUMBER +Test-Number: %TESTNUMBER + diff --git a/tests/data/test568 b/tests/data/test568 index 700fd44bfe49..caadd95d1279 100644 --- a/tests/data/test568 +++ b/tests/data/test568 @@ -10,38 +10,38 @@ ANNOUNCE # Server-side - -RTSP/1.0 200 OK -Server: RTSPD/libcurl-test -Cseq: 1 - + +RTSP/1.0 200 OK +Server: RTSPD/libcurl-test +Cseq: 1 + -RTSP/1.0 200 OK -Server: RTSPD/libcurl-test -Cseq: 2 -Content-Length: 70 -Content-Type: application/sdp - +RTSP/1.0 200 OK%CR +Server: RTSPD/libcurl-test%CR +Cseq: 2%CR +Content-Length: 70%CR +Content-Type: application/sdp%CR +%CR v=0 s=rtspd SDP i=A fake SDP reply u=http://www.curl.example.com/fakesdp.ps - -RTSP/1.0 200 Okie Dokie -Server: RTSPD/libcurl-test -Cseq: 3 - + +RTSP/1.0 200 Okie Dokie +Server: RTSPD/libcurl-test +Cseq: 3 + - -RTSP/1.0 200 OK -Server: RTSPD/libcurl-test -CSeq: 4 -Curl-private: swsclose -Informational: Empty Options Response - + +RTSP/1.0 200 OK +Server: RTSPD/libcurl-test +CSeq: 4 +Curl-private: swsclose +Informational: Empty Options Response + @@ -80,12 +80,12 @@ m=video 2232 RTP/AVP 31 ^If-Modified-Since:.* - -ANNOUNCE rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0001 RTSP/1.0 -CSeq: 1 -Content-Length: 306 -Content-Type: application/sdp - + +ANNOUNCE rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0001 RTSP/1.0 +CSeq: 1 +Content-Length: 306 +Content-Type: application/sdp + v=0 o=mhandley 2890844526 2890845468 IN IP4 126.16.64.4 s=SDP Seminar @@ -97,19 +97,19 @@ t=2873397496 2873404696 a=recvonly m=audio 3456 RTP/AVP 0 m=video 2232 RTP/AVP 31 -DESCRIBE rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0002 RTSP/1.0 -CSeq: 2 -Accept: application/sdp - -ANNOUNCE rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0003 RTSP/1.0 -CSeq: 3 -Content-Type: posty goodness -Content-Length: 35 - +DESCRIBE rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0002 RTSP/1.0 +CSeq: 2 +Accept: application/sdp + +ANNOUNCE rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0003 RTSP/1.0 +CSeq: 3 +Content-Type: posty goodness +Content-Length: 35 + postyfield=postystuff&project=curl -OPTIONS rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0004 RTSP/1.0 -CSeq: 4 - +OPTIONS rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0004 RTSP/1.0 +CSeq: 4 + diff --git a/tests/data/test569 b/tests/data/test569 index b70e9083cade..103672bd0125 100644 --- a/tests/data/test569 +++ b/tests/data/test569 @@ -74,31 +74,31 @@ rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER %LOGDIR/idfile%TESTNUMBER.txt ^If-Modified-Since:.* - -SETUP rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0001 RTSP/1.0 -CSeq: 1 -Transport: Fake/NotReal/JustATest;foo=baz - -TEARDOWN rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0002 RTSP/1.0 -CSeq: 2 -Session: 00.+1-am-aSe55ion_id\$yes-i-am\$ - -SETUP rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0003 RTSP/1.0 -CSeq: 3 -Transport: Fake/NotReal/JustATest;foo=baz - -TEARDOWN rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0004 RTSP/1.0 -CSeq: 4 -Session: \$extraspaces - -SETUP rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0005 RTSP/1.0 -CSeq: 5 -Transport: Fake/NotReal/JustATest;foo=baz - -TEARDOWN rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0006 RTSP/1.0 -CSeq: 6 -Session: A - + +SETUP rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0001 RTSP/1.0 +CSeq: 1 +Transport: Fake/NotReal/JustATest;foo=baz + +TEARDOWN rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0002 RTSP/1.0 +CSeq: 2 +Session: 00.+1-am-aSe55ion_id\$yes-i-am\$ + +SETUP rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0003 RTSP/1.0 +CSeq: 3 +Transport: Fake/NotReal/JustATest;foo=baz + +TEARDOWN rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0004 RTSP/1.0 +CSeq: 4 +Session: \$extraspaces + +SETUP rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0005 RTSP/1.0 +CSeq: 5 +Transport: Fake/NotReal/JustATest;foo=baz + +TEARDOWN rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0006 RTSP/1.0 +CSeq: 6 +Session: A + Got Session ID: [00.+1-am-aSe55ion_id\$yes-i-am\$] diff --git a/tests/data/test57 b/tests/data/test57 index f177f08eb46c..69d1f78dd2a6 100644 --- a/tests/data/test57 +++ b/tests/data/test57 @@ -12,7 +12,7 @@ HTTP GET HTTP/1.1 200 OK swsclose Funny-head: yesyes -Content-Type: text/html; charset=ISO-8859-4 +Content-Type: text/html; charset=ISO-8859-4%repeat[3 x ]% @@ -35,12 +35,12 @@ HTTP content-type with spaces in text/html; charset=ISO-8859-4 - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test570 b/tests/data/test570 index c1a03485590b..565282053d34 100644 --- a/tests/data/test570 +++ b/tests/data/test570 @@ -10,29 +10,29 @@ Mismatch checking # Server-side - -RTSP/1.0 200 OK -Server: RTSPD/libcurl-test -CSeq: 2 -Public: DESCRIBE, OPTIONS, SETUP, TEARDOWN, PLAY, PAUSE -Informational: CSeq Mismatch - + +RTSP/1.0 200 OK +Server: RTSPD/libcurl-test +CSeq: 2 +Public: DESCRIBE, OPTIONS, SETUP, TEARDOWN, PLAY, PAUSE +Informational: CSeq Mismatch + - -RTSP/1.0 200 OK -Server: RTSPD/libcurl-test -Session: asdf -CSeq: 999 - + +RTSP/1.0 200 OK +Server: RTSPD/libcurl-test +Session: asdf +CSeq: 999 + - -RTSP/1.0 200 OK -Server: RTSPD/libcurl-test -Session: asdfWRONG -Informational: Session ID mismatch -Curl-Private: swsclose -CSeq: 1000 - + +RTSP/1.0 200 OK +Server: RTSPD/libcurl-test +Session: asdfWRONG +Informational: Session ID mismatch +Curl-Private: swsclose +CSeq: 1000 + @@ -58,18 +58,18 @@ rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER ^If-Modified-Since:.* - -OPTIONS rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0001 RTSP/1.0 -CSeq: 1 - -SETUP rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0002 RTSP/1.0 -CSeq: 999 -Transport: RAW/RAW/UDP;unicast;client_port=3056-3057 - -PLAY rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0003 RTSP/1.0 -CSeq: 1000 -Session: asdf - + +OPTIONS rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0001 RTSP/1.0 +CSeq: 1 + +SETUP rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0002 RTSP/1.0 +CSeq: 999 +Transport: RAW/RAW/UDP;unicast;client_port=3056-3057 + +PLAY rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0003 RTSP/1.0 +CSeq: 1000 +Session: asdf + diff --git a/tests/data/test571 b/tests/data/test571 index bae97d418080..ca97c1b04919 100644 --- a/tests/data/test571 +++ b/tests/data/test571 @@ -14,39 +14,39 @@ RTP # Server-side - -RTSP/1.0 200 OK -Server: RTSPD/libcurl-test -Session: asdf -CSeq: 1 -Transport: RTP/AVP/TCP;unicast;interleaved=0-1 - + +RTSP/1.0 200 OK +Server: RTSPD/libcurl-test +Session: asdf +CSeq: 1 +Transport: RTP/AVP/TCP;unicast;interleaved=0-1 + - -RTSP/1.0 200 OK -Server: RTSPD/libcurl-test -CSeq: 2 -Session: asdf - + +RTSP/1.0 200 OK +Server: RTSPD/libcurl-test +CSeq: 2 +Session: asdf + - -RTSP/1.0 200 OK -Server: RTSPD/libcurl-test -Cseq: 3 -Content-Length: 4 -Content-Type: fake/evil - + +RTSP/1.0 200 OK +Server: RTSPD/libcurl-test +Cseq: 3 +Content-Length: 4 +Content-Type: fake/evil + $99 - -RTSP/1.0 200 OK -Server: RTSPD/libcurl-test -Session: asdf -CSeq: 4 - + +RTSP/1.0 200 OK +Server: RTSPD/libcurl-test +Session: asdf +CSeq: 4 + diff --git a/tests/data/test572 b/tests/data/test572 index 4ac86bc9bf57..ac0bdf3b97fb 100644 --- a/tests/data/test572 +++ b/tests/data/test572 @@ -10,53 +10,53 @@ GET_PARAMETER # Server-side - -RTSP/1.0 200 OK -Server: RTSPD/libcurl-test -Session: getparams-test -CSeq: 1 - + +RTSP/1.0 200 OK +Server: RTSPD/libcurl-test +Session: getparams-test +CSeq: 1 + - -RTSP/1.0 200 OK -Server: RTSPD/libcurl-test -Session: getparams-test -Content-Type: text/parameters -Content-Length: 32 -Cseq: 2 - + +RTSP/1.0 200 OK +Server: RTSPD/libcurl-test +Session: getparams-test +Content-Type: text/parameters +Content-Length: 32 +Cseq: 2 + scale=enormous speed=ludicrous - -RTSP/1.0 204 OK -Server: RTSPD/libcurl-test -Session: getparams-test -Cseq: 3 - + +RTSP/1.0 204 OK +Server: RTSPD/libcurl-test +Session: getparams-test +Cseq: 3 + - -RTSP/1.0 200 Okie Dokie -Server: RTSPD/libcurl-test -Session: getparams-test -Cseq: 4 -Content-Length: 37 - + +RTSP/1.0 200 Okie Dokie +Server: RTSPD/libcurl-test +Session: getparams-test +Cseq: 4 +Content-Length: 37 + packets_received: 1000 jitter: 0.314 - -RTSP/1.0 200 OK -Server: RTSPD/libcurl-test -Session: getparams-test -CSeq: 5 -Curl-private: swsclose -Informational: Empty Options Response - + +RTSP/1.0 200 OK +Server: RTSPD/libcurl-test +Session: getparams-test +CSeq: 5 +Curl-private: swsclose +Informational: Empty Options Response + @@ -86,35 +86,35 @@ speed ^If-Modified-Since:.* - -SETUP rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0001 RTSP/1.0 -CSeq: 1 -Transport: Planes/Trains/Automobiles - -GET_PARAMETER rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0002 RTSP/1.0 -CSeq: 2 -Session: getparams-test -Content-Length: 12 -Content-Type: text/parameters - + +SETUP rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0001 RTSP/1.0 +CSeq: 1 +Transport: Planes/Trains/Automobiles + +GET_PARAMETER rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0002 RTSP/1.0 +CSeq: 2 +Session: getparams-test +Content-Length: 12 +Content-Type: text/parameters + scale speed -GET_PARAMETER rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0003 RTSP/1.0 -CSeq: 3 -Session: getparams-test - -GET_PARAMETER rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0004 RTSP/1.0 -CSeq: 4 -Session: getparams-test -Content-Length: 24 -Content-Type: text/parameters - +GET_PARAMETER rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0003 RTSP/1.0 +CSeq: 3 +Session: getparams-test + +GET_PARAMETER rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0004 RTSP/1.0 +CSeq: 4 +Session: getparams-test +Content-Length: 24 +Content-Type: text/parameters + packets_received jitter -OPTIONS rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0005 RTSP/1.0 -CSeq: 5 -Session: getparams-test - +OPTIONS rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER0005 RTSP/1.0 +CSeq: 5 +Session: getparams-test + diff --git a/tests/data/test573 b/tests/data/test573 index 67e806dcdf66..738d27661b9c 100644 --- a/tests/data/test573 +++ b/tests/data/test573 @@ -9,18 +9,18 @@ flaky # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + -foo- @@ -45,11 +45,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + diff --git a/tests/data/test574 b/tests/data/test574 index 1b185e98a926..861b3072e312 100644 --- a/tests/data/test574 +++ b/tests/data/test574 @@ -37,45 +37,45 @@ ftp://%HOSTIP:%FTPPORT/fully_simulated/UNIX/*.txt 0 # THERE SHOULD NOT BE "SIZE"! and one "USER/PASS" - -USER anonymous -PASS ftp@example.com -PWD -CWD fully_simulated -CWD UNIX -EPSV -TYPE A -LIST -EPSV -TYPE I -RETR chmod1 -EPSV -RETR chmod2 -EPSV -RETR chmod3 -EPSV -RETR empty_file.dat -EPSV -RETR file.txt -EPSV -RETR someothertext.txt -EPSV -TYPE A -LIST -EPSV -TYPE I -RETR chmod1 -EPSV -RETR chmod2 -EPSV -RETR chmod3 -EPSV -RETR empty_file.dat -EPSV -RETR file.txt -EPSV -RETR someothertext.txt -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD fully_simulated +CWD UNIX +EPSV +TYPE A +LIST +EPSV +TYPE I +RETR chmod1 +EPSV +RETR chmod2 +EPSV +RETR chmod3 +EPSV +RETR empty_file.dat +EPSV +RETR file.txt +EPSV +RETR someothertext.txt +EPSV +TYPE A +LIST +EPSV +TYPE I +RETR chmod1 +EPSV +RETR chmod2 +EPSV +RETR chmod3 +EPSV +RETR empty_file.dat +EPSV +RETR file.txt +EPSV +RETR someothertext.txt +QUIT This file should have permissions 444 diff --git a/tests/data/test575 b/tests/data/test575 index b1725a9b2a73..c093c96c4f86 100644 --- a/tests/data/test575 +++ b/tests/data/test575 @@ -35,67 +35,67 @@ ftp://%HOSTIP:%FTPPORT/fully_simulated/UNIX/* 0 - -USER anonymous -PASS ftp@example.com -PWD -CWD fully_simulated -CWD UNIX -EPSV -TYPE A -LIST -EPSV -TYPE I -RETR chmod1 -EPSV -RETR chmod2 -EPSV -RETR chmod3 -EPSV -RETR empty_file.dat -EPSV -RETR file.txt -EPSV -RETR someothertext.txt -EPSV -TYPE A -LIST -EPSV -TYPE I -RETR chmod1 -EPSV -RETR chmod2 -EPSV -RETR chmod3 -EPSV -RETR empty_file.dat -EPSV -RETR file.txt -EPSV -RETR someothertext.txt -QUIT -USER anonymous -PASS ftp@example.com -PWD -CWD fully_simulated -CWD UNIX -EPSV -TYPE A -LIST -EPSV -TYPE I -RETR chmod1 -EPSV -RETR chmod2 -EPSV -RETR chmod3 -EPSV -RETR empty_file.dat -EPSV -RETR file.txt -EPSV -RETR someothertext.txt -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD fully_simulated +CWD UNIX +EPSV +TYPE A +LIST +EPSV +TYPE I +RETR chmod1 +EPSV +RETR chmod2 +EPSV +RETR chmod3 +EPSV +RETR empty_file.dat +EPSV +RETR file.txt +EPSV +RETR someothertext.txt +EPSV +TYPE A +LIST +EPSV +TYPE I +RETR chmod1 +EPSV +RETR chmod2 +EPSV +RETR chmod3 +EPSV +RETR empty_file.dat +EPSV +RETR file.txt +EPSV +RETR someothertext.txt +QUIT +USER anonymous +PASS ftp@example.com +PWD +CWD fully_simulated +CWD UNIX +EPSV +TYPE A +LIST +EPSV +TYPE I +RETR chmod1 +EPSV +RETR chmod2 +EPSV +RETR chmod3 +EPSV +RETR empty_file.dat +EPSV +RETR file.txt +EPSV +RETR someothertext.txt +QUIT This file should have permissions 444 diff --git a/tests/data/test577 b/tests/data/test577 index d880f282d994..6abbf070fe23 100644 --- a/tests/data/test577 +++ b/tests/data/test577 @@ -10,12 +10,12 @@ OPTIONS # Server-side - -RTSP/1.1234567 200 OK -Server: RTSPD/libcurl-test -CSeq: 1 -Public: DESCRIBE, OPTIONS, SETUP, TEARDOWN, PLAY, PAUSE -Curl-Private: swsclose + +RTSP/1.1234567 200 OK +Server: RTSPD/libcurl-test +CSeq: 1 +Public: DESCRIBE, OPTIONS, SETUP, TEARDOWN, PLAY, PAUSE +Curl-Private: swsclose @@ -39,12 +39,12 @@ rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER - -OPTIONS rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER RTSP/1.0 -CSeq: 1 -User-Agent: test567 -Test-Number: 567 - + +OPTIONS rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER RTSP/1.0 +CSeq: 1 +User-Agent: test567 +Test-Number: 567 + # 8 == CURLE_WEIRD_SERVER_REPLY diff --git a/tests/data/test578 b/tests/data/test578 index d909de87baa7..7561283ab819 100644 --- a/tests/data/test578 +++ b/tests/data/test578 @@ -8,18 +8,18 @@ HTTP POST # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -ETag: "21025-dc7-39462498" -Accept-Ranges: bytes -Content-Length: 6 -Connection: close -Content-Type: text/html -Funny-head: yesyes - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +ETag: "21025-dc7-39462498" +Accept-Ranges: bytes +Content-Length: 6 +Connection: close +Content-Type: text/html +Funny-head: yesyes + -foo- diff --git a/tests/data/test579 b/tests/data/test579 index c8e1700b81a5..a4e63b612d62 100644 --- a/tests/data/test579 +++ b/tests/data/test579 @@ -9,44 +9,44 @@ HTTP Digest auth # # Server-side - -HTTP/1.1 100 Continue -Server: Microsoft-IIS/5.0 -Date: Sun, 03 Apr 2005 14:57:45 GMT -X-Powered-By: ASP.NET - -HTTP/1.1 401 authentication please swsbounce -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - + +HTTP/1.1 100 Continue +Server: Microsoft-IIS/5.0 +Date: Sun, 03 Apr 2005 14:57:45 GMT +X-Powered-By: ASP.NET + +HTTP/1.1 401 authentication please swsbounce +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok - -HTTP/1.1 100 Continue -Server: Microsoft-IIS/5.0 -Date: Sun, 03 Apr 2005 14:57:45 GMT -X-Powered-By: ASP.NET - -HTTP/1.1 401 authentication please swsbounce -Server: Microsoft-IIS/6.0 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 - -HTTP/1.1 200 A OK -Server: Microsoft-IIS/6.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 3 - + +HTTP/1.1 100 Continue +Server: Microsoft-IIS/5.0 +Date: Sun, 03 Apr 2005 14:57:45 GMT +X-Powered-By: ASP.NET + +HTTP/1.1 401 authentication please swsbounce +Server: Microsoft-IIS/6.0 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604144" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 + +HTTP/1.1 200 A OK +Server: Microsoft-IIS/6.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 3 + ok diff --git a/tests/data/test58 b/tests/data/test58 index fd4beac00f47..9e3e619b98e9 100644 --- a/tests/data/test58 +++ b/tests/data/test58 @@ -35,13 +35,13 @@ a few bytes # Verify data after the test has been "shot" - -PUT /we/want/%TESTNUMBERte%5b%5dst.txt HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 12 - + +PUT /we/want/%TESTNUMBERte%5b%5dst.txt HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 12 + a few bytes diff --git a/tests/data/test580 b/tests/data/test580 index 63cd0ca0deb9..8a8e14d28a2a 100644 --- a/tests/data/test580 +++ b/tests/data/test580 @@ -10,16 +10,24 @@ Duplicate-header # Server-side - -HTTP/1.1 302 eat this! -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Location: this-is-the-first.html -Content-Length: 0 -Connection: close -Location: and there's a second one too! / moo.html - + +HTTP/1.1 302 eat this! +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Location: this-is-the-first.html +Content-Length: 0 +Connection: close +Location: and there's a second one too! / moo.html + + +HTTP/1.1 302 eat this! +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Location: this-is-the-first.html +Content-Length: 0 +Connection: close + # Client-side @@ -45,11 +53,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + + +8 + diff --git a/tests/data/test581 b/tests/data/test581 index e784e72ea548..e4e32f63044a 100644 --- a/tests/data/test581 +++ b/tests/data/test581 @@ -10,15 +10,15 @@ Duplicate-header # Server-side - -HTTP/1.1 200 all good! -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Type: text/html -Content-Length: 0 -Connection: close -Content-Type: changed/my/mind - + +HTTP/1.1 200 all good! +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Type: text/html +Content-Length: 0 +Connection: close +Content-Type: changed/my/mind + @@ -45,11 +45,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + diff --git a/tests/data/test582 b/tests/data/test582 index cc3fe526545d..ad1182c234b6 100644 --- a/tests/data/test582 +++ b/tests/data/test582 @@ -34,8 +34,6 @@ Moooooooooooo # Verify data after the test has been "shot" - - Moooooooooooo upload this diff --git a/tests/data/test584 b/tests/data/test584 index 81c9b8403771..efc261534396 100644 --- a/tests/data/test584 +++ b/tests/data/test584 @@ -10,26 +10,26 @@ HTTP MIME # # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 3 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 3 + OK - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 3 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 3 + OK -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 3 - +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 3 + OK @@ -62,23 +62,23 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER s/^--------------------------[A-Za-z0-9]*/--------------------------/ s/boundary=------------------------[A-Za-z0-9]*/boundary=------------------------/ - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 156 -Content-Type: multipart/form-data; boundary=------------------------ - --------------------------- -Content-Disposition: form-data; name="fake" - -party ----------------------------- -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 0 - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 156 +Content-Type: multipart/form-data; boundary=------------------------ + +-------------------------- +Content-Disposition: form-data; name="fake" + +party +---------------------------- +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 0 + diff --git a/tests/data/test585 b/tests/data/test585 index e5138cdb1755..dd455a5b6f0b 100644 --- a/tests/data/test585 +++ b/tests/data/test585 @@ -11,24 +11,24 @@ CURLOPT_CLOSESOCKETFUNCTION # Server-side - -HTTP/1.1 302 eat this! -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Location: this-is-the-first.html -Content-Length: 0 -Connection: close - + +HTTP/1.1 302 eat this! +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Location: this-is-the-first.html +Content-Length: 0 +Connection: close + [OPEN] counter: 1 -HTTP/1.1 302 eat this! -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Location: this-is-the-first.html -Content-Length: 0 -Connection: close - +HTTP/1.1 302 eat this!%CR +Date: Tue, 09 Nov 2010 14:49:00 GMT%CR +Server: test-server/fake%CR +Location: this-is-the-first.html%CR +Content-Length: 0%CR +Connection: close%CR +%CR [CLOSE] counter: 1 @@ -56,11 +56,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + diff --git a/tests/data/test586 b/tests/data/test586 index d441ff5ecfce..85971a080036 100644 --- a/tests/data/test586 +++ b/tests/data/test586 @@ -45,15 +45,15 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test588 b/tests/data/test588 index 9c8c5f320242..5c53e0455472 100644 --- a/tests/data/test588 +++ b/tests/data/test588 @@ -47,19 +47,19 @@ Moooooooooooo # Strip off parts of the PORT and EPRT commands that might differ -s/^PORT (.*)/PORT/ -s/^EPRT \|1\|(.*)/EPRT \|1\|/ +s/^EPRT \|1\|(\S*)/EPRT \|1\|/ +s/^PORT (\S*)/PORT/ - -USER anonymous -PASS ftp@example.com -PWD -CWD path + +USER anonymous +PASS ftp@example.com +PWD +CWD path EPRT |1| PORT -TYPE I -STOR %TESTNUMBER -QUIT +TYPE I +STOR %TESTNUMBER +QUIT Moooooooooooo diff --git a/tests/data/test589 b/tests/data/test589 index c798c0eed926..a0cadd32d7bc 100644 --- a/tests/data/test589 +++ b/tests/data/test589 @@ -10,12 +10,12 @@ HTTP MIME # # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 3 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 3 + OK @@ -44,12 +44,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 0 - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 0 + diff --git a/tests/data/test59 b/tests/data/test59 index b86b02d3d035..f3df61538615 100644 --- a/tests/data/test59 +++ b/tests/data/test59 @@ -13,7 +13,7 @@ HTTP/1.0 200 OK swsclose Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake -hej +hej @@ -34,12 +34,12 @@ HTTP URL with slash but with "parameter" # # Verify data after the test has been "shot" - -GET /?mooo/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /?mooo/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test590 b/tests/data/test590 index 00ef1b1901c1..a6662c5565dd 100644 --- a/tests/data/test590 +++ b/tests/data/test590 @@ -12,54 +12,54 @@ NTLM # Server-side - -HTTP/1.1 407 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Proxy-Authenticate: Negotiate -Proxy-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Connection: close - + +HTTP/1.1 407 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Proxy-Authenticate: Negotiate +Proxy-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Connection: close + This is not the real page # this is returned first since we get no proxy-auth - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Content-Length: 34 - + +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Content-Length: 34 + Hey you, authenticate or go away! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine in proxy land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 42 - + +HTTP/1.1 200 Things are fine in proxy land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 42 + Contents of that page you requested, sir. - -HTTP/1.1 407 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Proxy-Authenticate: Negotiate -Proxy-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Connection: close - -HTTP/1.1 407 Authorization Required to proxy me my dear -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Content-Length: 34 - -HTTP/1.1 200 Things are fine in proxy land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 42 - + +HTTP/1.1 407 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Proxy-Authenticate: Negotiate +Proxy-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Connection: close + +HTTP/1.1 407 Authorization Required to proxy me my dear +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Content-Length: 34 + +HTTP/1.1 200 Things are fine in proxy land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 42 + Contents of that page you requested, sir. @@ -90,24 +90,24 @@ http://test.remote.example.com/path/%TESTNUMBER http://%HOSTIP:%HTTPPORT # Verify data after the test has been "shot" - -GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 -Host: test.remote.example.com -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 -Host: test.remote.example.com -Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 -Host: test.remote.example.com -Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAAAgACAHAAAAALAAsAcgAAAAAAAAAAAAAAhoIBAAQt1KW5CgG4YdWWcfXyfXBz1ZMCzYp37xYjBiAizmw58O6eQS7yR66eqYGWeSwl9W1lV09SS1NUQVRJT04= -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 +Host: test.remote.example.com +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 +Host: test.remote.example.com +Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://test.remote.example.com/path/%TESTNUMBER HTTP/1.1 +Host: test.remote.example.com +Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAAAgACAHAAAAALAAsAcgAAAAAAAAAAAAAAhoIBAAQt1KW5CgG4YdWWcfXyfXBz1ZMCzYp37xYjBiAizmw58O6eQS7yR66eqYGWeSwl9W1lV09SS1NUQVRJT04= +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test591 b/tests/data/test591 index d1cbf082a4fa..32ce2707a17c 100644 --- a/tests/data/test591 +++ b/tests/data/test591 @@ -49,19 +49,19 @@ Moooooooooooo for %TESTNUMBER # Strip off parts of the PORT and EPRT commands that might differ -s/^PORT (.*)/PORT/ -s/^EPRT \|1\|(.*)/EPRT \|1\|/ +s/^PORT (\S*)/PORT/ +s/^EPRT \|1\|(\S*)/EPRT \|1\|/ - -USER anonymous -PASS ftp@example.com -PWD -CWD path + +USER anonymous +PASS ftp@example.com +PWD +CWD path EPRT |1| PORT -TYPE I -STOR %TESTNUMBER -QUIT +TYPE I +STOR %TESTNUMBER +QUIT # CURLE_FTP_ACCEPT_FAILED = 10 diff --git a/tests/data/test592 b/tests/data/test592 index f77eb9a87069..d0445f341904 100644 --- a/tests/data/test592 +++ b/tests/data/test592 @@ -49,20 +49,20 @@ Moooooooooooo for %TESTNUMBER # Strip off parts of the PORT and EPRT commands that might differ -s/^PORT (.*)/PORT/ -s/^EPRT \|1\|(.*)/EPRT \|1\|/ +s/^PORT (\S*)/PORT/ +s/^EPRT \|1\|(\S*)/EPRT \|1\|/ # a 421 response must prevent further commands from being sent - -USER anonymous -PASS ftp@example.com -PWD -CWD path + +USER anonymous +PASS ftp@example.com +PWD +CWD path EPRT |1| PORT -TYPE I -STOR %TESTNUMBER -QUIT +TYPE I +STOR %TESTNUMBER +QUIT # CURLE_FTP_ACCEPT_FAILED = 10 diff --git a/tests/data/test593 b/tests/data/test593 index 9a15a5184e92..7c93ebaa42d2 100644 --- a/tests/data/test593 +++ b/tests/data/test593 @@ -49,19 +49,19 @@ Moooooooooooo for %TESTNUMBER # Strip off parts of the PORT and EPRT commands that might differ -s/^PORT (.*)/PORT/ -s/^EPRT \|1\|(.*)/EPRT \|1\|/ +s/^PORT (\S*)/PORT/ +s/^EPRT \|1\|(\S*)/EPRT \|1\|/ - -USER anonymous -PASS ftp@example.com -PWD -CWD path + +USER anonymous +PASS ftp@example.com +PWD +CWD path EPRT |1| PORT -TYPE I -STOR %TESTNUMBER -QUIT +TYPE I +STOR %TESTNUMBER +QUIT 12 diff --git a/tests/data/test594 b/tests/data/test594 index cd98f0b9d8a4..d4ceca8ca1fa 100644 --- a/tests/data/test594 +++ b/tests/data/test594 @@ -51,19 +51,19 @@ Moooooooooooo for %TESTNUMBER # Strip off parts of the PORT and EPRT commands that might differ -s/^PORT (.*)/PORT/ -s/^EPRT \|1\|(.*)/EPRT \|1\|/ +s/^PORT (\S*)/PORT/ +s/^EPRT \|1\|(\S*)/EPRT \|1\|/ - -USER anonymous -PASS ftp@example.com -PWD -CWD path + +USER anonymous +PASS ftp@example.com +PWD +CWD path EPRT |1| PORT -TYPE I -STOR %TESTNUMBER -QUIT +TYPE I +STOR %TESTNUMBER +QUIT 28 diff --git a/tests/data/test595 b/tests/data/test595 index 65f23f7ead51..969879ad359c 100644 --- a/tests/data/test595 +++ b/tests/data/test595 @@ -43,15 +43,15 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER %LOGDIR/ip%TESTNUMBER # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test596 b/tests/data/test596 index 2c257a704adb..0a99ceafadba 100644 --- a/tests/data/test596 +++ b/tests/data/test596 @@ -44,17 +44,17 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER %LOGDIR/ip%TESTNUMBER activeftp # Verify data after the test has been "shot" -s/^(EPRT \|1\|)(.*)/$1/ +s/^(EPRT \|1\|)(\S*)/$1/ - -USER anonymous -PASS ftp@example.com -PWD + +USER anonymous +PASS ftp@example.com +PWD EPRT |1| -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test597 b/tests/data/test597 index 5402d29b1ff9..6888e409738d 100644 --- a/tests/data/test597 +++ b/tests/data/test597 @@ -27,10 +27,10 @@ ftp://%HOSTIP:%FTPPORT # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD + +USER anonymous +PASS ftp@example.com +PWD diff --git a/tests/data/test598 b/tests/data/test598 index 7a6601b9afc6..945b3ea669cd 100644 --- a/tests/data/test598 +++ b/tests/data/test598 @@ -12,31 +12,31 @@ curl_easy_reset # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 +Connection: close +Content-Type: text/html + -foo- # since the request runs twice - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 +Connection: close +Content-Type: text/html + -foo- -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 -Connection: close -Content-Type: text/html - +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 +Connection: close +Content-Type: text/html + -foo- @@ -66,18 +66,18 @@ cookies # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: the-moo agent next generation -Accept: */* -Referer: http://example.com/the-moo -Cookie: name=moo - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: the-moo agent next generation +Accept: */* +Referer: http://example.com/the-moo +Cookie: name=moo + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + diff --git a/tests/data/test599 b/tests/data/test599 index 5d334e070b2d..4df0cf13a034 100644 --- a/tests/data/test599 +++ b/tests/data/test599 @@ -9,48 +9,48 @@ chunked Transfer-Encoding # # Server-side - -HTTP/1.1 302 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Location: %TESTNUMBER0001 -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 302 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Location: %TESTNUMBER0001 +Content-Length: 6 +Connection: close +Content-Type: text/html + -foo- -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Transfer-Encoding: chunked -Connection: close -Content-Type: text/html - -32 +HTTP/1.1 200 OK%CR +Date: Tue, 09 Nov 2010 14:49:00 GMT%CR +Server: test-server/fake%CR +Transfer-Encoding: chunked%CR +Connection: close%CR +Content-Type: text/html%CR +%CR +32%CR this data is slightly larger than the first piece - -0 - +%CR +0%CR +%CR - -HTTP/1.1 302 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Location: %TESTNUMBER0001 -Content-Length: 6 -Connection: close -Content-Type: text/html - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Transfer-Encoding: chunked -Connection: close -Content-Type: text/html - + +HTTP/1.1 302 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Location: %TESTNUMBER0001 +Content-Length: 6 +Connection: close +Content-Type: text/html + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Transfer-Encoding: chunked +Connection: close +Content-Type: text/html + this data is slightly larger than the first piece diff --git a/tests/data/test6 b/tests/data/test6 index 9c5db36d990d..8c14309f0451 100644 --- a/tests/data/test6 +++ b/tests/data/test6 @@ -38,13 +38,13 @@ cookies # Verify data after the test has been "shot" - -GET /we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Cookie: name=contents;name2=content2;name3=content3 - + +GET /we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Cookie: name=contents;name2=content2;name3=content3 + diff --git a/tests/data/test60 b/tests/data/test60 index 164b2189e3b1..0544b2c6dfce 100644 --- a/tests/data/test60 +++ b/tests/data/test60 @@ -9,11 +9,11 @@ chunked Transfer-Encoding # Server-side - -HTTP/1.0 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake - + +HTTP/1.0 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake + blablabla @@ -38,19 +38,19 @@ more than one byte # Verify data after the test has been "shot" -PUT /bzz/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Transfer-Encoding: chunked -Content-Length: 1 -Expect: 100-continue - -13 +PUT /bzz/%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Transfer-Encoding: chunked%CR +Content-Length: 1%CR +Expect: 100-continue%CR +%CR +13%CR more than one byte - -0 - +%CR +0%CR +%CR diff --git a/tests/data/test61 b/tests/data/test61 index 2cb5963ff465..cd38c000051b 100644 --- a/tests/data/test61 +++ b/tests/data/test61 @@ -11,26 +11,26 @@ httponly # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Type: text/html -Funny-head: yesyes + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Type: text/html +Funny-head: yesyes %if large-time -Set-Cookie: test=yes; httponly; domain=foo.com; expires=Fri Feb 13 11:56:27 GMT 2525 -SET-COOKIE: test2=yes; domain=host.foo.com; expires=Fri Feb 13 11:56:27 GMT 2525 +Set-Cookie: test=yes; httponly; domain=foo.com; expires=Fri Feb 13 11:56:27 GMT 2525 +SET-COOKIE: test2=yes; domain=host.foo.com; expires=Fri Feb 13 11:56:27 GMT 2525 %else -Set-Cookie: test=yes; httponly; domain=foo.com; expires=Fri Feb 13 11:56:27 GMT 2037 -SET-COOKIE: test2=yes; domain=host.foo.com; expires=Fri Feb 13 11:56:27 GMT 2037 +Set-Cookie: test=yes; httponly; domain=foo.com; expires=Fri Feb 13 11:56:27 GMT 2037 +SET-COOKIE: test2=yes; domain=host.foo.com; expires=Fri Feb 13 11:56:27 GMT 2037 %endif -Set-Cookie: test3=maybe; domain=foo.com; path=/moo; secure -Set-Cookie: test4=no; domain=nope.foo.com; path=/moo; secure -Set-Cookie: test5=name; domain=anything.com; path=/ ; secure -Set-Cookie: fake=fooledyou; domain=..com; path=/; -Set-Cookie: supercookie=fooledyou; domain=.com; path=/; -Content-Length: 4 - +Set-Cookie: test3=maybe; domain=foo.com; path=/moo; secure +Set-Cookie: test4=no; domain=nope.foo.com; path=/moo; secure +Set-Cookie: test5=name; domain=anything.com; path=/ ; secure +Set-Cookie: fake=fooledyou; domain=..com; path=/; +Set-Cookie: supercookie=fooledyou; domain=.com; path=/; +Content-Length: 4 + boo @@ -59,12 +59,12 @@ cookies # Verify data after the test has been "shot" - -GET /we/want/%TESTNUMBER HTTP/1.1 -Host: www.host.foo.com -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/%TESTNUMBER HTTP/1.1 +Host: www.host.foo.com +User-Agent: curl/%VERSION +Accept: */* + # Netscape HTTP Cookie File diff --git a/tests/data/test613 b/tests/data/test613 index 9161bafd4603..92c7905065fb 100644 --- a/tests/data/test613 +++ b/tests/data/test613 @@ -11,6 +11,7 @@ directory d????????? N U U N ??? N NN:NN asubdir +-rw??????? 1 U U 0 Jan 1 2000 emptyfile.txt -rw??????? 1 U U 37 Jan 1 2000 plainfile.txt -r-??????? 1 U U 47 Dec 31 2000 rofile.txt diff --git a/tests/data/test614 b/tests/data/test614 index ad270c6c85ef..a113ecdd4574 100644 --- a/tests/data/test614 +++ b/tests/data/test614 @@ -12,6 +12,7 @@ directory d????????? N U U N ??? N NN:NN asubdir +-rw??????? 1 U U 0 Jan 1 2000 emptyfile.txt -r-??????? 1 U U 37 Jan 1 2000 plainfile.txt -r-??????? 1 U U 47 Dec 31 2000 rofile.txt diff --git a/tests/data/test62 b/tests/data/test62 index 97cef4afacce..d072e34ca898 100644 --- a/tests/data/test62 +++ b/tests/data/test62 @@ -11,11 +11,11 @@ httponly # Server-side - -HTTP/1.0 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Type: text/html - + +HTTP/1.0 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Type: text/html + boo @@ -49,19 +49,19 @@ cookies # Verify data after the test has been "shot" - -GET /we/want/%TESTNUMBER HTTP/1.1 -Host: www.host.foo.com -User-Agent: curl/%VERSION -Accept: */* -Cookie: test2=yes; test=yes - -GET /we/want/%TESTNUMBER?hoge=fuga HTTP/1.1 -Host: www.host.foo.com -User-Agent: curl/%VERSION -Accept: */* -Cookie: test2=yes; test=yes - + +GET /we/want/%TESTNUMBER HTTP/1.1 +Host: www.host.foo.com +User-Agent: curl/%VERSION +Accept: */* +Cookie: test2=yes; test=yes + +GET /we/want/%TESTNUMBER?hoge=fuga HTTP/1.1 +Host: www.host.foo.com +User-Agent: curl/%VERSION +Accept: */* +Cookie: test2=yes; test=yes + diff --git a/tests/data/test627 b/tests/data/test627 index aab25791f24a..a8d3ed33722a 100644 --- a/tests/data/test627 +++ b/tests/data/test627 @@ -34,8 +34,6 @@ Dummy test file for remove test # # Verify data after the test has been "shot" - - %PERL %SRCDIR/libtest/test610.pl gone %PWD/%LOGDIR/test%TESTNUMBER.txt diff --git a/tests/data/test63 b/tests/data/test63 index 81d6ffc7e672..234abb474111 100644 --- a/tests/data/test63 +++ b/tests/data/test63 @@ -10,12 +10,12 @@ http_proxy # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Type: text/html + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Type: text/html Content-Length: 26 - + the content would go here @@ -41,14 +41,14 @@ proxy # Verify data after the test has been "shot" - -GET http://we.want.that.site.com/%TESTNUMBER HTTP/1.1 -Host: we.want.that.site.com -Proxy-Authorization: Basic %b64[fake:user]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://we.want.that.site.com/%TESTNUMBER HTTP/1.1 +Host: we.want.that.site.com +Proxy-Authorization: Basic %b64[fake:user]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test64 b/tests/data/test64 index d56b2514c9e8..bc6b50e006a3 100644 --- a/tests/data/test64 +++ b/tests/data/test64 @@ -8,39 +8,39 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! @@ -66,18 +66,18 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --digest # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER", response="c55f7f30d83d774a3d2dcacf725abaca" -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER", response="c55f7f30d83d774a3d2dcacf725abaca" +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test643 b/tests/data/test643 index 400d1b9ca528..14bbd4aa3927 100644 --- a/tests/data/test643 +++ b/tests/data/test643 @@ -10,29 +10,29 @@ HTTP MIME POST # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello @@ -69,66 +69,66 @@ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------- # boundary string and since 5 of them are in the body contents, we see # (5*12) == 60 bytes less -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 676 -Content-Type: multipart/form-data; boundary=---------------------------- - ------------------------------- -Content-Disposition: form-data; name="sendfile"; filename="postit2.c" - +POST /%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +Accept: */*%CR +Content-Length: 676%CR +Content-Type: multipart/form-data; boundary=----------------------------%CR +%CR +------------------------------%CR +Content-Disposition: form-data; name="sendfile"; filename="postit2.c"%CR +%CR dummy - ------------------------------- -Content-Disposition: form-data; name="callbackdata" - +%CR +------------------------------%CR +Content-Disposition: form-data; name="callbackdata"%CR +%CR dummy - ------------------------------- -Content-Disposition: form-data; name="filename" - -postit2.c ------------------------------- -Content-Disposition: form-data; name="submit" - -send ------------------------------- -Content-Disposition: form-data; name="somename"; filename="somefile.txt" -Content-Type: text/plain - -blah blah --------------------------------- -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 690 -Content-Type: multipart/form-data; boundary=---------------------------- - ------------------------------- -Content-Disposition: form-data; name="sendfile alternative"; filename="file name 2" - +%CR +------------------------------%CR +Content-Disposition: form-data; name="filename"%CR +%CR +postit2.c%CR +------------------------------%CR +Content-Disposition: form-data; name="submit"%CR +%CR +send%CR +------------------------------%CR +Content-Disposition: form-data; name="somename"; filename="somefile.txt"%CR +Content-Type: text/plain%CR +%CR +blah blah%CR +--------------------------------%CR +POST /%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +Accept: */*%CR +Content-Length: 690%CR +Content-Type: multipart/form-data; boundary=----------------------------%CR +%CR +------------------------------%CR +Content-Disposition: form-data; name="sendfile alternative"; filename="file name 2"%CR +%CR dummy - ------------------------------- -Content-Disposition: form-data; name="callbackdata" - +%CR +------------------------------%CR +Content-Disposition: form-data; name="callbackdata"%CR +%CR dummy - ------------------------------- -Content-Disposition: form-data; name="filename" - -postit2.c ------------------------------- -Content-Disposition: form-data; name="submit" - -send ------------------------------- -Content-Disposition: form-data; name="somename"; filename="somefile.txt" -Content-Type: text/plain - -blah blah --------------------------------- +%CR +------------------------------%CR +Content-Disposition: form-data; name="filename"%CR +%CR +postit2.c%CR +------------------------------%CR +Content-Disposition: form-data; name="submit"%CR +%CR +send%CR +------------------------------%CR +Content-Disposition: form-data; name="somename"; filename="somefile.txt"%CR +Content-Type: text/plain%CR +%CR +blah blah%CR +--------------------------------%CR diff --git a/tests/data/test644 b/tests/data/test644 index b055763a398b..85bfc0eb226d 100644 --- a/tests/data/test644 +++ b/tests/data/test644 @@ -65,17 +65,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --xattr -L -o %LOGDIR/out%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /data/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /data/%TESTNUMBER0002.txt?coolsite=yes HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + user.creator => curl diff --git a/tests/data/test645 b/tests/data/test645 index c198cbbaeb73..6370a5a478a2 100644 --- a/tests/data/test645 +++ b/tests/data/test645 @@ -10,29 +10,29 @@ HTTP MIME POST # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello @@ -69,128 +69,128 @@ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------- # boundary string and since 5 of them are in the body contents, we see # (5*12) == 60 bytes less -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Transfer-Encoding: chunked -Content-Type: multipart/form-data; boundary=---------------------------- -Expect: 100-continue - -7c ------------------------------- -Content-Disposition: form-data; name="sendfile"; filename="postit2.c" - -d -1 -u -1 -m -1 -m -1 -y -1 +POST /%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +Accept: */*%CR +Transfer-Encoding: chunked%CR +Content-Type: multipart/form-data; boundary=----------------------------%CR +Expect: 100-continue%CR +%CR +7c%CR +------------------------------%CR +Content-Disposition: form-data; name="sendfile"; filename="postit2.c"%CR +%CR +d%CR +1%CR +u%CR +1%CR +m%CR +1%CR +m%CR +1%CR +y%CR +1%CR - -6b - ------------------------------- -Content-Disposition: form-data; name="callbackdata" - - -1 -d -1 -u -1 -m -1 -m -1 -y -1 +%CR +6b%CR +%CR +------------------------------%CR +Content-Disposition: form-data; name="callbackdata"%CR +%CR +%CR +1%CR +d%CR +1%CR +u%CR +1%CR +m%CR +1%CR +m%CR +1%CR +y%CR +1%CR - -1b2 - ------------------------------- -Content-Disposition: form-data; name="filename" - -postit2.c ------------------------------- -Content-Disposition: form-data; name="submit" - -send ------------------------------- -Content-Disposition: form-data; name="somename"; filename="somefile.txt" -Content-Type: text/plain - -blah blah --------------------------------- - -0 - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Transfer-Encoding: chunked -Content-Type: multipart/form-data; boundary=---------------------------- -Expect: 100-continue - -8a ------------------------------- -Content-Disposition: form-data; name="sendfile alternative"; filename="file name 2" - -d -1 -u -1 -m -1 -m -1 -y -1 +%CR +1b2%CR +%CR +------------------------------%CR +Content-Disposition: form-data; name="filename"%CR +%CR +postit2.c%CR +------------------------------%CR +Content-Disposition: form-data; name="submit"%CR +%CR +send%CR +------------------------------%CR +Content-Disposition: form-data; name="somename"; filename="somefile.txt"%CR +Content-Type: text/plain%CR +%CR +blah blah%CR +--------------------------------%CR +%CR +0%CR +%CR +POST /%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +Accept: */*%CR +Transfer-Encoding: chunked%CR +Content-Type: multipart/form-data; boundary=----------------------------%CR +Expect: 100-continue%CR +%CR +8a%CR +------------------------------%CR +Content-Disposition: form-data; name="sendfile alternative"; filename="file name 2"%CR +%CR +d%CR +1%CR +u%CR +1%CR +m%CR +1%CR +m%CR +1%CR +y%CR +1%CR - -6b - ------------------------------- -Content-Disposition: form-data; name="callbackdata" - - -1 -d -1 -u -1 -m -1 -m -1 -y -1 +%CR +6b%CR +%CR +------------------------------%CR +Content-Disposition: form-data; name="callbackdata"%CR +%CR +%CR +1%CR +d%CR +1%CR +u%CR +1%CR +m%CR +1%CR +m%CR +1%CR +y%CR +1%CR - -1b2 - ------------------------------- -Content-Disposition: form-data; name="filename" - -postit2.c ------------------------------- -Content-Disposition: form-data; name="submit" - -send ------------------------------- -Content-Disposition: form-data; name="somename"; filename="somefile.txt" -Content-Type: text/plain - -blah blah --------------------------------- - -0 - +%CR +1b2%CR +%CR +------------------------------%CR +Content-Disposition: form-data; name="filename"%CR +%CR +postit2.c%CR +------------------------------%CR +Content-Disposition: form-data; name="submit"%CR +%CR +send%CR +------------------------------%CR +Content-Disposition: form-data; name="somename"; filename="somefile.txt"%CR +Content-Type: text/plain%CR +%CR +blah blah%CR +--------------------------------%CR +%CR +0%CR +%CR diff --git a/tests/data/test646 b/tests/data/test646 index 4f26dbdf9291..2bca8337c65c 100644 --- a/tests/data/test646 +++ b/tests/data/test646 @@ -23,11 +23,11 @@ smtp SMTP multipart using mime API - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -F "=(;type=multipart/alternative" -F "= This is the html version;headers=X-test1: this is a header;type=text/html;headers=X-test2: this is another header " -F "=This is the plain text version;headers=@%LOGDIR/headers%TESTNUMBER" -F "=)" -F "=@%LOGDIR/test%TESTNUMBER.txt;headers=<%LOGDIR/headers%TESTNUMBER" -H "From: different" -H "To: another" -H "Reply-To: " @@ -39,10 +39,10 @@ It may contain any type of data. # This line is a comment -X-fileheader1: This is a header from a file +X-fileheader1: This is a header from a file%SP%CR # This line is another comment. It precedes a folded header. -X-fileheader2: This is #a +X-fileheader2: This is #a folded header @@ -54,48 +54,48 @@ X-fileheader2: This is #a s/^--------------------------[A-Za-z0-9]*/------------------------------/ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/ - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA +QUIT -Content-Type: multipart/mixed; boundary=---------------------------- -Mime-Version: 1.0 -From: different -To: another -Reply-To: - ------------------------------- -Content-Type: multipart/alternative; boundary=---------------------------- - ------------------------------- -Content-Type: text/html -Content-Transfer-Encoding: 8bit -X-test1: this is a header -X-test2: this is another header - -This is the html version ------------------------------- -X-fileheader1: This is a header from a file -X-fileheader2: This is #a folded header - -This is the plain text version --------------------------------- - ------------------------------- -Content-Disposition: attachment; filename="test%TESTNUMBER.txt" -X-fileheader1: This is a header from a file -X-fileheader2: This is #a folded header - +Content-Type: multipart/mixed; boundary=----------------------------%CR +Mime-Version: 1.0%CR +From: different%CR +To: another%CR +Reply-To: %CR +%CR +------------------------------%CR +Content-Type: multipart/alternative; boundary=----------------------------%CR +%CR +------------------------------%CR +Content-Type: text/html%CR +Content-Transfer-Encoding: 8bit%CR +X-test1: this is a header%CR +X-test2: this is another header%CR +%CR +This is the html version%CR +------------------------------%CR +X-fileheader1: This is a header from a file%CR +X-fileheader2: This is #a folded header%CR +%CR +This is the plain text version%CR +--------------------------------%CR +%CR +------------------------------%CR +Content-Disposition: attachment; filename="test%TESTNUMBER.txt"%CR +X-fileheader1: This is a header from a file%CR +X-fileheader2: This is #a folded header%CR +%CR This is an attached file. It may contain any type of data. - --------------------------------- -. +%CR +--------------------------------%CR +.%CR diff --git a/tests/data/test647 b/tests/data/test647 index 8cac4577e1ee..732472db9c24 100644 --- a/tests/data/test647 +++ b/tests/data/test647 @@ -42,42 +42,42 @@ It may contain any type of data. s/^--------------------------[A-Za-z0-9]*/------------------------------/ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/ - -A001 CAPABILITY -A002 LOGIN user secret -A003 APPEND %TESTNUMBER (\Seen) {940} -A004 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 APPEND %TESTNUMBER (\Seen) {940} +A004 LOGOUT -Content-Type: multipart/mixed; boundary=---------------------------- -Mime-Version: 1.0 -Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST) -From: Fred Foobar -To: joe@example.com -Message-Id: -Subject: afternoon meeting - ------------------------------- -Content-Type: multipart/alternative; boundary=---------------------------- - ------------------------------- -Content-Type: text/html -Content-Transfer-Encoding: 8bit - -This is the html version ------------------------------- - -This is the plain text version --------------------------------- - ------------------------------- -Content-Disposition: attachment; filename="test%TESTNUMBER.txt" - +Content-Type: multipart/mixed; boundary=----------------------------%CR +Mime-Version: 1.0%CR +Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)%CR +From: Fred Foobar %CR +To: joe@example.com%CR +Message-Id: %CR +Subject: afternoon meeting%CR +%CR +------------------------------%CR +Content-Type: multipart/alternative; boundary=----------------------------%CR +%CR +------------------------------%CR +Content-Type: text/html%CR +Content-Transfer-Encoding: 8bit%CR +%CR +This is the html version%CR +------------------------------%CR +%CR +This is the plain text version%CR +--------------------------------%CR +%CR +------------------------------%CR +Content-Disposition: attachment; filename="test%TESTNUMBER.txt"%CR +%CR This is an attached file. It may contain any type of data. - --------------------------------- +%CR +--------------------------------%CR diff --git a/tests/data/test648 b/tests/data/test648 index 992a3dbc5ed9..739a61ac210f 100644 --- a/tests/data/test648 +++ b/tests/data/test648 @@ -23,11 +23,11 @@ smtp SMTP multipart with transfer content encoders - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -F '=This is the email inline text with a very long line containing the special character = and that should be split by encoder.;headers=Content-disposition: "inline";encoder=quoted-printable' -F "=@%LOGDIR/test%TESTNUMBER.txt;encoder=base64" -H "From: different" -H "To: another" @@ -46,33 +46,33 @@ It may contain any type of data and will be encoded in base64 for transfer. s/^--------------------------[A-Za-z0-9]*/------------------------------/ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/ - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA +QUIT - -Content-Type: multipart/mixed; boundary=---------------------------- -Mime-Version: 1.0 -From: different -To: another - ------------------------------- -Content-Transfer-Encoding: quoted-printable -Content-disposition: "inline" - -This is the email inline text with a very long line containing the special = -character =3D and that should be split by encoder. ------------------------------- -Content-Disposition: attachment; filename="test%TESTNUMBER.txt" -Content-Transfer-Encoding: base64 - -VGhpcyBpcyBhbiBhdHRhY2hlZCBmaWxlLgoKSXQgbWF5IGNvbnRhaW4gYW55IHR5cGUgb2YgZGF0 -YSBhbmQgd2lsbCBiZSBlbmNvZGVkIGluIGJhc2U2NCBmb3IgdHJhbnNmZXIuCg== --------------------------------- -. + +Content-Type: multipart/mixed; boundary=---------------------------- +Mime-Version: 1.0 +From: different +To: another + +------------------------------ +Content-Transfer-Encoding: quoted-printable +Content-disposition: "inline" + +This is the email inline text with a very long line containing the special = +character =3D and that should be split by encoder. +------------------------------ +Content-Disposition: attachment; filename="test%TESTNUMBER.txt" +Content-Transfer-Encoding: base64 + +VGhpcyBpcyBhbiBhdHRhY2hlZCBmaWxlLgoKSXQgbWF5IGNvbnRhaW4gYW55IHR5cGUgb2YgZGF0 +YSBhbmQgd2lsbCBiZSBlbmNvZGVkIGluIGJhc2U2NCBmb3IgdHJhbnNmZXIuCg== +-------------------------------- +. diff --git a/tests/data/test649 b/tests/data/test649 index 371f00bfdc5c..97f4f099ca1a 100644 --- a/tests/data/test649 +++ b/tests/data/test649 @@ -23,11 +23,11 @@ smtp SMTP multipart with 7bit encoder error - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -F '=This is valid;encoder=7bit' -F "=@%LOGDIR/test%TESTNUMBER.txt;encoder=7bit" -H "From: different" -H "To: another" @@ -42,11 +42,11 @@ It contains at least an 8-bit byte value. # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA 26 diff --git a/tests/data/test65 b/tests/data/test65 index 8f82c92b4bde..72839e0f7367 100644 --- a/tests/data/test65 +++ b/tests/data/test65 @@ -8,40 +8,40 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 Authorization Required -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="2053604145" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="2053604145" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 401 Still a bad password you moron -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 - -This is not the real page either + +HTTP/1.1 401 Still a bad password you moron +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 + +This is not the real page either - -HTTP/1.1 401 Authorization Required -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="2053604145" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 401 Still a bad password you moron -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 - -This is not the real page either + +HTTP/1.1 401 Authorization Required +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="2053604145" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 401 Still a bad password you moron +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 + +This is not the real page either @@ -66,18 +66,18 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:test2pass --digest # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="2053604145", uri="/%TESTNUMBER", response="66d68d3251f1839576ba7c766cf9205b" -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="2053604145", uri="/%TESTNUMBER", response="66d68d3251f1839576ba7c766cf9205b" +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test650 b/tests/data/test650 index acd2c5f194a1..3864303b34b5 100644 --- a/tests/data/test650 +++ b/tests/data/test650 @@ -10,17 +10,17 @@ FORM # # Server-side - -HTTP/1.1 301 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html + +HTTP/1.1 301 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html Location: /%TESTNUMBER0002 - + hello - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -70,150 +70,150 @@ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------- # boundary string and since 5 of them are in the body contents, we see # (5*12) == 60 bytes less -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Transfer-Encoding: chunked -Content-Type: multipart/form-data; boundary=---------------------------- -Expect: 100-continue - -385 ------------------------------- -Content-Disposition: form-data; name="fieldname" -Content-Type: text/plain -X-customheader-1: Header 1 data -X-customheader-2: Header 2 data - -this is what we post to the silly web server ------------------------------- -Content-Disposition: form-data; name="fieldnam" - -uhis is what we post to the silly web serve ------------------------------- -Content-Disposition: form-data; name="multifile" -Content-Type: multipart/mixed; boundary=---------------------------- - ------------------------------- -Content-Disposition: attachment; filename="test%TESTNUMBER.filedata" -Content-Type: application/octet-stream - +POST /%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +Accept: */*%CR +Transfer-Encoding: chunked%CR +Content-Type: multipart/form-data; boundary=----------------------------%CR +Expect: 100-continue%CR +%CR +385%CR +------------------------------%CR +Content-Disposition: form-data; name="fieldname"%CR +Content-Type: text/plain%CR +X-customheader-1: Header 1 data%CR +X-customheader-2: Header 2 data%CR +%CR +this is what we post to the silly web server%CR +------------------------------%CR +Content-Disposition: form-data; name="fieldnam"%CR +%CR +uhis is what we post to the silly web serve%CR +------------------------------%CR +Content-Disposition: form-data; name="multifile"%CR +Content-Type: multipart/mixed; boundary=----------------------------%CR +%CR +------------------------------%CR +Content-Disposition: attachment; filename="test%TESTNUMBER.filedata"%CR +Content-Type: application/octet-stream%CR +%CR This is data from a file. - ------------------------------- -Content-Disposition: attachment; filename="test%TESTNUMBER.filedata" -Content-Type: text/whatever - - -ab +%CR +------------------------------%CR +Content-Disposition: attachment; filename="test%TESTNUMBER.filedata"%CR +Content-Type: text/whatever%CR +%CR +%CR +ab%CR This is data from a file. - ------------------------------- -Content-Disposition: attachment; filename="test%TESTNUMBER.filedata" -Content-Type: text/whatever - - -bb +%CR +------------------------------%CR +Content-Disposition: attachment; filename="test%TESTNUMBER.filedata"%CR +Content-Type: text/whatever%CR +%CR +%CR +bb%CR This is data from a file. - --------------------------------- - ------------------------------- -Content-Disposition: form-data; name="filecontents" - - -11b +%CR +--------------------------------%CR +%CR +------------------------------%CR +Content-Disposition: form-data; name="filecontents"%CR +%CR +%CR +11b%CR This is data from a file. - ------------------------------- -Content-Disposition: form-data; name="formlength" - -1433 ------------------------------- -Content-Disposition: form-data; name="standardinput" -Content-Type: application/octet-stream - - -16 +%CR +------------------------------%CR +Content-Disposition: form-data; name="formlength"%CR +%CR +1433%CR +------------------------------%CR +Content-Disposition: form-data; name="standardinput"%CR +Content-Type: application/octet-stream%CR +%CR +%CR +16%CR Some data from stdin - -36 - --------------------------------- - -0 - -POST /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Transfer-Encoding: chunked -Content-Type: multipart/form-data; boundary=---------------------------- -Expect: 100-continue - -385 ------------------------------- -Content-Disposition: form-data; name="fieldname" -Content-Type: text/plain -X-customheader-1: Header 1 data -X-customheader-2: Header 2 data - -this is what we post to the silly web server ------------------------------- -Content-Disposition: form-data; name="fieldnam" - -uhis is what we post to the silly web serve ------------------------------- -Content-Disposition: form-data; name="multifile" -Content-Type: multipart/mixed; boundary=---------------------------- - ------------------------------- -Content-Disposition: attachment; filename="test%TESTNUMBER.filedata" -Content-Type: application/octet-stream - +%CR +36%CR +%CR +--------------------------------%CR +%CR +0%CR +%CR +POST /%TESTNUMBER0002 HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +Accept: */*%CR +Transfer-Encoding: chunked%CR +Content-Type: multipart/form-data; boundary=----------------------------%CR +Expect: 100-continue%CR +%CR +385%CR +------------------------------%CR +Content-Disposition: form-data; name="fieldname"%CR +Content-Type: text/plain%CR +X-customheader-1: Header 1 data%CR +X-customheader-2: Header 2 data%CR +%CR +this is what we post to the silly web server%CR +------------------------------%CR +Content-Disposition: form-data; name="fieldnam"%CR +%CR +uhis is what we post to the silly web serve%CR +------------------------------%CR +Content-Disposition: form-data; name="multifile"%CR +Content-Type: multipart/mixed; boundary=----------------------------%CR +%CR +------------------------------%CR +Content-Disposition: attachment; filename="test%TESTNUMBER.filedata"%CR +Content-Type: application/octet-stream%CR +%CR This is data from a file. - ------------------------------- -Content-Disposition: attachment; filename="test%TESTNUMBER.filedata" -Content-Type: text/whatever - - -ab +%CR +------------------------------%CR +Content-Disposition: attachment; filename="test%TESTNUMBER.filedata"%CR +Content-Type: text/whatever%CR +%CR +%CR +ab%CR This is data from a file. - ------------------------------- -Content-Disposition: attachment; filename="test%TESTNUMBER.filedata" -Content-Type: text/whatever - - -bb +%CR +------------------------------%CR +Content-Disposition: attachment; filename="test%TESTNUMBER.filedata"%CR +Content-Type: text/whatever%CR +%CR +%CR +bb%CR This is data from a file. - --------------------------------- - ------------------------------- -Content-Disposition: form-data; name="filecontents" - - -11b +%CR +--------------------------------%CR +%CR +------------------------------%CR +Content-Disposition: form-data; name="filecontents"%CR +%CR +%CR +11b%CR This is data from a file. - ------------------------------- -Content-Disposition: form-data; name="formlength" - -1433 ------------------------------- -Content-Disposition: form-data; name="standardinput" -Content-Type: application/octet-stream - - -16 +%CR +------------------------------%CR +Content-Disposition: form-data; name="formlength"%CR +%CR +1433%CR +------------------------------%CR +Content-Disposition: form-data; name="standardinput"%CR +Content-Type: application/octet-stream%CR +%CR +%CR +16%CR Some data from stdin - -36 - --------------------------------- - -0 - +%CR +36%CR +%CR +--------------------------------%CR +%CR +0%CR +%CR diff --git a/tests/data/test651 b/tests/data/test651 index 48e42df6174d..533167a800e4 100644 --- a/tests/data/test651 +++ b/tests/data/test651 @@ -10,13 +10,13 @@ FORM # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello @@ -58,18 +58,18 @@ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------- # Note that the stripping above removes 12 bytes from every occurrence of the # boundary string and since 5 of them are in the body contents, we see # (5*12) == 60 bytes less - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 17151 -Content-Type: multipart/form-data; boundary=---------------------------- - ------------------------------- -Content-Disposition: form-data; name="hello" - -AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ --------------------------------- + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 17151 +Content-Type: multipart/form-data; boundary=---------------------------- + +------------------------------ +Content-Disposition: form-data; name="hello" + +%repeat[1000 x A]%%repeat[1000 x B]%%repeat[1000 x C]%%repeat[1000 x D]%%repeat[1000 x E]%%repeat[1000 x F]%%repeat[1000 x G]%%repeat[1000 x H]%%repeat[1000 x I]%%repeat[1000 x J]%%repeat[1000 x K]%%repeat[1000 x L]%%repeat[1000 x M]%%repeat[1000 x N]%%repeat[1000 x O]%%repeat[1000 x P]%%repeat[999 x Q]% +-------------------------------- diff --git a/tests/data/test652 b/tests/data/test652 index 31ec7b821daa..25e5a6d9e3bb 100644 --- a/tests/data/test652 +++ b/tests/data/test652 @@ -39,323 +39,323 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER s/^--------------------------[A-Za-z0-9]*/------------------------------/ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/ - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA +QUIT - -Content-Type: multipart/mixed; boundary=---------------------------- -Mime-Version: 1.0 - ------------------------------- -Content-Disposition: attachment; filename="myfile.jpg" -Content-Type: image/jpeg -Content-Transfer-Encoding: base64 - -QUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZG -RkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExM -TExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFS -UlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dX -V1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0ND -Q0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJ -SUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5O -Tk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRU -VFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpa -WlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVF -RkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tL -S0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFR -UVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZX -V1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJC -QkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhI -SEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5O -Tk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NT -U1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZ -WVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVF -RUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpK -S0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQ -UFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZW -VlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFC -QkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dH -R0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1N -TU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNT -U1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhY -WFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDRERERERE -REREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpK -SkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09P -UFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVV -VVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFB -QUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZH -R0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExM -TExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJS -UlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hY -WFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0ND -Q0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJ -SUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09P -T09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRU -VVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpa -WlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZG -RkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tM -TExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFR -UVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dX -V1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkND -Q0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhI -SElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5O -Tk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRU -VFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZ -WlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVF -RUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tL -S0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBR -UVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZW -VlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJC -QkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hI -SEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1N -TU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NT -U1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZ -WVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERE -RUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpK -SkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQ -UFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVW -VlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFB -QUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dH -R0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1N -TU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJS -UlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhY -WFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDRERE -REREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJ -SkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09P -T09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVV -VVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpB -QUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZG -RkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExM -TExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJS -UlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dX -V1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0ND -Q0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJ -SUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5O -T09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRU -VFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpa -WlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVG -RkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tL -S0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFR -UVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldX -V1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJC -QkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhI -SEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5O -Tk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NT -VFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZ -WVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVF -RUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpL -S0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQ -UFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZW -VlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJC -QkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dH -R0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1N -TU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NT -U1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhY -WVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERE -RERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpK -SkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09Q -UFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVV -VVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFB -QUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdH -R0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExM -TE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJS -UlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhY -WFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0ND -REREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJ -SUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09P -T09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRV -VVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpa -WlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZG -RkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xM -TExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFR -UVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dX -V1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0ND -Q0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhI -SUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5O -Tk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRU -VFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVla -WlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVF -RUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tL -S0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFR -UVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZW -VldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJC -QkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhI -SEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1N -Tk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NT -U1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZ -WVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERF -RUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpK -SkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQ -UFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZW -VlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFB -QUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dH -R0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1N -TU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJS -U1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhY -WFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERE -RERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlK -SkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09P -T09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVV -VVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFB -QUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZG -RkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExM -TExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJS -UlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dX -WFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0ND -Q0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJ -SUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5P -T09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRU -VFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpa -WlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZG -RkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tL -S0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFR -UVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dX -V1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJC -Q0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhI -SEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5O -Tk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NU -VFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZ -WVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVF -RUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktL -S0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQ -UFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZW -VlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJC -QkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dH -SEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1N -TU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NT -U1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZ -WVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERE -RERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpK -SkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQ -UFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVV -VVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFB -QUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dH -R0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExM -TU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJS -UlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhY -WFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NE -RERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJ -SUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09P -T09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVV -VVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpa -WkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZG -RkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExM -TExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFR -UlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dX -V1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0ND -Q0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJ -SUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5O -Tk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRU -VFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpa -WlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVF -RUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tL -S0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFR -UVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZW -V1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJC -QkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhI -SEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1O -Tk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NT -U1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZ -WVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVF -RUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpK -SktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQ -UFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZW -VlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFB -QkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dH -R0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1N -TU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJT -U1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhY -WFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERE -RERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpK -SkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09P -T1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVV -VVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFB -QUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZG -R0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExM -TExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJS -UlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dY -WFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0ND -Q0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJ -SUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9P -T09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRU -VFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpa -WlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZG -RkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tL -TExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFR -UVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dX -V1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJD -Q0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhI -SEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5O -Tk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RU -VFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZ -WVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVF -RUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tL -S0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQ -UVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZW -VlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJC -QkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dI -SEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1N -TU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NT -U1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZ -WVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDRERERERERERE -REVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpK -SkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQ -UFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVV -VlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFB -QUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dH -R0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExN -TU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJS -UlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhY -WFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RE -RERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJ -SUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09P -T09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVV -VVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpa -QUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZG -RkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExM -TExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFS -UlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dX -V1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0ND -Q0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJ -SUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5O -Tk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRU -VFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpa -WlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVF -RkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tL -S0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFR -UVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZX -V1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJC -QkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhI -SEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5O -Tk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NT -U1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZ -WVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVF -RUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpK -S0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQ -UFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZW -VlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFC -QkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dH -R0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1N -TU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNT -U1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhY -WFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDRERERERE -REREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpK -SkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09P -UFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVV -VVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFB -QUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZH -R0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExM -TExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJS -UlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hY -WFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0ND -Q0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJ -SUlJSUpKSkpKSkpKSko= --------------------------------- -. + +Content-Type: multipart/mixed; boundary=---------------------------- +Mime-Version: 1.0 + +------------------------------ +Content-Disposition: attachment; filename="myfile.jpg" +Content-Type: image/jpeg +Content-Transfer-Encoding: base64 + +QUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZG +RkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExM +TExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFS +UlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dX +V1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0ND +Q0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJ +SUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5O +Tk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRU +VFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpa +WlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVF +RkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tL +S0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFR +UVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZX +V1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJC +QkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhI +SEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5O +Tk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NT +U1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZ +WVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVF +RUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpK +S0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQ +UFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZW +VlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFC +QkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dH +R0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1N +TU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNT +U1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhY +WFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDRERERERE +REREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpK +SkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09P +UFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVV +VVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFB +QUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZH +R0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExM +TExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJS +UlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hY +WFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0ND +Q0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJ +SUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09P +T09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRU +VVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpa +WlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZG +RkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tM +TExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFR +UVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dX +V1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkND +Q0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhI +SElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5O +Tk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRU +VFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZ +WlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVF +RUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tL +S0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBR +UVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZW +VlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJC +QkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hI +SEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1N +TU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NT +U1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZ +WVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERE +RUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpK +SkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQ +UFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVW +VlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFB +QUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dH +R0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1N +TU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJS +UlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhY +WFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDRERE +REREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJ +SkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09P +T09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVV +VVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpB +QUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZG +RkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExM +TExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJS +UlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dX +V1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0ND +Q0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJ +SUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5O +T09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRU +VFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpa +WlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVG +RkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tL +S0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFR +UVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldX +V1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJC +QkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhI +SEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5O +Tk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NT +VFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZ +WVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVF +RUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpL +S0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQ +UFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZW +VlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJC +QkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dH +R0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1N +TU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NT +U1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhY +WVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERE +RERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpK +SkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09Q +UFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVV +VVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFB +QUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdH +R0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExM +TE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJS +UlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhY +WFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0ND +REREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJ +SUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09P +T09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRV +VVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpa +WlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZG +RkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xM +TExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFR +UVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dX +V1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0ND +Q0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhI +SUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5O +Tk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRU +VFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVla +WlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVF +RUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tL +S0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFR +UVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZW +VldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJC +QkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhI +SEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1N +Tk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NT +U1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZ +WVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERF +RUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpK +SkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQ +UFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZW +VlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFB +QUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dH +R0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1N +TU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJS +U1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhY +WFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERE +RERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlK +SkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09P +T09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVV +VVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFB +QUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZG +RkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExM +TExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJS +UlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dX +WFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0ND +Q0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJ +SUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5P +T09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRU +VFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpa +WlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZG +RkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tL +S0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFR +UVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dX +V1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJC +Q0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhI +SEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5O +Tk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NU +VFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZ +WVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVF +RUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktL +S0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQ +UFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZW +VlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJC +QkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dH +SEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1N +TU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NT +U1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZ +WVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERE +RERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpK +SkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQ +UFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVV +VVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFB +QUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dH +R0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExM +TU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJS +UlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhY +WFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NE +RERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJ +SUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09P +T09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVV +VVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpa +WkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZG +RkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExM +TExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFR +UlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dX +V1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0ND +Q0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJ +SUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5O +Tk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRU +VFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpa +WlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVF +RUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tL +S0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFR +UVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZW +V1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJC +QkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhI +SEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1O +Tk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NT +U1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZ +WVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVF +RUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpK +SktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQ +UFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZW +VlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFB +QkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dH +R0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1N +TU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJT +U1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhY +WFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERE +RERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpK +SkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09P +T1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVV +VVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFB +QUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZG +R0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExM +TExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJS +UlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dY +WFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0ND +Q0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJ +SUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9P +T09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRU +VFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpa +WlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZG +RkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tL +TExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFR +UVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dX +V1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJD +Q0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhI +SEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5O +Tk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RU +VFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZ +WVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVF +RUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tL +S0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQ +UVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZW +VlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJC +QkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dI +SEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1N +TU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NT +U1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZ +WVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDRERERERERERE +REVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpK +SkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQ +UFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVV +VlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFB +QUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dH +R0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExN +TU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJS +UlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhY +WFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RE +RERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJ +SUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09P +T09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVV +VVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpa +QUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZG +RkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExM +TExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFS +UlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dX +V1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0ND +Q0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJ +SUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5O +Tk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRU +VFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpa +WlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVF +RkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tL +S0tLTExMTExMTExMTE1NTU1NTU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFR +UVFRUVFRUlJSUlJSUlJSUlNTU1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZX +V1dXV1dXV1dXWFhYWFhYWFhYWFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJC +QkJDQ0NDQ0NDQ0NDREREREREREREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhI +SEhISEhJSUlJSUlJSUlJSkpKSkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5O +Tk5OTk5OTk5PT09PT09PT09PUFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NT +U1RUVFRUVFRUVFRVVVVVVVVVVVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZ +WVlZWVpaWlpaWlpaWlpBQUFBQUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVF +RUVFRUVFRUZGRkZGRkZGRkZHR0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpK +S0tLS0tLS0tLS0xMTExMTExMTExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQ +UFBQUVFRUVFRUVFRUVJSUlJSUlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZW +VlZWVlZWV1dXV1dXV1dXV1hYWFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFC +QkJCQkJCQkJCQ0NDQ0NDQ0NDQ0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dH +R0dISEhISEhISEhISUlJSUlJSUlJSUpKSkpKSkpKSkpLS0tLS0tLS0tLTExMTExMTExMTE1NTU1N +TU1NTU1OTk5OTk5OTk5OT09PT09PT09PT1BQUFBQUFBQUFBRUVFRUVFRUVFRUlJSUlJSUlJSUlNT +U1NTU1NTU1NUVFRUVFRUVFRUVVVVVVVVVVVVVVZWVlZWVlZWVlZXV1dXV1dXV1dXWFhYWFhYWFhY +WFlZWVlZWVlZWVlaWlpaWlpaWlpaQUFBQUFBQUFBQUJCQkJCQkJCQkJDQ0NDQ0NDQ0NDRERERERE +REREREVFRUVFRUVFRUVGRkZGRkZGRkZGR0dHR0dHR0dHR0hISEhISEhISEhJSUlJSUlJSUlJSkpK +SkpKSkpKSktLS0tLS0tLS0tMTExMTExMTExMTU1NTU1NTU1NTU5OTk5OTk5OTk5PT09PT09PT09P +UFBQUFBQUFBQUFFRUVFRUVFRUVFSUlJSUlJSUlJSU1NTU1NTU1NTU1RUVFRUVFRUVFRVVVVVVVVV +VVVVVlZWVlZWVlZWVldXV1dXV1dXV1dYWFhYWFhYWFhYWVlZWVlZWVlZWVpaWlpaWlpaWlpBQUFB +QUFBQUFBQkJCQkJCQkJCQkNDQ0NDQ0NDQ0NERERERERERERERUVFRUVFRUVFRUZGRkZGRkZGRkZH +R0dHR0dHR0dHSEhISEhISEhISElJSUlJSUlJSUlKSkpKSkpKSkpKS0tLS0tLS0tLS0xMTExMTExM +TExNTU1NTU1NTU1NTk5OTk5OTk5OTk9PT09PT09PT09QUFBQUFBQUFBQUVFRUVFRUVFRUVJSUlJS +UlJSUlJTU1NTU1NTU1NTVFRUVFRUVFRUVFVVVVVVVVVVVVVWVlZWVlZWVlZWV1dXV1dXV1dXV1hY +WFhYWFhYWFhZWVlZWVlZWVlZWlpaWlpaWlpaWkFBQUFBQUFBQUFCQkJCQkJCQkJCQ0NDQ0NDQ0ND +Q0RERERERERERERFRUVFRUVFRUVFRkZGRkZGRkZGRkdHR0dHR0dHR0dISEhISEhISEhISUlJSUlJ +SUlJSUpKSkpKSkpKSko= +-------------------------------- +. diff --git a/tests/data/test653 b/tests/data/test653 index 33885f17faaa..256d94fac08e 100644 --- a/tests/data/test653 +++ b/tests/data/test653 @@ -10,29 +10,29 @@ MIME # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello @@ -68,29 +68,29 @@ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------- # Note that the stripping above removes 12 bytes from every occurrence of the # boundary string and since 5 of them are in the body contents, we see # (5*12) == 60 bytes less - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 162 -Content-Type: multipart/form-data; boundary=---------------------------- - ------------------------------- -Content-Disposition: form-data; name="name" - -short value --------------------------------- -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 179 -Content-Type: multipart/form-data; boundary=---------------------------- - ------------------------------- -Content-Disposition: form-data; name="name" - -long value for length change --------------------------------- + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 162 +Content-Type: multipart/form-data; boundary=---------------------------- + +------------------------------ +Content-Disposition: form-data; name="name" + +short value +-------------------------------- +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 179 +Content-Type: multipart/form-data; boundary=---------------------------- + +------------------------------ +Content-Disposition: form-data; name="name" + +long value for length change +-------------------------------- diff --git a/tests/data/test654 b/tests/data/test654 index df960f29e14e..8bb74d271f3d 100644 --- a/tests/data/test654 +++ b/tests/data/test654 @@ -10,29 +10,29 @@ HTTP MIME POST # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello @@ -72,55 +72,55 @@ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------- # boundary string and since 5 of them are in the body contents, we see # (5*12) == 60 bytes less -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 0 - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Transfer-Encoding: chunked -Content-Type: multipart/form-data; boundary=---------------------------- -Expect: 100-continue - -1c1 ------------------------------- -Content-Disposition: form-data; name="greeting" -Content-Type: application/X-Greeting -Content-Transfer-Encoding: base64 -X-Test-Number: %TESTNUMBER - -aGVsbG8= ------------------------------- -Content-Disposition: form-data; filename="file%TESTNUMBER.txt" -Content-Type: text/plain - +POST /%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +Accept: */*%CR +Content-Length: 0%CR +%CR +POST /%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +Accept: */*%CR +Transfer-Encoding: chunked%CR +Content-Type: multipart/form-data; boundary=----------------------------%CR +Expect: 100-continue%CR +%CR +1c1%CR +------------------------------%CR +Content-Disposition: form-data; name="greeting"%CR +Content-Type: application/X-Greeting%CR +Content-Transfer-Encoding: base64%CR +X-Test-Number: %TESTNUMBER%CR +%CR +aGVsbG8=%CR +------------------------------%CR +Content-Disposition: form-data; filename="file%TESTNUMBER.txt"%CR +Content-Type: text/plain%CR +%CR This is data from a file - ------------------------------- -Content-Disposition: form-data - - -1 -d -1 -u -1 -m -1 -m -1 -y -1 +%CR +------------------------------%CR +Content-Disposition: form-data%CR +%CR +%CR +1%CR +d%CR +1%CR +u%CR +1%CR +m%CR +1%CR +m%CR +1%CR +y%CR +1%CR - -36 - --------------------------------- - -0 - +%CR +36%CR +%CR +--------------------------------%CR +%CR +0%CR +%CR diff --git a/tests/data/test655 b/tests/data/test655 index 3cf5bd88505f..2e48598f3c56 100644 --- a/tests/data/test655 +++ b/tests/data/test655 @@ -8,13 +8,13 @@ HTTP # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello diff --git a/tests/data/test658 b/tests/data/test658 index 32ca29db4978..ccf757673c34 100644 --- a/tests/data/test658 +++ b/tests/data/test658 @@ -38,11 +38,11 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + diff --git a/tests/data/test659 b/tests/data/test659 index 5cad5eadcd5c..fa7d02891ee9 100644 --- a/tests/data/test659 +++ b/tests/data/test659 @@ -42,12 +42,12 @@ proxy - -GET http://www.example.com/ HTTP/1.1 -Host: www.example.com -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://www.example.com/ HTTP/1.1 +Host: www.example.com +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test66 b/tests/data/test66 index d4e20c0fe460..974a3fe0f1aa 100644 --- a/tests/data/test66 +++ b/tests/data/test66 @@ -29,12 +29,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --http0.9 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test660 b/tests/data/test660 index 8fdf879d9ad2..db3db9bed88e 100644 --- a/tests/data/test660 +++ b/tests/data/test660 @@ -27,8 +27,8 @@ imap://%HOSTIP:%IMAPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -A001 CAPABILITY + +A001 CAPABILITY diff --git a/tests/data/test661 b/tests/data/test661 index 5965bd8aeacb..2714e6fda362 100644 --- a/tests/data/test661 +++ b/tests/data/test661 @@ -33,41 +33,41 @@ ftp://%HOSTIP:%FTPPORT/ # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -CWD /folderA -EPSV -TYPE I -RETR %TESTNUMBER -CWD /folderB -EPSV -RETR %TESTNUMBER -QUIT -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -RETR /folderA/%TESTNUMBER -CWD /folderB -EPSV -RETR %TESTNUMBER -EPSV -RETR /folderA/%TESTNUMBER -QUIT -USER anonymous -PASS ftp@example.com -PWD -SYST -QUIT -USER anonymous -PASS ftp@example.com -PWD -SYST -SYST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +CWD /folderA +EPSV +TYPE I +RETR %TESTNUMBER +CWD /folderB +EPSV +RETR %TESTNUMBER +QUIT +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +RETR /folderA/%TESTNUMBER +CWD /folderB +EPSV +RETR %TESTNUMBER +EPSV +RETR /folderA/%TESTNUMBER +QUIT +USER anonymous +PASS ftp@example.com +PWD +SYST +QUIT +USER anonymous +PASS ftp@example.com +PWD +SYST +SYST +QUIT diff --git a/tests/data/test662 b/tests/data/test662 index a1d501fd2d2c..b7586fe824d1 100644 --- a/tests/data/test662 +++ b/tests/data/test662 @@ -10,32 +10,32 @@ followlocation # # Server-side - -HTTP/1.1 302 OK -Location: http://example.net/tes t case=/%TESTNUMBER0002 -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 0 - + +HTTP/1.1 302 OK +Location: http://example.net/tes t case=/%TESTNUMBER0002 +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 0 + - -HTTP/1.1 200 OK -Location: this should be ignored -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 5 - + +HTTP/1.1 200 OK +Location: this should be ignored +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 5 + body - -HTTP/1.1 302 OK -Location: http://example.net/tes t case=/%TESTNUMBER0002 -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 0 - -HTTP/1.1 200 OK -Location: this should be ignored -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 5 - + +HTTP/1.1 302 OK +Location: http://example.net/tes t case=/%TESTNUMBER0002 +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 0 + +HTTP/1.1 200 OK +Location: this should be ignored +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 5 + body @@ -60,19 +60,19 @@ proxy # # Verify data after the test has been "shot" - -GET http://example.com/please/gimme/%TESTNUMBER HTTP/1.1 -Host: example.com -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://example.net/tes%20t%20case=/%TESTNUMBER0002 HTTP/1.1 -Host: example.net -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://example.com/please/gimme/%TESTNUMBER HTTP/1.1 +Host: example.com +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://example.net/tes%20t%20case=/%TESTNUMBER0002 HTTP/1.1 +Host: example.net +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test663 b/tests/data/test663 index 313910aa6bc2..b905583f7c7a 100644 --- a/tests/data/test663 +++ b/tests/data/test663 @@ -14,32 +14,32 @@ followlocation # # Server-side - -HTTP/1.1 302 OK -Location: http://example.net/there/it/is/../../tes t case=/%TESTNUMBER0002? yes no -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 0 - + +HTTP/1.1 302 OK +Location: http://example.net/there/it/is/../../tes t case=/%TESTNUMBER0002? yes no +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 0 + - -HTTP/1.1 200 OK -Location: this should be ignored -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 5 - + +HTTP/1.1 200 OK +Location: this should be ignored +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 5 + body - -HTTP/1.1 302 OK -Location: http://example.net/there/it/is/../../tes t case=/%TESTNUMBER0002? yes no -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 0 - -HTTP/1.1 200 OK -Location: this should be ignored -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 5 - + +HTTP/1.1 302 OK +Location: http://example.net/there/it/is/../../tes t case=/%TESTNUMBER0002? yes no +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 0 + +HTTP/1.1 200 OK +Location: this should be ignored +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 5 + body @@ -64,19 +64,19 @@ proxy # # Verify data after the test has been "shot" - -GET http://example.com/gimme/%TESTNUMBER?foobar HTTP/1.1 -Host: example.com -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://example.net/there/tes%20t%20case=/%TESTNUMBER0002?+yes+no HTTP/1.1 -Host: example.net -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://example.com/gimme/%TESTNUMBER?foobar HTTP/1.1 +Host: example.com +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://example.net/there/tes%20t%20case=/%TESTNUMBER0002?+yes+no HTTP/1.1 +Host: example.net +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test666 b/tests/data/test666 index ecb35ec37221..9c95556a5f20 100644 --- a/tests/data/test666 +++ b/tests/data/test666 @@ -11,20 +11,20 @@ MIME # # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 3 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 3 + OK - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake -Content-Length: 3 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake +Content-Length: 3 + OK @@ -58,17 +58,17 @@ s/^--------------------------[A-Za-z0-9]*/------------------------------/ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/ -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 17237 -Content-Type: multipart/form-data; boundary=---------------------------- - ------------------------------- -Content-Disposition: form-data; name="upfile"; filename="myfile.txt" -Content-Type: text/plain -Content-Transfer-Encoding: binary - +POST /%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +Accept: */*%CR +Content-Length: 17237%CR +Content-Type: multipart/form-data; boundary=----------------------------%CR +%CR +------------------------------%CR +Content-Disposition: form-data; name="upfile"; filename="myfile.txt"%CR +Content-Type: text/plain%CR +Content-Transfer-Encoding: binary%CR +%CR ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWX ZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVW YZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUV @@ -289,8 +289,8 @@ STUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOP RSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNO QRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMN PQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLM -OPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUV --------------------------------- +OPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUV%CR +--------------------------------%CR diff --git a/tests/data/test667 b/tests/data/test667 index e7298094d010..55d6214717a7 100644 --- a/tests/data/test667 +++ b/tests/data/test667 @@ -10,22 +10,22 @@ HTTP MIME POST # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello @@ -61,28 +61,28 @@ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------- # Note that the stripping above removes 12 bytes from every occurrence of the # boundary string and since 5 of them are in the body contents, we see # (5*12) == 60 bytes less - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Transfer-Encoding: chunked -Content-Type: multipart/form-data; boundary=---------------------------- -Expect: 100-continue - -85 ------------------------------- -Content-Disposition: form-data; name="field" -Content-Transfer-Encoding: base64 - - -4 -ZHVt -3a -bXk= --------------------------------- - -0 - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Transfer-Encoding: chunked +Content-Type: multipart/form-data; boundary=---------------------------- +Expect: 100-continue + +85 +------------------------------ +Content-Disposition: form-data; name="field" +Content-Transfer-Encoding: base64 + + +4 +ZHVt +3a +bXk= +-------------------------------- + +0 + diff --git a/tests/data/test668 b/tests/data/test668 index e71475b682f3..34d649572dbb 100644 --- a/tests/data/test668 +++ b/tests/data/test668 @@ -10,22 +10,22 @@ HTTP MIME POST # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:4f:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:4f:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:4f:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:4f:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello @@ -65,38 +65,38 @@ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------- # boundary string and since 5 of them are in the body contents, we see # (5*12) == 60 bytes less -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Transfer-Encoding: chunked -Content-Type: multipart/form-data; boundary=---------------------------- -Expect: 100-continue - -cd ------------------------------- -Content-Disposition: form-data; name="field1" - -dummy ------------------------------- -Content-Disposition: form-data; name="field2" - - -5 -dummy -97 - ------------------------------- -Content-Disposition: form-data; name="field3"; filename="file%TESTNUMBER.txt" -Content-Type: text/plain - - -4f +POST /%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +Accept: */*%CR +Transfer-Encoding: chunked%CR +Content-Type: multipart/form-data; boundary=----------------------------%CR +Expect: 100-continue%CR +%CR +cd%CR +------------------------------%CR +Content-Disposition: form-data; name="field1"%CR +%CR +dummy%CR +------------------------------%CR +Content-Disposition: form-data; name="field2"%CR +%CR +%CR +5%CR +dummy%CR +97%CR +%CR +------------------------------%CR +Content-Disposition: form-data; name="field3"; filename="file%TESTNUMBER.txt"%CR +Content-Type: text/plain%CR +%CR +%CR +4f%CR This is data from a file - --------------------------------- - -0 - +%CR +--------------------------------%CR +%CR +0%CR +%CR diff --git a/tests/data/test669 b/tests/data/test669 index 620aa3393d5d..8bc19f15bfcb 100644 --- a/tests/data/test669 +++ b/tests/data/test669 @@ -41,23 +41,23 @@ http://%HOSTIP:%HTTPPORT/we/want/%TESTNUMBER -H 'Content-type: multipart/form-da s/^--------------------------[A-Za-z0-9]*/------------------------------/ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/ - -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 260 -Content-Type: multipart/form-data; charset=utf-8; boundary=---------------------------- - ------------------------------- -Content-Disposition: form-data; name="name" - -daniel ------------------------------- -Content-Disposition: form-data; name="tool" - -curl --------------------------------- + +POST /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 260 +Content-Type: multipart/form-data; charset=utf-8; boundary=---------------------------- + +------------------------------ +Content-Disposition: form-data; name="name" + +daniel +------------------------------ +Content-Disposition: form-data; name="tool" + +curl +-------------------------------- diff --git a/tests/data/test67 b/tests/data/test67 index b2790099dd6a..0e2e32643e46 100644 --- a/tests/data/test67 +++ b/tests/data/test67 @@ -15,39 +15,39 @@ NTLM This is supposed to be returned when the server gets a first Authorization: NTLM line passed-in from the client --> - -HTTP/1.1 401 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + This is not the real page either! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine in server land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - -HTTP/1.1 200 Things are fine in server land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + +HTTP/1.1 200 Things are fine in server land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! @@ -73,19 +73,19 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --ntlm # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test670 b/tests/data/test670 index 94910b5362b7..2f16c9d5b093 100644 --- a/tests/data/test670 +++ b/tests/data/test670 @@ -10,22 +10,22 @@ MIME # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello @@ -58,18 +58,18 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER s/^--------------------------[A-Za-z0-9]*/------------------------------/ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/ - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 154 -Content-Type: multipart/form-data; boundary=---------------------------- - ------------------------------- -Content-Disposition: form-data; name="field" - -AB --------------------------------- + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 154 +Content-Type: multipart/form-data; boundary=---------------------------- + +------------------------------ +Content-Disposition: form-data; name="field" + +AB +-------------------------------- diff --git a/tests/data/test671 b/tests/data/test671 index 310a902b147b..0c5f3c474621 100644 --- a/tests/data/test671 +++ b/tests/data/test671 @@ -10,22 +10,22 @@ MIME # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello @@ -58,18 +58,18 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER s/^--------------------------[A-Za-z0-9]*/------------------------------/ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/ - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 154 -Content-Type: multipart/form-data; boundary=---------------------------- - ------------------------------- -Content-Disposition: form-data; name="field" - -AB --------------------------------- + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 154 +Content-Type: multipart/form-data; boundary=---------------------------- + +------------------------------ +Content-Disposition: form-data; name="field" + +AB +-------------------------------- diff --git a/tests/data/test672 b/tests/data/test672 index e295b2f07b5b..96b1066d212c 100644 --- a/tests/data/test672 +++ b/tests/data/test672 @@ -10,22 +10,22 @@ FORM # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello @@ -58,18 +58,18 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER s/^--------------------------[A-Za-z0-9]*/------------------------------/ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/ - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 154 -Content-Type: multipart/form-data; boundary=---------------------------- - ------------------------------- -Content-Disposition: form-data; name="field" - -AB --------------------------------- + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 154 +Content-Type: multipart/form-data; boundary=---------------------------- + +------------------------------ +Content-Disposition: form-data; name="field" + +AB +-------------------------------- diff --git a/tests/data/test673 b/tests/data/test673 index e4db3cf83a01..029e0bbdfe7d 100644 --- a/tests/data/test673 +++ b/tests/data/test673 @@ -10,22 +10,22 @@ FORM # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Server: test-server/fake swsclose -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Server: test-server/fake swsclose +Connection: close +Content-Type: text/html + hello @@ -58,18 +58,18 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER s/^--------------------------[A-Za-z0-9]*/------------------------------/ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/ - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 154 -Content-Type: multipart/form-data; boundary=---------------------------- - ------------------------------- -Content-Disposition: form-data; name="field" - -AB --------------------------------- + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 154 +Content-Type: multipart/form-data; boundary=---------------------------- + +------------------------------ +Content-Disposition: form-data; name="field" + +AB +-------------------------------- diff --git a/tests/data/test674 b/tests/data/test674 index 2043b3d4ae11..2cd2f0a0bda5 100644 --- a/tests/data/test674 +++ b/tests/data/test674 @@ -39,15 +39,15 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* + diff --git a/tests/data/test675 b/tests/data/test675 index 6688cacc940d..dca8a6b7c403 100644 --- a/tests/data/test675 +++ b/tests/data/test675 @@ -8,12 +8,12 @@ HTTP Basic auth # Server-side - -HTTP/1.1 200 OK swsclose -Date: Thu, 09 Nov 2010 14:49:00 GMT -Content-Type: text/html -Content-Length: 26 - + +HTTP/1.1 200 OK swsclose +Date: Thu, 09 Nov 2010 14:49:00 GMT +Content-Type: text/html +Content-Length: 26 + the content would go here @@ -37,19 +37,19 @@ proxy # Verify data after the test has been "shot" - -GET /user1/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[user1:foo1]b64% -User-Agent: curl/%VERSION -Accept: */* - -GET /user2/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[user2:foo2]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /user1/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[user1:foo1]b64% +User-Agent: curl/%VERSION +Accept: */* + +GET /user2/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[user2:foo2]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test676 b/tests/data/test676 index 031395eb8e29..c08ab29b7be2 100644 --- a/tests/data/test676 +++ b/tests/data/test676 @@ -12,31 +12,31 @@ curl_easy_reset # # Server-side - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 +Connection: close +Content-Type: text/html + -foo- # since the request runs twice - -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 -Connection: close -Content-Type: text/html - + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 +Connection: close +Content-Type: text/html + -foo- -HTTP/1.1 200 OK -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Length: 6 -Connection: close -Content-Type: text/html - +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 6 +Connection: close +Content-Type: text/html + -foo- @@ -69,18 +69,18 @@ cookies # # Verify data after the test has been "shot" - -GET /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: the-moo agent next generation -Accept: */* -Cookie: proven=yes - -GET /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: the-moo agent next generation -Accept: */* - + +GET /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: the-moo agent next generation +Accept: */* +Cookie: proven=yes + +GET /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: the-moo agent next generation +Accept: */* + diff --git a/tests/data/test677 b/tests/data/test677 index 166be89543fe..29f5af5d5c6a 100644 --- a/tests/data/test677 +++ b/tests/data/test677 @@ -35,9 +35,9 @@ imap://%HOSTIP:%IMAPPORT/677 # # Verify data after the test has been "shot" - -A001 CAPABILITY -A1 IDLE + +A001 CAPABILITY +A1 IDLE diff --git a/tests/data/test678 b/tests/data/test678 index ea91ae6aecd4..48b65076b0a2 100644 --- a/tests/data/test678 +++ b/tests/data/test678 @@ -48,12 +48,12 @@ https://localhost:%HTTPSPORT/%TESTNUMBER %CERTDIR/certs/test-ca.crt # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: localhost:%HTTPSPORT -User-Agent: CURLOPT_CAINFO_BLOB -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: localhost:%HTTPSPORT +User-Agent: CURLOPT_CAINFO_BLOB +Accept: */* + diff --git a/tests/data/test679 b/tests/data/test679 index e57401be46d3..59dfab61355d 100644 --- a/tests/data/test679 +++ b/tests/data/test679 @@ -44,13 +44,13 @@ machine %HOSTIP login user1 password "with spaces and \"\n\r\t\a" # # Verify data after the test has been "shot" - -GET / HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[user1:with%20spaces%20and%20"%0a%0d%09a]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET / HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[user1:with%20spaces%20and%20"%0a%0d%09a]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test68 b/tests/data/test68 index b6d8f67cb5bf..e206dc1438c3 100644 --- a/tests/data/test68 +++ b/tests/data/test68 @@ -12,41 +12,41 @@ NTLM # This is supposed to be returned when the server gets a first # Authorization: NTLM line passed-in from the client - -HTTP/1.1 401 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Length: 34 -Content-Type: text/html; charset=iso-8859-1 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Length: 34 +Content-Type: text/html; charset=iso-8859-1 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + This is not the real page either! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 401 You give me wrong password -Server: Microsoft-IIS/5.0 -WWW-Authenticate: NTLM -Content-Length: 46 -Content-Type: text/html; charset=iso-8859-1 - + +HTTP/1.1 401 You give me wrong password +Server: Microsoft-IIS/5.0 +WWW-Authenticate: NTLM +Content-Length: 46 +Content-Type: text/html; charset=iso-8859-1 + Wrong password dude. Get it fixed and return. - -HTTP/1.1 401 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Length: 34 -Content-Type: text/html; charset=iso-8859-1 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - -HTTP/1.1 401 You give me wrong password -Server: Microsoft-IIS/5.0 -WWW-Authenticate: NTLM -Content-Length: 46 -Content-Type: text/html; charset=iso-8859-1 - + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Length: 34 +Content-Type: text/html; charset=iso-8859-1 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + +HTTP/1.1 401 You give me wrong password +Server: Microsoft-IIS/5.0 +WWW-Authenticate: NTLM +Content-Length: 46 +Content-Type: text/html; charset=iso-8859-1 + Wrong password dude. Get it fixed and return. @@ -72,19 +72,19 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --ntlm # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test681 b/tests/data/test681 index d98393ddbfae..e08997f8f618 100644 --- a/tests/data/test681 +++ b/tests/data/test681 @@ -37,12 +37,12 @@ http # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + -foo- diff --git a/tests/data/test682 b/tests/data/test682 index fc2189918525..3b0709d46048 100644 --- a/tests/data/test682 +++ b/tests/data/test682 @@ -41,13 +41,13 @@ machine %HOSTIP login user2 password passwd2 # # Verify data after the test has been "shot" - -GET / HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[user1:passwd1]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET / HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[user1:passwd1]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test683 b/tests/data/test683 index 9eb250fbd7c1..580cddb2ee5f 100644 --- a/tests/data/test683 +++ b/tests/data/test683 @@ -41,13 +41,13 @@ machine %HOSTIP login user2 password passwd2 # # Verify data after the test has been "shot" - -GET / HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[user2:passwd2]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET / HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[user2:passwd2]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test684 b/tests/data/test684 index a63424e2509c..87af6569b693 100644 --- a/tests/data/test684 +++ b/tests/data/test684 @@ -40,13 +40,13 @@ machine %HOSTIP password 5up3r53cr37 # # Verify data after the test has been "shot" - -GET / HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[:5up3r53cr37]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET / HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[:5up3r53cr37]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test685 b/tests/data/test685 index bdb2124b4b00..c6aeb921ab3a 100644 --- a/tests/data/test685 +++ b/tests/data/test685 @@ -40,13 +40,13 @@ machine %HOSTIP password 5up3r53cr37 # # Verify data after the test has been "shot" - + +GET / HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[user:5up3r53cr37]b64% +User-Agent: curl/%VERSION +Accept: */* + -GET / HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[user:5up3r53cr37]b64% -User-Agent: curl/%VERSION -Accept: */* - diff --git a/tests/data/test687 b/tests/data/test687 index 28b8bee7eab7..124b7a44ddf8 100644 --- a/tests/data/test687 +++ b/tests/data/test687 @@ -47,12 +47,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --xattr -o %LOGDIR/out%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + user.creator => curl diff --git a/tests/data/test688 b/tests/data/test688 index 6fbd339fc007..939751541120 100644 --- a/tests/data/test688 +++ b/tests/data/test688 @@ -47,12 +47,12 @@ basic --xattr with -O # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + user.creator => curl diff --git a/tests/data/test689 b/tests/data/test689 index 31f81983d104..a0bc35b1d70e 100644 --- a/tests/data/test689 +++ b/tests/data/test689 @@ -11,9 +11,9 @@ OPTIONS # Server-side -RTSP/1.0 786 +RTSP/1.0 786%repeat[10 x ]% -RTSP/ +RTSP/%repeat[10 x ]% @@ -37,12 +37,12 @@ rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER - -OPTIONS rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER RTSP/1.0 -CSeq: 1 -User-Agent: test567 -Test-Number: 567 - + +OPTIONS rtsp://%HOSTIP:%RTSPPORT/%TESTNUMBER RTSP/1.0 +CSeq: 1 +User-Agent: test567 +Test-Number: 567 + # 85 == CURLE_RTSP_CSEQ_ERROR diff --git a/tests/data/test69 b/tests/data/test69 index 1df70f3d9c96..2a0fa5796b79 100644 --- a/tests/data/test69 +++ b/tests/data/test69 @@ -9,61 +9,61 @@ NTLM # Server-side - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Basic -WWW-Authenticate: Wild-and-crazy -WWW-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Basic +WWW-Authenticate: Wild-and-crazy +WWW-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # This is supposed to be returned when the server gets a first # Authorization: NTLM line passed-in from the client - -HTTP/1.1 401 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Length: 34 -Content-Type: text/html; charset=iso-8859-1 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Length: 34 +Content-Type: text/html; charset=iso-8859-1 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + This is not the real page either! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine in server land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Basic -WWW-Authenticate: Wild-and-crazy -WWW-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 401 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Length: 34 -Content-Type: text/html; charset=iso-8859-1 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - -HTTP/1.1 200 Things are fine in server land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Basic +WWW-Authenticate: Wild-and-crazy +WWW-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Length: 34 +Content-Type: text/html; charset=iso-8859-1 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + +HTTP/1.1 200 Things are fine in server land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! @@ -89,24 +89,24 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --anyauth # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test690 b/tests/data/test690 index 6f333381c0e8..3d960b02975a 100644 --- a/tests/data/test690 +++ b/tests/data/test690 @@ -9,7 +9,7 @@ HTTP GET # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -42,14 +42,14 @@ http://%HOSTIP:%HTTPPORT/ -O --output-dir %LOGDIR # # Verify data after the test has been "shot" - + GET / HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION Accept: */* - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test691 b/tests/data/test691 index b8a9a08af3ae..7f5ddfffa811 100644 --- a/tests/data/test691 +++ b/tests/data/test691 @@ -9,7 +9,7 @@ HTTP GET # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -42,14 +42,14 @@ http://%HOSTIP:%HTTPPORT/path/to/here/ -O --output-dir %LOGDIR # # Verify data after the test has been "shot" - + GET /path/to/here/ HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION Accept: */* - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test692 b/tests/data/test692 index e3e49a018532..d287e95f2236 100644 --- a/tests/data/test692 +++ b/tests/data/test692 @@ -9,7 +9,7 @@ HTTP GET # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -42,14 +42,14 @@ http://%HOSTIP:%HTTPPORT/ -JO --output-dir %LOGDIR # # Verify data after the test has been "shot" - + GET / HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION Accept: */* - + -foo- diff --git a/tests/data/test693 b/tests/data/test693 index d7bd193ac2c8..f5454646d3ef 100644 --- a/tests/data/test693 +++ b/tests/data/test693 @@ -9,24 +9,24 @@ etag # # Server-side - -HTTP/1.1 200 funky chunky! -Server: fakeit/0.9 fakeitbad/1.0 -Transfer-Encoding: chunked -Trailer: chunky-trailer -Connection: mooo -ETag: W/"asdf" - -40 -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -30 -bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb -21;heresatest=moooo + +HTTP/1.1 200 funky chunky! +Server: fakeit/0.9 fakeitbad/1.0 +Transfer-Encoding: chunked +Trailer: chunky-trailer +Connection: mooo +ETag: W/"asdf" + +40 +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +30 +bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb +21;heresatest=moooo cccccccccccccccccccccccccccccccc - -0 -chunky-trailer: header data - + +0 +chunky-trailer: header data + @@ -47,12 +47,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --etag-save %LOGDIR/moo/boo/etag%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + W/"asdf" diff --git a/tests/data/test694 b/tests/data/test694 index bdb3e0440df7..64a0b10b7841 100644 --- a/tests/data/test694 +++ b/tests/data/test694 @@ -12,69 +12,69 @@ NTLM # Server-side - -HTTP/1.1 401 Authorization Required -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Negotiate -WWW-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Negotiate +WWW-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # this is returned first since we get no proxy-auth - -HTTP/1.1 401 Authorization Required -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Content-Length: 34 - + +HTTP/1.1 401 Authorization Required +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Content-Length: 34 + Hey you, authenticate or go away! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 42 - + +HTTP/1.1 200 Things are fine +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 42 + Contents of that page you requested, sir. # This is supposed to be returned when the server gets the second # request. - -HTTP/1.1 200 Things are fine -Content-Type: yeah/maybe -Content-Length: 42 - + +HTTP/1.1 200 Things are fine +Content-Type: yeah/maybe +Content-Length: 42 + Contents of that second request. Differn. - -HTTP/1.1 401 Authorization Required -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Negotiate -WWW-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 401 Authorization Required -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== -Content-Length: 34 - -HTTP/1.1 200 Things are fine -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 42 - + +HTTP/1.1 401 Authorization Required +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Negotiate +WWW-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 401 Authorization Required +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +Content-Length: 34 + +HTTP/1.1 200 Things are fine +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 42 + Contents of that page you requested, sir. -HTTP/1.1 200 Things are fine -Content-Type: yeah/maybe -Content-Length: 42 - +HTTP/1.1 200 Things are fine +Content-Type: yeah/maybe +Content-Length: 42 + Contents of that second request. Differn. @@ -103,7 +103,7 @@ http://%HOSTIP:%HTTPPORT/path/mine http://%HOSTIP:%HTTPPORT/path/%TESTNUMBER0010 # Verify data after the test has been "shot" - + GET /path/mine HTTP/1.1 Host: %HOSTIP:%HTTPPORT Accept: */* diff --git a/tests/data/test695 b/tests/data/test695 index 8910af077539..90bd0ede7826 100644 --- a/tests/data/test695 +++ b/tests/data/test695 @@ -42,37 +42,37 @@ http://%HOSTIP:%HTTPPORT/we/want/%TESTNUMBER s/^--------------------------[A-Za-z0-9]*/------------------------------/ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/ - -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 196 -Content-Type: multipart/form-data; boundary=---------------------------- - ------------------------------- -Content-Disposition: form-data; name="data" -Content-Type: text/html - -hello --------------------------------- -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 423 -Content-Type: multipart/form-data; boundary=---------------------------- - ------------------------------- -Content-Disposition: form-data -Content-Type: multipart/mixed; boundary=---------------------------- - ------------------------------- -Content-Disposition: attachment; name="data" -Content-Type: text/html - -hello --------------------------------- - --------------------------------- + +POST /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 196 +Content-Type: multipart/form-data; boundary=---------------------------- + +------------------------------ +Content-Disposition: form-data; name="data" +Content-Type: text/html + +hello +-------------------------------- +POST /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 423 +Content-Type: multipart/form-data; boundary=---------------------------- + +------------------------------ +Content-Disposition: form-data +Content-Type: multipart/mixed; boundary=---------------------------- + +------------------------------ +Content-Disposition: attachment; name="data" +Content-Type: text/html + +hello +-------------------------------- + +-------------------------------- diff --git a/tests/data/test696 b/tests/data/test696 index 2b53c4fc9873..0afaa1777569 100644 --- a/tests/data/test696 +++ b/tests/data/test696 @@ -7,13 +7,13 @@ HTTP GET - -HTTP/1.1 200 OK swsclose -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -Content-Length: 6 -Connection: close - + +HTTP/1.1 200 OK swsclose +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +Content-Length: 6 +Connection: close + -foo- @@ -38,29 +38,29 @@ http://%HOSTIP:%HTTPPORT # # Verify data after the test has been "shot" - -HTTP/1.1 200 OK swsclose -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -Content-Length: 6 -Connection: close - + +HTTP/1.1 200 OK swsclose +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +Content-Length: 6 +Connection: close + -foo- -HTTP/1.1 200 OK swsclose -Server: test-server/fake -Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT -Content-Length: 6 -Connection: close - +HTTP/1.1 200 OK swsclose +Server: test-server/fake +Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT +Content-Length: 6 +Connection: close + -foo- - -GET /556 HTTP/1.1 -Host: ninja - -GET /556 HTTP/1.1 -Host: ninja - + +GET /%TESTNUMBER HTTP/1.1 +Host: ninja + +GET /%TESTNUMBER HTTP/1.1 +Host: ninja + diff --git a/tests/data/test698 b/tests/data/test698 index 10cf42cea941..3335e3875d6f 100644 --- a/tests/data/test698 +++ b/tests/data/test698 @@ -37,19 +37,19 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER --ftp-account "one count" ftp://%HOSTIP:%FTPP # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -ACCT one count -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -EPSV -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +ACCT one count +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +EPSV +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test699 b/tests/data/test699 index 9725a8dcaeb9..a79911bf3ae3 100644 --- a/tests/data/test699 +++ b/tests/data/test699 @@ -9,7 +9,7 @@ HTTP # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -45,7 +45,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -K %LOGDIR/cmd # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT Authorization: Basic %b64[hej:you]b64% diff --git a/tests/data/test7 b/tests/data/test7 index e98d5f5b1b59..e299d5be2c24 100644 --- a/tests/data/test7 +++ b/tests/data/test7 @@ -38,12 +38,12 @@ http://%HOSTIP:%HTTPPORT/we/want/%TESTNUMBER -b none -D %LOGDIR/heads%TESTNUMBER # Verify data after the test has been "shot" - -GET /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + HTTP/1.1 200 OK diff --git a/tests/data/test70 b/tests/data/test70 index 5d44a28e85cf..e462382a23cd 100644 --- a/tests/data/test70 +++ b/tests/data/test70 @@ -9,41 +9,41 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 Authorization Required -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604199" -WWW-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604199" +WWW-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 200 OK -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 200 OK +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! - -HTTP/1.1 401 Authorization Required -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604199" -WWW-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 200 OK -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 401 Authorization Required +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604199" +WWW-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 200 OK +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! @@ -69,18 +69,18 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --anyauth # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="1053604199", uri="/%TESTNUMBER", response="2c9a6f00af0d86497b177b90e90c688a" -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="1053604199", uri="/%TESTNUMBER", response="2c9a6f00af0d86497b177b90e90c688a" +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test700 b/tests/data/test700 index fb59098354c0..57ee2f51df49 100644 --- a/tests/data/test700 +++ b/tests/data/test700 @@ -47,12 +47,12 @@ HTTP GET via SOCKS4 proxy # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test701 b/tests/data/test701 index b7a9091a98d9..34c14a1f9024 100644 --- a/tests/data/test701 +++ b/tests/data/test701 @@ -47,12 +47,12 @@ HTTP GET via SOCKS5 proxy # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test706 b/tests/data/test706 index faafd903850d..ff57dcefc62c 100644 --- a/tests/data/test706 +++ b/tests/data/test706 @@ -47,14 +47,14 @@ FTP dir list PASV via SOCKS4 # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test707 b/tests/data/test707 index 2c41dfea70d2..3e411ce7acc5 100644 --- a/tests/data/test707 +++ b/tests/data/test707 @@ -47,14 +47,14 @@ FTP dir list PASV via SOCKS5 # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE A -LIST -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE A +LIST +QUIT diff --git a/tests/data/test708 b/tests/data/test708 index d6797dc65f3a..6724f8f861b9 100644 --- a/tests/data/test708 +++ b/tests/data/test708 @@ -50,12 +50,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test709 b/tests/data/test709 index 2b2b952c18dd..b339d877a9c7 100644 --- a/tests/data/test709 +++ b/tests/data/test709 @@ -51,12 +51,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test71 b/tests/data/test71 index f47879a3f738..35358fe91681 100644 --- a/tests/data/test71 +++ b/tests/data/test71 @@ -53,29 +53,29 @@ bar ^(Content-Type: multipart/form-data;|------------).* -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 432 -Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763 - -------------------------------9ef8d6205763 -Content-Disposition: form-data; name="name" - -daniel -------------------------------9ef8d6205763 -Content-Disposition: form-data; name="tool" - -curl -------------------------------9ef8d6205763 -Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt" -Content-Type: text/plain - +POST /we/want/%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +Accept: */*%CR +Content-Length: 432%CR +Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763%CR +%CR +------------------------------9ef8d6205763%CR +Content-Disposition: form-data; name="name"%CR +%CR +daniel%CR +------------------------------9ef8d6205763%CR +Content-Disposition: form-data; name="tool"%CR +%CR +curl%CR +------------------------------9ef8d6205763%CR +Content-Disposition: form-data; name="file"; filename="test%TESTNUMBER.txt"%CR +Content-Type: text/plain%CR +%CR foo- This is a moo- bar - -------------------------------9ef8d6205763-- +%CR +------------------------------9ef8d6205763--%CR diff --git a/tests/data/test710 b/tests/data/test710 index 02033831b68b..3530d6d9b0c0 100644 --- a/tests/data/test710 +++ b/tests/data/test710 @@ -47,12 +47,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --proxy socks5://%HOSTIP:%SOCKSPORT # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test711 b/tests/data/test711 index 355ca0e51efe..9317adb8b89e 100644 --- a/tests/data/test711 +++ b/tests/data/test711 @@ -43,15 +43,15 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test712 b/tests/data/test712 index 7bcc2a1bbb40..e78767bc56aa 100644 --- a/tests/data/test712 +++ b/tests/data/test712 @@ -37,15 +37,15 @@ ftp://%HOSTIP:%FTPPORT/%TESTNUMBER --proxy socks5://%HOSTIP:%SOCKSPORT # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test713 b/tests/data/test713 index 44820a78ffc7..b7ad8cdf0e9f 100644 --- a/tests/data/test713 +++ b/tests/data/test713 @@ -38,15 +38,15 @@ ftp://ftp.example.com/%TESTNUMBER --connect-to ::%HOSTIP:%FTPPORT --proxy socks5 # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test714 b/tests/data/test714 index a38400bb8098..b24af1e4af9a 100644 --- a/tests/data/test714 +++ b/tests/data/test714 @@ -57,15 +57,15 @@ ftp://ftp.example.com.%TESTNUMBER/%TESTNUMBER --connect-to ::connect.example.com # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test715 b/tests/data/test715 index 6f9670af54d7..0574030330fb 100644 --- a/tests/data/test715 +++ b/tests/data/test715 @@ -59,15 +59,15 @@ ftp://ftp.example.com.%TESTNUMBER/%TESTNUMBER --connect-to ::connect.example.com # # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE %TESTNUMBER -RETR %TESTNUMBER -QUIT + +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE %TESTNUMBER +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test717 b/tests/data/test717 index 54ab95568028..ca377a4bceba 100644 --- a/tests/data/test717 +++ b/tests/data/test717 @@ -55,12 +55,12 @@ proxy # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:1 -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:1 +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test718 b/tests/data/test718 index dcbf7d77a15c..ae061d848886 100644 --- a/tests/data/test718 +++ b/tests/data/test718 @@ -14,16 +14,16 @@ HTTP proxy Digest auth # this is returned first since we get no proxy-auth - -HTTP/1.1 407 Authorization Required to proxy me swsclose -Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" - + +HTTP/1.1 407 Authorization Required to proxy me swsclose +Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" + - -HTTP/1.1 407 Authorization Required to proxy me swsclose -Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" - + +HTTP/1.1 407 Authorization Required to proxy me swsclose +Proxy-Authenticate: Digest realm="weirdorealm", nonce="12345" + @@ -47,12 +47,12 @@ http://test.remote.haxx.se.%TESTNUMBER:8990/path/%TESTNUMBER0002 --proxy http:// # Verify data after the test has been "shot" - -CONNECT test.remote.haxx.se.%TESTNUMBER:8990 HTTP/1.1 -Host: test.remote.haxx.se.%TESTNUMBER:8990 -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT test.remote.haxx.se.%TESTNUMBER:8990 HTTP/1.1 +Host: test.remote.haxx.se.%TESTNUMBER:8990 +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + 56 diff --git a/tests/data/test719 b/tests/data/test719 index 454460983de2..51ae33762110 100644 --- a/tests/data/test719 +++ b/tests/data/test719 @@ -49,12 +49,12 @@ http://[2200::33]:%HTTPPORT/%TESTNUMBER --proxy socks5h://%HOSTIP:%SOCKSPORT # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: [2200::33]:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: [2200::33]:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + atyp 4 => 22 00 00 00 00 00 00 00 00 00 00 00 00 00 00 33 diff --git a/tests/data/test72 b/tests/data/test72 index 775642f8cd0f..090720bdfddb 100644 --- a/tests/data/test72 +++ b/tests/data/test72 @@ -8,41 +8,41 @@ HTTP Digest auth # Server-side - -HTTP/1.1 401 Authorization Required -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Basic realm="foothis" -WWW-Authenticate: Digest realm="testrealm", nonce="1053604199" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Basic realm="foothis" +WWW-Authenticate: Digest realm="testrealm", nonce="1053604199" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 200 OK -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 200 OK +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! - -HTTP/1.1 401 Authorization Required -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Basic realm="foothis" -WWW-Authenticate: Digest realm="testrealm", nonce="1053604199" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 200 OK -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 23 - + +HTTP/1.1 401 Authorization Required +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Basic realm="foothis" +WWW-Authenticate: Digest realm="testrealm", nonce="1053604199" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 200 OK +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 23 + This IS the real page! @@ -68,18 +68,18 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --anyauth # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="1053604199", uri="/%TESTNUMBER", response="9fcd1330377365a09bbcb33b2cbb25bd" -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="1053604199", uri="/%TESTNUMBER", response="9fcd1330377365a09bbcb33b2cbb25bd" +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test720 b/tests/data/test720 index 709656a28063..0495d682b512 100644 --- a/tests/data/test720 +++ b/tests/data/test720 @@ -48,12 +48,12 @@ http://12.34.56.78:%HTTPPORT/%TESTNUMBER --proxy socks5h://%HOSTIP:%SOCKSPORT # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: 12.34.56.78:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: 12.34.56.78:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + atyp 1 => 12.34.56.78 diff --git a/tests/data/test721 b/tests/data/test721 index db63a8f6b523..23878f5b2f59 100644 --- a/tests/data/test721 +++ b/tests/data/test721 @@ -48,12 +48,12 @@ http://this.is.a.host.name:%HTTPPORT/%TESTNUMBER --proxy socks5h://%HOSTIP:%SOCK # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: this.is.a.host.name:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: this.is.a.host.name:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + atyp 3 => this.is.a.host.name diff --git a/tests/data/test722 b/tests/data/test722 index bff6c33e9392..44691f94c693 100644 --- a/tests/data/test722 +++ b/tests/data/test722 @@ -44,7 +44,7 @@ IPFS # # Verify data after the test has been "shot" - + GET /ipfs/bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test724 b/tests/data/test724 index 85cf07d141e7..2de7c355e615 100644 --- a/tests/data/test724 +++ b/tests/data/test724 @@ -50,7 +50,7 @@ http://%HOSTIP:%HTTPPORT # # Verify data after the test has been "shot" - + GET /ipfs/bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test727 b/tests/data/test727 index 3f9a91e7d905..a12a09203927 100644 --- a/tests/data/test727 +++ b/tests/data/test727 @@ -44,7 +44,7 @@ IPNS # # Verify data after the test has been "shot" - + GET /ipns/bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test728 b/tests/data/test728 index 05bcf2883357..3be19113906a 100644 --- a/tests/data/test728 +++ b/tests/data/test728 @@ -44,7 +44,7 @@ SOCKS5h with HTTP redirect to hostname too long # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test73 b/tests/data/test73 index 1edcbdcb9017..7fe470df0afa 100644 --- a/tests/data/test73 +++ b/tests/data/test73 @@ -9,13 +9,13 @@ cookiejar # Server-side - -HTTP/1.1 200 OK swsclose -Date: Tue, 09 Nov 2010 14:49:00 GMT -Content-Type: text/html -Set-Cookie: IPCZQX01af0fca5c=000010008168c200d25dfc4b; path=/; domain=.NOT_DISCLOSED.se -Content-Length: 4 - + +HTTP/1.1 200 OK swsclose +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Type: text/html +Set-Cookie: IPCZQX01af0fca5c=000010008168c200d25dfc4b; path=/; domain=.NOT_DISCLOSED.se +Content-Length: 4 + boo @@ -38,12 +38,12 @@ cookies # Verify data after the test has been "shot" - -GET /we/want/%TESTNUMBER HTTP/1.1 -Host: host.NOT_DISCLOSED.se -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/%TESTNUMBER HTTP/1.1 +Host: host.NOT_DISCLOSED.se +User-Agent: curl/%VERSION +Accept: */* + # Netscape HTTP Cookie File diff --git a/tests/data/test730 b/tests/data/test730 index ba18888c33db..152974663238 100644 --- a/tests/data/test730 +++ b/tests/data/test730 @@ -44,7 +44,7 @@ IPFS arg gateway with path # # Verify data after the test has been "shot" - + GET /foo/bar/ipfs/bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test731 b/tests/data/test731 index a2e0ee8a635a..b3358baaa4cc 100644 --- a/tests/data/test731 +++ b/tests/data/test731 @@ -50,7 +50,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - + GET /%TESTNUMBER/ipfs/bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test732 b/tests/data/test732 index 3a4e0e81920d..f31e3802af13 100644 --- a/tests/data/test732 +++ b/tests/data/test732 @@ -44,7 +44,7 @@ IPFS with path # # Verify data after the test has been "shot" - + GET /ipfs/bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u/a/b HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test733 b/tests/data/test733 index e6a4693b1102..ffe058bf3486 100644 --- a/tests/data/test733 +++ b/tests/data/test733 @@ -44,7 +44,7 @@ IPFS with path and query args # # Verify data after the test has been "shot" - + GET /ipfs/bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u/a/b?foo=bar&aaa=bbb HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test734 b/tests/data/test734 index 1545551ad093..e8d40141a3d7 100644 --- a/tests/data/test734 +++ b/tests/data/test734 @@ -44,7 +44,7 @@ IPFS with path, query args and gateway with path # # Verify data after the test has been "shot" - + GET /some/path/ipfs/bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u/a/b?foo=bar&aaa=bbb HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test735 b/tests/data/test735 index 8d9fa156f0e2..d78c3cc99642 100644 --- a/tests/data/test735 +++ b/tests/data/test735 @@ -44,7 +44,7 @@ IPNS with path, query args and gateway with path # # Verify data after the test has been "shot" - + GET /some/path/ipns/fancy.tld/a/b?foo=bar&aaa=bbb HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test736 b/tests/data/test736 index b239b259fc71..dd8c7347b24a 100644 --- a/tests/data/test736 +++ b/tests/data/test736 @@ -50,7 +50,7 @@ http://%HOSTIP:%HTTPPORT # # Verify data after the test has been "shot" - + GET /ipfs/bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test737 b/tests/data/test737 index 0dc4b6882535..56859888d09b 100644 --- a/tests/data/test737 +++ b/tests/data/test737 @@ -50,7 +50,7 @@ http://%HOSTIP:%HTTPPORT # # Verify data after the test has been "shot" - + GET /ipfs/bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test74 b/tests/data/test74 index d9316f0e6791..0d10f20587d0 100644 --- a/tests/data/test74 +++ b/tests/data/test74 @@ -50,17 +50,17 @@ HTTP, urlglob {}-retrieval and -o #[num] usage # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + HTTP/1.0 200 OK diff --git a/tests/data/test740 b/tests/data/test740 index 599adece2bff..3c8108dcbd62 100644 --- a/tests/data/test740 +++ b/tests/data/test740 @@ -52,7 +52,7 @@ bar # # Verify data after the test has been "shot" - + GET /ipfs/bafybeidecnvkrygux6uoukouzps5ofkeevoqland7kopseiod6pzqvjg7u HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test742 b/tests/data/test742 index 34e284d18dab..4cffe4d33dc6 100644 --- a/tests/data/test742 +++ b/tests/data/test742 @@ -26,8 +26,8 @@ Funny-head: yesyes # method 2 is SOCKS5 asking for user+password method 2 -user aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -password bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb +user %repeat[255 x a]% +password %repeat[255 x b]% backendport %HTTPPORT @@ -45,7 +45,7 @@ SOCKS5-hostname with max length credentials and max host name length # target a port that won't work without the SOCKS magic -http://cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc:%HTTPPORT -x socks5h://aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb@%HOSTIP:%SOCKSPORT +http://%repeat[254 x c]%:%HTTPPORT -x socks5h://%repeat[255 x a]%:%repeat[255 x b]%@%HOSTIP:%SOCKSPORT proxy @@ -55,12 +55,12 @@ proxy # # Verify data after the test has been "shot" - -GET / HTTP/1.1 -Host: cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET / HTTP/1.1 +Host: %repeat[254 x c]%:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test743 b/tests/data/test743 index fa86a1388320..76e568da7e12 100644 --- a/tests/data/test743 +++ b/tests/data/test743 @@ -9,7 +9,7 @@ HTTP # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test744 b/tests/data/test744 index fbb1cf951677..a1d1a28ceebe 100644 --- a/tests/data/test744 +++ b/tests/data/test744 @@ -20,13 +20,13 @@ Content-Length: 9 contents - -HTTP/1.1 200 Mighty fine indeed - + +HTTP/1.1 200 Mighty fine indeed + -HTTP/1.1 200 Mighty fine indeed - +HTTP/1.1 200 Mighty fine indeed%CR +%CR HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake swsclose @@ -62,18 +62,18 @@ proxy # # Verify data after the test has been "shot" - -CONNECT foo.host:%HTTPPORT HTTP/1.0 -Host: foo.host:%HTTPPORT -Proxy-Connection: Keep-Alive - + +CONNECT foo.host:%HTTPPORT HTTP/1.0 +Host: foo.host:%HTTPPORT +Proxy-Connection: Keep-Alive + - -GET /%TESTNUMBER HTTP/1.1 -Host: foo.host:%HTTPPORT -Authorization: Basic %b64[foo:baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaar]b64% -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: foo.host:%HTTPPORT +Authorization: Basic %b64[foo:baaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaar]b64% +Accept: */* + diff --git a/tests/data/test747 b/tests/data/test747 index 4397c7741ce7..59b8033144ee 100644 --- a/tests/data/test747 +++ b/tests/data/test747 @@ -41,7 +41,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test749 b/tests/data/test749 index 68439f90cba1..efd9933914b7 100644 --- a/tests/data/test749 +++ b/tests/data/test749 @@ -13,13 +13,13 @@ proxytunnel # this is returned first since we get no proxy-auth - -HTTP/1.1 400 Bad request -Connection: close - + +HTTP/1.1 400 Bad request +Connection: close + - + HTTP/1.1 400 Bad request Connection: close @@ -44,7 +44,7 @@ http://test.example --proxy http://%HOSTIP:%HTTPPORT --proxytunnel -sS # Verify data after the test has been "shot" - + CONNECT test.example:80 HTTP/1.1 Host: test.example:80 User-Agent: curl/%VERSION diff --git a/tests/data/test750 b/tests/data/test750 index 7acc8d318180..963f373a7158 100644 --- a/tests/data/test750 +++ b/tests/data/test750 @@ -40,7 +40,7 @@ http://test.example --proxy http://%HOSTIP:%HTTPPORT --proxytunnel -sS # Verify data after the test has been "shot" - + CONNECT test.example:80 HTTP/1.1 Host: test.example:80 User-Agent: curl/%VERSION diff --git a/tests/data/test752 b/tests/data/test752 index 00f14909d125..28866bc31288 100644 --- a/tests/data/test752 +++ b/tests/data/test752 @@ -11,7 +11,7 @@ HTTP GET # # Server-side - + HTTP/1.1 404 nopes Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -26,7 +26,7 @@ Funny-head: yesyes -foo- - + HTTP/1.1 404 nopes Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -58,7 +58,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -f --retry 1 # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test753 b/tests/data/test753 index 3913567205f5..250a80c506fb 100644 --- a/tests/data/test753 +++ b/tests/data/test753 @@ -30,16 +30,16 @@ CURL_FTP_PWD_STOP=1 # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -USER anonymous -PASS ftp@example.com -PWD -EPSV -TYPE I -SIZE 753 -QUIT + +USER anonymous +PASS ftp@example.com +USER anonymous +PASS ftp@example.com +PWD +EPSV +TYPE I +SIZE 753 +QUIT diff --git a/tests/data/test754 b/tests/data/test754 index 42234bab225e..2aa1e9db0cd6 100644 --- a/tests/data/test754 +++ b/tests/data/test754 @@ -42,20 +42,20 @@ ftp://%HOSTIP:%FTPPORT/path/ -Q "NOOP 1" -Q "+NOOP 2" -Q "-NOOP 3" -Q "*FAIL" -Q # Verify data after the test has been "shot" - -USER anonymous -PASS ftp@example.com -PWD -NOOP 1 -FAIL -CWD path -EPSV -TYPE A -NOOP 2 -FAIL HARD -LIST -NOOP 3 -QUIT + +USER anonymous +PASS ftp@example.com +PWD +NOOP 1 +FAIL +CWD path +EPSV +TYPE A +NOOP 2 +FAIL HARD +LIST +NOOP 3 +QUIT diff --git a/tests/data/test755 b/tests/data/test755 index 0e0840be45a0..4f53105381cb 100644 --- a/tests/data/test755 +++ b/tests/data/test755 @@ -47,7 +47,7 @@ proxy # # Verify data after the test has been "shot" - + GET http://foo.host/%TESTNUMBER HTTP/1.1 Host: foo.host Authorization: Basic %b64[foo:alone-in-the-dark]b64% diff --git a/tests/data/test756 b/tests/data/test756 index a205c1977241..47c0f287185a 100644 --- a/tests/data/test756 +++ b/tests/data/test756 @@ -47,17 +47,17 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER http://%HOSTIP:%HTTPPORT/want/%TESTNUM # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /want/%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /want/%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + HTTP/1.1 200 OK diff --git a/tests/data/test757 b/tests/data/test757 index 9cf9b2c3b14b..c4f5566c1e31 100644 --- a/tests/data/test757 +++ b/tests/data/test757 @@ -42,37 +42,37 @@ http://%HOSTIP:%HTTPPORT/we/want/%TESTNUMBER s/^--------------------------[A-Za-z0-9]*/------------------------------/ s/boundary=------------------------[A-Za-z0-9]*/boundary=----------------------------/ - -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 200 -Content-Type: multipart/form-data; boundary=---------------------------- - ------------------------------- -Content-Disposition: form-data; name="data" -Content-Type: text/html - -fun-times --------------------------------- -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Accept: */* -Content-Length: 427 -Content-Type: multipart/form-data; boundary=---------------------------- - ------------------------------- -Content-Disposition: form-data -Content-Type: multipart/mixed; boundary=---------------------------- - ------------------------------- -Content-Disposition: attachment; name="data" -Content-Type: text/html - -fun-times --------------------------------- - --------------------------------- + +POST /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 200 +Content-Type: multipart/form-data; boundary=---------------------------- + +------------------------------ +Content-Disposition: form-data; name="data" +Content-Type: text/html + +fun-times +-------------------------------- +POST /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Accept: */* +Content-Length: 427 +Content-Type: multipart/form-data; boundary=---------------------------- + +------------------------------ +Content-Disposition: form-data +Content-Type: multipart/mixed; boundary=---------------------------- + +------------------------------ +Content-Disposition: attachment; name="data" +Content-Type: text/html + +fun-times +-------------------------------- + +-------------------------------- diff --git a/tests/data/test758 b/tests/data/test758 index a807ae9c85bb..a2b67e1c5d81 100644 --- a/tests/data/test758 +++ b/tests/data/test758 @@ -47,7 +47,5 @@ https://localhost:%HTTPSPORT/file%TESTNUMBER # Verify data after the test has been "shot" - - diff --git a/tests/data/test76 b/tests/data/test76 index 2300a38d0043..0870d5ba602c 100644 --- a/tests/data/test76 +++ b/tests/data/test76 @@ -9,7 +9,7 @@ NTLM # Server-side - + HTTP/1.1 401 Authorization Required swsclose Server: Apache/1.3.27 (Darwin) PHP/4.1.2 WWW-Authenticate: Basic, Wild-and-crazy, NTLM @@ -21,7 +21,7 @@ This is not the real page # This is supposed to be returned when the server gets a first # Authorization: NTLM line passed-in from the client - + HTTP/1.1 401 Now gimme that second request of crap Server: Microsoft-IIS/5.0 Content-Length: 34 @@ -33,7 +33,7 @@ This is not the real page either! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - + HTTP/1.1 200 Things are fine in server land swsclose Server: Microsoft-IIS/5.0 Content-Type: text/html; charset=iso-8859-1 @@ -42,7 +42,7 @@ Content-Length: 32 Finally, this is the real page! - + HTTP/1.1 401 Authorization Required swsclose Server: Apache/1.3.27 (Darwin) PHP/4.1.2 WWW-Authenticate: Basic, Wild-and-crazy, NTLM @@ -85,7 +85,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --anyauth # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test762 b/tests/data/test762 index 62ce9e632537..343145b654ee 100644 --- a/tests/data/test762 +++ b/tests/data/test762 @@ -38,12 +38,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -O --remote-time --output-dir %LOGDIR # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + 12345 diff --git a/tests/data/test766 b/tests/data/test766 index 9db96b7c0535..a65ad156b929 100644 --- a/tests/data/test766 +++ b/tests/data/test766 @@ -34,18 +34,18 @@ ftp://%HOSTIP:%FTPPORT/path/%TESTNUMBER # Strip off parts of the EPRT command that might differ -s/^EPRT \|1\|(.*)/EPRT \|1\|/ +s/^EPRT \|1\|(\S*)/EPRT \|1\|/ # The TYPE command might get sent so we ignore that ^TYPE - -USER anonymous -PASS ftp@example.com -PWD -CWD path + +USER anonymous +PASS ftp@example.com +PWD +CWD path EPRT |1| diff --git a/tests/data/test767 b/tests/data/test767 index 0927be4f1b3f..83d68841b010 100644 --- a/tests/data/test767 +++ b/tests/data/test767 @@ -9,7 +9,7 @@ HTTP GET # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -43,7 +43,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION @@ -51,7 +51,7 @@ Accept: */* -Allocations: 135 +Allocations: 120 Maximum allocated: 136000 diff --git a/tests/data/test768 b/tests/data/test768 index ced4353c30f4..cfa7ddd2a669 100644 --- a/tests/data/test768 +++ b/tests/data/test768 @@ -9,7 +9,7 @@ HTTP GET # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -43,7 +43,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test769 b/tests/data/test769 index 773d741e3fee..f74a9e67ef1d 100644 --- a/tests/data/test769 +++ b/tests/data/test769 @@ -9,14 +9,14 @@ HTTP GET # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT ETag: "21025-dc7-39462498" Accept-Ranges: bytes -Content-Length: 6 +Content-Length: 6%repeat[5 x ]% Connection: close Content-Type: text/html Funny-head: yesyes @@ -42,7 +42,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test77 b/tests/data/test77 index baa9bfc36074..beb8d904a008 100644 --- a/tests/data/test77 +++ b/tests/data/test77 @@ -42,13 +42,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -z "dec 12 12:00:00 1999 GMT" # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -If-Modified-Since: Sun, 12 Dec 1999 12:00:00 GMT - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +If-Modified-Since: Sun, 12 Dec 1999 12:00:00 GMT + diff --git a/tests/data/test770 b/tests/data/test770 index 98e3850c4c43..b4a5f83672b2 100644 --- a/tests/data/test770 +++ b/tests/data/test770 @@ -9,7 +9,7 @@ HTTP GET # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -43,16 +43,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION Accept: */* - -Allocations: 135 -Maximum allocated: 136000 - diff --git a/tests/data/test771 b/tests/data/test771 index b57c87c88bfc..a7524b359748 100644 --- a/tests/data/test771 +++ b/tests/data/test771 @@ -9,7 +9,7 @@ HTTP GET # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -43,7 +43,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test772 b/tests/data/test772 new file mode 100644 index 000000000000..0596c7b982c8 --- /dev/null +++ b/tests/data/test772 @@ -0,0 +1,52 @@ + + + +HTTP +HTTP GET +Location + + + +# +# Server-side + + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 0 +Connection: close +Location: this +Location: that + + + + +# +# Client-side + + +http + + +HTTP with two Location: headers triggers error + + +http://%HOSTIP:%HTTPPORT/%TESTNUMBER + + + +# +# Verify data after the test has been "shot" + + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + + + +8 + + + diff --git a/tests/data/test773 b/tests/data/test773 new file mode 100644 index 000000000000..bb0196c40b95 --- /dev/null +++ b/tests/data/test773 @@ -0,0 +1,49 @@ + + + +HTTP +HTTP GET +Location + + + +# +# Server-side + + +HTTP/1.1 200 OK +Date: Tue, 09 Nov 2010 14:49:00 GMT +Content-Length: 0 +Connection: close +Location: this +Location: this + + + + +# +# Client-side + + +http + + +HTTP with two identical Location: headers triggers no error + + +http://%HOSTIP:%HTTPPORT/%TESTNUMBER + + + +# +# Verify data after the test has been "shot" + + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + + + + diff --git a/tests/data/test774 b/tests/data/test774 new file mode 100644 index 000000000000..758ad0de8d6a --- /dev/null +++ b/tests/data/test774 @@ -0,0 +1,25 @@ + + + +--config + + + + + +config file recursively including itself + + +--config %LOGDIR/cmd + + +http://%HOSTIP:%HTTPPORT/ -K %LOGDIR/cmd + + + + + +2 + + + diff --git a/tests/data/test775 b/tests/data/test775 new file mode 100644 index 000000000000..aa016a0955fd --- /dev/null +++ b/tests/data/test775 @@ -0,0 +1,67 @@ + + + +HTTP +HTTP NTLM auth +NTLM + + +# Server-side + + +# This is supposed to be returned when the server gets a first +# Authorization: NTLM line passed-in from the client + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + +This is not the real page either! + + + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + + + + + +# Client-side + + +NTLM +SSL +!SSPI + + +http + + +HTTP with NTLM with too long user name + + +http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser%repeat[1100 x A]%:testpass --ntlm + + + +# Verify data after the test has been "shot" + + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* + + + +100 + + + diff --git a/tests/data/test776 b/tests/data/test776 new file mode 100644 index 000000000000..9798a18f3a9b --- /dev/null +++ b/tests/data/test776 @@ -0,0 +1,52 @@ + + + +HTTP +HTTP GET +HTTP NTLM auth +NTLM +flaky + + + + + +HTTP/1.1 401 Authorization Required swsclose +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAAAAAAAAAAABAIgAAQIDBAUGBwgAAAAAAAAAAP////8wAAAAAgD3/0F%repeat[21841 x BQUF]%BQUEAAAAA +Content-Length: 0 + + + + +# Client-side + + +NTLM +!SSPI + + +http + + +HTTP with NTLM with too long NTMLv2 ntresplen + + +http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u user:pass --ntlm + + + +# Verify data after the test has been "shot" + + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* + + + +100 + + + diff --git a/tests/data/test78 b/tests/data/test78 index d52fb1554800..3b4d69a2230a 100644 --- a/tests/data/test78 +++ b/tests/data/test78 @@ -54,13 +54,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -z "dec 12 11:00:00 1999 GMT" # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -If-Modified-Since: Sun, 12 Dec 1999 11:00:00 GMT - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +If-Modified-Since: Sun, 12 Dec 1999 11:00:00 GMT + diff --git a/tests/data/test780 b/tests/data/test780 index f65f793c7d09..44d0552abfe4 100644 --- a/tests/data/test780 +++ b/tests/data/test780 @@ -10,10 +10,10 @@ HSTS # we use this as response to a CONNECT - -HTTP/1.1 200 OK -Server: fake - + +HTTP/1.1 200 OK +Server: fake + @@ -63,9 +63,9 @@ test-duphandle -HTTP/1.1 200 OK -Server: fake - +HTTP/1.1 200 OK%CR +Server: fake%CR +%CR HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake swsclose diff --git a/tests/data/test781 b/tests/data/test781 index 20db3852bc81..2c06d404655d 100644 --- a/tests/data/test781 +++ b/tests/data/test781 @@ -10,10 +10,10 @@ HSTS # we use this as response to a CONNECT - -HTTP/1.1 200 OK -Server: fake - + +HTTP/1.1 200 OK +Server: fake + @@ -65,9 +65,9 @@ test-duphandle -HTTP/1.1 200 OK -Server: fake - +HTTP/1.1 200 OK%CR +Server: fake%CR +%CR HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake swsclose diff --git a/tests/data/test782 b/tests/data/test782 index 61b4a0b8c27e..4d559a9402f8 100644 --- a/tests/data/test782 +++ b/tests/data/test782 @@ -10,10 +10,10 @@ HSTS # we use this as response to a CONNECT - -HTTP/1.1 200 OK -Server: fake - + +HTTP/1.1 200 OK +Server: fake + @@ -65,9 +65,9 @@ test-duphandle -HTTP/1.1 200 OK -Server: fake - +HTTP/1.1 200 OK%CR +Server: fake%CR +%CR HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake swsclose diff --git a/tests/data/test783 b/tests/data/test783 index be7004ed8a0f..3fb83a0a198f 100644 --- a/tests/data/test783 +++ b/tests/data/test783 @@ -10,10 +10,10 @@ HSTS # we use this as response to a CONNECT - -HTTP/1.1 200 OK -Server: fake - + +HTTP/1.1 200 OK +Server: fake + @@ -65,9 +65,9 @@ test-duphandle -HTTP/1.1 200 OK -Server: fake - +HTTP/1.1 200 OK%CR +Server: fake%CR +%CR HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake swsclose diff --git a/tests/data/test784 b/tests/data/test784 index 845a3acfc7f4..d847a79b1f6a 100644 --- a/tests/data/test784 +++ b/tests/data/test784 @@ -9,7 +9,7 @@ HTTP # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test785 b/tests/data/test785 index 6c8ae5dabb20..370a97060e0d 100644 --- a/tests/data/test785 +++ b/tests/data/test785 @@ -9,7 +9,7 @@ HTTP # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -45,14 +45,14 @@ On the first Monday of the month of April, 1625, the market town of Meung # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 69 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 69 +Content-Type: application/x-www-form-urlencoded + e first Monday of the month of April, 1625, the market town of Meung diff --git a/tests/data/test786 b/tests/data/test786 index bc5cca28d079..e94faf472f96 100644 --- a/tests/data/test786 +++ b/tests/data/test786 @@ -9,7 +9,7 @@ HTTP # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -45,14 +45,14 @@ On the first Monday of the month of April, 1625, the market town of Meung # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 11 -Content-Type: application/x-www-form-urlencoded - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 11 +Content-Type: application/x-www-form-urlencoded + e first Mon diff --git a/tests/data/test788 b/tests/data/test788 index 544732f7adb0..c863edacc6a8 100644 --- a/tests/data/test788 +++ b/tests/data/test788 @@ -9,7 +9,7 @@ HTTP # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test789 b/tests/data/test789 index ce15967a0a00..d348ad397ceb 100644 --- a/tests/data/test789 +++ b/tests/data/test789 @@ -9,7 +9,7 @@ HTTP # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -45,7 +45,7 @@ On the first Monday of the month of April, 1625, the market town of Meung # # Verify data after the test has been "shot" - + POST /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test79 b/tests/data/test79 index e836b3bf5c3c..973484004035 100644 --- a/tests/data/test79 +++ b/tests/data/test79 @@ -42,13 +42,13 @@ ftp://%HOSTIP:%HTTPPORT/we/want/that/page/%TESTNUMBER -x %HOSTIP:%HTTPPORT # # Verify data after the test has been "shot" - -GET ftp://%HOSTIP:%HTTPPORT/we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET ftp://%HOSTIP:%HTTPPORT/we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test790 b/tests/data/test790 index 1c7827bcd71f..7e557f250b4a 100644 --- a/tests/data/test790 +++ b/tests/data/test790 @@ -9,7 +9,7 @@ HTTP # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test791 b/tests/data/test791 index 6dcdc172aa34..300af27e7ab6 100644 --- a/tests/data/test791 +++ b/tests/data/test791 @@ -9,7 +9,7 @@ HTTP # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake diff --git a/tests/data/test792 b/tests/data/test792 index a7656e4781c3..fb20874d1d61 100644 --- a/tests/data/test792 +++ b/tests/data/test792 @@ -36,7 +36,7 @@ machine %HOSTIP login username password%hex[%00]hex% hello USER username -PASS +PASS%SP PWD EPSV TYPE I diff --git a/tests/data/test793 b/tests/data/test793 index ad68a0f4e19e..f6e77e91167d 100644 --- a/tests/data/test793 +++ b/tests/data/test793 @@ -36,7 +36,7 @@ machine %HOSTIP login username "password"%hex[%00]hex% hello USER username -PASS +PASS%SP PWD EPSV TYPE I diff --git a/tests/data/test794 b/tests/data/test794 index b6af9677ad30..5fd1f76a06ef 100644 --- a/tests/data/test794 +++ b/tests/data/test794 @@ -8,7 +8,7 @@ # # Server-side - + HTTP/1.1 302 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -23,7 +23,7 @@ Funny-head: yesyes -foo- - + HTTP/1.1 200 OK Content-Length: 6 Connection: close @@ -31,7 +31,7 @@ Content-Type: text/html -bar- - + HTTP/1.1 302 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -72,18 +72,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --no-progress-meter -X IGLOO -d moo --locat # Verify data after the test has been "shot" - -^User-Agent:.* - - + IGLOO /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION Accept: */* Content-Length: 3 Content-Type: application/x-www-form-urlencoded mooGET /%TESTNUMBER0001 HTTP/1.1 Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION Accept: */* diff --git a/tests/data/test796 b/tests/data/test796 index 2e0c4077b49c..b945556a4611 100644 --- a/tests/data/test796 +++ b/tests/data/test796 @@ -8,7 +8,7 @@ # # Server-side - + HTTP/1.1 302 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -23,7 +23,7 @@ Funny-head: yesyes -foo- - + HTTP/1.1 200 OK Content-Length: 6 Connection: close @@ -31,7 +31,7 @@ Content-Type: text/html -bar- - + HTTP/1.1 302 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -72,18 +72,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -X IGLOO -d moo --follow # Verify data after the test has been "shot" - -^User-Agent:.* - - + IGLOO /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION Accept: */* Content-Length: 3 Content-Type: application/x-www-form-urlencoded mooGET /%TESTNUMBER0001 HTTP/1.1 Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION Accept: */* diff --git a/tests/data/test797 b/tests/data/test797 index b0602c1302f9..2033829d145a 100644 --- a/tests/data/test797 +++ b/tests/data/test797 @@ -8,7 +8,7 @@ # # Server-side - + HTTP/1.1 308 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -23,7 +23,7 @@ Funny-head: yesyes -foo- - + HTTP/1.1 200 OK Content-Length: 6 Connection: close @@ -31,7 +31,7 @@ Content-Type: text/html -bar- - + HTTP/1.1 308 OK Date: Thu, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -72,18 +72,17 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -X IGLOO -d moo --follow # Verify data after the test has been "shot" - -^User-Agent:.* - - + IGLOO /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION Accept: */* Content-Length: 3 Content-Type: application/x-www-form-urlencoded mooIGLOO /%TESTNUMBER0001 HTTP/1.1 Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION Accept: */* Content-Length: 3 Content-Type: application/x-www-form-urlencoded diff --git a/tests/data/test799 b/tests/data/test799 index e8563a598fe4..06e50a6d9a38 100644 --- a/tests/data/test799 +++ b/tests/data/test799 @@ -14,14 +14,14 @@ SASL AUTH +LOGIN AUTH PLAIN REPLY LOGIN A002 OK LOGIN completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -42,12 +42,12 @@ IMAP with --login-options 'AUTH=+LOGIN' # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test8 b/tests/data/test8 index 5ed328bbedc8..eaeb7656990c 100644 --- a/tests/data/test8 +++ b/tests/data/test8 @@ -88,13 +88,13 @@ cookies # Verify data after the test has been "shot" - -GET /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Cookie: name with space=is weird but; trailingspace=removed; cookie=perhaps; cookie=yes; foobar=name; blexp=yesyes; cookie9=junk-- - + +GET /we/want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Cookie: name with space=is weird but; trailingspace=removed; cookie=perhaps; cookie=yes; foobar=name; blexp=yesyes; cookie9=junk-- + diff --git a/tests/data/test80 b/tests/data/test80 index 2ffcd8987f39..684c29da697e 100644 --- a/tests/data/test80 +++ b/tests/data/test80 @@ -24,13 +24,13 @@ Content-Length: 9 contents - -HTTP/1.1 200 Mighty fine indeed - + +HTTP/1.1 200 Mighty fine indeed + -HTTP/1.1 200 Mighty fine indeed - +HTTP/1.1 200 Mighty fine indeed%CR +%CR HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake swsclose @@ -63,19 +63,19 @@ proxy # # Verify data after the test has been "shot" - -CONNECT test.%TESTNUMBER:%HTTPPORT HTTP/1.0 -Host: test.%TESTNUMBER:%HTTPPORT -Proxy-Authorization: Basic %b64[youare:yourself]b64% -Proxy-Connection: Keep-Alive - + +CONNECT test.%TESTNUMBER:%HTTPPORT HTTP/1.0 +Host: test.%TESTNUMBER:%HTTPPORT +Proxy-Authorization: Basic %b64[youare:yourself]b64% +Proxy-Connection: Keep-Alive + - -GET /we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: test.%TESTNUMBER:%HTTPPORT -Authorization: Basic %b64[iam:myself]b64% -Accept: */* - + +GET /we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: test.%TESTNUMBER:%HTTPPORT +Authorization: Basic %b64[iam:myself]b64% +Accept: */* + diff --git a/tests/data/test800 b/tests/data/test800 index a2daf240a700..35ae22ad93d9 100644 --- a/tests/data/test800 +++ b/tests/data/test800 @@ -10,14 +10,14 @@ FETCH # # Server-side - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -38,12 +38,12 @@ IMAP FETCH message # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN "\"user" "sec\"ret{" -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 LOGIN "\"user" "sec\"ret{" +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test801 b/tests/data/test801 index 9b68d62a86a7..fd3c8c5fc6e6 100644 --- a/tests/data/test801 +++ b/tests/data/test801 @@ -10,11 +10,11 @@ FETCH # # Server-side - -body - --- - yours sincerely + +body + +-- + yours sincerely @@ -35,12 +35,12 @@ IMAP FETCH message by MAILINDEX and SECTION # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 SELECT %TESTNUMBER -A004 FETCH 123 BODY[1] -A005 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 SELECT %TESTNUMBER +A004 FETCH 123 BODY[1] +A005 LOGOUT diff --git a/tests/data/test802 b/tests/data/test802 index 1e2e35bfa01b..e43ad816060f 100644 --- a/tests/data/test802 +++ b/tests/data/test802 @@ -11,11 +11,11 @@ UIDVALIDITY # # Server-side - -body - --- - yours sincerely + +body + +-- + yours sincerely @@ -36,12 +36,12 @@ IMAP SELECT UIDVALIDITY Success # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 SELECT %TESTNUMBER -A004 FETCH 123 BODY[TEXT] -A005 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 SELECT %TESTNUMBER +A004 FETCH 123 BODY[TEXT] +A005 LOGOUT diff --git a/tests/data/test803 b/tests/data/test803 index 6fb00eb0a6a7..d5bd7b19f971 100644 --- a/tests/data/test803 +++ b/tests/data/test803 @@ -35,11 +35,11 @@ IMAP SELECT UIDVALIDITY Failure 78 - -A001 CAPABILITY -A002 LOGIN user secret -A003 SELECT %TESTNUMBER -A004 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 SELECT %TESTNUMBER +A004 LOGOUT diff --git a/tests/data/test804 b/tests/data/test804 index 9d6c7e94e9db..9df5decafee8 100644 --- a/tests/data/test804 +++ b/tests/data/test804 @@ -10,11 +10,11 @@ SELECT # # Server-side - -body - --- - yours sincerely + +body + +-- + yours sincerely @@ -35,13 +35,13 @@ IMAP doesn't perform SELECT if reusing the same mailbox # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 SELECT %TESTNUMBER -A004 FETCH 123 BODY[1] -A005 FETCH 456 BODY[2.3] -A006 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 SELECT %TESTNUMBER +A004 FETCH 123 BODY[1] +A005 FETCH 456 BODY[2.3] +A006 LOGOUT diff --git a/tests/data/test805 b/tests/data/test805 index 7370e63604b9..eadd8a4cb7b4 100644 --- a/tests/data/test805 +++ b/tests/data/test805 @@ -25,38 +25,38 @@ IMAP APPEND message imap://%HOSTIP:%IMAPPORT/%TESTNUMBER -T %LOGDIR/upload%TESTNUMBER -u user:secret - -Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST) -From: Fred Foobar -Subject: afternoon meeting -To: joe@example.com -Message-Id: -MIME-Version: 1.0 -Content-Type: TEXT/PLAIN; CHARSET=US-ASCII - -Hello Joe, do you think we can meet at 3:30 tomorrow? + +Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST) +From: Fred Foobar +Subject: afternoon meeting +To: joe@example.com +Message-Id: +MIME-Version: 1.0 +Content-Type: TEXT/PLAIN; CHARSET=US-ASCII + +Hello Joe, do you think we can meet at 3:30 tomorrow? # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 APPEND %TESTNUMBER (\Seen) {295} -A004 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 APPEND %TESTNUMBER (\Seen) {295} +A004 LOGOUT - -Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST) -From: Fred Foobar -Subject: afternoon meeting -To: joe@example.com -Message-Id: -MIME-Version: 1.0 -Content-Type: TEXT/PLAIN; CHARSET=US-ASCII - -Hello Joe, do you think we can meet at 3:30 tomorrow? + +Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST) +From: Fred Foobar +Subject: afternoon meeting +To: joe@example.com +Message-Id: +MIME-Version: 1.0 +Content-Type: TEXT/PLAIN; CHARSET=US-ASCII + +Hello Joe, do you think we can meet at 3:30 tomorrow? diff --git a/tests/data/test806 b/tests/data/test806 index adfbc11212cf..1423c3059b73 100644 --- a/tests/data/test806 +++ b/tests/data/test806 @@ -10,10 +10,10 @@ LIST # # Server-side - -* LIST () "/" /%TESTNUMBER/blurdybloop -* LIST (\Noselect) "/" /%TESTNUMBER/foo -* LIST () "/" /%TESTNUMBER/foo/bar + +* LIST () "/" /%TESTNUMBER/blurdybloop +* LIST (\Noselect) "/" /%TESTNUMBER/foo +* LIST () "/" /%TESTNUMBER/foo/bar @@ -34,11 +34,11 @@ imap://%HOSTIP:%IMAPPORT/%TESTNUMBER -u user:secret # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 LIST "%TESTNUMBER" * -A004 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 LIST "%TESTNUMBER" * +A004 LOGOUT diff --git a/tests/data/test807 b/tests/data/test807 index 80a1044da0f4..216170418a09 100644 --- a/tests/data/test807 +++ b/tests/data/test807 @@ -11,10 +11,10 @@ CUSTOMREQUEST # # Server-side - -* LSUB () "/" /%TESTNUMBER/blurdybloop -* LSUB (\Noselect) "/" /%TESTNUMBER/foo -* LSUB () "/" /%TESTNUMBER/foo/bar + +* LSUB () "/" /%TESTNUMBER/blurdybloop +* LSUB (\Noselect) "/" /%TESTNUMBER/foo +* LSUB () "/" /%TESTNUMBER/foo/bar @@ -35,11 +35,11 @@ imap://%HOSTIP:%IMAPPORT -u user:secret -X 'LSUB "%TESTNUMBER" *' # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 LSUB "%TESTNUMBER" * -A004 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 LSUB "%TESTNUMBER" * +A004 LOGOUT diff --git a/tests/data/test808 b/tests/data/test808 index 542f87e6d6ab..f8c84fd380de 100644 --- a/tests/data/test808 +++ b/tests/data/test808 @@ -11,14 +11,14 @@ CUSTOMREQUEST # # Server-side - -* 17 EXISTS -* 2 RECENT -* OK [UNSEEN 8] Message 8 is first unseen -* OK [UIDVALIDITY 3857529045] UIDs valid -* OK [UIDNEXT 4392] Predicted next UID -* FLAGS (\Answered \Flagged \Deleted \Seen \Draft) -* OK [PERMANENTFLAGS ()] No permanent flags permitted + +* 17 EXISTS +* 2 RECENT +* OK [UNSEEN 8] Message 8 is first unseen +* OK [UIDVALIDITY 3857529045] UIDs valid +* OK [UIDNEXT 4392] Predicted next UID +* FLAGS (\Answered \Flagged \Deleted \Seen \Draft) +* OK [PERMANENTFLAGS ()] No permanent flags permitted @@ -39,11 +39,11 @@ imap://%HOSTIP:%IMAPPORT -u user:secret -X 'EXAMINE %TESTNUMBER' # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 EXAMINE %TESTNUMBER -A004 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 EXAMINE %TESTNUMBER +A004 LOGOUT diff --git a/tests/data/test809 b/tests/data/test809 index 25635d21f04f..8d1a7ddaa387 100644 --- a/tests/data/test809 +++ b/tests/data/test809 @@ -11,8 +11,8 @@ CUSTOMREQUEST # # Server-side - -* STATUS %TESTNUMBER (MESSAGES 231 UIDNEXT 44292) + +* STATUS %TESTNUMBER (MESSAGES 231 UIDNEXT 44292) @@ -33,11 +33,11 @@ imap://%HOSTIP:%IMAPPORT -u user:secret -X 'STATUS %TESTNUMBER (UIDNEXT MESSAGES # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 STATUS %TESTNUMBER (UIDNEXT MESSAGES) -A004 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 STATUS %TESTNUMBER (UIDNEXT MESSAGES) +A004 LOGOUT diff --git a/tests/data/test81 b/tests/data/test81 index f692f34f46e8..ffbb67f3d3f8 100644 --- a/tests/data/test81 +++ b/tests/data/test81 @@ -14,39 +14,39 @@ NTLM # This is supposed to be returned when the server gets a first # Authorization: NTLM line passed-in from the client - -HTTP/1.1 407 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - + +HTTP/1.1 407 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + This is not the real page either! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine in server land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 407 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 -Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - -HTTP/1.1 200 Things are fine in server land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 407 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +Proxy-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + +HTTP/1.1 200 Things are fine in server land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! @@ -73,21 +73,21 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --proxy-user testuser:testpass -x http://%H # Verify data after the test has been "shot" - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test810 b/tests/data/test810 index 37d76f6ba0bc..74ec4be2a454 100644 --- a/tests/data/test810 +++ b/tests/data/test810 @@ -10,8 +10,8 @@ SEARCH # # Server-side - -* SEARCH 1 123 456 %TESTNUMBER + +* SEARCH 1 123 456 %TESTNUMBER @@ -32,12 +32,12 @@ imap://%HOSTIP:%IMAPPORT/%TESTNUMBER?NEW -u user:secret # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 SELECT %TESTNUMBER -A004 SEARCH NEW -A005 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 SELECT %TESTNUMBER +A004 SEARCH NEW +A005 LOGOUT diff --git a/tests/data/test811 b/tests/data/test811 index e2520c331964..5f515022444e 100644 --- a/tests/data/test811 +++ b/tests/data/test811 @@ -30,11 +30,11 @@ imap://%HOSTIP:%IMAPPORT -u user:secret -X 'CREATE %TESTNUMBER' # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 CREATE %TESTNUMBER -A004 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 CREATE %TESTNUMBER +A004 LOGOUT diff --git a/tests/data/test812 b/tests/data/test812 index 0180e023e8d0..f51b71dad5dc 100644 --- a/tests/data/test812 +++ b/tests/data/test812 @@ -30,11 +30,11 @@ imap://%HOSTIP:%IMAPPORT -u user:secret -X 'DELETE %TESTNUMBER' # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 DELETE %TESTNUMBER -A004 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 DELETE %TESTNUMBER +A004 LOGOUT diff --git a/tests/data/test813 b/tests/data/test813 index 674d308fd7e9..741b4968fb48 100644 --- a/tests/data/test813 +++ b/tests/data/test813 @@ -30,11 +30,11 @@ imap://%HOSTIP:%IMAPPORT -u user:secret -X 'RENAME 666 %TESTNUMBER' # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 RENAME 666 %TESTNUMBER -A004 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 RENAME 666 %TESTNUMBER +A004 LOGOUT diff --git a/tests/data/test814 b/tests/data/test814 index e73b0e894a32..df10a65592d6 100644 --- a/tests/data/test814 +++ b/tests/data/test814 @@ -30,12 +30,12 @@ imap://%HOSTIP:%IMAPPORT/%TESTNUMBER -u user:secret -X 'CHECK' # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 SELECT %TESTNUMBER -A004 CHECK -A005 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 SELECT %TESTNUMBER +A004 CHECK +A005 LOGOUT diff --git a/tests/data/test815 b/tests/data/test815 index 04daef90f0f5..58a926c4c295 100644 --- a/tests/data/test815 +++ b/tests/data/test815 @@ -12,8 +12,8 @@ CUSTOMREQUEST # # Server-side - -* 123 FETCH (FLAGS (\Seen \Deleted)) + +* 123 FETCH (FLAGS (\Seen \Deleted)) @@ -34,13 +34,13 @@ imap://%HOSTIP:%IMAPPORT/%TESTNUMBER -X 'STORE 123 +Flags \Deleted' -u user:secr # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 SELECT %TESTNUMBER -A004 STORE 123 +Flags \Deleted -A005 CLOSE -A006 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 SELECT %TESTNUMBER +A004 STORE 123 +Flags \Deleted +A005 CLOSE +A006 LOGOUT diff --git a/tests/data/test816 b/tests/data/test816 index b6054cacfcd6..5d98f752862a 100644 --- a/tests/data/test816 +++ b/tests/data/test816 @@ -12,12 +12,12 @@ CUSTOMREQUEST # # Server-side - -* 123 FETCH (FLAGS (\Seen \Deleted)) + +* 123 FETCH (FLAGS (\Seen \Deleted)) - -* 123 EXPUNGE - + +* 123 EXPUNGE + # @@ -37,13 +37,13 @@ imap://%HOSTIP:%IMAPPORT/%TESTNUMBER -X 'STORE 123 +Flags \Deleted' -u user:secr # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 SELECT %TESTNUMBER -A004 STORE 123 +Flags \Deleted -A005 EXPUNGE -A006 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 SELECT %TESTNUMBER +A004 STORE 123 +Flags \Deleted +A005 EXPUNGE +A006 LOGOUT diff --git a/tests/data/test817 b/tests/data/test817 index c608f65b0fd0..ce5b0adb456d 100644 --- a/tests/data/test817 +++ b/tests/data/test817 @@ -30,11 +30,11 @@ imap://%HOSTIP:%IMAPPORT -u user:secret -X 'COPY 123 %TESTNUMBER' # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 COPY 123 %TESTNUMBER -A004 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 COPY 123 %TESTNUMBER +A004 LOGOUT diff --git a/tests/data/test818 b/tests/data/test818 index dd917ea3999e..d57bc29f9a65 100644 --- a/tests/data/test818 +++ b/tests/data/test818 @@ -11,11 +11,11 @@ CUSTOMREQUEST # # Server-side - -* 22 EXPUNGE -* 23 EXISTS -* 3 RECENT -* 14 FETCH (FLAGS (\Seen \Deleted)) + +* 22 EXPUNGE +* 23 EXISTS +* 3 RECENT +* 14 FETCH (FLAGS (\Seen \Deleted)) @@ -36,11 +36,11 @@ imap://%HOSTIP:%IMAPPORT -X NOOP -u user:secret # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 NOOP -A004 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 NOOP +A004 LOGOUT diff --git a/tests/data/test819 b/tests/data/test819 index 50ff22669126..259263fa3125 100644 --- a/tests/data/test819 +++ b/tests/data/test819 @@ -16,14 +16,14 @@ AUTH PLAIN REPLY AUTHENTICATE + REPLY AHVzZXIAc2VjcmV0 A002 OK AUTHENTICATE completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -44,13 +44,13 @@ IMAP plain authentication # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 AUTHENTICATE PLAIN -AHVzZXIAc2VjcmV0 -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 AUTHENTICATE PLAIN +AHVzZXIAc2VjcmV0 +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test82 b/tests/data/test82 index c343d0a2de5d..b3db39438bda 100644 --- a/tests/data/test82 +++ b/tests/data/test82 @@ -11,13 +11,13 @@ HTTP proxy NTLM auth # Server-side - -HTTP/1.1 407 We only deal with NTLM my friend -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 + +HTTP/1.1 407 We only deal with NTLM my friend +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 Proxy-Authenticate: NTLM - + This is not the real page either! @@ -41,14 +41,14 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --proxy-user testuser:testpass -x http://%H # Verify data after the test has been "shot" - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Proxy-Authorization: Basic %b64[testuser:testpass]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Proxy-Authorization: Basic %b64[testuser:testpass]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test820 b/tests/data/test820 index 80ac25f27dc2..cbcc3a32da7c 100644 --- a/tests/data/test820 +++ b/tests/data/test820 @@ -16,14 +16,14 @@ REPLY AUTHENTICATE + VXNlcm5hbWU6 REPLY dXNlcg== + UGFzc3dvcmQ6 REPLY c2VjcmV0 A002 OK AUTHENTICATE completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -44,14 +44,14 @@ IMAP login authentication # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 AUTHENTICATE LOGIN -dXNlcg== -c2VjcmV0 -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 AUTHENTICATE LOGIN +dXNlcg== +c2VjcmV0 +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test821 b/tests/data/test821 index 4179220800ef..df48cfbdd980 100644 --- a/tests/data/test821 +++ b/tests/data/test821 @@ -16,14 +16,14 @@ AUTH CRAM-MD5 REPLY AUTHENTICATE + PDE5NzIuOTg3NjU0MzIxQGN1cmw+ REPLY dXNlciA3MDMxNzI1NTk5ZmRiYjVkNDEyNjg5YWEzMjNlM2UwYg== A002 OK AUTHENTICATE completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -48,13 +48,13 @@ IMAP CRAM-MD5 authentication # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 AUTHENTICATE CRAM-MD5 -dXNlciA3MDMxNzI1NTk5ZmRiYjVkNDEyNjg5YWEzMjNlM2UwYg== -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 AUTHENTICATE CRAM-MD5 +dXNlciA3MDMxNzI1NTk5ZmRiYjVkNDEyNjg5YWEzMjNlM2UwYg== +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test822 b/tests/data/test822 index 61db77dc3c36..99cc323a7c65 100644 --- a/tests/data/test822 +++ b/tests/data/test822 @@ -17,14 +17,14 @@ REPLY AUTHENTICATE + REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= + TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== REPLY TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= A002 OK AUTHENTICATE completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -50,14 +50,14 @@ IMAP NTLM authentication # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 AUTHENTICATE NTLM -TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 AUTHENTICATE NTLM +TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test823 b/tests/data/test823 index 91d75fed4a7b..b249958de190 100644 --- a/tests/data/test823 +++ b/tests/data/test823 @@ -17,14 +17,14 @@ REPLY AUTHENTICATE + cmVhbG09ImN1cmwiLG5vbmNlPSI1MzAwZDE3YTFkNjk1YmQ0MTFlNGNkZjk REPLY dXNlcm5hbWU9InVzZXIiLHJlYWxtPSJjdXJsIixub25jZT0iNTMwMGQxN2ExZDY5NWJkNDExZTRjZGY5NmY5NTQ4YzIzY2VkNjE3NSIsY25vbmNlPSIzNDMzMzIzMTM1MzMzMjMxMzYzMzMyMzEzNzMzMzIzMSIsbmM9IjAwMDAwMDAxIixkaWdlc3QtdXJpPSJpbWFwLzEyNy4wLjAuMSIscmVzcG9uc2U9YmU2MzgyNDkzNjJkN2FhMGUzNTM4NTA3Njc1MWFiNDgscW9wPWF1dGg= + cnNwYXV0aD04MWY5MDNlYjQ4MjNhZTkyMmRiNWYwNGNiNThjY2RlYg== REPLY A002 OK AUTHENTICATE completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -54,14 +54,14 @@ IMAP DIGEST-MD5 authentication # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 AUTHENTICATE DIGEST-MD5 -dXNlcm5hbWU9InVzZXIiLHJlYWxtPSJjdXJsIixub25jZT0iNTMwMGQxN2ExZDY5NWJkNDExZTRjZGY5NmY5NTQ4YzIzY2VkNjE3NSIsY25vbmNlPSIzNDMzMzIzMTM1MzMzMjMxMzYzMzMyMzEzNzMzMzIzMSIsbmM9IjAwMDAwMDAxIixkaWdlc3QtdXJpPSJpbWFwLzEyNy4wLjAuMSIscmVzcG9uc2U9YmU2MzgyNDkzNjJkN2FhMGUzNTM4NTA3Njc1MWFiNDgscW9wPWF1dGg= - -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 AUTHENTICATE DIGEST-MD5 +dXNlcm5hbWU9InVzZXIiLHJlYWxtPSJjdXJsIixub25jZT0iNTMwMGQxN2ExZDY5NWJkNDExZTRjZGY5NmY5NTQ4YzIzY2VkNjE3NSIsY25vbmNlPSIzNDMzMzIzMTM1MzMzMjMxMzYzMzMyMzEzNzMzMzIzMSIsbmM9IjAwMDAwMDAxIixkaWdlc3QtdXJpPSJpbWFwLzEyNy4wLjAuMSIscmVzcG9uc2U9YmU2MzgyNDkzNjJkN2FhMGUzNTM4NTA3Njc1MWFiNDgscW9wPWF1dGg= + +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test824 b/tests/data/test824 index 0abda22b0a29..e88245fbe8a7 100644 --- a/tests/data/test824 +++ b/tests/data/test824 @@ -16,14 +16,14 @@ AUTH XOAUTH2 REPLY AUTHENTICATE + REPLY dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB A002 OK AUTHENTICATE completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -44,13 +44,13 @@ IMAP OAuth 2.0 (XOAUTH2) authentication # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 AUTHENTICATE XOAUTH2 -dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 AUTHENTICATE XOAUTH2 +dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test825 b/tests/data/test825 index 64d57f5feb30..39a8d317e28e 100644 --- a/tests/data/test825 +++ b/tests/data/test825 @@ -17,14 +17,14 @@ AUTH PLAIN CAPA SASL-IR REPLY AUTHENTICATE A002 OK AUTHENTICATE completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -45,12 +45,12 @@ IMAP plain authentication with initial response # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 AUTHENTICATE PLAIN AHVzZXIAc2VjcmV0 -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 AUTHENTICATE PLAIN AHVzZXIAc2VjcmV0 +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test826 b/tests/data/test826 index b3b0dc335f9a..d137d57c9e1a 100644 --- a/tests/data/test826 +++ b/tests/data/test826 @@ -17,14 +17,14 @@ CAPA SASL-IR REPLY AUTHENTICATE + UGFzc3dvcmQ6 REPLY c2VjcmV0 A002 OK AUTHENTICATE completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -45,13 +45,13 @@ IMAP login authentication with initial response # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 AUTHENTICATE LOGIN dXNlcg== -c2VjcmV0 -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 AUTHENTICATE LOGIN dXNlcg== +c2VjcmV0 +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test827 b/tests/data/test827 index 493775381f09..87a4963552ef 100644 --- a/tests/data/test827 +++ b/tests/data/test827 @@ -18,14 +18,14 @@ CAPA SASL-IR REPLY AUTHENTICATE + TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== REPLY TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= A002 OK AUTHENTICATE completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -51,13 +51,13 @@ IMAP NTLM authentication with initial response # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 AUTHENTICATE NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 AUTHENTICATE NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test828 b/tests/data/test828 index a3548464e881..a397fccf02d0 100644 --- a/tests/data/test828 +++ b/tests/data/test828 @@ -17,14 +17,14 @@ AUTH XOAUTH2 CAPA SASL-IR REPLY AUTHENTICATE A002 OK AUTHENTICATE completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -45,12 +45,12 @@ IMAP OAuth 2.0 (XOAUTH2) authentication with initial response # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 AUTHENTICATE XOAUTH2 dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 AUTHENTICATE XOAUTH2 dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test83 b/tests/data/test83 index 1d138ce10a1b..f6d3e84b08a7 100644 --- a/tests/data/test83 +++ b/tests/data/test83 @@ -21,13 +21,13 @@ Content-Length: 9 contents - -HTTP/1.1 200 Mighty fine indeed - + +HTTP/1.1 200 Mighty fine indeed + -HTTP/1.1 200 Mighty fine indeed - +HTTP/1.1 200 Mighty fine indeed%CR +%CR HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake swsclose @@ -60,20 +60,20 @@ proxy # # Verify data after the test has been "shot" - -CONNECT test.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: test.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT test.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: test.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + - -GET /we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: test.%TESTNUMBER:%HTTPPORT -Authorization: Basic %b64[iam:my:;self]b64% -User-Agent: curl/%VERSION -Accept: */* - + +GET /we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: test.%TESTNUMBER:%HTTPPORT +Authorization: Basic %b64[iam:my:;self]b64% +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test830 b/tests/data/test830 index 1465406e1b00..8124e1a13c9c 100644 --- a/tests/data/test830 +++ b/tests/data/test830 @@ -48,10 +48,10 @@ IMAP CRAM-MD5 graceful cancellation # # The multi interface considers a broken "CONNECT" as a prematurely broken # transfer and such a connection will not get a "LOGOUT" - -A001 CAPABILITY -A002 AUTHENTICATE CRAM-MD5 -* + +A001 CAPABILITY +A002 AUTHENTICATE CRAM-MD5 +* diff --git a/tests/data/test831 b/tests/data/test831 index 1ef3d45c4183..c095bcda5db6 100644 --- a/tests/data/test831 +++ b/tests/data/test831 @@ -49,11 +49,11 @@ IMAP NTLM graceful cancellation # # The multi interface considers a broken "CONNECT" as a prematurely broken # transfer and such a connection will not get a "LOGOUT" - -A001 CAPABILITY -A002 AUTHENTICATE NTLM -TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -* + +A001 CAPABILITY +A002 AUTHENTICATE NTLM +TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +* diff --git a/tests/data/test832 b/tests/data/test832 index 5787bbc797fd..f5a0323e3a58 100644 --- a/tests/data/test832 +++ b/tests/data/test832 @@ -50,10 +50,10 @@ IMAP DIGEST-MD5 graceful cancellation # # The multi interface considers a broken "CONNECT" as a prematurely broken # transfer and such a connection will not get a "LOGOUT" - -A001 CAPABILITY -A002 AUTHENTICATE DIGEST-MD5 -* + +A001 CAPABILITY +A002 AUTHENTICATE DIGEST-MD5 +* diff --git a/tests/data/test833 b/tests/data/test833 index bda66c514c92..6ff9354f8ca7 100644 --- a/tests/data/test833 +++ b/tests/data/test833 @@ -20,14 +20,14 @@ REPLY * A002 NO AUTH exchange cancelled by client REPLY "AUTHENTICATE PLAIN" + REPLY AHVzZXIAc2VjcmV0 A003 OK AUTHENTICATE completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -52,15 +52,15 @@ IMAP CRAM-MD5 authentication with SASL downgrade # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 AUTHENTICATE CRAM-MD5 -* -A003 AUTHENTICATE PLAIN -AHVzZXIAc2VjcmV0 -A004 SELECT %TESTNUMBER -A005 FETCH 1 BODY[] -A006 LOGOUT + +A001 CAPABILITY +A002 AUTHENTICATE CRAM-MD5 +* +A003 AUTHENTICATE PLAIN +AHVzZXIAc2VjcmV0 +A004 SELECT %TESTNUMBER +A005 FETCH 1 BODY[] +A006 LOGOUT diff --git a/tests/data/test834 b/tests/data/test834 index ccdf0d1fdba0..501768a21168 100644 --- a/tests/data/test834 +++ b/tests/data/test834 @@ -20,14 +20,14 @@ REPLY * A002 NO AUTH exchange cancelled by client REPLY "AUTHENTICATE PLAIN" + REPLY AHVzZXIAc2VjcmV0 A003 OK AUTHENTICATE completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -53,16 +53,16 @@ IMAP NTLM authentication with SASL downgrade # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 AUTHENTICATE NTLM -TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -* -A003 AUTHENTICATE PLAIN -AHVzZXIAc2VjcmV0 -A004 SELECT %TESTNUMBER -A005 FETCH 1 BODY[] -A006 LOGOUT + +A001 CAPABILITY +A002 AUTHENTICATE NTLM +TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +* +A003 AUTHENTICATE PLAIN +AHVzZXIAc2VjcmV0 +A004 SELECT %TESTNUMBER +A005 FETCH 1 BODY[] +A006 LOGOUT diff --git a/tests/data/test835 b/tests/data/test835 index aa3a44670610..7d2aa2bac3ad 100644 --- a/tests/data/test835 +++ b/tests/data/test835 @@ -20,14 +20,14 @@ REPLY * A002 NO AUTH exchange cancelled by client REPLY "AUTHENTICATE PLAIN" + REPLY AHVzZXIAc2VjcmV0 A003 OK AUTHENTICATE completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -54,15 +54,15 @@ IMAP DIGEST-MD5 authentication with SASL downgrade # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 AUTHENTICATE DIGEST-MD5 -* -A003 AUTHENTICATE PLAIN -AHVzZXIAc2VjcmV0 -A004 SELECT %TESTNUMBER -A005 FETCH 1 BODY[] -A006 LOGOUT + +A001 CAPABILITY +A002 AUTHENTICATE DIGEST-MD5 +* +A003 AUTHENTICATE PLAIN +AHVzZXIAc2VjcmV0 +A004 SELECT %TESTNUMBER +A005 FETCH 1 BODY[] +A006 LOGOUT diff --git a/tests/data/test836 b/tests/data/test836 index 821d5392bb8c..14e805dcb657 100644 --- a/tests/data/test836 +++ b/tests/data/test836 @@ -12,17 +12,17 @@ connection reuse # Server-side -REPLY "LOGIN user.one secret" A002 OK LOGIN completed -REPLY "LOGIN user.two secret" B002 OK LOGIN completed +REPLY "LOGIN user.one secret" A002 OK LOGIN completed +REPLY "LOGIN user.two secret" B002 OK LOGIN completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -43,17 +43,17 @@ IMAP multiple connection authentication # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user.one secret -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT -B001 CAPABILITY -B002 LOGIN user.two secret -B003 SELECT %TESTNUMBER -B004 FETCH 2 BODY[] -B005 LOGOUT + +A001 CAPABILITY +A002 LOGIN user.one secret +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT +B001 CAPABILITY +B002 LOGIN user.two secret +B003 SELECT %TESTNUMBER +B004 FETCH 2 BODY[] +B005 LOGOUT diff --git a/tests/data/test837 b/tests/data/test837 index 74b575a6ed7f..ef10c571513e 100644 --- a/tests/data/test837 +++ b/tests/data/test837 @@ -16,14 +16,14 @@ AUTH EXTERNAL REPLY AUTHENTICATE + REPLY dXNlcg== A002 OK AUTHENTICATE completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -44,13 +44,13 @@ IMAP external authentication # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 AUTHENTICATE EXTERNAL -dXNlcg== -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 AUTHENTICATE EXTERNAL +dXNlcg== +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test838 b/tests/data/test838 index c6081fb6386f..5811c019f442 100644 --- a/tests/data/test838 +++ b/tests/data/test838 @@ -16,14 +16,14 @@ AUTH EXTERNAL REPLY AUTHENTICATE + REPLY = A002 OK AUTHENTICATE completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -44,13 +44,13 @@ IMAP external authentication without credentials # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 AUTHENTICATE EXTERNAL -= -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 AUTHENTICATE EXTERNAL += +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test839 b/tests/data/test839 index 9f443b42aab4..14a60ca22d0c 100644 --- a/tests/data/test839 +++ b/tests/data/test839 @@ -17,14 +17,14 @@ AUTH EXTERNAL CAPA SASL-IR REPLY AUTHENTICATE A002 OK AUTHENTICATE completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -45,12 +45,12 @@ IMAP external authentication with initial response # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 AUTHENTICATE EXTERNAL dXNlcg== -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 AUTHENTICATE EXTERNAL dXNlcg== +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test84 b/tests/data/test84 index 2cbd8a575d47..b6d54a98a072 100644 --- a/tests/data/test84 +++ b/tests/data/test84 @@ -41,14 +41,14 @@ proxy # # Verify data after the test has been "shot" - -GET http://%HOSTIP:%HTTPPORT/we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[iam:myself]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://%HOSTIP:%HTTPPORT/we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[iam:myself]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test840 b/tests/data/test840 index 48fd32a34949..ad8a22d11aae 100644 --- a/tests/data/test840 +++ b/tests/data/test840 @@ -17,14 +17,14 @@ AUTH EXTERNAL CAPA SASL-IR REPLY AUTHENTICATE A002 OK AUTHENTICATE completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -45,12 +45,12 @@ IMAP external authentication with initial response without credentials # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 AUTHENTICATE EXTERNAL = -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 AUTHENTICATE EXTERNAL = +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test841 b/tests/data/test841 index cc1d075fbc3f..321512431c59 100644 --- a/tests/data/test841 +++ b/tests/data/test841 @@ -11,15 +11,20 @@ CUSTOMREQUEST # # Server-side - -body - -+ Curl did not used to like this line --- - yours sincerely + +body + ++ Curl did not used to like this line +-- + yours sincerely - -* 123 FETCH (BODY[1] {70} + +* 123 FETCH (BODY[1] {70} +body + ++ Curl did not used to like this line +-- + yours sincerely @@ -40,12 +45,12 @@ IMAP custom request doesn't check continuation data # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 SELECT %TESTNUMBER -A004 FETCH 123 BODY[1] -A005 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 SELECT %TESTNUMBER +A004 FETCH 123 BODY[1] +A005 LOGOUT diff --git a/tests/data/test842 b/tests/data/test842 index 1cea6e39d35f..cc0dcd9c0017 100644 --- a/tests/data/test842 +++ b/tests/data/test842 @@ -17,14 +17,14 @@ AUTH OAUTHBEARER REPLY AUTHENTICATE + REPLY %b64[n,a=user,%01host=127.0.0.1%01port=%IMAPPORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% A002 OK AUTHENTICATE completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -47,13 +47,13 @@ IMAP OAuth 2.0 (OAUTHBEARER) authentication # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 AUTHENTICATE OAUTHBEARER -%b64[n,a=user,%01host=127.0.0.1%01port=%IMAPPORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 AUTHENTICATE OAUTHBEARER +%b64[n,a=user,%01host=127.0.0.1%01port=%IMAPPORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test843 b/tests/data/test843 index 774c4c5e74b4..934c6f7d92c5 100644 --- a/tests/data/test843 +++ b/tests/data/test843 @@ -18,14 +18,14 @@ AUTH OAUTHBEARER CAPA SASL-IR REPLY AUTHENTICATE A002 OK AUTHENTICATE completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -46,12 +46,12 @@ IMAP OAuth 2.0 (OAUTHBEARER) authentication with initial response # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 AUTHENTICATE OAUTHBEARER %b64[n,a=user,%01host=127.0.0.1%01port=%IMAPPORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 AUTHENTICATE OAUTHBEARER %b64[n,a=user,%01host=127.0.0.1%01port=%IMAPPORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test844 b/tests/data/test844 index fd65d750c634..caa324638a56 100644 --- a/tests/data/test844 +++ b/tests/data/test844 @@ -43,10 +43,10 @@ IMAP OAuth 2.0 (OAUTHBEARER) failure as continuation # # The multi interface considers a broken "CONNECT" as a prematurely broken # transfer and such a connection will not get a "LOGOUT" - -A001 CAPABILITY -A002 AUTHENTICATE OAUTHBEARER -%b64[n,a=user,%01host=127.0.0.1%01port=%IMAPPORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% + +A001 CAPABILITY +A002 AUTHENTICATE OAUTHBEARER +%b64[n,a=user,%01host=127.0.0.1%01port=%IMAPPORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% diff --git a/tests/data/test845 b/tests/data/test845 index c9cae6d65a2f..f68be7d67c51 100644 --- a/tests/data/test845 +++ b/tests/data/test845 @@ -45,10 +45,10 @@ IMAP OAuth 2.0 (OAUTHBEARER) failure as continuation with initial response # # The multi interface considers a broken "CONNECT" as a prematurely broken # transfer and such a connection will not get a "LOGOUT" - -A001 CAPABILITY -A002 AUTHENTICATE OAUTHBEARER %b64[n,a=user,%01host=127.0.0.1%01port=%IMAPPORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% -%b64[%01]b64% + +A001 CAPABILITY +A002 AUTHENTICATE OAUTHBEARER %b64[n,a=user,%01host=127.0.0.1%01port=%IMAPPORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% +%b64[%01]b64% diff --git a/tests/data/test846 b/tests/data/test846 index 49c391ffe9a7..0ec5313e577f 100644 --- a/tests/data/test846 +++ b/tests/data/test846 @@ -12,14 +12,14 @@ IMAP REPLY welcome * PREAUTH ready to serve already! REPLY CAPABILITY * CAPABILITY IMAP4REV1 I18NLEVEL=1 LITERAL+ IDLE UIDPLUS NAMESPACE CHILDREN MAILBOX-REFERRALS BINARY UNSELECT ESEARCH WITHIN SCAN SORT THREAD=REFERENCES THREAD=ORDEREDSUBJECT MULTIAPPEND SASL-IR LOGIN-REFERRALS STARTTLS LOGINDISABLED\r\nA001 OK CAPABILITY completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -40,11 +40,11 @@ IMAP PREAUTH response # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 SELECT %TESTNUMBER -A003 FETCH 1 BODY[] -A004 LOGOUT + +A001 CAPABILITY +A002 SELECT %TESTNUMBER +A003 FETCH 1 BODY[] +A004 LOGOUT diff --git a/tests/data/test847 b/tests/data/test847 index 6972f45fb129..ed6cc1089172 100644 --- a/tests/data/test847 +++ b/tests/data/test847 @@ -10,14 +10,14 @@ FETCH # # Server-side - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -38,12 +38,12 @@ IMAP FETCH message # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN "\"user" "sec\"ret{" -A003 SELECT %TESTNUMBER -A004 UID FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 LOGIN "\"user" "sec\"ret{" +A003 SELECT %TESTNUMBER +A004 UID FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test848 b/tests/data/test848 index a0d5a29e7de8..e233630d6fd1 100644 --- a/tests/data/test848 +++ b/tests/data/test848 @@ -16,14 +16,14 @@ AUTH PLAIN REPLY AUTHENTICATE + REPLY c2hhcmVkLW1haWxib3gAdXNlcgBzZWNyZXQ= A002 OK AUTHENTICATE completed - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -44,13 +44,13 @@ IMAP plain authentication with alternative authorization identity # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 AUTHENTICATE PLAIN -c2hhcmVkLW1haWxib3gAdXNlcgBzZWNyZXQ= -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 AUTHENTICATE PLAIN +c2hhcmVkLW1haWxib3gAdXNlcgBzZWNyZXQ= +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test849 b/tests/data/test849 index e092da3904b0..3e771c2ffd79 100644 --- a/tests/data/test849 +++ b/tests/data/test849 @@ -42,10 +42,10 @@ IMAP plain auth with alt authorization identity (Not authorized) # # The multi interface considers a broken "CONNECT" as a prematurely broken # transfer and such a connection will not get a "LOGOUT" - -A001 CAPABILITY -A002 AUTHENTICATE PLAIN -dXJzZWwAa3VydAB4aXBqM3BsbXE= + +A001 CAPABILITY +A002 AUTHENTICATE PLAIN +dXJzZWwAa3VydAB4aXBqM3BsbXE= diff --git a/tests/data/test85 b/tests/data/test85 index 2acc87cb0617..0ffb07ab27cd 100644 --- a/tests/data/test85 +++ b/tests/data/test85 @@ -44,15 +44,15 @@ proxy # # Verify data after the test has been "shot" - -GET http://%HOSTIP:%HTTPPORT/we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Proxy-Authorization: Basic %b64[testing:this]b64% -Authorization: Basic %b64[iam:myself]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://%HOSTIP:%HTTPPORT/we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Proxy-Authorization: Basic %b64[testing:this]b64% +Authorization: Basic %b64[iam:myself]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test850 b/tests/data/test850 index f0a9f17d65d8..dcf337977002 100644 --- a/tests/data/test850 +++ b/tests/data/test850 @@ -10,14 +10,14 @@ RETR # # Server-side - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -38,12 +38,12 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret # # Verify data after the test has been "shot" - -CAPA -USER user -PASS secret -RETR %TESTNUMBER -QUIT + +CAPA +USER user +PASS secret +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test851 b/tests/data/test851 index 3f24c14b34e3..abecf7daa76d 100644 --- a/tests/data/test851 +++ b/tests/data/test851 @@ -33,12 +33,12 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -l -u user:secret # # Verify data after the test has been "shot" - -CAPA -USER user -PASS secret -LIST %TESTNUMBER -QUIT + +CAPA +USER user +PASS secret +LIST %TESTNUMBER +QUIT diff --git a/tests/data/test852 b/tests/data/test852 index ed433862bfbe..87e47d67aef2 100644 --- a/tests/data/test852 +++ b/tests/data/test852 @@ -36,12 +36,12 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -l -u user:secret 8 - -CAPA -USER user -PASS secret -LIST %TESTNUMBER -QUIT + +CAPA +USER user +PASS secret +LIST %TESTNUMBER +QUIT diff --git a/tests/data/test853 b/tests/data/test853 index 3b57e7d08690..ecdf7dd27e38 100644 --- a/tests/data/test853 +++ b/tests/data/test853 @@ -18,10 +18,10 @@ SLOWDOWN # When doing LIST, we get the default list output hard-coded in the test # POP3 server - -1 100 -2 4294967400 -3 200 + +1 100 +2 4294967400 +3 200 @@ -42,12 +42,12 @@ pop3://%HOSTIP:%POP3PORT/ -u user:secret # # Verify data after the test has been "shot" - -CAPA -USER user -PASS secret -LIST -QUIT + +CAPA +USER user +PASS secret +LIST +QUIT diff --git a/tests/data/test854 b/tests/data/test854 index acb32b01f387..4491153803cc 100644 --- a/tests/data/test854 +++ b/tests/data/test854 @@ -34,12 +34,12 @@ pop3://%HOSTIP:%POP3PORT/ -u user:secret # # Verify data after the test has been "shot" - -CAPA -USER user -PASS secret -LIST -QUIT + +CAPA +USER user +PASS secret +LIST +QUIT diff --git a/tests/data/test855 b/tests/data/test855 index c7c10be6517b..9e95cad27318 100644 --- a/tests/data/test855 +++ b/tests/data/test855 @@ -36,12 +36,12 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret 8 - -CAPA -USER user -PASS secret -RETR %TESTNUMBER -QUIT + +CAPA +USER user +PASS secret +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test856 b/tests/data/test856 index c107612deed0..4de4d7270fda 100644 --- a/tests/data/test856 +++ b/tests/data/test856 @@ -39,10 +39,10 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:wrong # # The multi interface considers a broken "CONNECT" as a prematurely broken # transfer and such a connection will not get a "QUIT" - -CAPA -USER user -PASS wrong + +CAPA +USER user +PASS wrong diff --git a/tests/data/test857 b/tests/data/test857 index 5868a2d57ffd..7b30182bcd68 100644 --- a/tests/data/test857 +++ b/tests/data/test857 @@ -10,25 +10,25 @@ RETR # # Server-side - -From: me@somewhere -To: fake@nowhere - -..body with a single dot first -...triple dots... - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +..body with a single dot first +...triple dots... + +-- + yours sincerely - -From: me@somewhere -To: fake@nowhere - -.body with a single dot first -..triple dots... - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +.body with a single dot first +..triple dots... + +-- + yours sincerely @@ -49,12 +49,12 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret # # Verify data after the test has been "shot" - -CAPA -USER user -PASS secret -RETR %TESTNUMBER -QUIT + +CAPA +USER user +PASS secret +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test858 b/tests/data/test858 index f119100ecdaf..0362bb81fe9a 100644 --- a/tests/data/test858 +++ b/tests/data/test858 @@ -30,12 +30,12 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret -X DELE -I # # Verify data after the test has been "shot" - -CAPA -USER user -PASS secret -DELE %TESTNUMBER -QUIT + +CAPA +USER user +PASS secret +DELE %TESTNUMBER +QUIT diff --git a/tests/data/test859 b/tests/data/test859 index 11ffc068e542..0603d643ea2c 100644 --- a/tests/data/test859 +++ b/tests/data/test859 @@ -30,12 +30,12 @@ pop3://%HOSTIP:%POP3PORT -u user:secret -X STAT -I # # Verify data after the test has been "shot" - -CAPA -USER user -PASS secret -STAT -QUIT + +CAPA +USER user +PASS secret +STAT +QUIT diff --git a/tests/data/test86 b/tests/data/test86 index ba9c90d7a8f7..ecd1f632141d 100644 --- a/tests/data/test86 +++ b/tests/data/test86 @@ -64,22 +64,22 @@ HTTP, urlglob []-retrieval and -o #[num] usage # # Verify data after the test has been "shot" - -GET /%TESTNUMBER0001 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0002 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER0003 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER0001 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0002 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER0003 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + # we check the second file diff --git a/tests/data/test860 b/tests/data/test860 index 5e1f3f611b27..10e931f7f21b 100644 --- a/tests/data/test860 +++ b/tests/data/test860 @@ -30,12 +30,12 @@ pop3://%HOSTIP:%POP3PORT -u user:secret -X NOOP -I # # Verify data after the test has been "shot" - -CAPA -USER user -PASS secret -NOOP -QUIT + +CAPA +USER user +PASS secret +NOOP +QUIT diff --git a/tests/data/test861 b/tests/data/test861 index 65b44c1cc0b8..e1806eec775a 100644 --- a/tests/data/test861 +++ b/tests/data/test861 @@ -12,16 +12,16 @@ RFC2449 # # Server-side - -CAPA UIDL USER - -# When doing UIDL, we get the default list output hard-coded in the test -# POP3 server - -1 1 -2 2 -3 4 - + +CAPA UIDL USER + +# When doing UIDL, we get the default list output hard-coded in the test +# POP3 server + +1 1 +2 2 +3 4 + # @@ -41,12 +41,12 @@ pop3://%HOSTIP:%POP3PORT -u user:secret -X UIDL # # Verify data after the test has been "shot" - -CAPA -USER user -PASS secret -UIDL -QUIT + +CAPA +USER user +PASS secret +UIDL +QUIT diff --git a/tests/data/test862 b/tests/data/test862 index ab0feaa4838a..83a58fe35093 100644 --- a/tests/data/test862 +++ b/tests/data/test862 @@ -12,14 +12,14 @@ RFC2449 # # Server-side - -CAPA TOP USER - - -From: me@somewhere -To: fake@nowhere - - + +CAPA TOP USER + + +From: me@somewhere +To: fake@nowhere + + # @@ -39,12 +39,12 @@ pop3://%HOSTIP:%POP3PORT -u user:secret -X 'TOP %TESTNUMBER 0' # # Verify data after the test has been "shot" - -CAPA -USER user -PASS secret -TOP %TESTNUMBER 0 -QUIT + +CAPA +USER user +PASS secret +TOP %TESTNUMBER 0 +QUIT diff --git a/tests/data/test863 b/tests/data/test863 index f7b288baa607..a246652fd9cf 100644 --- a/tests/data/test863 +++ b/tests/data/test863 @@ -30,12 +30,12 @@ pop3://%HOSTIP:%POP3PORT -u user:secret -X RSET -I # # Verify data after the test has been "shot" - -CAPA -USER user -PASS secret -RSET -QUIT + +CAPA +USER user +PASS secret +RSET +QUIT diff --git a/tests/data/test864 b/tests/data/test864 index 233764f64ec1..a21fc2517582 100644 --- a/tests/data/test864 +++ b/tests/data/test864 @@ -13,14 +13,14 @@ APOP CAPA APOP REPLY welcome +OK curl POP3 server ready to serve <1972.987654321\@curl> - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -45,11 +45,11 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret # # Verify data after the test has been "shot" - -CAPA -APOP user 7501b4cdc224d469940e65e7b5e4d6eb -RETR %TESTNUMBER -QUIT + +CAPA +APOP user 7501b4cdc224d469940e65e7b5e4d6eb +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test865 b/tests/data/test865 index 59bf1c154b5b..0a9cd25d0130 100644 --- a/tests/data/test865 +++ b/tests/data/test865 @@ -18,14 +18,14 @@ AUTH PLAIN REPLY AUTH + REPLY AHVzZXIAc2VjcmV0 +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -46,12 +46,12 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret # # Verify data after the test has been "shot" - -CAPA -AUTH PLAIN -AHVzZXIAc2VjcmV0 -RETR %TESTNUMBER -QUIT + +CAPA +AUTH PLAIN +AHVzZXIAc2VjcmV0 +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test866 b/tests/data/test866 index adab0d896036..7d3459dfe509 100644 --- a/tests/data/test866 +++ b/tests/data/test866 @@ -18,14 +18,14 @@ REPLY AUTH + VXNlcm5hbWU6 REPLY dXNlcg== + UGFzc3dvcmQ6 REPLY c2VjcmV0 +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -46,13 +46,13 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret # # Verify data after the test has been "shot" - -CAPA -AUTH LOGIN -dXNlcg== -c2VjcmV0 -RETR %TESTNUMBER -QUIT + +CAPA +AUTH LOGIN +dXNlcg== +c2VjcmV0 +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test867 b/tests/data/test867 index 76ad1aa57c22..e05b332ad757 100644 --- a/tests/data/test867 +++ b/tests/data/test867 @@ -18,14 +18,14 @@ AUTH CRAM-MD5 REPLY AUTH + PDE5NzIuOTg3NjU0MzIxQGN1cmw+ REPLY dXNlciA3MDMxNzI1NTk5ZmRiYjVkNDEyNjg5YWEzMjNlM2UwYg== +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -50,12 +50,12 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret # # Verify data after the test has been "shot" - -CAPA -AUTH CRAM-MD5 -dXNlciA3MDMxNzI1NTk5ZmRiYjVkNDEyNjg5YWEzMjNlM2UwYg== -RETR %TESTNUMBER -QUIT + +CAPA +AUTH CRAM-MD5 +dXNlciA3MDMxNzI1NTk5ZmRiYjVkNDEyNjg5YWEzMjNlM2UwYg== +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test868 b/tests/data/test868 index 6807fa56f170..c2c8aa96429a 100644 --- a/tests/data/test868 +++ b/tests/data/test868 @@ -16,17 +16,17 @@ NTLM AUTH NTLM REPLY AUTH + -REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= + TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= + TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== REPLY TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -52,13 +52,13 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u testuser:testpass # # Verify data after the test has been "shot" - -CAPA -AUTH NTLM -TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -RETR %TESTNUMBER -QUIT + +CAPA +AUTH NTLM +TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test869 b/tests/data/test869 index b6f91a266a02..d10c6afb5322 100644 --- a/tests/data/test869 +++ b/tests/data/test869 @@ -19,14 +19,14 @@ REPLY AUTH + cmVhbG09ImN1cmwiLG5vbmNlPSI1MzAwZDE3YTFkNjk1YmQ0MTFlNGNkZjk2Zjk1NDh REPLY dXNlcm5hbWU9InVzZXIiLHJlYWxtPSJjdXJsIixub25jZT0iNTMwMGQxN2ExZDY5NWJkNDExZTRjZGY5NmY5NTQ4YzIzY2VkNjE3NSIsY25vbmNlPSIzNDMzMzIzMTM1MzMzMjMxMzYzMzMyMzEzNzMzMzIzMSIsbmM9IjAwMDAwMDAxIixkaWdlc3QtdXJpPSJwb3AvMTI3LjAuMC4xIixyZXNwb25zZT0xODMxNTU0OGM3ZjNhMzdlNzE2ZmE4ZTkwZGZhYjliNixxb3A9YXV0aA== + cnNwYXV0aD1mZWNiMzZiNzA4NmUwYjk1ZDkwNjQ1OWVmYThjYzI5ZQ== REPLY +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -56,13 +56,13 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret # # Verify data after the test has been "shot" - -CAPA -AUTH DIGEST-MD5 -dXNlcm5hbWU9InVzZXIiLHJlYWxtPSJjdXJsIixub25jZT0iNTMwMGQxN2ExZDY5NWJkNDExZTRjZGY5NmY5NTQ4YzIzY2VkNjE3NSIsY25vbmNlPSIzNDMzMzIzMTM1MzMzMjMxMzYzMzMyMzEzNzMzMzIzMSIsbmM9IjAwMDAwMDAxIixkaWdlc3QtdXJpPSJwb3AvMTI3LjAuMC4xIixyZXNwb25zZT0xODMxNTU0OGM3ZjNhMzdlNzE2ZmE4ZTkwZGZhYjliNixxb3A9YXV0aA== - -RETR %TESTNUMBER -QUIT + +CAPA +AUTH DIGEST-MD5 +dXNlcm5hbWU9InVzZXIiLHJlYWxtPSJjdXJsIixub25jZT0iNTMwMGQxN2ExZDY5NWJkNDExZTRjZGY5NmY5NTQ4YzIzY2VkNjE3NSIsY25vbmNlPSIzNDMzMzIzMTM1MzMzMjMxMzYzMzMyMzEzNzMzMzIzMSIsbmM9IjAwMDAwMDAxIixkaWdlc3QtdXJpPSJwb3AvMTI3LjAuMC4xIixyZXNwb25zZT0xODMxNTU0OGM3ZjNhMzdlNzE2ZmE4ZTkwZGZhYjliNixxb3A9YXV0aA== + +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test87 b/tests/data/test87 index f5d689d45d3b..6bbb35a4f00d 100644 --- a/tests/data/test87 +++ b/tests/data/test87 @@ -11,18 +11,18 @@ FAILURE # # Server-side - -HTTP/1.1 200 OK -Funny-head: yesyes -Content-Length: 15 - + +HTTP/1.1 200 OK +Funny-head: yesyes +Content-Length: 15 + the number one - -HTTP/1.1 200 OK -Funny-head: yesyes -Content-Length: 16 - + +HTTP/1.1 200 OK +Funny-head: yesyes +Content-Length: 16 + two is nice too @@ -50,11 +50,11 @@ urlglob with out of range -o #[num] usage # survives # - -HTTP/1.1 200 OK -Funny-head: yesyes -Content-Length: 16 - + +HTTP/1.1 200 OK +Funny-head: yesyes +Content-Length: 16 + two is nice too diff --git a/tests/data/test870 b/tests/data/test870 index b1329da9aa17..402cb69f978d 100644 --- a/tests/data/test870 +++ b/tests/data/test870 @@ -18,14 +18,14 @@ AUTH XOAUTH2 REPLY AUTH + REPLY dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -46,12 +46,12 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user --oauth2-bearer mF_9.B5f-4.1JqM # # Verify data after the test has been "shot" - -CAPA -AUTH XOAUTH2 -dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB -RETR %TESTNUMBER -QUIT + +CAPA +AUTH XOAUTH2 +dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test871 b/tests/data/test871 index 38335177d4d5..7a2e2603d4cc 100644 --- a/tests/data/test871 +++ b/tests/data/test871 @@ -18,14 +18,14 @@ RFC5034 AUTH PLAIN REPLY AUTH +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -46,11 +46,11 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret --sasl-ir # # Verify data after the test has been "shot" - -CAPA -AUTH PLAIN AHVzZXIAc2VjcmV0 -RETR %TESTNUMBER -QUIT + +CAPA +AUTH PLAIN AHVzZXIAc2VjcmV0 +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test872 b/tests/data/test872 index f6c5974262fd..6407a663e565 100644 --- a/tests/data/test872 +++ b/tests/data/test872 @@ -18,14 +18,14 @@ AUTH LOGIN REPLY AUTH + UGFzc3dvcmQ6 REPLY c2VjcmV0 +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -46,12 +46,12 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret --sasl-ir # # Verify data after the test has been "shot" - -CAPA -AUTH LOGIN dXNlcg== -c2VjcmV0 -RETR %TESTNUMBER -QUIT + +CAPA +AUTH LOGIN dXNlcg== +c2VjcmV0 +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test873 b/tests/data/test873 index 0f5f3be9b138..30a733e4efbf 100644 --- a/tests/data/test873 +++ b/tests/data/test873 @@ -19,14 +19,14 @@ AUTH NTLM REPLY AUTH + TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== REPLY TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -52,12 +52,12 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u testuser:testpass --sasl-ir # # Verify data after the test has been "shot" - -CAPA -AUTH NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -RETR %TESTNUMBER -QUIT + +CAPA +AUTH NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test874 b/tests/data/test874 index 810bc49d170b..40942d7965d6 100644 --- a/tests/data/test874 +++ b/tests/data/test874 @@ -18,14 +18,14 @@ RFC6749 AUTH XOAUTH2 REPLY AUTH +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -46,11 +46,11 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user --oauth2-bearer mF_9.B5f-4.1JqM --s # # Verify data after the test has been "shot" - -CAPA -AUTH XOAUTH2 dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB -RETR %TESTNUMBER -QUIT + +CAPA +AUTH XOAUTH2 dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test876 b/tests/data/test876 index 3cbed8b5eeb0..85ea5fe3b19b 100644 --- a/tests/data/test876 +++ b/tests/data/test876 @@ -49,10 +49,10 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret # # The multi interface considers a broken "CONNECT" as a prematurely broken # transfer and such a connection will not get a "QUIT" - -CAPA -AUTH CRAM-MD5 -* + +CAPA +AUTH CRAM-MD5 +* diff --git a/tests/data/test877 b/tests/data/test877 index e2cb4b376570..8f4ac37be1f4 100644 --- a/tests/data/test877 +++ b/tests/data/test877 @@ -50,11 +50,11 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u testuser:testpass # # The multi interface considers a broken "CONNECT" as a prematurely broken # transfer and such a connection will not get a "QUIT" - -CAPA -AUTH NTLM -TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -* + +CAPA +AUTH NTLM +TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +* diff --git a/tests/data/test878 b/tests/data/test878 index fe578c816f09..a12e96f02ead 100644 --- a/tests/data/test878 +++ b/tests/data/test878 @@ -51,10 +51,10 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret # # The multi interface considers a broken "CONNECT" as a prematurely broken # transfer and such a connection will not get a "QUIT" - -CAPA -AUTH DIGEST-MD5 -* + +CAPA +AUTH DIGEST-MD5 +* diff --git a/tests/data/test879 b/tests/data/test879 index cdf25d02a143..ad37486d29e6 100644 --- a/tests/data/test879 +++ b/tests/data/test879 @@ -22,14 +22,14 @@ REPLY * -ERR AUTH exchange cancelled by client REPLY "AUTH PLAIN" + REPLY AHVzZXIAc2VjcmV0 +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -54,14 +54,14 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret # # Verify data after the test has been "shot" - -CAPA -AUTH CRAM-MD5 -* -AUTH PLAIN -AHVzZXIAc2VjcmV0 -RETR %TESTNUMBER -QUIT + +CAPA +AUTH CRAM-MD5 +* +AUTH PLAIN +AHVzZXIAc2VjcmV0 +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test88 b/tests/data/test88 index c483649804dd..39c2fb82e0b1 100644 --- a/tests/data/test88 +++ b/tests/data/test88 @@ -12,39 +12,39 @@ HTTP Digest auth auth_required - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -Content-Type: text/html; charset=iso-8859-1 -Connection: close - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +Content-Type: text/html; charset=iso-8859-1 +Connection: close + This is not the real page # This is supposed to be returned when the server gets a # Authorization: Digest line passed-in from the client - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Connection: close - + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Connection: close + This IS the real page! - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" -Content-Type: text/html; charset=iso-8859-1 -Connection: close - -HTTP/1.1 200 OK swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -Content-Type: text/html; charset=iso-8859-1 -Connection: close - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Digest realm="testrealm", nonce="1053604145" +Content-Type: text/html; charset=iso-8859-1 +Connection: close + +HTTP/1.1 200 OK swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +Content-Type: text/html; charset=iso-8859-1 +Connection: close + This IS the real page! @@ -76,20 +76,20 @@ four is the number of lines # Verify data after the test has been "shot" - -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 0 - -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER", response="78a49fa53d0c228778297687d4168e71" -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 85 - + +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 0 + +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/%TESTNUMBER", response="78a49fa53d0c228778297687d4168e71" +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 85 + This is data we upload with PUT a second line line three diff --git a/tests/data/test880 b/tests/data/test880 index 21536d81f50b..d7fc29676374 100644 --- a/tests/data/test880 +++ b/tests/data/test880 @@ -22,14 +22,14 @@ REPLY * -ERR AUTH exchange cancelled by client REPLY "AUTH PLAIN" + REPLY AHVzZXIAc2VjcmV0 +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -55,15 +55,15 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret # # Verify data after the test has been "shot" - -CAPA -AUTH NTLM -TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -* -AUTH PLAIN -AHVzZXIAc2VjcmV0 -RETR %TESTNUMBER -QUIT + +CAPA +AUTH NTLM +TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +* +AUTH PLAIN +AHVzZXIAc2VjcmV0 +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test881 b/tests/data/test881 index a197cb1e603d..7dbbd21a41be 100644 --- a/tests/data/test881 +++ b/tests/data/test881 @@ -22,14 +22,14 @@ REPLY * -ERR AUTH exchange cancelled by client REPLY "AUTH PLAIN" + REPLY AHVzZXIAc2VjcmV0 +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -56,14 +56,14 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret # # Verify data after the test has been "shot" - -CAPA -AUTH DIGEST-MD5 -* -AUTH PLAIN -AHVzZXIAc2VjcmV0 -RETR %TESTNUMBER -QUIT + +CAPA +AUTH DIGEST-MD5 +* +AUTH PLAIN +AHVzZXIAc2VjcmV0 +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test882 b/tests/data/test882 index b4fa465340b8..b6fecd61164c 100644 --- a/tests/data/test882 +++ b/tests/data/test882 @@ -12,16 +12,16 @@ connection reuse # Server-side -REPLY "PASS secret" +OK Login successful +REPLY "PASS secret" +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -42,17 +42,17 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER001 -u user.one:secret -: pop3://%HOSTIP:%PO # # Verify data after the test has been "shot" - -CAPA -USER user.one -PASS secret -RETR %TESTNUMBER001 -QUIT -CAPA -USER user.two -PASS secret -RETR %TESTNUMBER002 -QUIT + +CAPA +USER user.one +PASS secret +RETR %TESTNUMBER001 +QUIT +CAPA +USER user.two +PASS secret +RETR %TESTNUMBER002 +QUIT diff --git a/tests/data/test883 b/tests/data/test883 index 943d27824831..2ca23c1e7a27 100644 --- a/tests/data/test883 +++ b/tests/data/test883 @@ -18,14 +18,14 @@ AUTH EXTERNAL REPLY AUTH + REPLY dXNlcg== +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -46,12 +46,12 @@ POP3 external authentication # # Verify data after the test has been "shot" - -CAPA -AUTH EXTERNAL -dXNlcg== -RETR %TESTNUMBER -QUIT + +CAPA +AUTH EXTERNAL +dXNlcg== +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test884 b/tests/data/test884 index 611649c2d292..98b311c024d0 100644 --- a/tests/data/test884 +++ b/tests/data/test884 @@ -18,14 +18,14 @@ AUTH EXTERNAL REPLY AUTH + REPLY = +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -46,12 +46,12 @@ POP3 external authentication without credentials # # Verify data after the test has been "shot" - -CAPA -AUTH EXTERNAL -= -RETR %TESTNUMBER -QUIT + +CAPA +AUTH EXTERNAL += +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test885 b/tests/data/test885 index 6d2383874f59..ab452732d19e 100644 --- a/tests/data/test885 +++ b/tests/data/test885 @@ -18,14 +18,14 @@ RFC5034 AUTH EXTERNAL REPLY AUTH +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -46,11 +46,11 @@ POP3 external authentication with initial response # # Verify data after the test has been "shot" - -CAPA -AUTH EXTERNAL dXNlcg== -RETR %TESTNUMBER -QUIT + +CAPA +AUTH EXTERNAL dXNlcg== +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test886 b/tests/data/test886 index e926fe21a133..1c463ef829c6 100644 --- a/tests/data/test886 +++ b/tests/data/test886 @@ -18,14 +18,14 @@ RFC5034 AUTH EXTERNAL REPLY AUTH +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -46,11 +46,11 @@ POP3 external authentication with initial response without credentials # # Verify data after the test has been "shot" - -CAPA -AUTH EXTERNAL = -RETR %TESTNUMBER -QUIT + +CAPA +AUTH EXTERNAL = +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test887 b/tests/data/test887 index ada1ce1a6b00..5075a6fe3a5d 100644 --- a/tests/data/test887 +++ b/tests/data/test887 @@ -19,14 +19,14 @@ AUTH OAUTHBEARER REPLY AUTH + REPLY %b64[n,a=user,%01host=127.0.0.1%01port=%POP3PORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -47,12 +47,12 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user --oauth2-bearer mF_9.B5f-4.1JqM # # Verify data after the test has been "shot" - -CAPA -AUTH OAUTHBEARER -%b64[n,a=user,%01host=127.0.0.1%01port=%POP3PORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% -RETR %TESTNUMBER -QUIT + +CAPA +AUTH OAUTHBEARER +%b64[n,a=user,%01host=127.0.0.1%01port=%POP3PORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test888 b/tests/data/test888 index 289f8137e153..b6e222477450 100644 --- a/tests/data/test888 +++ b/tests/data/test888 @@ -19,14 +19,14 @@ RFC7628 AUTH OAUTHBEARER REPLY AUTH +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -47,11 +47,11 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user --oauth2-bearer mF_9.B5f-4.1JqM --s # # Verify data after the test has been "shot" - -CAPA -AUTH OAUTHBEARER %b64[n,a=user,%01host=127.0.0.1%01port=%POP3PORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% -RETR %TESTNUMBER -QUIT + +CAPA +AUTH OAUTHBEARER %b64[n,a=user,%01host=127.0.0.1%01port=%POP3PORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test889 b/tests/data/test889 index 36d0e32d1f5d..c2982dc17de7 100644 --- a/tests/data/test889 +++ b/tests/data/test889 @@ -46,11 +46,11 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user --oauth2-bearer mF_9.B5f-4.1JqM # # The multi interface considers a broken "CONNECT" as a prematurely broken # transfer and such a connection will not get a "QUIT" - -CAPA -AUTH OAUTHBEARER -%b64[n,a=user,%01host=127.0.0.1%01port=%POP3PORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% -AQ== + +CAPA +AUTH OAUTHBEARER +%b64[n,a=user,%01host=127.0.0.1%01port=%POP3PORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% +AQ== diff --git a/tests/data/test89 b/tests/data/test89 index fb621ae2b951..049b2b0b698f 100644 --- a/tests/data/test89 +++ b/tests/data/test89 @@ -16,71 +16,71 @@ NTLM This is supposed to be returned when the server gets a first Authorization: NTLM line passed-in from the client --> - -HTTP/1.1 401 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + This is not the real page either! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 301 Things are fine in server land swsclose -Server: Microsoft-IIS/5.0 -Connection: close -Location: /you/%TESTNUMBER0010 - + +HTTP/1.1 301 Things are fine in server land swsclose +Server: Microsoft-IIS/5.0 +Connection: close +Location: /you/%TESTNUMBER0010 + # This is the first reply after the redirection - -HTTP/1.1 401 Now gimme that second round of crap -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - + +HTTP/1.1 401 Now gimme that second round of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + This is not the real page either! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine in server land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - -HTTP/1.1 301 Things are fine in server land swsclose -Server: Microsoft-IIS/5.0 -Connection: close -Location: /you/%TESTNUMBER0010 - -HTTP/1.1 401 Now gimme that second round of crap -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - -HTTP/1.1 200 Things are fine in server land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + +HTTP/1.1 301 Things are fine in server land swsclose +Server: Microsoft-IIS/5.0 +Connection: close +Location: /you/%TESTNUMBER0010 + +HTTP/1.1 401 Now gimme that second round of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + +HTTP/1.1 200 Things are fine in server land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! @@ -106,31 +106,31 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --ntlm -L # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Accept: */* - -GET /you/%TESTNUMBER0010 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* - -GET /you/%TESTNUMBER0010 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Accept: */* + +GET /you/%TESTNUMBER0010 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* + +GET /you/%TESTNUMBER0010 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test890 b/tests/data/test890 index 70ac50459732..9107a32e224d 100644 --- a/tests/data/test890 +++ b/tests/data/test890 @@ -46,10 +46,10 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user --oauth2-bearer mF_9.B5f-4.1JqM --s # # The multi interface considers a broken "CONNECT" as a prematurely broken # transfer and such a connection will not get a "QUIT" - -CAPA -AUTH OAUTHBEARER %b64[n,a=user,%01host=127.0.0.1%01port=%POP3PORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% -AQ== + +CAPA +AUTH OAUTHBEARER %b64[n,a=user,%01host=127.0.0.1%01port=%POP3PORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% +AQ== diff --git a/tests/data/test891 b/tests/data/test891 index 6d0242800560..b0de3be183a0 100644 --- a/tests/data/test891 +++ b/tests/data/test891 @@ -35,10 +35,10 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret # # Verify data after the test has been "shot" - -CAPA -AUTH CRAM-MD5 -dXNlciA1YzhkYjAzZjA0Y2VjMGY0M2JjYjA2MDAyMzkxNDE5MA== + +CAPA +AUTH CRAM-MD5 +dXNlciA1YzhkYjAzZjA0Y2VjMGY0M2JjYjA2MDAyMzkxNDE5MA== # CURLE_LOGIN_DENIED diff --git a/tests/data/test892 b/tests/data/test892 index c77b35da8a7a..0b19c744e341 100644 --- a/tests/data/test892 +++ b/tests/data/test892 @@ -18,14 +18,14 @@ AUTH PLAIN REPLY AUTH + REPLY c2hhcmVkLW1haWxib3gAdXNlcgBzZWNyZXQ= +OK Login successful - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -46,12 +46,12 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret --sasl-authzid shared-mailbo # # Verify data after the test has been "shot" - -CAPA -AUTH PLAIN -c2hhcmVkLW1haWxib3gAdXNlcgBzZWNyZXQ= -RETR %TESTNUMBER -QUIT + +CAPA +AUTH PLAIN +c2hhcmVkLW1haWxib3gAdXNlcgBzZWNyZXQ= +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test893 b/tests/data/test893 index 021b4d52579d..3db486b0d0d8 100644 --- a/tests/data/test893 +++ b/tests/data/test893 @@ -44,10 +44,10 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u kurt:xipj3plmq --sasl-authzid ursel # # The multi interface considers a broken "CONNECT" as a prematurely broken # transfer and such a connection will not get a "QUIT" - -CAPA -AUTH PLAIN -dXJzZWwAa3VydAB4aXBqM3BsbXE= + +CAPA +AUTH PLAIN +dXJzZWwAa3VydAB4aXBqM3BsbXE= diff --git a/tests/data/test895 b/tests/data/test895 index dbf17fdc40db..d165572088e5 100644 --- a/tests/data/test895 +++ b/tests/data/test895 @@ -11,14 +11,14 @@ FETCH # # Server-side - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -39,12 +39,12 @@ IMAP with --login-options 'AUTH=*' # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN "\"user" "sec\"ret{" -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 LOGIN "\"user" "sec\"ret{" +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test897 b/tests/data/test897 index fe7e1e70a007..acf1cd5fe4d7 100644 --- a/tests/data/test897 +++ b/tests/data/test897 @@ -10,11 +10,11 @@ FETCH # # Server-side - -body - --- - yours sincerely + +body + +-- + yours sincerely POSTFETCH extra stuff sent in the envelope after the body @@ -38,33 +38,33 @@ IMAP and envelope meta data after body transfer # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN user secret -A003 SELECT %TESTNUMBER -A004 FETCH 123 BODY[1] -A005 LOGOUT + +A001 CAPABILITY +A002 LOGIN user secret +A003 SELECT %TESTNUMBER +A004 FETCH 123 BODY[1] +A005 LOGOUT - - _ _ ____ _ - ___| | | | _ \| | - / __| | | | |_) | | - | (__| |_| | _ {| |___ - \___|\___/|_| \_\_____| -* OK curl IMAP server ready to serve -A001 BAD Command -A002 OK LOGIN completed -* 172 EXISTS -* 1 RECENT -* OK [UNSEEN 12] Message 12 is first unseen -* OK [UIDVALIDITY 3857529045] UIDs valid -* OK [UIDNEXT 4392] Predicted next UID -* FLAGS (\Answered \Flagged \Deleted \Seen \Draft) -* OK [PERMANENTFLAGS (\Deleted \Seen \*)] Limited -A003 OK [READ-WRITE] SELECT completed -* 123 FETCH (BODY[1] {31} -extra stuff sent in the envelope after the body) -A004 OK FETCH completed + + _ _ ____ _ + ___| | | | _ \| | + / __| | | | |_) | | + | (__| |_| | _ {| |___ + \___|\___/|_| \_\_____| +* OK curl IMAP server ready to serve +A001 BAD Command +A002 OK LOGIN completed +* 172 EXISTS +* 1 RECENT +* OK [UNSEEN 12] Message 12 is first unseen +* OK [UIDVALIDITY 3857529045] UIDs valid +* OK [UIDNEXT 4392] Predicted next UID +* FLAGS (\Answered \Flagged \Deleted \Seen \Draft) +* OK [PERMANENTFLAGS (\Deleted \Seen \*)] Limited +A003 OK [READ-WRITE] SELECT completed +* 123 FETCH (BODY[1] {31} +extra stuff sent in the envelope after the body) +A004 OK FETCH completed diff --git a/tests/data/test898 b/tests/data/test898 index 4d22862d4a3d..1e4211207c0c 100644 --- a/tests/data/test898 +++ b/tests/data/test898 @@ -74,21 +74,21 @@ HTTP with custom auth and cookies redirected to HTTP on a diff port # # Verify data after the test has been "shot" - -GET http://firsthost.com/ HTTP/1.1 -Host: firsthost.com -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive -Authorization: Basic %b64[joe:secret]b64% -Cookie: userpwd=am9lOnNlY3JldA== - -GET http://firsthost.com:9999/a/path/%TESTNUMBER0002 HTTP/1.1 -Host: firsthost.com:9999 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://firsthost.com/ HTTP/1.1 +Host: firsthost.com +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive +Authorization: Basic %b64[joe:secret]b64% +Cookie: userpwd=am9lOnNlY3JldA== + +GET http://firsthost.com:9999/a/path/%TESTNUMBER0002 HTTP/1.1 +Host: firsthost.com:9999 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test899 b/tests/data/test899 index e1d70920c2cb..cb244876cc1f 100644 --- a/tests/data/test899 +++ b/tests/data/test899 @@ -10,7 +10,7 @@ HTTP Basic auth # # Server-side - + HTTP/1.1 302 go go go Content-Length: 8 Location: http://user:pass@%HOSTIP:%HTTPPORT/basic-auth/user/%TESTNUMBER0002 @@ -19,7 +19,7 @@ Funny-head: yesyes notreal - + HTTP/1.1 200 OK Content-Length: 6 Content-Type: text/html @@ -46,7 +46,7 @@ http://first:secret@%HOSTIP:%HTTPPORT/%TESTNUMBER -L # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT Authorization: Basic %b64[first:secret]b64% diff --git a/tests/data/test9 b/tests/data/test9 index 90b146e75a33..9ca6c831d4ad 100644 --- a/tests/data/test9 +++ b/tests/data/test9 @@ -46,30 +46,30 @@ bar ^(Content-Type: multipart/form-data;|------------).* -POST /we/want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 431 -Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763 - -------------------------------9ef8d6205763 -Content-Disposition: form-data; name="name" - -daniel -------------------------------9ef8d6205763 -Content-Disposition: form-data; name="tool" - -curl -------------------------------9ef8d6205763 -Content-Disposition: form-data; name="file"; filename="test9.txt" -Content-Type: text/plain - +POST /we/want/%TESTNUMBER HTTP/1.1%CR +Host: %HOSTIP:%HTTPPORT%CR +User-Agent: curl/%VERSION%CR +Accept: */*%CR +Content-Length: 431%CR +Content-Type: multipart/form-data; boundary=----------------------------9ef8d6205763%CR +%CR +------------------------------9ef8d6205763%CR +Content-Disposition: form-data; name="name"%CR +%CR +daniel%CR +------------------------------9ef8d6205763%CR +Content-Disposition: form-data; name="tool"%CR +%CR +curl%CR +------------------------------9ef8d6205763%CR +Content-Disposition: form-data; name="file"; filename="test9.txt"%CR +Content-Type: text/plain%CR +%CR foo- This is a moo- bar - -------------------------------9ef8d6205763-- +%CR +------------------------------9ef8d6205763--%CR diff --git a/tests/data/test90 b/tests/data/test90 index b043ce0431b0..25b8d10555dc 100644 --- a/tests/data/test90 +++ b/tests/data/test90 @@ -12,113 +12,113 @@ NTLM # Server-side - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Basic -WWW-Authenticate: Wild-and-crazy -WWW-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Basic +WWW-Authenticate: Wild-and-crazy +WWW-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page # This is supposed to be returned when the server gets a first # Authorization: NTLM line passed-in from the client - -HTTP/1.1 401 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + This is not the real page either! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 301 Things are fine in server land swsclose -Server: Microsoft-IIS/5.0 -Connection: close -Location: /you/%TESTNUMBER0010 - + +HTTP/1.1 301 Things are fine in server land swsclose +Server: Microsoft-IIS/5.0 +Connection: close +Location: /you/%TESTNUMBER0010 + # This is the first reply after the redirection - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Basic -WWW-Authenticate: Wild-and-crazy -WWW-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Basic +WWW-Authenticate: Wild-and-crazy +WWW-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + This is not the real page - -HTTP/1.1 401 Now gimme that second round of crap -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - + +HTTP/1.1 401 Now gimme that second round of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + This is not the real page either! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine in server land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Basic -WWW-Authenticate: Wild-and-crazy -WWW-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 401 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - -HTTP/1.1 301 Things are fine in server land swsclose -Server: Microsoft-IIS/5.0 -Connection: close -Location: /you/%TESTNUMBER0010 - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Basic -WWW-Authenticate: Wild-and-crazy -WWW-Authenticate: NTLM -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 26 - -HTTP/1.1 401 Now gimme that second round of crap -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 34 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - -HTTP/1.1 200 Things are fine in server land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Basic +WWW-Authenticate: Wild-and-crazy +WWW-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + +HTTP/1.1 301 Things are fine in server land swsclose +Server: Microsoft-IIS/5.0 +Connection: close +Location: /you/%TESTNUMBER0010 + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Basic +WWW-Authenticate: Wild-and-crazy +WWW-Authenticate: NTLM +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 26 + +HTTP/1.1 401 Now gimme that second round of crap +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 34 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + +HTTP/1.1 200 Things are fine in server land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! @@ -144,41 +144,41 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -u testuser:testpass --anyauth -L # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Accept: */* - -GET /you/%TESTNUMBER0010 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /you/%TESTNUMBER0010 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* - -GET /you/%TESTNUMBER0010 HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Accept: */* + +GET /you/%TESTNUMBER0010 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /you/%TESTNUMBER0010 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* + +GET /you/%TESTNUMBER0010 HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test900 b/tests/data/test900 index 371544b7657a..8eb433b78e37 100644 --- a/tests/data/test900 +++ b/tests/data/test900 @@ -19,33 +19,37 @@ smtp SMTP - -From: different -To: another - -body - + +From: different%CR +To: another%CR +%CR +body%CR +%repeat[6553 x 0123456789]% + + -smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -T - +smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -T %LOGDIR/mail%TESTNUMBER # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA +QUIT -From: different -To: another - -body -. +From: different%CR +To: another%CR +%CR +body%CR +%repeat[6553 x 0123456789]% +%CR +.%CR diff --git a/tests/data/test901 b/tests/data/test901 index a97233d87166..7e0b7034acd4 100644 --- a/tests/data/test901 +++ b/tests/data/test901 @@ -19,17 +19,17 @@ smtp SMTP with CRLF-dot-CRLF in data - -From: different -To: another - - -. -. - -. - -body + +From: different +To: another + + +. +. + +. + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -T - @@ -39,25 +39,25 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA +QUIT - -From: different -To: another - - -.. -.. - -.. - -body -. + +From: different +To: another + + +.. +.. + +.. + +body +. diff --git a/tests/data/test902 b/tests/data/test902 index 961fc7bfbf82..b913e4fcc8ba 100644 --- a/tests/data/test902 +++ b/tests/data/test902 @@ -24,11 +24,11 @@ smtp RFC821-only SMTP server (EHLO not supported) - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -T - @@ -38,20 +38,20 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -HELO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +HELO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA +QUIT - -From: different -To: another - -body -. + +From: different +To: another + +body +. diff --git a/tests/data/test903 b/tests/data/test903 index f4d616ec67b0..07c2cd3d3a79 100644 --- a/tests/data/test903 +++ b/tests/data/test903 @@ -28,8 +28,8 @@ smtp SMTP plain authentication - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - @@ -39,18 +39,18 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH PLAIN -AHVzZXIAc2VjcmV0 -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH PLAIN +AHVzZXIAc2VjcmV0 +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test904 b/tests/data/test904 index b5916ef41974..1c60c28fe52f 100644 --- a/tests/data/test904 +++ b/tests/data/test904 @@ -28,8 +28,8 @@ smtp SMTP login authentication - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - @@ -39,19 +39,19 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH LOGIN -dXNlcg== -c2VjcmV0 -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH LOGIN +dXNlcg== +c2VjcmV0 +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test905 b/tests/data/test905 index 9f8d417a44cb..2c6f6e7c576f 100644 --- a/tests/data/test905 +++ b/tests/data/test905 @@ -32,8 +32,8 @@ digest SMTP CRAM-MD5 authentication - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - @@ -43,18 +43,18 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH CRAM-MD5 -dXNlciA3MDMxNzI1NTk5ZmRiYjVkNDEyNjg5YWEzMjNlM2UwYg== -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH CRAM-MD5 +dXNlciA3MDMxNzI1NTk5ZmRiYjVkNDEyNjg5YWEzMjNlM2UwYg== +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test906 b/tests/data/test906 index 863dce698c7b..4b99598e3744 100644 --- a/tests/data/test906 +++ b/tests/data/test906 @@ -15,7 +15,7 @@ NTLM AUTH NTLM REPLY AUTH 334 NTLM supported -REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= 334 TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +REPLY TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= 334 TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== REPLY TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= 235 Authenticated @@ -34,8 +34,8 @@ SSL SMTP NTLM authentication - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u testuser:testpass -T - @@ -45,19 +45,19 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH NTLM -TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH NTLM +TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test907 b/tests/data/test907 index 9fddbc0de8e3..48ae320b81d3 100644 --- a/tests/data/test907 +++ b/tests/data/test907 @@ -38,8 +38,8 @@ CURL_ENTROPY=12345678 SMTP DIGEST-MD5 authentication - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - @@ -49,19 +49,19 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH DIGEST-MD5 -dXNlcm5hbWU9InVzZXIiLHJlYWxtPSJjdXJsIixub25jZT0iNTMwMGQxN2ExZDY5NWJkNDExZTRjZGY5NmY5NTQ4YzIzY2VkNjE3NSIsY25vbmNlPSIzNDMzMzIzMTM1MzMzMjMxMzYzMzMyMzEzNzMzMzIzMSIsbmM9IjAwMDAwMDAxIixkaWdlc3QtdXJpPSJzbXRwLzEyNy4wLjAuMSIscmVzcG9uc2U9YTI3YzQzOTVmMzM4Njc0M2JlMTIyMDdiN2QxMTIxYzUscW9wPWF1dGg= - -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH DIGEST-MD5 +dXNlcm5hbWU9InVzZXIiLHJlYWxtPSJjdXJsIixub25jZT0iNTMwMGQxN2ExZDY5NWJkNDExZTRjZGY5NmY5NTQ4YzIzY2VkNjE3NSIsY25vbmNlPSIzNDMzMzIzMTM1MzMzMjMxMzYzMzMyMzEzNzMzMzIzMSIsbmM9IjAwMDAwMDAxIixkaWdlc3QtdXJpPSJzbXRwLzEyNy4wLjAuMSIscmVzcG9uc2U9YTI3YzQzOTVmMzM4Njc0M2JlMTIyMDdiN2QxMTIxYzUscW9wPWF1dGg= + +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test908 b/tests/data/test908 index 202977a64a1f..7bd4d5190b3b 100644 --- a/tests/data/test908 +++ b/tests/data/test908 @@ -28,8 +28,8 @@ smtp SMTP OAuth 2.0 (XOAUTH2) authentication - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T - @@ -39,18 +39,18 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH XOAUTH2 -dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH XOAUTH2 +dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test909 b/tests/data/test909 index e054e49351de..91b720725769 100644 --- a/tests/data/test909 +++ b/tests/data/test909 @@ -19,11 +19,11 @@ smtp SMTP without SIZE support - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -T %LOGDIR/test%TESTNUMBER.eml @@ -33,19 +33,19 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA +QUIT - -From: different -To: another - -body -. + +From: different +To: another + +body +. diff --git a/tests/data/test91 b/tests/data/test91 index 37d8e4e36c0a..cb68194ae03f 100644 --- a/tests/data/test91 +++ b/tests/data/test91 @@ -9,62 +9,62 @@ NTLM # Server-side - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Magic-Negotiate -WWW-Authenticate: NTLM -WWW-Authenticate: Basic realm="daniel" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 -Connection: close - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Magic-Negotiate +WWW-Authenticate: NTLM +WWW-Authenticate: Basic realm="daniel" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 +Connection: close + # This is supposed to be returned when the server gets a first # Authorization: NTLM line passed-in from the client - -HTTP/1.1 401 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Length: 34 -Content-Type: text/html; charset=iso-8859-1 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Length: 34 +Content-Type: text/html; charset=iso-8859-1 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + This is not the real page either! # This is supposed to be returned when the server gets the second # Authorization: NTLM line passed-in from the client - -HTTP/1.1 200 Things are fine in server land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 200 Things are fine in server land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! - -HTTP/1.1 401 Authorization Required swsclose -Server: Apache/1.3.27 (Darwin) PHP/4.1.2 -WWW-Authenticate: Magic-Negotiate -WWW-Authenticate: NTLM -WWW-Authenticate: Basic realm="daniel" -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 0 -Connection: close - -HTTP/1.1 401 Now gimme that second request of crap -Server: Microsoft-IIS/5.0 -Content-Length: 34 -Content-Type: text/html; charset=iso-8859-1 -WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== - -HTTP/1.1 200 Things are fine in server land swsclose -Server: Microsoft-IIS/5.0 -Content-Type: text/html; charset=iso-8859-1 -Content-Length: 32 - + +HTTP/1.1 401 Authorization Required swsclose +Server: Apache/1.3.27 (Darwin) PHP/4.1.2 +WWW-Authenticate: Magic-Negotiate +WWW-Authenticate: NTLM +WWW-Authenticate: Basic realm="daniel" +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 0 +Connection: close + +HTTP/1.1 401 Now gimme that second request of crap +Server: Microsoft-IIS/5.0 +Content-Length: 34 +Content-Type: text/html; charset=iso-8859-1 +WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== + +HTTP/1.1 200 Things are fine in server land swsclose +Server: Microsoft-IIS/5.0 +Content-Type: text/html; charset=iso-8859-1 +Content-Length: 32 + Finally, this is the real page! @@ -90,24 +90,24 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --anyauth -u mydomain\\myself:secret # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -User-Agent: curl/%VERSION -Accept: */* - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAgACABwAAAABgAGAHgAAAALAAsAfgAAAAAAAAAAAAAAhoIBAMIyJpR5mHpg2FZha5kRaFZ9436GAxPu0C5llxexSQ5QzVkiLSfkcpVyRgCXXqR+Am15ZG9tYWlubXlzZWxmV09SS1NUQVRJT04= -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +User-Agent: curl/%VERSION +Accept: */* + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAgACABwAAAABgAGAHgAAAALAAsAfgAAAAAAAAAAAAAAhoIBAMIyJpR5mHpg2FZha5kRaFZ9436GAxPu0C5llxexSQ5QzVkiLSfkcpVyRgCXXqR+Am15ZG9tYWlubXlzZWxmV09SS1NUQVRJT04= +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test910 b/tests/data/test910 index 521318ace546..bc572a36ee7a 100644 --- a/tests/data/test910 +++ b/tests/data/test910 @@ -19,10 +19,10 @@ smtp SMTP without terminating CRLF - -From: different -To: another - + +From: different +To: another + body @@ -33,19 +33,19 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA +QUIT - -From: different -To: another - -body -. + +From: different +To: another + +body +. diff --git a/tests/data/test911 b/tests/data/test911 index b0c5d0eb829d..0ee44f2b84cc 100644 --- a/tests/data/test911 +++ b/tests/data/test911 @@ -32,15 +32,15 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA +QUIT - -. + +. diff --git a/tests/data/test912 b/tests/data/test912 index 4977a4e82170..a5e284c7e69e 100644 --- a/tests/data/test912 +++ b/tests/data/test912 @@ -23,11 +23,11 @@ smtp SMTP with SIZE support - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -T %LOGDIR/test%TESTNUMBER.eml @@ -37,19 +37,19 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: SIZE=38 -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: SIZE=38 +RCPT TO: +DATA +QUIT - -From: different -To: another - -body -. + +From: different +To: another + +body +. diff --git a/tests/data/test913 b/tests/data/test913 index a0aed0072b2d..20373cf183b2 100644 --- a/tests/data/test913 +++ b/tests/data/test913 @@ -23,11 +23,11 @@ smtp SMTP with large message SIZE - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -T %LOGDIR/test%TESTNUMBER.eml @@ -41,10 +41,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr 55 - -EHLO %TESTNUMBER -MAIL FROM: SIZE=38 -QUIT + +EHLO %TESTNUMBER +MAIL FROM: SIZE=38 +QUIT diff --git a/tests/data/test914 b/tests/data/test914 index 56ae524b0a3b..a4a617a8bea6 100644 --- a/tests/data/test914 +++ b/tests/data/test914 @@ -22,11 +22,11 @@ smtp SMTP invalid --mail-from - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from invalid -T %LOGDIR/test%TESTNUMBER.eml @@ -40,10 +40,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr 55 - -EHLO %TESTNUMBER -MAIL FROM: -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +QUIT diff --git a/tests/data/test915 b/tests/data/test915 index 9211c3407997..5243da9003c4 100644 --- a/tests/data/test915 +++ b/tests/data/test915 @@ -19,11 +19,11 @@ smtp SMTP without --mail-from - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com -T - @@ -33,19 +33,19 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com -T - # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM:<> -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM:<> +RCPT TO: +DATA +QUIT - -From: different -To: another - -body -. + +From: different +To: another + +body +. diff --git a/tests/data/test916 b/tests/data/test916 index 677a647fd3ba..9d25ccae3ddc 100644 --- a/tests/data/test916 +++ b/tests/data/test916 @@ -19,11 +19,11 @@ smtp SMTP with invalid --mail-rcpt - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt invalid --mail-from sender@example.com -T - @@ -37,11 +37,11 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt invalid --mail-from sender@exam 55 - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +QUIT diff --git a/tests/data/test917 b/tests/data/test917 index d53fbd10c3a3..5f009c772083 100644 --- a/tests/data/test917 +++ b/tests/data/test917 @@ -19,11 +19,11 @@ smtp SMTP with multiple --mail-rcpt - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient.one@example.com --mail-rcpt recipient.two@example.com --mail-rcpt recipient.three@example.com --mail-rcpt recipient.four@example.com --mail-rcpt recipient.five@example.com --mail-from sender@example.com -T - @@ -33,23 +33,23 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient.one@example.com --mai # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -RCPT TO: -RCPT TO: -RCPT TO: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +RCPT TO: +RCPT TO: +RCPT TO: +RCPT TO: +DATA +QUIT - -From: different -To: another - -body -. + +From: different +To: another + +body +. diff --git a/tests/data/test918 b/tests/data/test918 index c49128fa9169..491e8be195c7 100644 --- a/tests/data/test918 +++ b/tests/data/test918 @@ -19,11 +19,11 @@ smtp SMTP with multiple and invalid --mail-rcpt - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient.one@example.com --mail-rcpt invalid --mail-rcpt recipient.three@example.com --mail-rcpt sTrAnGe --mail-rcpt recipient.five@example.com --mail-from sender@example.com -T - @@ -37,12 +37,12 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient.one@example.com --mai 55 - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -RCPT TO: -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +RCPT TO: +QUIT diff --git a/tests/data/test919 b/tests/data/test919 index 833a67c97b50..0d2ff8e1195e 100644 --- a/tests/data/test919 +++ b/tests/data/test919 @@ -28,8 +28,8 @@ smtp SMTP plain authentication with initial response - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret --sasl-ir -T - @@ -39,17 +39,17 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH PLAIN AHVzZXIAc2VjcmV0 -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH PLAIN AHVzZXIAc2VjcmV0 +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test92 b/tests/data/test92 index f6250d196253..509bfe75dd09 100644 --- a/tests/data/test92 +++ b/tests/data/test92 @@ -10,32 +10,32 @@ Resume # Server-side - -HTTP/1.1 416 Requested Range Not Satisfiable -Date: Fri, 24 Oct 2003 21:33:12 GMT -Server: Apache/1.3.19 (Unix) (Red-Hat/Linux) mod_ssl/2.8.1 OpenSSL/0.9.6 PHP/4.3.1 -Last-Modified: Fri, 24 Oct 2003 18:01:23 GMT -ETag: "ab57a-507-3f9968f3" -Accept-Ranges: bytes -Content-Length: 4 -Content-Range: bytes */87 -Content-Type: image/gif - + +HTTP/1.1 416 Requested Range Not Satisfiable +Date: Fri, 24 Oct 2003 21:33:12 GMT +Server: Apache/1.3.19 (Unix) (Red-Hat/Linux) mod_ssl/2.8.1 OpenSSL/0.9.6 PHP/4.3.1 +Last-Modified: Fri, 24 Oct 2003 18:01:23 GMT +ETag: "ab57a-507-3f9968f3" +Accept-Ranges: bytes +Content-Length: 4 +Content-Range: bytes */87 +Content-Type: image/gif + bad # The body should be ignored. - -HTTP/1.1 416 Requested Range Not Satisfiable -Date: Fri, 24 Oct 2003 21:33:12 GMT -Server: Apache/1.3.19 (Unix) (Red-Hat/Linux) mod_ssl/2.8.1 OpenSSL/0.9.6 PHP/4.3.1 -Last-Modified: Fri, 24 Oct 2003 18:01:23 GMT -ETag: "ab57a-507-3f9968f3" -Accept-Ranges: bytes -Content-Length: 4 -Content-Range: bytes */87 -Content-Type: image/gif - + +HTTP/1.1 416 Requested Range Not Satisfiable +Date: Fri, 24 Oct 2003 21:33:12 GMT +Server: Apache/1.3.19 (Unix) (Red-Hat/Linux) mod_ssl/2.8.1 OpenSSL/0.9.6 PHP/4.3.1 +Last-Modified: Fri, 24 Oct 2003 18:01:23 GMT +ETag: "ab57a-507-3f9968f3" +Accept-Ranges: bytes +Content-Length: 4 +Content-Range: bytes */87 +Content-Type: image/gif + @@ -54,13 +54,13 @@ http://%HOSTIP:%HTTPPORT/want/%TESTNUMBER -C 87 # Verify data after the test has been "shot" - -GET /want/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=87- -User-Agent: curl/%VERSION -Accept: */* - + +GET /want/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=87- +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test920 b/tests/data/test920 index ac9af7d7bfb9..872038666211 100644 --- a/tests/data/test920 +++ b/tests/data/test920 @@ -28,8 +28,8 @@ smtp SMTP login authentication with initial response - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret --sasl-ir -T - @@ -39,18 +39,18 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH LOGIN dXNlcg== -c2VjcmV0 -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH LOGIN dXNlcg== +c2VjcmV0 +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test921 b/tests/data/test921 index 36820ceb74c0..664b98d80c9f 100644 --- a/tests/data/test921 +++ b/tests/data/test921 @@ -15,7 +15,7 @@ NTLM AUTH NTLM -REPLY AUTH 334 TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== +REPLY AUTH 334 TlRMTVNTUAACAAAAAgACADAAAACGggEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA== REPLY TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= 235 Authenticated @@ -34,8 +34,8 @@ SSL SMTP NTLM authentication with initial response - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u testuser:testpass --sasl-ir -T - @@ -45,18 +45,18 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAALAAsAeAAAAAAAAAAAAAAAhoIBAFpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOXRlc3R1c2VyV09SS1NUQVRJT04= +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test922 b/tests/data/test922 index 554c0965a5d6..a8b1e20a44e2 100644 --- a/tests/data/test922 +++ b/tests/data/test922 @@ -28,8 +28,8 @@ smtp SMTP OAuth 2.0 (XOAUTH2) authentication with initial response - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T - @@ -39,17 +39,17 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH XOAUTH2 dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH XOAUTH2 dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test923 b/tests/data/test923 index 19cdd9667e1f..85cc5be4e364 100644 --- a/tests/data/test923 +++ b/tests/data/test923 @@ -28,10 +28,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -VRFY recipient -QUIT + +EHLO %TESTNUMBER +VRFY recipient +QUIT diff --git a/tests/data/test924 b/tests/data/test924 index 3a37a5e3c86e..986b4e9956ca 100644 --- a/tests/data/test924 +++ b/tests/data/test924 @@ -9,11 +9,11 @@ VRFY # # Server-side - -553-Ambiguous; Possibilities are: -553-Joe Smith -553-Harry Smith -553 Melvin Smith + +553-Ambiguous; Possibilities are: +553-Joe Smith +553-Harry Smith +553 Melvin Smith @@ -34,10 +34,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt smith # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -VRFY smith -QUIT + +EHLO %TESTNUMBER +VRFY smith +QUIT diff --git a/tests/data/test925 b/tests/data/test925 index 073f1e3a9be9..43ef4089e673 100644 --- a/tests/data/test925 +++ b/tests/data/test925 @@ -9,8 +9,8 @@ VRFY # # Server-side - -252 Send some mail and I'll try my best + +252 Send some mail and I'll try my best @@ -31,10 +31,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt user@example.net # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -VRFY user@example.net -QUIT + +EHLO %TESTNUMBER +VRFY user@example.net +QUIT diff --git a/tests/data/test926 b/tests/data/test926 index 4e9623ceb55c..5aaee45e3422 100644 --- a/tests/data/test926 +++ b/tests/data/test926 @@ -10,7 +10,7 @@ VRFY # Server-side -REPLY VRFY 550 Unknown user +REPLY VRFY 550 Unknown user @@ -35,10 +35,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient 8 - -EHLO %TESTNUMBER -VRFY recipient -QUIT + +EHLO %TESTNUMBER +VRFY recipient +QUIT diff --git a/tests/data/test927 b/tests/data/test927 index fb86a1940147..7c81632d9bea 100644 --- a/tests/data/test927 +++ b/tests/data/test927 @@ -10,10 +10,10 @@ CUSTOMREQUEST # # Server-side - -250-Joe Smith -250-Harry Smith -250 Melvin Smith + +250-Joe Smith +250-Harry Smith +250 Melvin Smith @@ -34,10 +34,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt Friends -X EXPN # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -EXPN Friends -QUIT + +EHLO %TESTNUMBER +EXPN Friends +QUIT diff --git a/tests/data/test928 b/tests/data/test928 index 4c5ab9eafb5b..a8f4032b4c04 100644 --- a/tests/data/test928 +++ b/tests/data/test928 @@ -9,9 +9,9 @@ HELP # # Server-side - -214-This server supports the following commands: -214 HELO EHLO RCPT DATA RSET MAIL VRFY EXPN QUIT HELP + +214-This server supports the following commands: +214 HELO EHLO RCPT DATA RSET MAIL VRFY EXPN QUIT HELP @@ -32,10 +32,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -HELP -QUIT + +EHLO %TESTNUMBER +HELP +QUIT diff --git a/tests/data/test929 b/tests/data/test929 index 1274921f9bf3..956f5fc9b493 100644 --- a/tests/data/test929 +++ b/tests/data/test929 @@ -29,10 +29,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER -X NOOP -I # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -NOOP -QUIT + +EHLO %TESTNUMBER +NOOP +QUIT diff --git a/tests/data/test93 b/tests/data/test93 index 83d2b6102259..d7da311f1e84 100644 --- a/tests/data/test93 +++ b/tests/data/test93 @@ -39,13 +39,13 @@ proxy # # Verify data after the test has been "shot" - -GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://%HOSTIP:%HTTPPORT/%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test930 b/tests/data/test930 index 94a92577617b..628777526dd2 100644 --- a/tests/data/test930 +++ b/tests/data/test930 @@ -29,10 +29,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER -X RSET -I # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -RSET -QUIT + +EHLO %TESTNUMBER +RSET +QUIT diff --git a/tests/data/test932 b/tests/data/test932 index e2c9b29a8bc1..2ea2b0910fe1 100644 --- a/tests/data/test932 +++ b/tests/data/test932 @@ -48,10 +48,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # The multi interface considers a broken "CONNECT" as a prematurely broken # transfer and such a connection will not get a "QUIT" - -EHLO %TESTNUMBER -AUTH CRAM-MD5 -* + +EHLO %TESTNUMBER +AUTH CRAM-MD5 +* diff --git a/tests/data/test933 b/tests/data/test933 index 3c25ffa5cafa..3c3a5c6be6ee 100644 --- a/tests/data/test933 +++ b/tests/data/test933 @@ -49,11 +49,11 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # The multi interface considers a broken "CONNECT" as a prematurely broken # transfer and such a connection will not get a "QUIT" - -EHLO %TESTNUMBER -AUTH NTLM -TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -* + +EHLO %TESTNUMBER +AUTH NTLM +TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +* diff --git a/tests/data/test934 b/tests/data/test934 index 891232e5b807..3f74a625e326 100644 --- a/tests/data/test934 +++ b/tests/data/test934 @@ -50,10 +50,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # The multi interface considers a broken "CONNECT" as a prematurely broken # transfer and such a connection will not get a "QUIT" - -EHLO %TESTNUMBER -AUTH DIGEST-MD5 -* + +EHLO %TESTNUMBER +AUTH DIGEST-MD5 +* diff --git a/tests/data/test935 b/tests/data/test935 index 57a4c36ca52a..5f0dc9b0d3a0 100644 --- a/tests/data/test935 +++ b/tests/data/test935 @@ -36,8 +36,8 @@ digest SMTP CRAM-MD5 authentication with SASL downgrade - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - @@ -47,20 +47,20 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH CRAM-MD5 -* -AUTH PLAIN -AHVzZXIAc2VjcmV0 -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH CRAM-MD5 +* +AUTH PLAIN +AHVzZXIAc2VjcmV0 +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test936 b/tests/data/test936 index 723cebca37bb..cd0fe30e3f15 100644 --- a/tests/data/test936 +++ b/tests/data/test936 @@ -37,8 +37,8 @@ SSL SMTP NTLM authentication with SASL downgrade - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - @@ -48,21 +48,21 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH NTLM -TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= -* -AUTH PLAIN -AHVzZXIAc2VjcmV0 -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH NTLM +TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= +* +AUTH PLAIN +AHVzZXIAc2VjcmV0 +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test937 b/tests/data/test937 index ddd2037e8468..8060d8e94056 100644 --- a/tests/data/test937 +++ b/tests/data/test937 @@ -38,8 +38,8 @@ digest SMTP DIGEST-MD5 authentication with SASL downgrade - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - @@ -49,20 +49,20 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH DIGEST-MD5 -* -AUTH PLAIN -AHVzZXIAc2VjcmV0 -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH DIGEST-MD5 +* +AUTH PLAIN +AHVzZXIAc2VjcmV0 +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test938 b/tests/data/test938 index 475572b070c3..d539b7cb80d2 100644 --- a/tests/data/test938 +++ b/tests/data/test938 @@ -17,7 +17,7 @@ RFC4954 AUTH PLAIN REPLY AUTH 334 PLAIN supported REPLY dXNlci5vbmUAdXNlci5vbmUAc2VjcmV0 235 Authenticated -REPLY dXNlci50d28AdXNlci50d28Ac2VjcmV0 235 Authenticated +REPLY dXNlci50d28AdXNlci50d28Ac2VjcmV0 235 Authenticated @@ -30,8 +30,8 @@ smtp SMTP multiple connection authentication - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER001 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user.one:secret -T %LOGDIR/upload%TESTNUMBER -: smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER002 --mail-rcpt recipient@example.com --mail-from sender@example.com -u user.two:secret -T %LOGDIR/upload%TESTNUMBER @@ -41,25 +41,25 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER001 --mail-rcpt recipient@example.com --mail # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER001 -AUTH PLAIN -dXNlci5vbmUAdXNlci5vbmUAc2VjcmV0 -MAIL FROM: -RCPT TO: -DATA -QUIT -EHLO %TESTNUMBER002 -AUTH PLAIN -dXNlci50d28AdXNlci50d28Ac2VjcmV0 -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER001 +AUTH PLAIN +dXNlci5vbmUAdXNlci5vbmUAc2VjcmV0 +MAIL FROM: +RCPT TO: +DATA +QUIT +EHLO %TESTNUMBER002 +AUTH PLAIN +dXNlci50d28AdXNlci50d28Ac2VjcmV0 +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test939 b/tests/data/test939 index e1424d2ddbf4..68fc9f87c7ec 100644 --- a/tests/data/test939 +++ b/tests/data/test939 @@ -23,8 +23,8 @@ smtp RFC821-only SMTP with username and password - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - @@ -34,17 +34,17 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -HELO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +HELO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test94 b/tests/data/test94 index eb745d1df4c7..6c6aeb2e82aa 100644 --- a/tests/data/test94 +++ b/tests/data/test94 @@ -45,12 +45,12 @@ https://test.anything.really.com:%TESTNUMBER --proxy1.0 %HOSTIP:%HTTPPORT 56 - -CONNECT test.anything.really.com:%TESTNUMBER HTTP/1.0 -Host: test.anything.really.com:%TESTNUMBER -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT test.anything.really.com:%TESTNUMBER HTTP/1.0 +Host: test.anything.really.com:%TESTNUMBER +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test940 b/tests/data/test940 index afc9da0c9374..fa64163bd945 100644 --- a/tests/data/test940 +++ b/tests/data/test940 @@ -19,8 +19,8 @@ smtp SMTP with username and password but no AUTH capability - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret -T - @@ -30,16 +30,16 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test941 b/tests/data/test941 index 7b7669fdd90f..36544e43c835 100644 --- a/tests/data/test941 +++ b/tests/data/test941 @@ -42,27 +42,27 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA +QUIT - -From: different -To: another - -email -headers and body -with Unix newlines -meant to be -converted -with -the ---crlf option -%repeat[650 x 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 %0a]% -. + +From: different +To: another + +email +headers and body +with Unix newlines +meant to be +converted +with +the +--crlf option +%repeat[650 x 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789%0d%0a]% +. diff --git a/tests/data/test942 b/tests/data/test942 index 2286c20e6fbf..664ba4ea7d68 100644 --- a/tests/data/test942 +++ b/tests/data/test942 @@ -28,8 +28,8 @@ smtp SMTP external authentication - -mail body + +mail body 'smtp://user;AUTH=EXTERNAL@%HOSTIP:%SMTPPORT/%TESTNUMBER' --mail-rcpt recipient@example.com --mail-from sender@example.com -T - @@ -39,18 +39,18 @@ mail body # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH EXTERNAL -dXNlcg== -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH EXTERNAL +dXNlcg== +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test943 b/tests/data/test943 index 80e935fede63..2003caf90404 100644 --- a/tests/data/test943 +++ b/tests/data/test943 @@ -28,8 +28,8 @@ smtp SMTP external authentication without credentials - -mail body + +mail body 'smtp://;AUTH=EXTERNAL@%HOSTIP:%SMTPPORT/%TESTNUMBER' --mail-rcpt recipient@example.com --mail-from sender@example.com -T - @@ -39,18 +39,18 @@ mail body # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH EXTERNAL -= -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH EXTERNAL += +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test944 b/tests/data/test944 index 0dfaefb7169e..a00a44e635d2 100644 --- a/tests/data/test944 +++ b/tests/data/test944 @@ -28,8 +28,8 @@ smtp SMTP external authentication with initial response - -mail body + +mail body 'smtp://user;AUTH=EXTERNAL@%HOSTIP:%SMTPPORT/%TESTNUMBER' --mail-rcpt recipient@example.com --mail-from sender@example.com --sasl-ir -T - @@ -39,17 +39,17 @@ mail body # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH EXTERNAL dXNlcg== -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH EXTERNAL dXNlcg== +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test945 b/tests/data/test945 index 5b6412764443..5f34e31ab730 100644 --- a/tests/data/test945 +++ b/tests/data/test945 @@ -28,8 +28,8 @@ smtp SMTP external authentication with initial response without credentials - -mail body + +mail body 'smtp://;AUTH=EXTERNAL@%HOSTIP:%SMTPPORT/%TESTNUMBER' --mail-rcpt recipient@example.com --mail-from sender@example.com --sasl-ir -T - @@ -39,17 +39,17 @@ mail body # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH EXTERNAL = -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH EXTERNAL = +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test946 b/tests/data/test946 index b306180aaaca..f463bfc4eb9a 100644 --- a/tests/data/test946 +++ b/tests/data/test946 @@ -29,8 +29,8 @@ smtp SMTP OAuth 2.0 (OAUTHBEARER) authentication - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T - @@ -40,18 +40,18 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH OAUTHBEARER -%b64[n,a=user,%01host=127.0.0.1%01port=%SMTPPORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH OAUTHBEARER +%b64[n,a=user,%01host=127.0.0.1%01port=%SMTPPORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test947 b/tests/data/test947 index 5ca2be671462..995e54ed28ca 100644 --- a/tests/data/test947 +++ b/tests/data/test947 @@ -29,8 +29,8 @@ smtp SMTP OAuth 2.0 (OAUTHBEARER) authentication with initial response - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T - @@ -40,17 +40,17 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH OAUTHBEARER %b64[n,a=user,%01host=127.0.0.1%01port=%SMTPPORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH OAUTHBEARER %b64[n,a=user,%01host=127.0.0.1%01port=%SMTPPORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test948 b/tests/data/test948 index 9b6aefdc63cc..5360f0650937 100644 --- a/tests/data/test948 +++ b/tests/data/test948 @@ -30,8 +30,8 @@ smtp SMTP OAuth 2.0 (OAUTHBEARER) failure as continuation - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM -T - @@ -48,11 +48,11 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # The multi interface considers a broken "CONNECT" as a prematurely broken # transfer and such a connection will not get a "QUIT" - -EHLO %TESTNUMBER -AUTH OAUTHBEARER -%b64[n,a=user,%01host=127.0.0.1%01port=%SMTPPORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% -AQ== + +EHLO %TESTNUMBER +AUTH OAUTHBEARER +%b64[n,a=user,%01host=127.0.0.1%01port=%SMTPPORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% +AQ== diff --git a/tests/data/test949 b/tests/data/test949 index 0a6be43b375f..2aec4feb9bdd 100644 --- a/tests/data/test949 +++ b/tests/data/test949 @@ -30,8 +30,8 @@ smtp SMTP OAuth 2.0 (OAUTHBEARER) failure as continuation with initial response - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --sasl-ir -T - @@ -48,10 +48,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # The multi interface considers a broken "CONNECT" as a prematurely broken # transfer and such a connection will not get a "QUIT" - -EHLO %TESTNUMBER -AUTH OAUTHBEARER %b64[n,a=user,%01host=127.0.0.1%01port=%SMTPPORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% -AQ== + +EHLO %TESTNUMBER +AUTH OAUTHBEARER %b64[n,a=user,%01host=127.0.0.1%01port=%SMTPPORT%01auth=Bearer mF_9.B5f-4.1JqM%01%01]b64% +AQ== diff --git a/tests/data/test95 b/tests/data/test95 index 339c02ae4bcb..87c0728645a0 100644 --- a/tests/data/test95 +++ b/tests/data/test95 @@ -21,13 +21,13 @@ Content-Length: 9 contents - -HTTP/1.1 200 Mighty fine indeed - + +HTTP/1.1 200 Mighty fine indeed + -HTTP/1.1 200 Mighty fine indeed - +HTTP/1.1 200 Mighty fine indeed%CR +%CR HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake swsclose @@ -60,21 +60,21 @@ proxy # # Verify data after the test has been "shot" - -CONNECT test.%TESTNUMBER:%HTTPPORT HTTP/1.1 -Host: test.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Proxy-Connection: Keep-Alive - + +CONNECT test.%TESTNUMBER:%HTTPPORT HTTP/1.1 +Host: test.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Proxy-Connection: Keep-Alive + - -POST /we/want/that/page/%TESTNUMBER HTTP/1.1 -Host: test.%TESTNUMBER:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 27 -Content-Type: application/x-www-form-urlencoded - + +POST /we/want/that/page/%TESTNUMBER HTTP/1.1 +Host: test.%TESTNUMBER:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 27 +Content-Type: application/x-www-form-urlencoded + datatopost=ohthatsfunyesyes diff --git a/tests/data/test950 b/tests/data/test950 index 6628f0043438..6f18037370b9 100644 --- a/tests/data/test950 +++ b/tests/data/test950 @@ -10,8 +10,8 @@ VRFY # # Server-side - -250 + +250 @@ -34,10 +34,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient --request "vrfy" # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -vrfy recipient -QUIT + +EHLO %TESTNUMBER +vrfy recipient +QUIT diff --git a/tests/data/test951 b/tests/data/test951 index 2b9315047188..616c6cd5235e 100644 --- a/tests/data/test951 +++ b/tests/data/test951 @@ -19,8 +19,8 @@ smtp SMTP data with dot as first character - -.This first line starts with a dot + +.This first line starts with a dot smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -T - @@ -30,16 +30,16 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA +QUIT - -..This first line starts with a dot -. + +..This first line starts with a dot +. diff --git a/tests/data/test952 b/tests/data/test952 index 716310df65dc..f2a90bfbbd9e 100644 --- a/tests/data/test952 +++ b/tests/data/test952 @@ -19,8 +19,8 @@ smtp SMTP data with single dot-only line - -. + +. smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -T - @@ -30,16 +30,16 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA +QUIT - -.. -. + +.. +. diff --git a/tests/data/test953 b/tests/data/test953 index f293f896e8cf..04ebe214666e 100644 --- a/tests/data/test953 +++ b/tests/data/test953 @@ -28,8 +28,8 @@ smtp SMTP plain authentication with alternative authorization identity - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u kurt:xipj3plmq --sasl-authzid ursel -T - @@ -39,18 +39,18 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH PLAIN -dXJzZWwAa3VydAB4aXBqM3BsbXE= -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH PLAIN +dXJzZWwAa3VydAB4aXBqM3BsbXE= +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test954 b/tests/data/test954 index b8376669ce59..58292372f3ce 100644 --- a/tests/data/test954 +++ b/tests/data/test954 @@ -46,10 +46,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # The multi interface considers a broken "CONNECT" as a prematurely broken # transfer and such a connection will not get a "QUIT" - -EHLO %TESTNUMBER -AUTH PLAIN -dXJzZWwAa3VydAB4aXBqM3BsbXE= + +EHLO %TESTNUMBER +AUTH PLAIN +dXJzZWwAa3VydAB4aXBqM3BsbXE= diff --git a/tests/data/test955 b/tests/data/test955 index 633c2e369d35..be0565842f7f 100644 --- a/tests/data/test955 +++ b/tests/data/test955 @@ -29,11 +29,11 @@ LC_ALL=C.UTF-8 SMTP without SMTPUTF8 support - UTF-8 based sender (local part only) - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from Avs%hex[%c3%a4]hex%ndaren@example.com -T - @@ -47,10 +47,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr 55 - -EHLO %TESTNUMBER -MAIL FROM: -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +QUIT diff --git a/tests/data/test956 b/tests/data/test956 index 9472e96e1596..aaae3544d071 100644 --- a/tests/data/test956 +++ b/tests/data/test956 @@ -26,11 +26,11 @@ LC_ALL=C.UTF-8 SMTP without SMTPUTF8 support - UTF-8 based recipient (local part only) - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt St%hex[%c3%b6]hex%dmottagaren@example.com --mail-from sender@example.com -T - @@ -44,11 +44,11 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt St%hex[%c3%b6]hex%dmottagaren@e 55 - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +QUIT diff --git a/tests/data/test957 b/tests/data/test957 index 671d73bbf218..1656416c8a9c 100644 --- a/tests/data/test957 +++ b/tests/data/test957 @@ -39,10 +39,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt Anv%hex[%c3%a4]hex%ndaren 8 - -EHLO %TESTNUMBER -VRFY Anv%hex[%c3%a4]hex%ndaren -QUIT + +EHLO %TESTNUMBER +VRFY Anv%hex[%c3%a4]hex%ndaren +QUIT diff --git a/tests/data/test958 b/tests/data/test958 index 203254bfc2d2..4809f6bf2541 100644 --- a/tests/data/test958 +++ b/tests/data/test958 @@ -39,10 +39,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt Anv%hex[%c3%a4]hex%ndaren@examp 8 - -EHLO %TESTNUMBER -VRFY Anv%hex[%c3%a4]hex%ndaren@example.com -QUIT + +EHLO %TESTNUMBER +VRFY Anv%hex[%c3%a4]hex%ndaren@example.com +QUIT diff --git a/tests/data/test959 b/tests/data/test959 index 5693e349449e..3ee988c57f8e 100644 --- a/tests/data/test959 +++ b/tests/data/test959 @@ -30,11 +30,11 @@ LC_ALL=C.UTF-8 SMTP without SMTPUTF8 support - UTF-8 based sender (host part only) - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@%hex[%c3%a5%c3%a4%c3%b6]hex%.se -T - @@ -48,10 +48,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr 55 - -EHLO %TESTNUMBER -MAIL FROM: -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +QUIT diff --git a/tests/data/test960 b/tests/data/test960 index ced2ba0b54f5..64d5050a30b2 100644 --- a/tests/data/test960 +++ b/tests/data/test960 @@ -27,11 +27,11 @@ LC_ALL=C.UTF-8 SMTP without SMTPUTF8 support - UTF-8 based recipient (host part only) - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@%hex[%c3%a5%c3%a4%c3%b6]hex%.se --mail-from sender@example.com -T - @@ -45,11 +45,11 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@%hex[%c3%a5%c3%a4%c3% 55 - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +QUIT diff --git a/tests/data/test961 b/tests/data/test961 index c52d5df34450..a78059450cc3 100644 --- a/tests/data/test961 +++ b/tests/data/test961 @@ -40,10 +40,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt user@%hex[%c3%a5%c3%a4%c3%b6]he 8 - -EHLO %TESTNUMBER -VRFY user@%hex[%c3%a5%c3%a4%c3%b6]hex%.se -QUIT + +EHLO %TESTNUMBER +VRFY user@%hex[%c3%a5%c3%a4%c3%b6]hex%.se +QUIT diff --git a/tests/data/test962 b/tests/data/test962 index 3f737b65ea8d..59ced3bc7736 100644 --- a/tests/data/test962 +++ b/tests/data/test962 @@ -28,11 +28,11 @@ LC_ALL=C.UTF-8 SMTP without SMTPUTF8 support - UTF-8 based sender (host part only) - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@%hex[%c3%a5%c3%a4%c3%b6]hex%.se -T - @@ -42,19 +42,19 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA +QUIT - -From: different -To: another - -body -. + +From: different +To: another + +body +. diff --git a/tests/data/test963 b/tests/data/test963 index bce626c5e30e..8b411458c6a9 100644 --- a/tests/data/test963 +++ b/tests/data/test963 @@ -28,11 +28,11 @@ LC_ALL=C.UTF-8 SMTP without SMTPUTF8 support (IDN) - UTF-8 recipient (host part only) - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@%hex[%c3%a5%c3%a4%c3%b6]hex%.se --mail-from sender@example.com -T - @@ -42,19 +42,19 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@%hex[%c3%a5%c3%a4%c3% # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA +QUIT - -From: different -To: another - -body -. + +From: different +To: another + +body +. diff --git a/tests/data/test964 b/tests/data/test964 index 04e5b1c15235..bf802faa0c51 100644 --- a/tests/data/test964 +++ b/tests/data/test964 @@ -37,10 +37,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt user@%hex[%c3%a5%c3%a4%c3%b6]he # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -VRFY user@xn--4cab6c.se -QUIT + +EHLO %TESTNUMBER +VRFY user@xn--4cab6c.se +QUIT diff --git a/tests/data/test965 b/tests/data/test965 index 601db62fe09a..b4ccc70425fa 100644 --- a/tests/data/test965 +++ b/tests/data/test965 @@ -31,11 +31,11 @@ LC_ALL=C.UTF-8 SMTP with SMTPUTF8 support - UTF-8 based sender - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from Avs%hex[%c3%a4]hex%ndaren@%hex[%c3%a5%c3%a4%c3%b6]hex%.se -T - @@ -45,19 +45,19 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: SMTPUTF8 -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: SMTPUTF8 +RCPT TO: +DATA +QUIT - -From: different -To: another - -body -. + +From: different +To: another + +body +. diff --git a/tests/data/test966 b/tests/data/test966 index 646e80758979..24ef5597665c 100644 --- a/tests/data/test966 +++ b/tests/data/test966 @@ -31,11 +31,11 @@ LC_ALL=C.UTF-8 SMTP with SMTPUTF8 support - UTF-8 based recipient - -From: different -To: another - -body + +From: different +To: another + +body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt St%hex[%c3%b6]hex%dmottagaren@%hex[%c3%a5%c3%a4%c3%b6]hex%.se --mail-from sender@example.com -T - @@ -45,19 +45,19 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt St%hex[%c3%b6]hex%dmottagaren@% # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: SMTPUTF8 -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: SMTPUTF8 +RCPT TO: +DATA +QUIT - -From: different -To: another - -body -. + +From: different +To: another + +body +. diff --git a/tests/data/test967 b/tests/data/test967 index 7cacbcbdd200..678e112cecfe 100644 --- a/tests/data/test967 +++ b/tests/data/test967 @@ -13,8 +13,8 @@ IDN CAPA SMTPUTF8 - -252 Send some mail and I'll try my best + +252 Send some mail and I'll try my best @@ -43,10 +43,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt Anv%hex[%c3%a4]hex%ndaren@%hex[ # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -VRFY Anv%hex[%c3%a4]hex%ndaren@xn--4cab6c.se SMTPUTF8 -QUIT + +EHLO %TESTNUMBER +VRFY Anv%hex[%c3%a4]hex%ndaren@xn--4cab6c.se SMTPUTF8 +QUIT diff --git a/tests/data/test968 b/tests/data/test968 index 4df600483be6..2ec5f76e9539 100644 --- a/tests/data/test968 +++ b/tests/data/test968 @@ -40,10 +40,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt Anv%hex[%c3%a4]hex%ndaren # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -VRFY Anv%hex[%c3%a4]hex%ndaren SMTPUTF8 -QUIT + +EHLO %TESTNUMBER +VRFY Anv%hex[%c3%a4]hex%ndaren SMTPUTF8 +QUIT diff --git a/tests/data/test969 b/tests/data/test969 index c7bffb9b8f4b..00311d5f19b2 100644 --- a/tests/data/test969 +++ b/tests/data/test969 @@ -14,10 +14,10 @@ IDN CAPA SMTPUTF8 - -250-Joe Smith -250-Harry Smith -250 Melvin Smith + +250-Joe Smith +250-Harry Smith +250 Melvin Smith @@ -42,10 +42,10 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt Friends -X EXPN # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -EXPN Friends SMTPUTF8 -QUIT + +EHLO %TESTNUMBER +EXPN Friends SMTPUTF8 +QUIT diff --git a/tests/data/test97 b/tests/data/test97 index cc0cf676be51..3029b2d46f8f 100644 --- a/tests/data/test97 +++ b/tests/data/test97 @@ -9,12 +9,12 @@ HTTP replaced headers # # Server-side - -HTTP/1.0 200 OK -Server: test-server/fake -Content-Type: text/html -Content-Length: 6 - + +HTTP/1.0 200 OK +Server: test-server/fake +Content-Type: text/html +Content-Length: 6 + blaha @@ -36,14 +36,14 @@ HTTP POST with custom content-type # # Verify data after the test has been "shot" - -POST /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Type: silly/type -Content-Length: 14 - + +POST /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Type: silly/type +Content-Length: 14 + hejsanallabarn diff --git a/tests/data/test970 b/tests/data/test970 index 824f1534104b..b5a809771064 100644 --- a/tests/data/test970 +++ b/tests/data/test970 @@ -51,12 +51,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --write-out '%{json}' -o %LOGDIR/out%TESTNU # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + {"certs":"","conn_id":0,"content_type":"text/html","errormsg":null,"exitcode":0,"filename_effective":"%LOGDIR/out%TESTNUMBER","ftp_entry_path":null,"http_code":200,"http_connect":0,"http_version":"1.1","local_ip":"127.0.0.1","local_port":13,"method":"GET","num_certs":0,"num_connects":1,"num_headers":9,"num_redirects":0,"num_retries":0,"proxy_ssl_verify_result":0,"proxy_used":0,"redirect_url":null,"referer":null,"remote_ip":"%HOSTIP","remote_port":%HTTPPORT,"response_code":200,"scheme":"http","size_download":445,"size_header":4019,"size_request":4019,"size_upload":0,"speed_download":13,"speed_upload":13,"ssl_verify_result":0,"time_appconnect":0.000013,"time_connect":0.000013,"time_namelookup":0.000013,"time_posttransfer":0.000013,"time_pretransfer":0.000013,"time_queue":0.000013,"time_redirect":0.000013,"time_starttransfer":0.000013,"time_total":0.000013,"tls_earlydata":0,"url":"http://%HOSTIP:%HTTPPORT/%TESTNUMBER","url.fragment":null,"url.host":"127.0.0.1","url.options":null,"url.password":null,"url.path":"/%TESTNUMBER","url.port":"%HTTPPORT","url.query":null,"url.scheme":"http","url.user":null,"url.zoneid":null,"url_effective":"http://%HOSTIP:%HTTPPORT/%TESTNUMBER","urle.fragment":null,"urle.host":"127.0.0.1","urle.options":null,"urle.password":null,"urle.path":"/%TESTNUMBER","urle.port":"%HTTPPORT","urle.query":null,"urle.scheme":"http","urle.user":null,"urle.zoneid":null,"urlnum":0,"xfer_id":0,"curl_version":"curl-unit-test-fake-version"} diff --git a/tests/data/test972 b/tests/data/test972 index 45fc2b18ef4d..241c25bed846 100644 --- a/tests/data/test972 +++ b/tests/data/test972 @@ -52,12 +52,12 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -s --write-out '%{json}\n' -o %LOGDIR/out97 # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* + {"certs":"","conn_id":0,"content_type":"text/html","errormsg":null,"exitcode":0,"filename_effective":"%LOGDIR/out%TESTNUMBER","ftp_entry_path":null,"http_code":200,"http_connect":0,"http_version":"1.1","local_ip":"127.0.0.1","local_port":13,"method":"GET","num_certs":0,"num_connects":1,"num_headers":9,"num_redirects":0,"num_retries":0,"proxy_ssl_verify_result":0,"proxy_used":0,"redirect_url":null,"referer":null,"remote_ip":"%HOSTIP","remote_port":%HTTPPORT,"response_code":200,"scheme":"http","size_download":445,"size_header":4019,"size_request":4019,"size_upload":0,"speed_download":13,"speed_upload":13,"ssl_verify_result":0,"time_appconnect":0.000013,"time_connect":0.000013,"time_namelookup":0.000013,"time_posttransfer":0.000013,"time_pretransfer":0.000013,"time_queue":0.000013,"time_redirect":0.000013,"time_starttransfer":0.000013,"time_total":0.000013,"tls_earlydata":0,"url":"http://%HOSTIP:%HTTPPORT/%TESTNUMBER","url.fragment":null,"url.host":"127.0.0.1","url.options":null,"url.password":null,"url.path":"/%TESTNUMBER","url.port":"%HTTPPORT","url.query":null,"url.scheme":"http","url.user":null,"url.zoneid":null,"url_effective":"http://%HOSTIP:%HTTPPORT/%TESTNUMBER","urle.fragment":null,"urle.host":"127.0.0.1","urle.options":null,"urle.password":null,"urle.path":"/%TESTNUMBER","urle.port":"%HTTPPORT","urle.query":null,"urle.scheme":"http","urle.user":null,"urle.zoneid":null,"urlnum":0,"xfer_id":0,"curl_version":"curl-unit-test-fake-version"} diff --git a/tests/data/test973 b/tests/data/test973 index edf2973ebeff..64e3702f2085 100644 --- a/tests/data/test973 +++ b/tests/data/test973 @@ -66,23 +66,23 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -L -u joe:secret # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[joe:secret]b64% -User-Agent: curl/%VERSION -Accept: */* - -USER anonymous -PASS ftp@example.com -PWD -CWD a -CWD path -EPSV -TYPE I -SIZE %TESTNUMBER0002 -RETR %TESTNUMBER0002 -QUIT + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[joe:secret]b64% +User-Agent: curl/%VERSION +Accept: */* + +USER anonymous +PASS ftp@example.com +PWD +CWD a +CWD path +EPSV +TYPE I +SIZE %TESTNUMBER0002 +RETR %TESTNUMBER0002 +QUIT diff --git a/tests/data/test974 b/tests/data/test974 index d62933df56e7..db1b2c6880c1 100644 --- a/tests/data/test974 +++ b/tests/data/test974 @@ -72,20 +72,20 @@ HTTP with auth redirected to HTTP on a diff port w/o auth # # Verify data after the test has been "shot" - -GET http://firsthost.com/ HTTP/1.1 -Host: firsthost.com -Authorization: Basic %b64[joe:secret]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://firsthost.com:9999/a/path/%TESTNUMBER0002 HTTP/1.1 -Host: firsthost.com:9999 -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://firsthost.com/ HTTP/1.1 +Host: firsthost.com +Authorization: Basic %b64[joe:secret]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://firsthost.com:9999/a/path/%TESTNUMBER0002 HTTP/1.1 +Host: firsthost.com:9999 +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test975 b/tests/data/test975 index 971e35d34014..b29b2a929d9c 100644 --- a/tests/data/test975 +++ b/tests/data/test975 @@ -66,23 +66,23 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --location-trusted -u joe:secret # # Verify data after the test has been "shot" - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Authorization: Basic %b64[joe:secret]b64% -User-Agent: curl/%VERSION -Accept: */* - -USER joe -PASS secret -PWD -CWD a -CWD path -EPSV -TYPE I -SIZE %TESTNUMBER0002 -RETR %TESTNUMBER0002 -QUIT + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Authorization: Basic %b64[joe:secret]b64% +User-Agent: curl/%VERSION +Accept: */* + +USER joe +PASS secret +PWD +CWD a +CWD path +EPSV +TYPE I +SIZE %TESTNUMBER0002 +RETR %TESTNUMBER0002 +QUIT diff --git a/tests/data/test976 b/tests/data/test976 index 264444a56ee9..400f7b45b926 100644 --- a/tests/data/test976 +++ b/tests/data/test976 @@ -72,21 +72,21 @@ HTTP with auth redirected to HTTP on a diff port --location-trusted # # Verify data after the test has been "shot" - -GET http://firsthost.com/ HTTP/1.1 -Host: firsthost.com -Authorization: Basic %b64[joe:secret]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://firsthost.com:9999/a/path/%TESTNUMBER0002 HTTP/1.1 -Host: firsthost.com:9999 -Authorization: Basic %b64[joe:secret]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://firsthost.com/ HTTP/1.1 +Host: firsthost.com +Authorization: Basic %b64[joe:secret]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://firsthost.com:9999/a/path/%TESTNUMBER0002 HTTP/1.1 +Host: firsthost.com:9999 +Authorization: Basic %b64[joe:secret]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test977 b/tests/data/test977 index 4f52850a0e8b..4777a514faad 100644 --- a/tests/data/test977 +++ b/tests/data/test977 @@ -44,13 +44,13 @@ URL with trailing dot and receiving a cookie for the TLD with dot # # Verify data after the test has been "shot" - -GET http://firsthost.me./ HTTP/1.1 -Host: firsthost.me. -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://firsthost.me./ HTTP/1.1 +Host: firsthost.me. +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + # Netscape HTTP Cookie File diff --git a/tests/data/test978 b/tests/data/test978 index 810ffbb04e14..343b68137211 100644 --- a/tests/data/test978 +++ b/tests/data/test978 @@ -9,7 +9,7 @@ HTTP # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -42,7 +42,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER --stderr %LOGDIR/redir --silent -w '%{stder # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test979 b/tests/data/test979 index 3cfc33a7e89b..fe75d1e2972a 100644 --- a/tests/data/test979 +++ b/tests/data/test979 @@ -10,7 +10,7 @@ HTTP Basic auth # # Server-side - + HTTP/1.1 302 go go go Content-Length: 8 Location: http://%HOSTIP:%HTTPPORT/user/%TESTNUMBER0002 @@ -19,7 +19,7 @@ Funny-head: yesyes notreal - + HTTP/1.1 200 OK Content-Length: 6 Content-Type: text/html @@ -46,7 +46,7 @@ http://first:secret@%HOSTIP:%HTTPPORT/%TESTNUMBER -L -u smith:doggie # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT Authorization: Basic %b64[smith:doggie]b64% diff --git a/tests/data/test98 b/tests/data/test98 index ced184b39060..9074b1d60b64 100644 --- a/tests/data/test98 +++ b/tests/data/test98 @@ -9,12 +9,12 @@ chunked Transfer-Encoding # # Server-side - -HTTP/1.0 200 OK -Server: test-server/fake -Content-Type: text/html -Content-Length: 6 - + +HTTP/1.0 200 OK +Server: test-server/fake +Content-Type: text/html +Content-Length: 6 + blaha @@ -39,14 +39,14 @@ data on stdin # # Verify data after the test has been "shot" - -PUT /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -User-Agent: curl/%VERSION -Accept: */* -Content-Length: 14 -Expect: 100-continue - + +PUT /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +User-Agent: curl/%VERSION +Accept: */* +Content-Length: 14 +Expect: 100-continue + data on stdin diff --git a/tests/data/test980 b/tests/data/test980 index 8a52559472ba..9f35730ac2be 100644 --- a/tests/data/test980 +++ b/tests/data/test980 @@ -44,9 +44,9 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr 8 - -EHLO %TESTNUMBER -STARTTLS + +EHLO %TESTNUMBER +STARTTLS diff --git a/tests/data/test981 b/tests/data/test981 index 02a03fd2f95d..94de9dfbea47 100644 --- a/tests/data/test981 +++ b/tests/data/test981 @@ -51,9 +51,9 @@ Hello Joe, do you think we can meet at 3:30 tomorrow? 8 - -A001 CAPABILITY -A002 STARTTLS + +A001 CAPABILITY +A002 STARTTLS diff --git a/tests/data/test982 b/tests/data/test982 index 2f5eccc0a4af..6098b7255aa5 100644 --- a/tests/data/test982 +++ b/tests/data/test982 @@ -49,9 +49,9 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret --ssl 8 - -CAPA -STLS + +CAPA +STLS diff --git a/tests/data/test983 b/tests/data/test983 index a4294495d062..7a05471a19ec 100644 --- a/tests/data/test983 +++ b/tests/data/test983 @@ -45,8 +45,8 @@ works 8 - -AUTH SSL + +AUTH SSL diff --git a/tests/data/test984 b/tests/data/test984 index 314a24e6cb5a..e79efdf84b97 100644 --- a/tests/data/test984 +++ b/tests/data/test984 @@ -49,8 +49,8 @@ Hello Joe, do you think we can meet at 3:30 tomorrow? 64 - -A001 CAPABILITY + +A001 CAPABILITY diff --git a/tests/data/test985 b/tests/data/test985 index 0b3cd29ff114..816730c7f11a 100644 --- a/tests/data/test985 +++ b/tests/data/test985 @@ -47,8 +47,8 @@ pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret --ssl-reqd 64 - -CAPA + +CAPA diff --git a/tests/data/test986 b/tests/data/test986 index 0ed30452af09..d83a8962f97f 100644 --- a/tests/data/test986 +++ b/tests/data/test986 @@ -45,9 +45,9 @@ works 64 - -AUTH SSL -AUTH TLS + +AUTH SSL +AUTH TLS diff --git a/tests/data/test987 b/tests/data/test987 index c58ae77e1382..312c406a70f3 100644 --- a/tests/data/test987 +++ b/tests/data/test987 @@ -20,11 +20,11 @@ smtps SMTPS with redundant explicit SSL request - -From: different -To: another - -body + +From: different +To: another + +body --insecure --ssl-reqd --mail-rcpt recipient@example.com --mail-from sender@example.com -T - smtps://%HOSTIP:%SMTPSPORT/%TESTNUMBER @@ -34,19 +34,19 @@ body # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +MAIL FROM: +RCPT TO: +DATA +QUIT - -From: different -To: another - -body -. + +From: different +To: another + +body +. diff --git a/tests/data/test988 b/tests/data/test988 index 46b09fff94d6..06ba311084b1 100644 --- a/tests/data/test988 +++ b/tests/data/test988 @@ -9,14 +9,14 @@ FETCH # # Server-side - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -37,12 +37,12 @@ IMAPS FETCH with redundant explicit SSL request # # Verify data after the test has been "shot" - -A001 CAPABILITY -A002 LOGIN "\"user" "sec\"ret{" -A003 SELECT %TESTNUMBER -A004 FETCH 1 BODY[] -A005 LOGOUT + +A001 CAPABILITY +A002 LOGIN "\"user" "sec\"ret{" +A003 SELECT %TESTNUMBER +A004 FETCH 1 BODY[] +A005 LOGOUT diff --git a/tests/data/test989 b/tests/data/test989 index c7bf2494604f..5938cd818b15 100644 --- a/tests/data/test989 +++ b/tests/data/test989 @@ -9,14 +9,14 @@ RETR # # Server-side - -From: me@somewhere -To: fake@nowhere - -body - --- - yours sincerely + +From: me@somewhere +To: fake@nowhere + +body + +-- + yours sincerely @@ -37,12 +37,12 @@ POP3S RETR with redundant explicit SSL request # # Verify data after the test has been "shot" - -CAPA -USER user -PASS secret -RETR %TESTNUMBER -QUIT + +CAPA +USER user +PASS secret +RETR %TESTNUMBER +QUIT diff --git a/tests/data/test99 b/tests/data/test99 index b0e769a7e31e..04de595ada29 100644 --- a/tests/data/test99 +++ b/tests/data/test99 @@ -55,13 +55,13 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -C 9999999999 33 - -GET /%TESTNUMBER HTTP/1.1 -Host: %HOSTIP:%HTTPPORT -Range: bytes=9999999999- -User-Agent: curl/%VERSION -Accept: */* - + +GET /%TESTNUMBER HTTP/1.1 +Host: %HOSTIP:%HTTPPORT +Range: bytes=9999999999- +User-Agent: curl/%VERSION +Accept: */* + diff --git a/tests/data/test990 b/tests/data/test990 index 5ddb57f3ddc9..194b56bd18ac 100644 --- a/tests/data/test990 +++ b/tests/data/test990 @@ -10,7 +10,7 @@ HTTP GET # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -43,7 +43,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -w '%output{%LOGDIR/output}%{http_code}\n' # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test991 b/tests/data/test991 index 5a2cc62f30ef..8b3ac2b00daf 100644 --- a/tests/data/test991 +++ b/tests/data/test991 @@ -10,7 +10,7 @@ HTTP GET # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -46,7 +46,7 @@ http://%HOSTIP:%HTTPPORT/%TESTNUMBER -w '%output{>>%LOGDIR/output}%{http_code}' # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test992 b/tests/data/test992 index a4b24376f393..772ad91e79b2 100644 --- a/tests/data/test992 +++ b/tests/data/test992 @@ -26,8 +26,8 @@ smtp SASL verify default mechanisms are reset by login options - -mail body + +mail body smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u user --oauth2-bearer mF_9.B5f-4.1JqM --login-options "AUTH=XOAUTH2" -T - @@ -37,18 +37,18 @@ smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-fr # # Verify data after the test has been "shot" - -EHLO %TESTNUMBER -AUTH XOAUTH2 -dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB -MAIL FROM: -RCPT TO: -DATA -QUIT + +EHLO %TESTNUMBER +AUTH XOAUTH2 +dXNlcj11c2VyAWF1dGg9QmVhcmVyIG1GXzkuQjVmLTQuMUpxTQEB +MAIL FROM: +RCPT TO: +DATA +QUIT - -mail body -. + +mail body +. diff --git a/tests/data/test993 b/tests/data/test993 index 2f5607b67935..e0f0b9ebcfc4 100644 --- a/tests/data/test993 +++ b/tests/data/test993 @@ -31,12 +31,12 @@ pop3://%HOSTIP:%POP3PORT/ -u user:secret # # Verify data after the test has been "shot" - -CAPA -USER user -PASS secret -LIST -QUIT + +CAPA +USER user +PASS secret +LIST +QUIT Allocations: 2200 diff --git a/tests/data/test995 b/tests/data/test995 index f2ec85ea7a8b..92bd716c7a2b 100644 --- a/tests/data/test995 +++ b/tests/data/test995 @@ -9,7 +9,7 @@ HTTP GET # # Server-side - + HTTP/1.1 200 OK Date: Tue, 09 Nov 2010 14:49:00 GMT Server: test-server/fake @@ -42,7 +42,7 @@ http # # Verify data after the test has been "shot" - + GET /%TESTNUMBER HTTP/1.1 Host: %HOSTIP:%HTTPPORT User-Agent: curl/%VERSION diff --git a/tests/data/test997 b/tests/data/test997 index 2883330f85c2..b17cde4d4d2a 100644 --- a/tests/data/test997 +++ b/tests/data/test997 @@ -12,11 +12,11 @@ RFC2449 # # Server-side - -CAPA TOP USER - - - + +CAPA TOP USER + + + # @@ -36,12 +36,12 @@ pop3://%HOSTIP:%POP3PORT -u user:secret -X 'STAT' # # Verify data after the test has been "shot" - -CAPA -USER user -PASS secret -STAT -QUIT + +CAPA +USER user +PASS secret +STAT +QUIT diff --git a/tests/data/test998 b/tests/data/test998 index efb03cac4c70..647eebc73217 100644 --- a/tests/data/test998 +++ b/tests/data/test998 @@ -69,21 +69,21 @@ HTTP with auth in URL redirected to another host # # Verify data after the test has been "shot" - -GET http://somewhere.example/998 HTTP/1.1 -Host: somewhere.example -Authorization: Basic %b64[alberto:einstein]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://somewhere.else.example/a/path/9980002 HTTP/1.1 -Host: somewhere.else.example -Authorization: Basic %b64[alberto:einstein]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://somewhere.example/998 HTTP/1.1 +Host: somewhere.example +Authorization: Basic %b64[alberto:einstein]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://somewhere.else.example/a/path/9980002 HTTP/1.1 +Host: somewhere.else.example +Authorization: Basic %b64[alberto:einstein]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/data/test999 b/tests/data/test999 index c0dc52328def..9731843f2dc4 100644 --- a/tests/data/test999 +++ b/tests/data/test999 @@ -59,20 +59,20 @@ HTTP with auth in first URL but not second # # Verify data after the test has been "shot" - -GET http://somewhere.example/%TESTNUMBER HTTP/1.1 -Host: somewhere.example -Authorization: Basic %b64[alberto:einstein]b64% -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - -GET http://somewhere.else.example/%TESTNUMBER HTTP/1.1 -Host: somewhere.else.example -User-Agent: curl/%VERSION -Accept: */* -Proxy-Connection: Keep-Alive - + +GET http://somewhere.example/%TESTNUMBER HTTP/1.1 +Host: somewhere.example +Authorization: Basic %b64[alberto:einstein]b64% +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + +GET http://somewhere.else.example/%TESTNUMBER HTTP/1.1 +Host: somewhere.else.example +User-Agent: curl/%VERSION +Accept: */* +Proxy-Connection: Keep-Alive + diff --git a/tests/ftpserver.pl b/tests/ftpserver.pl index 71d6774fd1ea..cd725fccfdb9 100755 --- a/tests/ftpserver.pl +++ b/tests/ftpserver.pl @@ -573,10 +573,10 @@ sub protocolsetup { 'PBSZ' => '500 PBSZ not implemented', 'PROT' => '500 PROT not implemented', 'welcome' => join("", - '220- _ _ ____ _ '."\r\n", - '220- ___| | | | _ \| | '."\r\n", - '220- / __| | | | |_) | | '."\r\n", - '220- | (__| |_| | _ {| |___ '."\r\n", + '220- _ _ ____ _'."\r\n", + '220- ___| | | | _ \| |'."\r\n", + '220- / __| | | | |_) | |'."\r\n", + '220- | (__| |_| | _ {| |___'."\r\n", '220 \___|\___/|_| \_\_____|'."\r\n") ); } @@ -599,10 +599,10 @@ sub protocolsetup { ); %displaytext = ( 'welcome' => join("", - ' _ _ ____ _ '."\r\n", - ' ___| | | | _ \| | '."\r\n", - ' / __| | | | |_) | | '."\r\n", - ' | (__| |_| | _ {| |___ '."\r\n", + ' _ _ ____ _'."\r\n", + ' ___| | | | _ \| |'."\r\n", + ' / __| | | | |_) | |'."\r\n", + ' | (__| |_| | _ {| |___'."\r\n", ' \___|\___/|_| \_\_____|'."\r\n", '+OK curl POP3 server ready to serve '."\r\n") ); @@ -634,10 +634,10 @@ sub protocolsetup { ); %displaytext = ( 'welcome' => join("", - ' _ _ ____ _ '."\r\n", - ' ___| | | | _ \| | '."\r\n", - ' / __| | | | |_) | | '."\r\n", - ' | (__| |_| | _ {| |___ '."\r\n", + ' _ _ ____ _'."\r\n", + ' ___| | | | _ \| |'."\r\n", + ' / __| | | | |_) | |'."\r\n", + ' | (__| |_| | _ {| |___'."\r\n", ' \___|\___/|_| \_\_____|'."\r\n", '* OK curl IMAP server ready to serve'."\r\n") ); @@ -658,10 +658,10 @@ sub protocolsetup { ); %displaytext = ( 'welcome' => join("", - '220- _ _ ____ _ '."\r\n", - '220- ___| | | | _ \| | '."\r\n", - '220- / __| | | | |_) | | '."\r\n", - '220- | (__| |_| | _ {| |___ '."\r\n", + '220- _ _ ____ _'."\r\n", + '220- ___| | | | _ \| |'."\r\n", + '220- / __| | | | |_) | |'."\r\n", + '220- | (__| |_| | _ {| |___'."\r\n", '220 \___|\___/|_| \_\_____|'."\r\n") ); } @@ -2566,12 +2566,12 @@ sub PASV_ftp { if($pasvbadip) { $p="1,2,3,4"; } - sendcontrol sprintf("227 Entering Passive Mode ($p,%d,%d)\n", + sendcontrol sprintf("227 Entering Passive Mode ($p,%d,%d)\r\n", int($pasvport/256), int($pasvport%256)); } else { # EPSV reply - sendcontrol sprintf("229 Entering Passive Mode (|||%d|)\n", $pasvport); + sendcontrol sprintf("229 Entering Passive Mode (|||%d|)\r\n", $pasvport); } logmsg "Client has been notified that DATA conn ". diff --git a/tests/getpart.pm b/tests/getpart.pm index 3f9ecbb5af73..b555038cf724 100644 --- a/tests/getpart.pm +++ b/tests/getpart.pm @@ -33,6 +33,7 @@ BEGIN { our @EXPORT = qw( compareparts fulltest + checktest getpart getpartattr loadarray @@ -250,6 +251,18 @@ sub fulltest { return @xml; } +sub checktest { + my $anyerr = 0; + + for my $i (0 .. $#xml) { + if(index($xml[$i], "\r") >= 0) { + print STDERR "*** getpart.pm: $xmlfile:$i: 0x0d carriage return found. Use %CR macro instead.\n"; + $anyerr = 1; + } + } + return $anyerr; +} + # write the test to the given file sub savetest { my ($file)=@_; diff --git a/tests/globalconfig.pm b/tests/globalconfig.pm index 8635dea55b58..6203b6274943 100644 --- a/tests/globalconfig.pm +++ b/tests/globalconfig.pm @@ -73,6 +73,7 @@ BEGIN { %keywords @protocols $dev_null + $checktests ); } use pathhelp qw( @@ -94,6 +95,7 @@ our $torture; # 1 to enable torture testing our $proxy_address; # external HTTP proxy address our $listonly; # only list the tests our $buildinfo; # dump buildinfo.txt +our $checktests; # 1 to run a check on test data our $run_duphandle; # run curl with --test-duphandle to verify handle duplication our $run_event_based; # run curl with --test-event to test the event API our $automakestyle; # use automake-like test status output format diff --git a/tests/http/requirements.txt b/tests/http/requirements.txt index 3b81a2ca13b0..a27bf48ea196 100644 --- a/tests/http/requirements.txt +++ b/tests/http/requirements.txt @@ -2,9 +2,9 @@ # # SPDX-License-Identifier: curl -cryptography==46.0.2 -filelock==3.19.1 -psutil==7.1.0 +cryptography==46.0.3 +filelock==3.20.0 +psutil==7.1.2 pytest==8.4.2 pytest-xdist==3.8.0 websockets==15.0.1 diff --git a/tests/http/scorecard.py b/tests/http/scorecard.py index d987fc586b3f..6afb9c74016a 100644 --- a/tests/http/scorecard.py +++ b/tests/http/scorecard.py @@ -194,6 +194,7 @@ def __init__(self, env: Env, verbose: int, curl_verbose: int, download_parallel: int = 0, + upload_parallel: int = 0, server_addr: Optional[str] = None, with_flame: bool = False, socks_args: Optional[List[str]] = None, @@ -206,6 +207,7 @@ def __init__(self, env: Env, self.server_port = server_port self._silent_curl = not curl_verbose self._download_parallel = download_parallel + self._upload_parallel = upload_parallel self._with_flame = with_flame self._socks_args = socks_args self._limit_rate = limit_rate @@ -472,11 +474,13 @@ def ul_parallel(self, url: str, fpath: str, count: int, nsamples: int = 1): def uploads(self, count: int, fsizes: List[int], meta: Dict[str, Any]) -> Dict[str, Any]: nsamples = meta['samples'] - max_parallel = self._download_parallel if self._download_parallel > 0 else count - url = f'https://{self.env.domain2}:{self.server_port}/curltest/put' - cols = ['size', 'single'] + max_parallel = self._upload_parallel if self._upload_parallel > 0 else count + cols = ['size'] + if not self._upload_parallel: + cols.append('single') + if count > 1: + cols.append(f'serial({count})') if count > 1: - cols.append(f'serial({count})') cols.append(f'parallel({count}x{max_parallel})') rows = [] for fsize in fsizes: @@ -484,14 +488,16 @@ def uploads(self, count: int, fsizes: List[int], meta: Dict[str, Any]) -> Dict[s 'val': fsize, 'sval': Card.fmt_size(fsize) }] + self.info(f'{row[0]["sval"]} uploads...') + url = f'https://{self.env.domain2}:{self.server_port}/curltest/put' fname = f'upload{row[0]["sval"]}.data' fpath = self._make_docs_file(docs_dir=self.env.gen_dir, fname=fname, fsize=fsize) - - self.info(f'{row[0]["sval"]} uploads...') - row.append(self.ul_single(url=url, fpath=fpath, nsamples=nsamples)) + if 'single' in cols: + row.append(self.ul_single(url=url, fpath=fpath, nsamples=nsamples)) if count > 1: - row.append(self.ul_serial(url=url, fpath=fpath, count=count, nsamples=nsamples)) + if 'single' in cols: + row.append(self.ul_serial(url=url, fpath=fpath, count=count, nsamples=nsamples)) row.append(self.ul_parallel(url=url, fpath=fpath, count=count, nsamples=nsamples)) rows.append(row) self.info('done.\n') @@ -723,6 +729,7 @@ def run_score(args, protocol): verbose=args.verbose, curl_verbose=args.curl_verbose, download_parallel=args.download_parallel, + upload_parallel=args.upload_parallel, with_flame=args.flame, socks_args=socks_args, limit_rate=args.limit_rate) @@ -750,6 +757,7 @@ def run_score(args, protocol): server_port=server_port, verbose=args.verbose, curl_verbose=args.curl_verbose, download_parallel=args.download_parallel, + upload_parallel=args.upload_parallel, with_flame=args.flame, socks_args=socks_args, limit_rate=args.limit_rate) @@ -777,6 +785,7 @@ def run_score(args, protocol): server_port=server_port, verbose=args.verbose, curl_verbose=args.curl_verbose, download_parallel=args.download_parallel, + upload_parallel=args.upload_parallel, with_flame=args.flame, socks_args=socks_args, limit_rate=args.limit_rate) @@ -887,6 +896,9 @@ def main(): parser.add_argument("--upload-count", action='store', type=int, metavar='number', default=50, help="perform that many uploads") + parser.add_argument("--upload-parallel", action='store', type=int, + metavar='number', default=0, + help="perform that many uploads in parallel (default all)") parser.add_argument("-r", "--requests", action='store_true', default=False, help="evaluate requests") diff --git a/tests/http/test_02_download.py b/tests/http/test_02_download.py index 26da1d2feee9..574401cb7297 100644 --- a/tests/http/test_02_download.py +++ b/tests/http/test_02_download.py @@ -610,6 +610,8 @@ def test_02_32_earlydata(self, env: Env, httpd, nghttpx, proto): pytest.skip("h3 not supported") if proto != 'h3' and sys.platform.startswith('darwin') and env.ci_run: pytest.skip('failing on macOS CI runners') + if proto == 'h3' and sys.platform.startswith('darwin') and env.curl_uses_lib('wolfssl'): + pytest.skip('h3 wolfssl early data failing on macOS') if proto == 'h3' and sys.platform.startswith('darwin') and env.curl_uses_lib('gnutls'): pytest.skip('h3 gnutls early data failing on macOS') count = 2 diff --git a/tests/http/test_07_upload.py b/tests/http/test_07_upload.py index d17d3a44ad04..fa2ef272d7c6 100644 --- a/tests/http/test_07_upload.py +++ b/tests/http/test_07_upload.py @@ -671,6 +671,25 @@ def test_07_62_upload_issue_15688(self, env: Env, httpd, proto): ]) r.check_stats(count=1, http_status=200, exitcode=0) + @pytest.mark.parametrize("proto", ['http/1.1']) + def test_07_63_upload_exp100_paused(self, env: Env, httpd, nghttpx, proto): + read_delay = 1 + url = f'https://{env.authority_for(env.domain1, proto)}/curltest/echo?id=[0-0]'\ + f'&read_delay={read_delay}s' + upload_size = 128 * 1024 + client = LocalClient(name='cli_hx_upload', env=env) + if not client.exists(): + pytest.skip(f'example client not built: {client.name}') + r = client.run(args=[ + '-n', '1', + '-S', f'{upload_size}', + '-P', '1', + '-M', 'MIME', + '-r', f'{env.domain1}:{env.port_for(proto)}:127.0.0.1', + '-V', proto, url + ]) + r.check_exit_code(0) + # nghttpx is the only server we have that supports TLS early data and # has a limit of 16k it announces @pytest.mark.skipif(condition=not Env.have_nghttpx(), reason="no nghttpx") @@ -693,6 +712,8 @@ def test_07_70_put_earlydata(self, env: Env, httpd, nghttpx, proto, upload_size, pytest.skip("h3 not supported") if proto != 'h3' and sys.platform.startswith('darwin') and env.ci_run: pytest.skip('failing on macOS CI runners') + if proto == 'h3' and sys.platform.startswith('darwin') and env.curl_uses_lib('wolfssl'): + pytest.skip('h3 wolfssl early data failing on macOS') if proto == 'h3' and sys.platform.startswith('darwin') and env.curl_uses_lib('gnutls'): pytest.skip('h3 gnutls early data failing on macOS') count = 2 diff --git a/tests/http/test_08_caddy.py b/tests/http/test_08_caddy.py index 3073607e043c..319ffeb96268 100644 --- a/tests/http/test_08_caddy.py +++ b/tests/http/test_08_caddy.py @@ -108,7 +108,6 @@ def test_08_03_download_1mb_parallel(self, env: Env, caddy: Caddy, proto): # download 5MB files sequentially @pytest.mark.skipif(condition=Env().slow_network, reason="not suitable for slow network tests") - @pytest.mark.skipif(condition=Env().ci_run, reason="not suitable for CI runs") @pytest.mark.parametrize("proto", ['h2', 'h3']) def test_08_04a_download_10mb_sequential(self, env: Env, caddy: Caddy, proto): if proto == 'h3' and not env.have_h3_curl(): @@ -121,7 +120,6 @@ def test_08_04a_download_10mb_sequential(self, env: Env, caddy: Caddy, proto): # download 10MB files sequentially @pytest.mark.skipif(condition=Env().slow_network, reason="not suitable for slow network tests") - @pytest.mark.skipif(condition=Env().ci_run, reason="not suitable for CI runs") @pytest.mark.parametrize("proto", ['h2', 'h3']) def test_08_04b_download_10mb_sequential(self, env: Env, caddy: Caddy, proto): if proto == 'h3' and not env.have_h3_curl(): @@ -135,7 +133,6 @@ def test_08_04b_download_10mb_sequential(self, env: Env, caddy: Caddy, proto): # download 10MB files parallel @pytest.mark.skipif(condition=Env().slow_network, reason="not suitable for slow network tests") @pytest.mark.parametrize("proto", ['http/1.1', 'h2', 'h3']) - @pytest.mark.skipif(condition=Env().ci_run, reason="not suitable for CI runs") def test_08_05_download_1mb_parallel(self, env: Env, caddy: Caddy, proto): if proto == 'h3' and not env.have_h3_curl(): pytest.skip("h3 not supported in curl") diff --git a/tests/http/test_16_info.py b/tests/http/test_16_info.py index ac4f4cc86605..53e335e950ac 100644 --- a/tests/http/test_16_info.py +++ b/tests/http/test_16_info.py @@ -160,9 +160,12 @@ def check_stat_times(self, s, idx): for key in ['time_appconnect', 'time_connect', 'time_namelookup']: assert s[key] < s['time_pretransfer'], f'time "{key}" larger than' \ f'"time_pretransfer": {s}' - # assert transfer start is after pretransfer - assert s['time_pretransfer'] <= s['time_starttransfer'], f'"time_pretransfer" '\ - f'greater than "time_starttransfer", {s}' + # assert transfer total is after pretransfer. + # (in MOST situations, pretransfer is before starttransfer, BUT + # in protocols like HTTP we might get a server response already before + # we transition to multi state DID.) + assert s['time_pretransfer'] <= s['time_total'], f'"time_pretransfer" '\ + f'greater than "time_total", {s}' # assert that transfer start is before total assert s['time_starttransfer'] <= s['time_total'], f'"time_starttransfer" '\ f'greater than "time_total", {s}' diff --git a/tests/http/test_17_ssl_use.py b/tests/http/test_17_ssl_use.py index 619ecd25e6f1..57e1c014042b 100644 --- a/tests/http/test_17_ssl_use.py +++ b/tests/http/test_17_ssl_use.py @@ -186,6 +186,28 @@ def test_17_05_bad_ip_addr(self, env: Env, proto, r = curl.http_get(url=url, alpn_proto=proto) assert r.exit_code == 60, f'{r}' + # use IP address that is in cert as DNS name (not really legal) + @pytest.mark.parametrize("proto", ['http/1.1', 'h2', 'h3']) + def test_17_05_very_bad_ip_addr(self, env: Env, proto, + httpd, configures_httpd, + nghttpx, configures_nghttpx): + if proto == 'h3' and not env.have_h3(): + pytest.skip("h3 not supported") + if env.curl_uses_lib('mbedtls'): + pytest.skip("mbedtls falsely verifies a DNS: altname as IP address") + if env.curl_uses_lib('wolfssl') and \ + env.curl_lib_version_before('wolfssl', '5.8.4'): + pytest.skip("wolfSSL falsely verifies a DNS: altname as IP address in 5.8.2 and before") + httpd.set_domain1_cred_name('domain1-very-bad') + httpd.reload_if_config_changed() + if proto == 'h3': + nghttpx.set_cred_name('domain1-very-bad') + nghttpx.reload_if_config_changed() + curl = CurlClient(env=env) + url = f'https://127.0.0.1:{env.port_for(proto)}/curltest/sslinfo' + r = curl.http_get(url=url, alpn_proto=proto) + assert r.exit_code == 60, f'{r}' + # use localhost for connect @pytest.mark.parametrize("proto", ['http/1.1', 'h2', 'h3']) def test_17_06_localhost(self, env: Env, proto, httpd, nghttpx): diff --git a/tests/http/testenv/certs.py b/tests/http/testenv/certs.py index bfb7287eeee5..e59b1ea147e1 100644 --- a/tests/http/testenv/certs.py +++ b/tests/http/testenv/certs.py @@ -459,11 +459,15 @@ def _add_ca_usages(csr: Any) -> Any: def _add_leaf_usages(csr: Any, domains: List[str], issuer: Credentials) -> Any: names = [] for name in domains: - try: - names.append(x509.IPAddress(ipaddress.ip_address(name))) - # TODO: specify specific exceptions here - except: # noqa: E722 - names.append(x509.DNSName(name)) + m = re.match(r'dns:(.+)', name) + if m: + names.append(x509.DNSName(m.group(1))) + else: + try: + names.append(x509.IPAddress(ipaddress.ip_address(name))) + # TODO: specify specific exceptions here + except: # noqa: E722 + names.append(x509.DNSName(name)) return csr.add_extension( x509.BasicConstraints(ca=False, path_length=None), diff --git a/tests/http/testenv/env.py b/tests/http/testenv/env.py index 0cd9101342d1..ff8741530b70 100644 --- a/tests/http/testenv/env.py +++ b/tests/http/testenv/env.py @@ -188,6 +188,7 @@ def __init__(self, pytestconfig: Optional[pytest.Config] = None, self.cert_specs = [ CertificateSpec(domains=[self.domain1, self.domain1brotli, 'localhost', '127.0.0.1'], key_type='rsa2048'), CertificateSpec(name='domain1-no-ip', domains=[self.domain1, self.domain1brotli], key_type='rsa2048'), + CertificateSpec(name='domain1-very-bad', domains=[self.domain1, 'dns:127.0.0.1'], key_type='rsa2048'), CertificateSpec(domains=[self.domain2], key_type='rsa2048'), CertificateSpec(domains=[self.ftp_domain], key_type='rsa2048'), CertificateSpec(domains=[self.proxy_domain, '127.0.0.1'], key_type='rsa2048'), diff --git a/tests/http/testenv/httpd.py b/tests/http/testenv/httpd.py index d9f535dd22d2..740237abc4e6 100644 --- a/tests/http/testenv/httpd.py +++ b/tests/http/testenv/httpd.py @@ -575,11 +575,13 @@ def _init_curltest(self): return local_dir = os.path.dirname(inspect.getfile(Httpd)) out_dir = os.path.join(self.env.gen_dir, 'mod_curltest') + in_source = os.path.join(local_dir, 'mod_curltest/mod_curltest.c') out_source = os.path.join(out_dir, 'mod_curltest.c') if not os.path.exists(out_dir): os.mkdir(out_dir) - if not os.path.exists(out_source): - shutil.copy(os.path.join(local_dir, 'mod_curltest/mod_curltest.c'), out_source) + if not os.path.exists(out_source) or \ + os.stat(in_source).st_mtime > os.stat(out_source).st_mtime: + shutil.copy(in_source, out_source) p = subprocess.run([ self.env.apxs, '-c', out_source ], capture_output=True, cwd=out_dir) diff --git a/tests/http/testenv/mod_curltest/mod_curltest.c b/tests/http/testenv/mod_curltest/mod_curltest.c index d9ff9152c87d..17d0688ace68 100644 --- a/tests/http/testenv/mod_curltest/mod_curltest.c +++ b/tests/http/testenv/mod_curltest/mod_curltest.c @@ -188,6 +188,7 @@ static int curltest_echo_handler(request_rec *r) char buffer[8192]; const char *ct; apr_off_t die_after_len = -1, total_read_len = 0; + apr_time_t read_delay = 0; int just_die = 0, die_after_100 = 0; long l; @@ -221,6 +222,12 @@ static int curltest_echo_handler(request_rec *r) die_after_100 = 1; continue; } + else if(!strcmp("read_delay", arg)) { + rv = duration_parse(&read_delay, val, "s"); + if(APR_SUCCESS == rv) { + continue; + } + } } } } @@ -258,6 +265,12 @@ static int curltest_echo_handler(request_rec *r) apr_table_setn(r->headers_out, "Request-TE", apr_table_get(r->headers_in, "TE")); + if(read_delay) { + ap_log_rerror(APLOG_MARK, APLOG_TRACE1, 0, r, + "put_handler: read_delay"); + apr_sleep(read_delay); + } + bb = apr_brigade_create(r->pool, c->bucket_alloc); /* copy any request body into the response */ rv = ap_setup_client_block(r, REQUEST_CHUNKED_DECHUNK); @@ -610,7 +623,7 @@ static int curltest_put_handler(request_rec *r) } } else if(!strcmp("max_upload", arg)) { - rbody_max_len = (int)apr_atoi64(val); + rbody_max_len = (apr_off_t)apr_atoi64(val); continue; } } @@ -629,6 +642,7 @@ static int curltest_put_handler(request_rec *r) apr_table_unset(r->headers_out, "Content-Length"); /* Discourage content-encodings */ apr_table_unset(r->headers_out, "Content-Encoding"); + apr_table_setn(r->headers_out, "request-id", request_id); apr_table_setn(r->subprocess_env, "no-brotli", "1"); apr_table_setn(r->subprocess_env, "no-gzip", "1"); @@ -636,6 +650,8 @@ static int curltest_put_handler(request_rec *r) ap_set_content_type(r, ct ? ct : "text/plain"); if(read_delay) { + ap_log_rerror(APLOG_MARK, APLOG_TRACE1, 0, r, + "put_handler: read_delay"); apr_sleep(read_delay); } bb = apr_brigade_create(r->pool, c->bucket_alloc); @@ -674,9 +690,9 @@ static int curltest_put_handler(request_rec *r) } cleanup: - if(rv == APR_SUCCESS - || r->status != HTTP_OK - || c->aborted) { + if(rv == APR_SUCCESS || + r->status != HTTP_OK || + c->aborted) { ap_log_rerror(APLOG_MARK, APLOG_TRACE1, rv, r, "put_handler: done"); return OK; } @@ -694,13 +710,7 @@ static int curltest_1_1_required(request_rec *r) apr_bucket_brigade *bb; apr_bucket *b; apr_status_t rv; - char buffer[16*1024]; const char *ct; - const char *request_id = "none"; - apr_time_t chunk_delay = 0; - apr_array_header_t *args = NULL; - long l; - int i; if(strcmp(r->handler, "curltest-1_1-required")) { return DECLINED; @@ -744,9 +754,9 @@ static int curltest_1_1_required(request_rec *r) rv = ap_pass_brigade(r->output_filters, bb); cleanup: - if(rv == APR_SUCCESS - || r->status != HTTP_OK - || c->aborted) { + if(rv == APR_SUCCESS || + r->status != HTTP_OK || + c->aborted) { ap_log_rerror(APLOG_MARK, APLOG_TRACE1, rv, r, "1_1_handler: done"); return OK; } @@ -774,10 +784,8 @@ static int curltest_sslinfo_handler(request_rec *r) apr_bucket_brigade *bb; apr_bucket *b; apr_status_t rv; - apr_array_header_t *args = NULL; const char *request_id = NULL; int close_conn = 0; - long l; int i; if(strcmp(r->handler, "curltest-sslinfo")) { @@ -821,6 +829,8 @@ static int curltest_sslinfo_handler(request_rec *r) apr_table_unset(r->headers_out, "Content-Length"); /* Discourage content-encodings */ apr_table_unset(r->headers_out, "Content-Encoding"); + if(request_id) + apr_table_setn(r->headers_out, "request-id", request_id); apr_table_setn(r->subprocess_env, "no-brotli", "1"); apr_table_setn(r->subprocess_env, "no-gzip", "1"); @@ -856,9 +866,9 @@ static int curltest_sslinfo_handler(request_rec *r) cleanup: if(close_conn) r->connection->keepalive = AP_CONN_CLOSE; - if(rv == APR_SUCCESS - || r->status != HTTP_OK - || c->aborted) { + if(rv == APR_SUCCESS || + r->status != HTTP_OK || + c->aborted) { ap_log_rerror(APLOG_MARK, APLOG_TRACE1, rv, r, "1_1_handler: done"); return OK; } diff --git a/tests/libtest/cli_h2_pausing.c b/tests/libtest/cli_h2_pausing.c index 8cc440daacfc..692b0a321103 100644 --- a/tests/libtest/cli_h2_pausing.c +++ b/tests/libtest/cli_h2_pausing.c @@ -46,7 +46,7 @@ struct handle int resumed; int errored; int fail_write; - CURL *h; + CURL *curl; }; static size_t cb(char *data, size_t size, size_t nmemb, void *clientp) @@ -56,7 +56,7 @@ static size_t cb(char *data, size_t size, size_t nmemb, void *clientp) curl_off_t totalsize; (void)data; - if(curl_easy_getinfo(handle->h, CURLINFO_CONTENT_LENGTH_DOWNLOAD_T, + if(curl_easy_getinfo(handle->curl, CURLINFO_CONTENT_LENGTH_DOWNLOAD_T, &totalsize) == CURLE_OK) curl_mfprintf(stderr, "INFO: [%zu] write, " "Content-Length %" CURL_FORMAT_CURL_OFF_T "\n", @@ -80,21 +80,15 @@ static size_t cb(char *data, size_t size, size_t nmemb, void *clientp) return realsize; } -#define CLI_ERR() \ - do { \ - curl_mfprintf(stderr, "something unexpected went wrong - bailing out!\n");\ - return (CURLcode)2; \ - } while(0) - static CURLcode test_cli_h2_pausing(const char *URL) { struct handle handles[2]; - CURLM *multi_handle; + CURLM *multi = NULL; int still_running = 1, msgs_left, numfds; size_t i; CURLMsg *msg; int rounds = 0; - CURLcode rc = CURLE_OK; + CURLcode result = CURLE_OK; CURLU *cu; struct curl_slist *resolve = NULL; char resolve_buf[1024]; @@ -139,25 +133,35 @@ static CURLcode test_cli_h2_pausing(const char *URL) } url = test_argv[0]; - curl_global_init(CURL_GLOBAL_DEFAULT); + if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) { + curl_mfprintf(stderr, "curl_global_init() failed\n"); + return (CURLcode)3; + } + curl_global_trace("ids,time,http/2,http/3"); + memset(handles, 0, sizeof(handles)); + cu = curl_url(); if(!cu) { curl_mfprintf(stderr, "out of memory\n"); - return (CURLcode)1; + result = (CURLcode)1; + goto cleanup; } if(curl_url_set(cu, CURLUPART_URL, url, 0)) { curl_mfprintf(stderr, "not a URL: '%s'\n", url); - return (CURLcode)1; + result = (CURLcode)1; + goto cleanup; } if(curl_url_get(cu, CURLUPART_HOST, &host, 0)) { curl_mfprintf(stderr, "could not get host of '%s'\n", url); - return (CURLcode)1; + result = (CURLcode)1; + goto cleanup; } if(curl_url_get(cu, CURLUPART_PORT, &port, 0)) { curl_mfprintf(stderr, "could not get port of '%s'\n", url); - return (CURLcode)1; + result = (CURLcode)1; + goto cleanup; } memset(&resolve, 0, sizeof(resolve)); curl_msnprintf(resolve_buf, sizeof(resolve_buf)-1, "%s:%s:127.0.0.1", @@ -170,37 +174,52 @@ static CURLcode test_cli_h2_pausing(const char *URL) handles[i].resumed = 0; handles[i].errored = 0; handles[i].fail_write = 1; - handles[i].h = curl_easy_init(); - if(!handles[i].h || - curl_easy_setopt(handles[i].h, CURLOPT_WRITEFUNCTION, cb) != CURLE_OK || - curl_easy_setopt(handles[i].h, CURLOPT_WRITEDATA, &handles[i]) + handles[i].curl = curl_easy_init(); + if(!handles[i].curl || + curl_easy_setopt(handles[i].curl, CURLOPT_WRITEFUNCTION, cb) + != CURLE_OK || + curl_easy_setopt(handles[i].curl, CURLOPT_WRITEDATA, &handles[i]) + != CURLE_OK || + curl_easy_setopt(handles[i].curl, CURLOPT_FOLLOWLOCATION, 1L) + != CURLE_OK || + curl_easy_setopt(handles[i].curl, CURLOPT_VERBOSE, 1L) != CURLE_OK || + curl_easy_setopt(handles[i].curl, CURLOPT_DEBUGFUNCTION, cli_debug_cb) != CURLE_OK || - curl_easy_setopt(handles[i].h, CURLOPT_FOLLOWLOCATION, 1L) != CURLE_OK || - curl_easy_setopt(handles[i].h, CURLOPT_VERBOSE, 1L) != CURLE_OK || - curl_easy_setopt(handles[i].h, CURLOPT_DEBUGFUNCTION, cli_debug_cb) + curl_easy_setopt(handles[i].curl, CURLOPT_SSL_VERIFYPEER, 0L) != CURLE_OK || - curl_easy_setopt(handles[i].h, CURLOPT_SSL_VERIFYPEER, 0L) != CURLE_OK || - curl_easy_setopt(handles[i].h, CURLOPT_RESOLVE, resolve) != CURLE_OK || - curl_easy_setopt(handles[i].h, CURLOPT_PIPEWAIT, 1L) || - curl_easy_setopt(handles[i].h, CURLOPT_URL, url) != CURLE_OK) { - CLI_ERR(); + curl_easy_setopt(handles[i].curl, CURLOPT_RESOLVE, resolve) + != CURLE_OK || + curl_easy_setopt(handles[i].curl, CURLOPT_PIPEWAIT, 1L) != CURLE_OK || + curl_easy_setopt(handles[i].curl, CURLOPT_URL, url) != CURLE_OK) { + curl_mfprintf(stderr, "failed configuring easy handle - bailing out\n"); + result = (CURLcode)2; + goto cleanup; } - curl_easy_setopt(handles[i].h, CURLOPT_HTTP_VERSION, http_version); + curl_easy_setopt(handles[i].curl, CURLOPT_HTTP_VERSION, http_version); } - multi_handle = curl_multi_init(); - if(!multi_handle) - CLI_ERR(); + multi = curl_multi_init(); + if(!multi) { + curl_mfprintf(stderr, "curl_multi_init() failed - bailing out\n"); + result = (CURLcode)2; + goto cleanup; + } for(i = 0; i < CURL_ARRAYSIZE(handles); i++) { - if(curl_multi_add_handle(multi_handle, handles[i].h) != CURLM_OK) - CLI_ERR(); + if(curl_multi_add_handle(multi, handles[i].curl) != CURLM_OK) { + curl_mfprintf(stderr, "curl_multi_add_handle() failed - bailing out\n"); + result = (CURLcode)2; + goto cleanup; + } } for(rounds = 0;; rounds++) { curl_mfprintf(stderr, "INFO: multi_perform round %d\n", rounds); - if(curl_multi_perform(multi_handle, &still_running) != CURLM_OK) - CLI_ERR(); + if(curl_multi_perform(multi, &still_running) != CURLM_OK) { + curl_mfprintf(stderr, "curl_multi_perform() failed - bailing out\n"); + result = (CURLcode)2; + goto cleanup; + } if(!still_running) { int as_expected = 1; @@ -228,26 +247,29 @@ static CURLcode test_cli_h2_pausing(const char *URL) if(!as_expected) { curl_mfprintf(stderr, "ERROR: handles not in expected state " "after %d rounds\n", rounds); - rc = (CURLcode)1; + result = (CURLcode)1; } break; } - if(curl_multi_poll(multi_handle, NULL, 0, 100, &numfds) != CURLM_OK) - CLI_ERR(); + if(curl_multi_poll(multi, NULL, 0, 100, &numfds) != CURLM_OK) { + curl_mfprintf(stderr, "curl_multi_poll() failed - bailing out\n"); + result = (CURLcode)2; + goto cleanup; + } /* !checksrc! disable EQUALSNULL 1 */ - while((msg = curl_multi_info_read(multi_handle, &msgs_left)) != NULL) { + while((msg = curl_multi_info_read(multi, &msgs_left)) != NULL) { if(msg->msg == CURLMSG_DONE) { for(i = 0; i < CURL_ARRAYSIZE(handles); i++) { - if(msg->easy_handle == handles[i].h) { + if(msg->easy_handle == handles[i].curl) { if(handles[i].paused != 1 || !handles[i].resumed) { curl_mfprintf(stderr, "ERROR: [%zu] done, paused=%d, " "resumed=%d, result %d - wtf?\n", i, handles[i].paused, handles[i].resumed, msg->data.result); - rc = (CURLcode)1; - goto out; + result = (CURLcode)1; + goto cleanup; } } } @@ -273,23 +295,24 @@ static CURLcode test_cli_h2_pausing(const char *URL) for(i = 0; i < CURL_ARRAYSIZE(handles); i++) { curl_mfprintf(stderr, "INFO: [%zu] resumed\n", i); handles[i].resumed = 1; - curl_easy_pause(handles[i].h, CURLPAUSE_CONT); + curl_easy_pause(handles[i].curl, CURLPAUSE_CONT); } } } -out: +cleanup: + for(i = 0; i < CURL_ARRAYSIZE(handles); i++) { - curl_multi_remove_handle(multi_handle, handles[i].h); - curl_easy_cleanup(handles[i].h); + curl_multi_remove_handle(multi, handles[i].curl); + curl_easy_cleanup(handles[i].curl); } curl_slist_free_all(resolve); curl_free(host); curl_free(port); curl_url_cleanup(cu); - curl_multi_cleanup(multi_handle); + curl_multi_cleanup(multi); curl_global_cleanup(); - return rc; + return result; } diff --git a/tests/libtest/cli_h2_serverpush.c b/tests/libtest/cli_h2_serverpush.c index a865fdfd8f5b..6936b3b0d65c 100644 --- a/tests/libtest/cli_h2_serverpush.c +++ b/tests/libtest/cli_h2_serverpush.c @@ -26,37 +26,37 @@ #include "testtrace.h" #include "memdebug.h" -static FILE *out_download; +static FILE *out_download = NULL; -static int setup_h2_serverpush(CURL *hnd, const char *url) +static int setup_h2_serverpush(CURL *curl, const char *url) { out_download = curlx_fopen("download_0.data", "wb"); if(!out_download) return 1; /* failed */ - curl_easy_setopt(hnd, CURLOPT_URL, url); - curl_easy_setopt(hnd, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0); - curl_easy_setopt(hnd, CURLOPT_SSL_VERIFYPEER, 0L); - curl_easy_setopt(hnd, CURLOPT_SSL_VERIFYHOST, 0L); + curl_easy_setopt(curl, CURLOPT_URL, url); + curl_easy_setopt(curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0); + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L); + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L); - curl_easy_setopt(hnd, CURLOPT_WRITEDATA, out_download); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, out_download); /* please be verbose */ - curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L); - curl_easy_setopt(hnd, CURLOPT_DEBUGFUNCTION, libtest_debug_cb); - curl_easy_setopt(hnd, CURLOPT_DEBUGDATA, &debug_config); + curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); + curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, libtest_debug_cb); + curl_easy_setopt(curl, CURLOPT_DEBUGDATA, &debug_config); /* wait for pipe connection to confirm */ - curl_easy_setopt(hnd, CURLOPT_PIPEWAIT, 1L); + curl_easy_setopt(curl, CURLOPT_PIPEWAIT, 1L); return 0; /* all is good */ } -static FILE *out_push; +static FILE *out_push = NULL; -/* called when there's an incoming push */ +/* called when there is an incoming push */ static int server_push_callback(CURL *parent, - CURL *easy, + CURL *curl, size_t num_headers, struct curl_pushheaders *headers, void *userp) @@ -66,9 +66,9 @@ static int server_push_callback(CURL *parent, int *transfers = (int *)userp; char filename[128]; static unsigned int count = 0; - int rv; (void)parent; + curl_msnprintf(filename, sizeof(filename) - 1, "push%u", count++); /* here's a new stream, save it in a new file for each new push */ @@ -76,12 +76,11 @@ static int server_push_callback(CURL *parent, if(!out_push) { /* if we cannot save it, deny it */ curl_mfprintf(stderr, "Failed to create output file for push\n"); - rv = CURL_PUSH_DENY; - goto out; + return CURL_PUSH_DENY; } /* write to this file */ - curl_easy_setopt(easy, CURLOPT_WRITEDATA, out_push); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, out_push); curl_mfprintf(stderr, "**** push callback approves stream %u, " "got %zu headers!\n", count, num_headers); @@ -98,10 +97,8 @@ static int server_push_callback(CURL *parent, } (*transfers)++; /* one more */ - rv = CURL_PUSH_OK; -out: - return rv; + return CURL_PUSH_OK; } /* @@ -109,10 +106,10 @@ static int server_push_callback(CURL *parent, */ static CURLcode test_cli_h2_serverpush(const char *URL) { - CURL *easy; - CURLM *multi_handle; + CURL *curl = NULL; + CURLM *multi; int transfers = 1; /* we start with one */ - struct CURLMsg *m; + CURLcode result = CURLE_OK; debug_config.nohex = TRUE; debug_config.tracetime = FALSE; @@ -122,26 +119,43 @@ static CURLcode test_cli_h2_serverpush(const char *URL) return (CURLcode)2; } - multi_handle = curl_multi_init(); - curl_multi_setopt(multi_handle, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX); - curl_multi_setopt(multi_handle, CURLMOPT_PUSHFUNCTION, server_push_callback); - curl_multi_setopt(multi_handle, CURLMOPT_PUSHDATA, &transfers); + if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) { + curl_mfprintf(stderr, "curl_global_init() failed\n"); + return (CURLcode)3; + } - easy = curl_easy_init(); - if(setup_h2_serverpush(easy, URL)) { - curlx_fclose(out_download); + multi = curl_multi_init(); + if(!multi) { + result = (CURLcode)1; + goto cleanup; + } + + curl = curl_easy_init(); + if(!curl) { + result = (CURLcode)1; + goto cleanup; + } + + if(setup_h2_serverpush(curl, URL)) { curl_mfprintf(stderr, "failed\n"); - return (CURLcode)1; + result = (CURLcode)1; + goto cleanup; } - curl_multi_add_handle(multi_handle, easy); + curl_multi_setopt(multi, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX); + curl_multi_setopt(multi, CURLMOPT_PUSHFUNCTION, server_push_callback); + curl_multi_setopt(multi, CURLMOPT_PUSHDATA, &transfers); + + curl_multi_add_handle(multi, curl); + do { + struct CURLMsg *m; int still_running; /* keep number of running handles */ - CURLMcode mc = curl_multi_perform(multi_handle, &still_running); + CURLMcode mc = curl_multi_perform(multi, &still_running); if(still_running) /* wait for activity, timeout or "nothing" */ - mc = curl_multi_poll(multi_handle, NULL, 0, 1000, NULL); + mc = curl_multi_poll(multi, NULL, 0, 1000, NULL); if(mc) break; @@ -153,22 +167,27 @@ static CURLcode test_cli_h2_serverpush(const char *URL) */ do { int msgq = 0; - m = curl_multi_info_read(multi_handle, &msgq); + m = curl_multi_info_read(multi, &msgq); if(m && (m->msg == CURLMSG_DONE)) { - CURL *e = m->easy_handle; + CURL *easy = m->easy_handle; transfers--; - curl_multi_remove_handle(multi_handle, e); - curl_easy_cleanup(e); + curl_multi_remove_handle(multi, easy); + curl_easy_cleanup(easy); } } while(m); } while(transfers); /* as long as we have transfers going */ - curl_multi_cleanup(multi_handle); +cleanup: - curlx_fclose(out_download); + curl_multi_cleanup(multi); + + if(out_download) + curlx_fclose(out_download); if(out_push) curlx_fclose(out_push); - return CURLE_OK; + curl_global_cleanup(); + + return result; } diff --git a/tests/libtest/cli_h2_upgrade_extreme.c b/tests/libtest/cli_h2_upgrade_extreme.c index f6b277424fd2..eb0549380031 100644 --- a/tests/libtest/cli_h2_upgrade_extreme.c +++ b/tests/libtest/cli_h2_upgrade_extreme.c @@ -37,19 +37,24 @@ static size_t write_h2_upg_extreme_cb(char *ptr, size_t size, size_t nmemb, static CURLcode test_cli_h2_upgrade_extreme(const char *URL) { CURLM *multi = NULL; - CURL *easy; + CURL *curl; CURLMcode mc; int running_handles = 0, start_count, numfds; CURLMsg *msg; int msgs_in_queue; char range[128]; - CURLcode exitcode = (CURLcode)1; + CURLcode result = (CURLcode)1; if(!URL) { curl_mfprintf(stderr, "need URL as argument\n"); return (CURLcode)2; } + if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) { + curl_mfprintf(stderr, "curl_global_init() failed\n"); + return (CURLcode)3; + } + multi = curl_multi_init(); if(!multi) { curl_mfprintf(stderr, "curl_multi_init failed\n"); @@ -59,33 +64,33 @@ static CURLcode test_cli_h2_upgrade_extreme(const char *URL) start_count = 200; do { if(start_count) { - easy = curl_easy_init(); - if(!easy) { + curl = curl_easy_init(); + if(!curl) { curl_mfprintf(stderr, "curl_easy_init failed\n"); goto cleanup; } - curl_easy_setopt(easy, CURLOPT_VERBOSE, 1L); - curl_easy_setopt(easy, CURLOPT_DEBUGFUNCTION, cli_debug_cb); - curl_easy_setopt(easy, CURLOPT_URL, URL); - curl_easy_setopt(easy, CURLOPT_NOSIGNAL, 1L); - curl_easy_setopt(easy, CURLOPT_AUTOREFERER, 1L); - curl_easy_setopt(easy, CURLOPT_FAILONERROR, 1L); - curl_easy_setopt(easy, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0); - curl_easy_setopt(easy, CURLOPT_WRITEFUNCTION, write_h2_upg_extreme_cb); - curl_easy_setopt(easy, CURLOPT_WRITEDATA, NULL); - curl_easy_setopt(easy, CURLOPT_HTTPGET, 1L); + curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); + curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, cli_debug_cb); + curl_easy_setopt(curl, CURLOPT_URL, URL); + curl_easy_setopt(curl, CURLOPT_NOSIGNAL, 1L); + curl_easy_setopt(curl, CURLOPT_AUTOREFERER, 1L); + curl_easy_setopt(curl, CURLOPT_FAILONERROR, 1L); + curl_easy_setopt(curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_h2_upg_extreme_cb); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, NULL); + curl_easy_setopt(curl, CURLOPT_HTTPGET, 1L); curl_msnprintf(range, sizeof(range), "%" CURL_FORMAT_CURL_OFF_TU "-" "%" CURL_FORMAT_CURL_OFF_TU, (curl_off_t)0, (curl_off_t)16384); - curl_easy_setopt(easy, CURLOPT_RANGE, range); + curl_easy_setopt(curl, CURLOPT_RANGE, range); - mc = curl_multi_add_handle(multi, easy); + mc = curl_multi_add_handle(multi, curl); if(mc != CURLM_OK) { curl_mfprintf(stderr, "curl_multi_add_handle: %s\n", curl_multi_strerror(mc)); - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); goto cleanup; } --start_count; @@ -144,7 +149,7 @@ static CURLcode test_cli_h2_upgrade_extreme(const char *URL) } while(running_handles > 0 || start_count); curl_mfprintf(stderr, "exiting\n"); - exitcode = CURLE_OK; + result = CURLE_OK; cleanup: @@ -161,5 +166,7 @@ static CURLcode test_cli_h2_upgrade_extreme(const char *URL) curl_multi_cleanup(multi); } - return exitcode; + curl_global_cleanup(); + + return result; } diff --git a/tests/libtest/cli_hx_download.c b/tests/libtest/cli_hx_download.c index 5ab4db024c58..b7ad5912a93b 100644 --- a/tests/libtest/cli_hx_download.c +++ b/tests/libtest/cli_hx_download.c @@ -51,7 +51,7 @@ static int verbose_d = 1; struct transfer_d { size_t idx; - CURL *easy; + CURL *curl; char filename[128]; FILE *out; curl_off_t recv_size; @@ -70,11 +70,11 @@ static size_t transfer_count_d = 1; static struct transfer_d *transfer_d; static int forbid_reuse_d = 0; -static struct transfer_d *get_transfer_for_easy_d(CURL *easy) +static struct transfer_d *get_transfer_for_easy_d(CURL *curl) { size_t i; for(i = 0; i < transfer_count_d; ++i) { - if(easy == transfer_d[i].easy) + if(curl == transfer_d[i].curl) return &transfer_d[i]; } return NULL; @@ -143,7 +143,7 @@ static int my_progress_d_cb(void *userdata, CURLcode res; t->checked_ssl = TRUE; - res = curl_easy_getinfo(t->easy, CURLINFO_TLS_SSL_PTR, &tls); + res = curl_easy_getinfo(t->curl, CURLINFO_TLS_SSL_PTR, &tls); if(res) { curl_mfprintf(stderr, "[t-%zu] info CURLINFO_TLS_SSL_PTR failed: %d\n", t->idx, res); @@ -212,40 +212,40 @@ static int my_progress_d_cb(void *userdata, return 0; } -static int setup_hx_download(CURL *hnd, const char *url, struct transfer_d *t, +static int setup_hx_download(CURL *curl, const char *url, struct transfer_d *t, long http_version, struct curl_slist *host, CURLSH *share, int use_earlydata, int fresh_connect) { - curl_easy_setopt(hnd, CURLOPT_SHARE, share); - curl_easy_setopt(hnd, CURLOPT_URL, url); - curl_easy_setopt(hnd, CURLOPT_HTTP_VERSION, http_version); - curl_easy_setopt(hnd, CURLOPT_SSL_VERIFYPEER, 0L); - curl_easy_setopt(hnd, CURLOPT_SSL_VERIFYHOST, 0L); - curl_easy_setopt(hnd, CURLOPT_ACCEPT_ENCODING, ""); - curl_easy_setopt(hnd, CURLOPT_BUFFERSIZE, (long)(128 * 1024)); - curl_easy_setopt(hnd, CURLOPT_WRITEFUNCTION, my_write_d_cb); - curl_easy_setopt(hnd, CURLOPT_WRITEDATA, t); - curl_easy_setopt(hnd, CURLOPT_NOPROGRESS, 0L); - curl_easy_setopt(hnd, CURLOPT_XFERINFOFUNCTION, my_progress_d_cb); - curl_easy_setopt(hnd, CURLOPT_XFERINFODATA, t); + curl_easy_setopt(curl, CURLOPT_SHARE, share); + curl_easy_setopt(curl, CURLOPT_URL, url); + curl_easy_setopt(curl, CURLOPT_HTTP_VERSION, http_version); + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L); + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L); + curl_easy_setopt(curl, CURLOPT_ACCEPT_ENCODING, ""); + curl_easy_setopt(curl, CURLOPT_BUFFERSIZE, (long)(128 * 1024)); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, my_write_d_cb); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, t); + curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 0L); + curl_easy_setopt(curl, CURLOPT_XFERINFOFUNCTION, my_progress_d_cb); + curl_easy_setopt(curl, CURLOPT_XFERINFODATA, t); if(use_earlydata) - curl_easy_setopt(hnd, CURLOPT_SSL_OPTIONS, CURLSSLOPT_EARLYDATA); + curl_easy_setopt(curl, CURLOPT_SSL_OPTIONS, CURLSSLOPT_EARLYDATA); if(forbid_reuse_d) - curl_easy_setopt(hnd, CURLOPT_FORBID_REUSE, 1L); + curl_easy_setopt(curl, CURLOPT_FORBID_REUSE, 1L); if(host) - curl_easy_setopt(hnd, CURLOPT_RESOLVE, host); + curl_easy_setopt(curl, CURLOPT_RESOLVE, host); if(fresh_connect) - curl_easy_setopt(hnd, CURLOPT_FRESH_CONNECT, 1L); + curl_easy_setopt(curl, CURLOPT_FRESH_CONNECT, 1L); /* please be verbose */ if(verbose_d) { - curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L); - curl_easy_setopt(hnd, CURLOPT_DEBUGFUNCTION, cli_debug_cb); + curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); + curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, cli_debug_cb); } /* wait for pipe connection to confirm */ - curl_easy_setopt(hnd, CURLOPT_PIPEWAIT, 1L); + curl_easy_setopt(curl, CURLOPT_PIPEWAIT, 1L); return 0; /* all is good */ } @@ -278,9 +278,9 @@ static void usage_hx_download(const char *msg) */ static CURLcode test_cli_hx_download(const char *URL) { - CURLM *multi_handle; + CURLM *multi = NULL; struct CURLMsg *m; - CURLSH *share; + CURLSH *share = NULL; const char *url; size_t i, n, max_parallel = 1; size_t active_transfers; @@ -288,7 +288,7 @@ static CURLcode test_cli_hx_download(const char *URL) size_t abort_offset = 0; size_t fail_offset = 0; int abort_paused = 0, use_earlydata = 0; - struct transfer_d *t; + struct transfer_d *t = NULL; long http_version = CURL_HTTP_VERSION_2_0; int ch; struct curl_slist *host = NULL; @@ -306,7 +306,7 @@ static CURLcode test_cli_hx_download(const char *URL) case 'h': usage_hx_download(NULL); result = (CURLcode)2; - goto cleanup; + goto optcleanup; case 'a': abort_paused = 1; break; @@ -354,29 +354,34 @@ static CURLcode test_cli_hx_download(const char *URL) else { usage_hx_download("invalid http version"); result = (CURLcode)1; - goto cleanup; + goto optcleanup; } break; } default: usage_hx_download("invalid option"); result = (CURLcode)1; - goto cleanup; + goto optcleanup; } } test_argc -= coptind; test_argv += coptind; - curl_global_init(CURL_GLOBAL_DEFAULT); curl_global_trace("ids,time,http/2,http/3"); if(test_argc != 1) { usage_hx_download("not enough arguments"); result = (CURLcode)2; - goto cleanup; + goto optcleanup; } url = test_argv[0]; + if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) { + curl_mfprintf(stderr, "curl_global_init() failed\n"); + result = (CURLcode)3; + goto optcleanup; + } + if(resolve) host = curl_slist_append(NULL, resolve); @@ -400,11 +405,11 @@ static CURLcode test_cli_hx_download(const char *URL) goto cleanup; } - multi_handle = curl_multi_init(); - curl_multi_setopt(multi_handle, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX); - curl_multi_setopt(multi_handle, CURLMOPT_MAX_TOTAL_CONNECTIONS, + multi = curl_multi_init(); + curl_multi_setopt(multi, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX); + curl_multi_setopt(multi, CURLMOPT_MAX_TOTAL_CONNECTIONS, (long)max_total_conns); - curl_multi_setopt(multi_handle, CURLMOPT_MAX_HOST_CONNECTIONS, + curl_multi_setopt(multi, CURLMOPT_MAX_HOST_CONNECTIONS, (long)max_host_conns); active_transfers = 0; @@ -419,15 +424,15 @@ static CURLcode test_cli_hx_download(const char *URL) n = (max_parallel < transfer_count_d) ? max_parallel : transfer_count_d; for(i = 0; i < n; ++i) { t = &transfer_d[i]; - t->easy = curl_easy_init(); - if(!t->easy || - setup_hx_download(t->easy, url, t, http_version, host, share, + t->curl = curl_easy_init(); + if(!t->curl || + setup_hx_download(t->curl, url, t, http_version, host, share, use_earlydata, fresh_connect)) { curl_mfprintf(stderr, "[t-%zu] FAILED setup\n", i); result = (CURLcode)1; goto cleanup; } - curl_multi_add_handle(multi_handle, t->easy); + curl_multi_add_handle(multi, t->curl); t->started = 1; ++active_transfers; curl_mfprintf(stderr, "[t-%zu] STARTED\n", t->idx); @@ -435,11 +440,11 @@ static CURLcode test_cli_hx_download(const char *URL) do { int still_running; /* keep number of running handles */ - CURLMcode mc = curl_multi_perform(multi_handle, &still_running); + CURLMcode mc = curl_multi_perform(multi, &still_running); if(still_running) { /* wait for activity, timeout or "nothing" */ - mc = curl_multi_poll(multi_handle, NULL, 0, 1000, NULL); + mc = curl_multi_poll(multi, NULL, 0, 1000, NULL); } if(mc) @@ -447,12 +452,12 @@ static CURLcode test_cli_hx_download(const char *URL) do { int msgq = 0; - m = curl_multi_info_read(multi_handle, &msgq); + m = curl_multi_info_read(multi, &msgq); if(m && (m->msg == CURLMSG_DONE)) { - CURL *e = m->easy_handle; + CURL *easy = m->easy_handle; --active_transfers; - curl_multi_remove_handle(multi_handle, e); - t = get_transfer_for_easy_d(e); + curl_multi_remove_handle(multi, easy); + t = get_transfer_for_easy_d(easy); if(t) { t->done = 1; t->result = m->data.result; @@ -460,13 +465,13 @@ static CURLcode test_cli_hx_download(const char *URL) t->idx, t->result); if(use_earlydata) { curl_off_t sent; - curl_easy_getinfo(e, CURLINFO_EARLYDATA_SENT_T, &sent); + curl_easy_getinfo(easy, CURLINFO_EARLYDATA_SENT_T, &sent); curl_mfprintf(stderr, "[t-%zu] EarlyData: " "%" CURL_FORMAT_CURL_OFF_T "\n", t->idx, sent); } } else { - curl_easy_cleanup(e); + curl_easy_cleanup(easy); curl_mfprintf(stderr, "unknown FINISHED???\n"); } } @@ -476,8 +481,8 @@ static CURLcode test_cli_hx_download(const char *URL) /* abort paused transfers */ for(i = 0; i < transfer_count_d; ++i) { t = &transfer_d[i]; - if(!t->done && t->paused && t->easy) { - curl_multi_remove_handle(multi_handle, t->easy); + if(!t->done && t->paused && t->curl) { + curl_multi_remove_handle(multi, t->curl); t->done = 1; active_transfers--; curl_mfprintf(stderr, "[t-%zu] ABORTED\n", t->idx); @@ -491,7 +496,7 @@ static CURLcode test_cli_hx_download(const char *URL) if(!t->done && t->paused) { t->resumed = 1; t->paused = 0; - curl_easy_pause(t->easy, CURLPAUSE_CONT); + curl_easy_pause(t->curl, CURLPAUSE_CONT); curl_mfprintf(stderr, "[t-%zu] RESUMED\n", t->idx); break; } @@ -502,15 +507,15 @@ static CURLcode test_cli_hx_download(const char *URL) for(i = 0; i < transfer_count_d; ++i) { t = &transfer_d[i]; if(!t->started) { - t->easy = curl_easy_init(); - if(!t->easy || - setup_hx_download(t->easy, url, t, http_version, host, share, + t->curl = curl_easy_init(); + if(!t->curl || + setup_hx_download(t->curl, url, t, http_version, host, share, use_earlydata, fresh_connect)) { curl_mfprintf(stderr, "[t-%zu] FAILED setup\n", i); result = (CURLcode)1; goto cleanup; } - curl_multi_add_handle(multi_handle, t->easy); + curl_multi_add_handle(multi, t->curl); t->started = 1; ++active_transfers; curl_mfprintf(stderr, "[t-%zu] STARTED\n", t->idx); @@ -525,28 +530,36 @@ static CURLcode test_cli_hx_download(const char *URL) } while(active_transfers); /* as long as we have transfers going */ - curl_multi_cleanup(multi_handle); +cleanup: - for(i = 0; i < transfer_count_d; ++i) { - t = &transfer_d[i]; - if(t->out) { - curlx_fclose(t->out); - t->out = NULL; - } - if(t->easy) { - curl_easy_cleanup(t->easy); - t->easy = NULL; + curl_multi_cleanup(multi); + + if(transfer_d) { + for(i = 0; i < transfer_count_d; ++i) { + t = &transfer_d[i]; + if(t->out) { + curlx_fclose(t->out); + t->out = NULL; + } + if(t->curl) { + curl_easy_cleanup(t->curl); + t->curl = NULL; + } + if(t->result) + result = t->result; + else /* on success we expect ssl to have been checked */ + assert(t->checked_ssl); } - if(t->result) - result = t->result; - else /* on success we expect ssl to have been checked */ - assert(t->checked_ssl); + free(transfer_d); } - free(transfer_d); curl_share_cleanup(share); curl_slist_free_all(host); -cleanup: + + curl_global_cleanup(); + +optcleanup: + free(resolve); return result; diff --git a/tests/libtest/cli_hx_upload.c b/tests/libtest/cli_hx_upload.c index a0a6b95db847..5069bcab636e 100644 --- a/tests/libtest/cli_hx_upload.c +++ b/tests/libtest/cli_hx_upload.c @@ -30,9 +30,10 @@ static int verbose_u = 1; struct transfer_u { size_t idx; - CURL *easy; + CURL *curl; const char *method; char filename[128]; + curl_mime *mime; FILE *out; curl_off_t send_total; curl_off_t recv_size; @@ -50,11 +51,11 @@ static size_t transfer_count_u = 1; static struct transfer_u *transfer_u; static int forbid_reuse_u = 0; -static struct transfer_u *get_transfer_for_easy_u(CURL *easy) +static struct transfer_u *get_transfer_for_easy_u(CURL *curl) { size_t i; for(i = 0; i < transfer_count_u; ++i) { - if(easy == transfer_u[i].easy) + if(curl == transfer_u[i].curl) return &transfer_u[i]; } return NULL; @@ -141,52 +142,62 @@ static int my_progress_u_cb(void *userdata, return 0; } -static int setup_hx_upload(CURL *hnd, const char *url, struct transfer_u *t, +static int setup_hx_upload(CURL *curl, const char *url, struct transfer_u *t, long http_version, struct curl_slist *host, CURLSH *share, int use_earlydata, int announce_length) { - curl_easy_setopt(hnd, CURLOPT_SHARE, share); - curl_easy_setopt(hnd, CURLOPT_URL, url); - curl_easy_setopt(hnd, CURLOPT_HTTP_VERSION, http_version); - curl_easy_setopt(hnd, CURLOPT_SSL_VERIFYPEER, 0L); - curl_easy_setopt(hnd, CURLOPT_SSL_VERIFYHOST, 0L); - curl_easy_setopt(hnd, CURLOPT_BUFFERSIZE, (long)(128 * 1024)); - curl_easy_setopt(hnd, CURLOPT_FOLLOWLOCATION, CURLFOLLOW_OBEYCODE); - curl_easy_setopt(hnd, CURLOPT_WRITEFUNCTION, my_write_u_cb); - curl_easy_setopt(hnd, CURLOPT_WRITEDATA, t); + curl_easy_setopt(curl, CURLOPT_SHARE, share); + curl_easy_setopt(curl, CURLOPT_URL, url); + curl_easy_setopt(curl, CURLOPT_HTTP_VERSION, http_version); + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L); + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L); + curl_easy_setopt(curl, CURLOPT_BUFFERSIZE, (long)(128 * 1024)); + curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, CURLFOLLOW_OBEYCODE); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, my_write_u_cb); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, t); if(use_earlydata) - curl_easy_setopt(hnd, CURLOPT_SSL_OPTIONS, CURLSSLOPT_EARLYDATA); - - if(!t->method || !strcmp("PUT", t->method)) - curl_easy_setopt(hnd, CURLOPT_UPLOAD, 1L); - else if(!strcmp("POST", t->method)) - curl_easy_setopt(hnd, CURLOPT_POST, 1L); + curl_easy_setopt(curl, CURLOPT_SSL_OPTIONS, CURLSSLOPT_EARLYDATA); + + if(!strcmp("MIME", t->method)) { + curl_mimepart *part; + t->mime = curl_mime_init(curl); + part = curl_mime_addpart(t->mime); + curl_mime_name(part, "file"); + curl_mime_data_cb(part, -1, my_read_cb, NULL, NULL, t); + curl_easy_setopt(curl, CURLOPT_MIMEPOST, t->mime); + } else { - curl_mfprintf(stderr, "unsupported method '%s'\n", t->method); - return 1; + if(!t->method || !strcmp("PUT", t->method)) + curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L); + else if(!strcmp("POST", t->method)) + curl_easy_setopt(curl, CURLOPT_POST, 1L); + else { + curl_mfprintf(stderr, "unsupported method '%s'\n", t->method); + return 1; + } + curl_easy_setopt(curl, CURLOPT_READFUNCTION, my_read_cb); + curl_easy_setopt(curl, CURLOPT_READDATA, t); + if(announce_length) + curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE, t->send_total); } - curl_easy_setopt(hnd, CURLOPT_READFUNCTION, my_read_cb); - curl_easy_setopt(hnd, CURLOPT_READDATA, t); - if(announce_length) - curl_easy_setopt(hnd, CURLOPT_INFILESIZE_LARGE, t->send_total); - - curl_easy_setopt(hnd, CURLOPT_NOPROGRESS, 0L); - curl_easy_setopt(hnd, CURLOPT_XFERINFOFUNCTION, my_progress_u_cb); - curl_easy_setopt(hnd, CURLOPT_XFERINFODATA, t); + + curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 0L); + curl_easy_setopt(curl, CURLOPT_XFERINFOFUNCTION, my_progress_u_cb); + curl_easy_setopt(curl, CURLOPT_XFERINFODATA, t); if(forbid_reuse_u) - curl_easy_setopt(hnd, CURLOPT_FORBID_REUSE, 1L); + curl_easy_setopt(curl, CURLOPT_FORBID_REUSE, 1L); if(host) - curl_easy_setopt(hnd, CURLOPT_RESOLVE, host); + curl_easy_setopt(curl, CURLOPT_RESOLVE, host); /* please be verbose */ if(verbose_u) { - curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L); - curl_easy_setopt(hnd, CURLOPT_DEBUGFUNCTION, cli_debug_cb); + curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); + curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, cli_debug_cb); } /* wait for pipe connection to confirm */ - curl_easy_setopt(hnd, CURLOPT_PIPEWAIT, 1L); + curl_easy_setopt(curl, CURLOPT_PIPEWAIT, 1L); return 0; /* all is good */ } @@ -216,7 +227,7 @@ static void usage_hx_upload(const char *msg) */ static CURLcode test_cli_hx_upload(const char *URL) { - CURLM *multi_handle; + CURLM *multi; CURLSH *share; const char *url; const char *method = "PUT"; @@ -230,11 +241,12 @@ static CURLcode test_cli_hx_upload(const char *URL) int reuse_easy = 0; int use_earlydata = 0; int announce_length = 0; - struct transfer_u *t; + struct transfer_u *t = NULL; long http_version = CURL_HTTP_VERSION_2_0; struct curl_slist *host = NULL; const char *resolve = NULL; int ch; + CURLcode result = CURLE_OK; (void)URL; @@ -309,22 +321,27 @@ static CURLcode test_cli_hx_upload(const char *URL) return (CURLcode)2; } - curl_global_init(CURL_GLOBAL_DEFAULT); - curl_global_trace("ids,time,http/2,http/3"); - if(test_argc != 1) { usage_hx_upload("not enough arguments"); return (CURLcode)2; } url = test_argv[0]; + if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) { + curl_mfprintf(stderr, "curl_global_init() failed\n"); + return (CURLcode)3; + } + + curl_global_trace("ids,time,http/2,http/3"); + if(resolve) host = curl_slist_append(NULL, resolve); share = curl_share_init(); if(!share) { curl_mfprintf(stderr, "error allocating share\n"); - return (CURLcode)1; + result = (CURLcode)1; + goto cleanup; } curl_share_setopt(share, CURLSHOPT_SHARE, CURL_LOCK_DATA_COOKIE); curl_share_setopt(share, CURLSHOPT_SHARE, CURL_LOCK_DATA_DNS); @@ -336,7 +353,8 @@ static CURLcode test_cli_hx_upload(const char *URL) transfer_u = calloc(transfer_count_u, sizeof(*transfer_u)); if(!transfer_u) { curl_mfprintf(stderr, "error allocating transfer structs\n"); - return (CURLcode)1; + result = (CURLcode)1; + goto cleanup; } active_transfers = 0; @@ -351,43 +369,46 @@ static CURLcode test_cli_hx_upload(const char *URL) } if(reuse_easy) { - CURL *easy = curl_easy_init(); - CURLcode rc = CURLE_OK; - if(!easy) { + CURL *curl = curl_easy_init(); + if(!curl) { curl_mfprintf(stderr, "failed to init easy handle\n"); - return (CURLcode)1; + result = (CURLcode)1; + goto cleanup; } for(i = 0; i < transfer_count_u; ++i) { + CURLcode rc; t = &transfer_u[i]; - t->easy = easy; - if(setup_hx_upload(t->easy, url, t, http_version, host, share, + t->curl = curl; + if(setup_hx_upload(t->curl, url, t, http_version, host, share, use_earlydata, announce_length)) { curl_mfprintf(stderr, "[t-%zu] FAILED setup\n", i); - return (CURLcode)1; + result = (CURLcode)1; + goto cleanup; } curl_mfprintf(stderr, "[t-%zu] STARTING\n", t->idx); - rc = curl_easy_perform(easy); + rc = curl_easy_perform(curl); curl_mfprintf(stderr, "[t-%zu] DONE -> %d\n", t->idx, rc); - t->easy = NULL; - curl_easy_reset(easy); + t->curl = NULL; + curl_easy_reset(curl); } - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); } else { - multi_handle = curl_multi_init(); - curl_multi_setopt(multi_handle, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX); + multi = curl_multi_init(); + curl_multi_setopt(multi, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX); n = (max_parallel < transfer_count_u) ? max_parallel : transfer_count_u; for(i = 0; i < n; ++i) { t = &transfer_u[i]; - t->easy = curl_easy_init(); - if(!t->easy || setup_hx_upload(t->easy, url, t, http_version, host, + t->curl = curl_easy_init(); + if(!t->curl || setup_hx_upload(t->curl, url, t, http_version, host, share, use_earlydata, announce_length)) { curl_mfprintf(stderr, "[t-%zu] FAILED setup\n", i); - return (CURLcode)1; + result = (CURLcode)1; + goto cleanup; } - curl_multi_add_handle(multi_handle, t->easy); + curl_multi_add_handle(multi, t->curl); t->started = 1; ++active_transfers; curl_mfprintf(stderr, "[t-%zu] STARTED\n", t->idx); @@ -395,12 +416,12 @@ static CURLcode test_cli_hx_upload(const char *URL) do { int still_running; /* keep number of running handles */ - CURLMcode mc = curl_multi_perform(multi_handle, &still_running); + CURLMcode mc = curl_multi_perform(multi, &still_running); struct CURLMsg *m; if(still_running) { /* wait for activity, timeout or "nothing" */ - mc = curl_multi_poll(multi_handle, NULL, 0, 1000, NULL); + mc = curl_multi_poll(multi, NULL, 0, 1000, NULL); } if(mc) @@ -408,28 +429,28 @@ static CURLcode test_cli_hx_upload(const char *URL) do { int msgq = 0; - m = curl_multi_info_read(multi_handle, &msgq); + m = curl_multi_info_read(multi, &msgq); if(m && (m->msg == CURLMSG_DONE)) { - CURL *e = m->easy_handle; + CURL *easy = m->easy_handle; --active_transfers; - curl_multi_remove_handle(multi_handle, e); - t = get_transfer_for_easy_u(e); + curl_multi_remove_handle(multi, easy); + t = get_transfer_for_easy_u(easy); if(t) { long res_status; - curl_easy_getinfo(e, CURLINFO_RESPONSE_CODE, &res_status); + curl_easy_getinfo(easy, CURLINFO_RESPONSE_CODE, &res_status); t->done = 1; curl_mfprintf(stderr, "[t-%zu] FINISHED, " "result=%d, response=%ld\n", t->idx, m->data.result, res_status); if(use_earlydata) { curl_off_t sent; - curl_easy_getinfo(e, CURLINFO_EARLYDATA_SENT_T, &sent); + curl_easy_getinfo(easy, CURLINFO_EARLYDATA_SENT_T, &sent); curl_mfprintf(stderr, "[t-%zu] EarlyData: " "%" CURL_FORMAT_CURL_OFF_T "\n", t->idx, sent); } } else { - curl_easy_cleanup(e); + curl_easy_cleanup(easy); curl_mfprintf(stderr, "unknown FINISHED???\n"); } } @@ -440,8 +461,8 @@ static CURLcode test_cli_hx_upload(const char *URL) /* abort paused transfers */ for(i = 0; i < transfer_count_u; ++i) { t = &transfer_u[i]; - if(!t->done && t->paused && t->easy) { - curl_multi_remove_handle(multi_handle, t->easy); + if(!t->done && t->paused && t->curl) { + curl_multi_remove_handle(multi, t->curl); t->done = 1; active_transfers--; curl_mfprintf(stderr, "[t-%zu] ABORTED\n", t->idx); @@ -455,7 +476,7 @@ static CURLcode test_cli_hx_upload(const char *URL) if(!t->done && t->paused) { t->resumed = 1; t->paused = 0; - curl_easy_pause(t->easy, CURLPAUSE_CONT); + curl_easy_pause(t->curl, CURLPAUSE_CONT); curl_mfprintf(stderr, "[t-%zu] RESUMED\n", t->idx); break; } @@ -466,14 +487,15 @@ static CURLcode test_cli_hx_upload(const char *URL) for(i = 0; i < transfer_count_u; ++i) { t = &transfer_u[i]; if(!t->started) { - t->easy = curl_easy_init(); - if(!t->easy || setup_hx_upload(t->easy, url, t, http_version, + t->curl = curl_easy_init(); + if(!t->curl || setup_hx_upload(t->curl, url, t, http_version, host, share, use_earlydata, announce_length)) { curl_mfprintf(stderr, "[t-%zu] FAILED setup\n", i); - return (CURLcode)1; + result = (CURLcode)1; + goto cleanup; } - curl_multi_add_handle(multi_handle, t->easy); + curl_multi_add_handle(multi, t->curl); t->started = 1; ++active_transfers; curl_mfprintf(stderr, "[t-%zu] STARTED\n", t->idx); @@ -488,22 +510,33 @@ static CURLcode test_cli_hx_upload(const char *URL) } while(active_transfers); /* as long as we have transfers going */ - curl_multi_cleanup(multi_handle); + curl_mfprintf(stderr, "all transfers done, cleanup multi\n"); + curl_multi_cleanup(multi); } - for(i = 0; i < transfer_count_u; ++i) { - t = &transfer_u[i]; - if(t->out) { - curlx_fclose(t->out); - t->out = NULL; - } - if(t->easy) { - curl_easy_cleanup(t->easy); - t->easy = NULL; +cleanup: + + if(transfer_u) { + for(i = 0; i < transfer_count_u; ++i) { + t = &transfer_u[i]; + if(t->out) { + curlx_fclose(t->out); + t->out = NULL; + } + if(t->curl) { + curl_easy_cleanup(t->curl); + t->curl = NULL; + } + if(t->mime) { + curl_mime_free(t->mime); + } } + free(transfer_u); } - free(transfer_u); + curl_share_cleanup(share); + curl_slist_free_all(host); + curl_global_cleanup(); - return CURLE_OK; + return result; } diff --git a/tests/libtest/cli_tls_session_reuse.c b/tests/libtest/cli_tls_session_reuse.c index b0b2456ce9d9..2a6c0ea3bfab 100644 --- a/tests/libtest/cli_tls_session_reuse.c +++ b/tests/libtest/cli_tls_session_reuse.c @@ -30,13 +30,13 @@ static int tse_found_tls_session = FALSE; static size_t write_tse_cb(char *ptr, size_t size, size_t nmemb, void *opaque) { - CURL *easy = opaque; + CURL *curl = opaque; (void)ptr; if(!tse_found_tls_session) { struct curl_tlssessioninfo *tlssession; CURLcode rc; - rc = curl_easy_getinfo(easy, CURLINFO_TLS_SSL_PTR, &tlssession); + rc = curl_easy_getinfo(curl, CURLINFO_TLS_SSL_PTR, &tlssession); if(rc) { curl_mfprintf(stderr, "curl_easy_getinfo(CURLINFO_TLS_SSL_PTR) " "failed: %s\n", curl_easy_strerror(rc)); @@ -61,38 +61,38 @@ static CURL *tse_add_transfer(CURLM *multi, CURLSH *share, struct curl_slist *resolve, const char *url, long http_version) { - CURL *easy; + CURL *curl; CURLMcode mc; - easy = curl_easy_init(); - if(!easy) { + curl = curl_easy_init(); + if(!curl) { curl_mfprintf(stderr, "curl_easy_init failed\n"); return NULL; } - curl_easy_setopt(easy, CURLOPT_VERBOSE, 1L); - curl_easy_setopt(easy, CURLOPT_DEBUGFUNCTION, cli_debug_cb); - curl_easy_setopt(easy, CURLOPT_URL, url); - curl_easy_setopt(easy, CURLOPT_SHARE, share); - curl_easy_setopt(easy, CURLOPT_NOSIGNAL, 1L); - curl_easy_setopt(easy, CURLOPT_AUTOREFERER, 1L); - curl_easy_setopt(easy, CURLOPT_FAILONERROR, 1L); - curl_easy_setopt(easy, CURLOPT_HTTP_VERSION, http_version); - curl_easy_setopt(easy, CURLOPT_WRITEFUNCTION, write_tse_cb); - curl_easy_setopt(easy, CURLOPT_WRITEDATA, easy); - curl_easy_setopt(easy, CURLOPT_HTTPGET, 1L); - curl_easy_setopt(easy, CURLOPT_SSL_VERIFYPEER, 0L); + curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); + curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, cli_debug_cb); + curl_easy_setopt(curl, CURLOPT_URL, url); + curl_easy_setopt(curl, CURLOPT_SHARE, share); + curl_easy_setopt(curl, CURLOPT_NOSIGNAL, 1L); + curl_easy_setopt(curl, CURLOPT_AUTOREFERER, 1L); + curl_easy_setopt(curl, CURLOPT_FAILONERROR, 1L); + curl_easy_setopt(curl, CURLOPT_HTTP_VERSION, http_version); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_tse_cb); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, curl); + curl_easy_setopt(curl, CURLOPT_HTTPGET, 1L); + curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L); if(resolve) - curl_easy_setopt(easy, CURLOPT_RESOLVE, resolve); + curl_easy_setopt(curl, CURLOPT_RESOLVE, resolve); - mc = curl_multi_add_handle(multi, easy); + mc = curl_multi_add_handle(multi, curl); if(mc != CURLM_OK) { curl_mfprintf(stderr, "curl_multi_add_handle: %s\n", curl_multi_strerror(mc)); - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); return NULL; } - return easy; + return curl; } static CURLcode test_cli_tls_session_reuse(const char *URL) @@ -109,13 +109,18 @@ static CURLcode test_cli_tls_session_reuse(const char *URL) int add_more, waits, ongoing = 0; char *host = NULL, *port = NULL; long http_version = CURL_HTTP_VERSION_1_1; - CURLcode exitcode = (CURLcode)1; + CURLcode result = (CURLcode)1; if(!URL || !libtest_arg2) { curl_mfprintf(stderr, "need args: URL proto\n"); return (CURLcode)2; } + if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) { + curl_mfprintf(stderr, "curl_global_init() failed\n"); + return (CURLcode)3; + } + if(!strcmp("h2", libtest_arg2)) http_version = CURL_HTTP_VERSION_2; else if(!strcmp("h3", libtest_arg2)) @@ -124,7 +129,8 @@ static CURLcode test_cli_tls_session_reuse(const char *URL) cu = curl_url(); if(!cu) { curl_mfprintf(stderr, "out of memory\n"); - return (CURLcode)1; + result = (CURLcode)1; + goto cleanup; } if(curl_url_set(cu, CURLUPART_URL, URL, 0)) { curl_mfprintf(stderr, "not a URL: '%s'\n", URL); @@ -230,12 +236,12 @@ static CURLcode test_cli_tls_session_reuse(const char *URL) if(!tse_found_tls_session) { curl_mfprintf(stderr, "CURLINFO_TLS_SSL_PTR not found during run\n"); - exitcode = CURLE_FAILED_INIT; + result = CURLE_FAILED_INIT; goto cleanup; } curl_mfprintf(stderr, "exiting\n"); - exitcode = CURLE_OK; + result = CURLE_OK; cleanup: @@ -255,7 +261,9 @@ static CURLcode test_cli_tls_session_reuse(const char *URL) curl_slist_free_all(resolve); curl_free(host); curl_free(port); - curl_url_cleanup(cu); + if(cu) + curl_url_cleanup(cu); + curl_global_cleanup(); - return exitcode; + return result; } diff --git a/tests/libtest/cli_upload_pausing.c b/tests/libtest/cli_upload_pausing.c index a6a74eeaded3..971157c3138a 100644 --- a/tests/libtest/cli_upload_pausing.c +++ b/tests/libtest/cli_upload_pausing.c @@ -85,8 +85,8 @@ static void usage_upload_pausing(const char *msg) static CURLcode test_cli_upload_pausing(const char *URL) { - CURL *curl; - CURLcode rc = CURLE_OK; + CURL *curl = NULL; + CURLcode result = CURLE_OK; CURLU *cu; struct curl_slist *resolve = NULL; char resolve_buf[1024]; @@ -126,25 +126,33 @@ static CURLcode test_cli_upload_pausing(const char *URL) } url = test_argv[0]; - curl_global_init(CURL_GLOBAL_DEFAULT); + if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) { + curl_mfprintf(stderr, "curl_global_init() failed\n"); + return (CURLcode)3; + } + curl_global_trace("ids,time"); cu = curl_url(); if(!cu) { curl_mfprintf(stderr, "out of memory\n"); - return (CURLcode)1; + result = (CURLcode)1; + goto cleanup; } if(curl_url_set(cu, CURLUPART_URL, url, 0)) { curl_mfprintf(stderr, "not a URL: '%s'\n", url); - return (CURLcode)1; + result = (CURLcode)1; + goto cleanup; } if(curl_url_get(cu, CURLUPART_HOST, &host, 0)) { curl_mfprintf(stderr, "could not get host of '%s'\n", url); - return (CURLcode)1; + result = (CURLcode)1; + goto cleanup; } if(curl_url_get(cu, CURLUPART_PORT, &port, 0)) { curl_mfprintf(stderr, "could not get port of '%s'\n", url); - return (CURLcode)1; + result = (CURLcode)1; + goto cleanup; } memset(&resolve, 0, sizeof(resolve)); curl_msnprintf(resolve_buf, sizeof(resolve_buf)-1, "%s:%s:127.0.0.1", @@ -154,7 +162,8 @@ static CURLcode test_cli_upload_pausing(const char *URL) curl = curl_easy_init(); if(!curl) { curl_mfprintf(stderr, "out of memory\n"); - return (CURLcode)1; + result = (CURLcode)1; + goto cleanup; } /* We want to use our own read function. */ curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_callback); @@ -181,23 +190,25 @@ static CURLcode test_cli_upload_pausing(const char *URL) curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, cli_debug_cb) != CURLE_OK || curl_easy_setopt(curl, CURLOPT_RESOLVE, resolve) != CURLE_OK) { curl_mfprintf(stderr, "something unexpected went wrong - bailing out!\n"); - return (CURLcode)2; + result = (CURLcode)2; + goto cleanup; } curl_easy_setopt(curl, CURLOPT_URL, url); curl_easy_setopt(curl, CURLOPT_HTTP_VERSION, http_version); - rc = curl_easy_perform(curl); + result = curl_easy_perform(curl); - if(curl) { - curl_easy_cleanup(curl); - } +cleanup: + if(curl) + curl_easy_cleanup(curl); curl_slist_free_all(resolve); curl_free(host); curl_free(port); - curl_url_cleanup(cu); + if(cu) + curl_url_cleanup(cu); curl_global_cleanup(); - return rc; + return result; } diff --git a/tests/libtest/cli_ws_data.c b/tests/libtest/cli_ws_data.c index 26cecc19fea3..8b8b1fa0d1b8 100644 --- a/tests/libtest/cli_ws_data.c +++ b/tests/libtest/cli_ws_data.c @@ -190,7 +190,7 @@ static CURLcode test_ws_data_m2_echo(const char *url, } struct test_ws_m1_ctx { - CURL *easy; + CURL *curl; char *send_buf; char *recv_buf; size_t send_len, nsent; @@ -216,7 +216,7 @@ static size_t test_ws_data_m1_read(char *buf, size_t nitems, size_t buflen, goto out; if(!ctx->frame_reading) { - curl_ws_start_frame(ctx->easy, CURLWS_BINARY, ctx->send_len); + curl_ws_start_frame(ctx->curl, CURLWS_BINARY, ctx->send_len); ctx->frame_reading = TRUE; } @@ -310,8 +310,8 @@ static CURLcode test_ws_data_m1_echo(const char *url, goto out; } - m1_ctx.easy = curl_easy_init(); - if(!m1_ctx.easy) { + m1_ctx.curl = curl_easy_init(); + if(!m1_ctx.curl) { r = CURLE_OUT_OF_MEMORY; goto out; } @@ -330,22 +330,22 @@ static CURLcode test_ws_data_m1_echo(const char *url, m1_ctx.frames_read = 0; m1_ctx.frames_written = 0; memset(m1_ctx.recv_buf, 0, plen_max); - curl_easy_pause(m1_ctx.easy, CURLPAUSE_CONT); + curl_easy_pause(m1_ctx.curl, CURLPAUSE_CONT); - curl_easy_reset(m1_ctx.easy); - curl_easy_setopt(m1_ctx.easy, CURLOPT_URL, url); + curl_easy_reset(m1_ctx.curl); + curl_easy_setopt(m1_ctx.curl, CURLOPT_URL, url); /* use the callback style */ - curl_easy_setopt(m1_ctx.easy, CURLOPT_USERAGENT, "ws-data"); - curl_easy_setopt(m1_ctx.easy, CURLOPT_VERBOSE, 1L); + curl_easy_setopt(m1_ctx.curl, CURLOPT_USERAGENT, "ws-data"); + curl_easy_setopt(m1_ctx.curl, CURLOPT_VERBOSE, 1L); /* we want to send */ - curl_easy_setopt(m1_ctx.easy, CURLOPT_UPLOAD, 1L); - curl_easy_setopt(m1_ctx.easy, CURLOPT_READFUNCTION, test_ws_data_m1_read); - curl_easy_setopt(m1_ctx.easy, CURLOPT_READDATA, &m1_ctx); - curl_easy_setopt(m1_ctx.easy, CURLOPT_WRITEFUNCTION, + curl_easy_setopt(m1_ctx.curl, CURLOPT_UPLOAD, 1L); + curl_easy_setopt(m1_ctx.curl, CURLOPT_READFUNCTION, test_ws_data_m1_read); + curl_easy_setopt(m1_ctx.curl, CURLOPT_READDATA, &m1_ctx); + curl_easy_setopt(m1_ctx.curl, CURLOPT_WRITEFUNCTION, test_ws_data_m1_write); - curl_easy_setopt(m1_ctx.easy, CURLOPT_WRITEDATA, &m1_ctx); + curl_easy_setopt(m1_ctx.curl, CURLOPT_WRITEDATA, &m1_ctx); - curl_multi_add_handle(multi, m1_ctx.easy); + curl_multi_add_handle(multi, m1_ctx.curl); while(1) { int still_running; /* keep number of running handles */ @@ -366,7 +366,7 @@ static CURLcode test_ws_data_m1_echo(const char *url, } - curl_multi_remove_handle(multi, m1_ctx.easy); + curl_multi_remove_handle(multi, m1_ctx.curl); /* check results */ if(m1_ctx.frames_read < m1_ctx.nframes) { @@ -386,8 +386,8 @@ static CURLcode test_ws_data_m1_echo(const char *url, out: if(multi) curl_multi_cleanup(multi); - if(m1_ctx.easy) { - curl_easy_cleanup(m1_ctx.easy); + if(m1_ctx.curl) { + curl_easy_cleanup(m1_ctx.curl); } free(m1_ctx.send_buf); free(m1_ctx.recv_buf); @@ -411,7 +411,7 @@ static void test_ws_data_usage(const char *msg) static CURLcode test_cli_ws_data(const char *URL) { #ifndef CURL_DISABLE_WEBSOCKETS - CURLcode res = CURLE_OK; + CURLcode result = CURLE_OK; const char *url; size_t plen_min = 0, plen_max = 0, count = 1; int ch, model = 2; @@ -428,8 +428,7 @@ static CURLcode test_cli_ws_data(const char *URL) break; case 'h': test_ws_data_usage(NULL); - res = CURLE_BAD_FUNCTION_ARGUMENT; - goto cleanup; + return CURLE_BAD_FUNCTION_ARGUMENT; case 'c': count = (size_t)atol(coptarg); break; @@ -441,8 +440,7 @@ static CURLcode test_cli_ws_data(const char *URL) break; default: test_ws_data_usage("invalid option"); - res = CURLE_BAD_FUNCTION_ARGUMENT; - goto cleanup; + return CURLE_BAD_FUNCTION_ARGUMENT; } } test_argc -= coptind; @@ -454,27 +452,28 @@ static CURLcode test_cli_ws_data(const char *URL) if(plen_max < plen_min) { curl_mfprintf(stderr, "maxlen must be >= minlen, got %zu-%zu\n", plen_min, plen_max); - res = CURLE_BAD_FUNCTION_ARGUMENT; - goto cleanup; + return CURLE_BAD_FUNCTION_ARGUMENT; } if(test_argc != 1) { test_ws_data_usage(NULL); - res = CURLE_BAD_FUNCTION_ARGUMENT; - goto cleanup; + return CURLE_BAD_FUNCTION_ARGUMENT; } url = test_argv[0]; - curl_global_init(CURL_GLOBAL_ALL); + if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) { + curl_mfprintf(stderr, "curl_global_init() failed\n"); + return (CURLcode)3; + } if(model == 1) - res = test_ws_data_m1_echo(url, plen_min, plen_max); + result = test_ws_data_m1_echo(url, plen_min, plen_max); else - res = test_ws_data_m2_echo(url, count, plen_min, plen_max); + result = test_ws_data_m2_echo(url, count, plen_min, plen_max); -cleanup: curl_global_cleanup(); - return res; + + return result; #else /* !CURL_DISABLE_WEBSOCKETS */ (void)URL; diff --git a/tests/libtest/cli_ws_pingpong.c b/tests/libtest/cli_ws_pingpong.c index 80707c958521..995c1e3f7c40 100644 --- a/tests/libtest/cli_ws_pingpong.c +++ b/tests/libtest/cli_ws_pingpong.c @@ -56,7 +56,7 @@ static CURLcode test_cli_ws_pingpong(const char *URL) { #ifndef CURL_DISABLE_WEBSOCKETS CURL *curl; - CURLcode res = CURLE_OK; + CURLcode result = CURLE_OK; const char *payload; if(!URL || !libtest_arg2) { @@ -65,7 +65,10 @@ static CURLcode test_cli_ws_pingpong(const char *URL) } payload = libtest_arg2; - curl_global_init(CURL_GLOBAL_ALL); + if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) { + curl_mfprintf(stderr, "curl_global_init() failed\n"); + return (CURLcode)3; + } curl = curl_easy_init(); if(curl) { @@ -75,16 +78,16 @@ static CURLcode test_cli_ws_pingpong(const char *URL) curl_easy_setopt(curl, CURLOPT_USERAGENT, "ws-pingpong"); curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); curl_easy_setopt(curl, CURLOPT_CONNECT_ONLY, 2L); /* websocket style */ - res = curl_easy_perform(curl); - curl_mfprintf(stderr, "curl_easy_perform() returned %u\n", res); - if(res == CURLE_OK) - res = pingpong(curl, payload); + result = curl_easy_perform(curl); + curl_mfprintf(stderr, "curl_easy_perform() returned %u\n", result); + if(result == CURLE_OK) + result = pingpong(curl, payload); /* always cleanup */ curl_easy_cleanup(curl); } curl_global_cleanup(); - return res; + return result; #else /* !CURL_DISABLE_WEBSOCKETS */ (void)URL; diff --git a/tests/libtest/lib1308.c b/tests/libtest/lib1308.c index 8e83462a7ade..1455b0b0dfe7 100644 --- a/tests/libtest/lib1308.c +++ b/tests/libtest/lib1308.c @@ -43,12 +43,15 @@ static CURLcode test_lib1308(const char *URL) { int errorcount = 0; CURLFORMcode rc; - int res; + CURLcode res = CURLE_OK; + int formres = 0; struct curl_httppost *post = NULL; struct curl_httppost *last = NULL; size_t total_size = 0; char buffer[] = "test buffer"; + global_init(CURL_GLOBAL_ALL); + rc = curl_formadd(&post, &last, CURLFORM_COPYNAME, "name", CURLFORM_COPYCONTENTS, "content", CURLFORM_END); t1308_fail_unless(rc == 0, "curl_formadd returned error"); @@ -66,8 +69,8 @@ static CURLcode test_lib1308(const char *URL) CURLFORM_PTRCONTENTS, buffer, CURLFORM_END); t1308_fail_unless(rc == 0, "curl_formadd returned error"); - res = curl_formget(post, &total_size, print_httppost_callback); - t1308_fail_unless(res == 0, "curl_formget returned error"); + formres = curl_formget(post, &total_size, print_httppost_callback); + t1308_fail_unless(formres == 0, "curl_formget returned error"); t1308_fail_unless(total_size == 518, "curl_formget got wrong size back"); @@ -83,12 +86,14 @@ static CURLcode test_lib1308(const char *URL) CURLFORM_END); t1308_fail_unless(rc == 0, "curl_formadd returned error"); - res = curl_formget(post, &total_size, print_httppost_callback); + formres = curl_formget(post, &total_size, print_httppost_callback); - t1308_fail_unless(res == 0, "curl_formget returned error"); + t1308_fail_unless(formres == 0, "curl_formget returned error"); t1308_fail_unless(total_size == 899, "curl_formget got wrong size back"); curl_formfree(post); + curl_global_cleanup(); + return errorcount ? TEST_ERR_FAILURE : CURLE_OK; } diff --git a/tests/libtest/lib1485.c b/tests/libtest/lib1485.c index dd2b9728b735..36be7cd1e83b 100644 --- a/tests/libtest/lib1485.c +++ b/tests/libtest/lib1485.c @@ -26,7 +26,7 @@ #include "memdebug.h" struct t1485_transfer_status { - CURL *easy; + CURL *curl; curl_off_t out_len; size_t hd_line; CURLcode result; @@ -47,7 +47,7 @@ static size_t t1485_header_callback(char *ptr, size_t size, size_t nmemb, curl_off_t clen; long httpcode = 0; /* end of a response */ - result = curl_easy_getinfo(st->easy, CURLINFO_RESPONSE_CODE, &httpcode); + result = curl_easy_getinfo(st->curl, CURLINFO_RESPONSE_CODE, &httpcode); curl_mfprintf(stderr, "header_callback, get status: %ld, %d\n", httpcode, result); if(httpcode < 100 || httpcode >= 1000) { @@ -57,7 +57,7 @@ static size_t t1485_header_callback(char *ptr, size_t size, size_t nmemb, } st->http_status = (int)httpcode; if(st->http_status >= 200 && st->http_status < 300) { - result = curl_easy_getinfo(st->easy, CURLINFO_CONTENT_LENGTH_DOWNLOAD_T, + result = curl_easy_getinfo(st->curl, CURLINFO_CONTENT_LENGTH_DOWNLOAD_T, &clen); curl_mfprintf(stderr, "header_callback, info Content-Length: " "%" CURL_FORMAT_CURL_OFF_T ", %d\n", clen, result); @@ -87,7 +87,7 @@ static size_t t1485_write_cb(char *ptr, size_t size, size_t nmemb, void *userp) static CURLcode test_lib1485(const char *URL) { - CURL *curls = NULL; + CURL *curl = NULL; CURLcode res = CURLE_OK; struct t1485_transfer_status st; @@ -97,22 +97,22 @@ static CURLcode test_lib1485(const char *URL) global_init(CURL_GLOBAL_ALL); - easy_init(curls); - st.easy = curls; /* to allow callbacks access */ + easy_init(curl); + st.curl = curl; /* to allow callbacks access */ - easy_setopt(curls, CURLOPT_URL, URL); - easy_setopt(curls, CURLOPT_WRITEFUNCTION, t1485_write_cb); - easy_setopt(curls, CURLOPT_WRITEDATA, &st); - easy_setopt(curls, CURLOPT_HEADERFUNCTION, t1485_header_callback); - easy_setopt(curls, CURLOPT_HEADERDATA, &st); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_WRITEFUNCTION, t1485_write_cb); + easy_setopt(curl, CURLOPT_WRITEDATA, &st); + easy_setopt(curl, CURLOPT_HEADERFUNCTION, t1485_header_callback); + easy_setopt(curl, CURLOPT_HEADERDATA, &st); - easy_setopt(curls, CURLOPT_NOPROGRESS, 1L); + easy_setopt(curl, CURLOPT_NOPROGRESS, 1L); - res = curl_easy_perform(curls); + res = curl_easy_perform(curl); test_cleanup: - curl_easy_cleanup(curls); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; /* return the final return code */ diff --git a/tests/libtest/lib1500.c b/tests/libtest/lib1500.c index 8529f66a44eb..5fe8e7ab4faf 100644 --- a/tests/libtest/lib1500.c +++ b/tests/libtest/lib1500.c @@ -27,7 +27,7 @@ static CURLcode test_lib1500(const char *URL) { - CURL *curls = NULL; + CURL *curl = NULL; CURLM *multi = NULL; int still_running; CURLcode i = TEST_ERR_FAILURE; @@ -40,12 +40,12 @@ static CURLcode test_lib1500(const char *URL) multi_init(multi); - easy_init(curls); + easy_init(curl); - easy_setopt(curls, CURLOPT_URL, URL); - easy_setopt(curls, CURLOPT_HEADER, 1L); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_HEADER, 1L); - multi_add_handle(multi, curls); + multi_add_handle(multi, curl); multi_perform(multi, &still_running); @@ -79,7 +79,7 @@ static CURLcode test_lib1500(const char *URL) /* undocumented cleanup sequence - type UA */ curl_multi_cleanup(multi); - curl_easy_cleanup(curls); + curl_easy_cleanup(curl); curl_global_cleanup(); if(res) diff --git a/tests/libtest/lib1501.c b/tests/libtest/lib1501.c index 61e586cd3dd9..feb775f136dc 100644 --- a/tests/libtest/lib1501.c +++ b/tests/libtest/lib1501.c @@ -32,8 +32,8 @@ static CURLcode test_lib1501(const char *URL) conservative to allow old and slow machines to run this test too */ static const int MAX_BLOCKED_TIME_MS = 500; - CURL *handle = NULL; - CURLM *mhandle = NULL; + CURL *curl = NULL; + CURLM *multi = NULL; CURLcode res = CURLE_OK; int still_running = 0; @@ -41,16 +41,16 @@ static CURLcode test_lib1501(const char *URL) global_init(CURL_GLOBAL_ALL); - easy_init(handle); + easy_init(curl); - easy_setopt(handle, CURLOPT_URL, URL); - easy_setopt(handle, CURLOPT_VERBOSE, 1L); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); - multi_init(mhandle); + multi_init(multi); - multi_add_handle(mhandle, handle); + multi_add_handle(multi, curl); - multi_perform(mhandle, &still_running); + multi_perform(multi, &still_running); abort_on_test_timeout_custom(HANG_TIMEOUT); @@ -71,7 +71,7 @@ static CURLcode test_lib1501(const char *URL) FD_ZERO(&fdwrite); FD_ZERO(&fdexcep); - multi_fdset(mhandle, &fdread, &fdwrite, &fdexcep, &maxfd); + multi_fdset(multi, &fdread, &fdwrite, &fdexcep, &maxfd); /* At this point, maxfd is guaranteed to be greater or equal than -1. */ @@ -82,7 +82,7 @@ static CURLcode test_lib1501(const char *URL) curl_mfprintf(stderr, "ping\n"); before = curlx_now(); - multi_perform(mhandle, &still_running); + multi_perform(multi, &still_running); abort_on_test_timeout_custom(HANG_TIMEOUT); @@ -100,8 +100,8 @@ static CURLcode test_lib1501(const char *URL) /* undocumented cleanup sequence - type UA */ - curl_multi_cleanup(mhandle); - curl_easy_cleanup(handle); + curl_multi_cleanup(multi); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib1502.c b/tests/libtest/lib1502.c index 22ac6e7c80aa..527f969b116f 100644 --- a/tests/libtest/lib1502.c +++ b/tests/libtest/lib1502.c @@ -35,8 +35,8 @@ static CURLcode test_lib1502(const char *URL) { - CURL *easy = NULL; - CURL *dup; + CURL *curl = NULL; + CURL *curldupe; CURLM *multi = NULL; int still_running; CURLcode res = CURLE_OK; @@ -62,27 +62,27 @@ static CURLcode test_lib1502(const char *URL) return TEST_ERR_MAJOR_BAD; } - easy_init(easy); + easy_init(curl); - easy_setopt(easy, CURLOPT_URL, URL); - easy_setopt(easy, CURLOPT_HEADER, 1L); - easy_setopt(easy, CURLOPT_RESOLVE, dns_cache_list); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_HEADER, 1L); + easy_setopt(curl, CURLOPT_RESOLVE, dns_cache_list); - dup = curl_easy_duphandle(easy); - if(dup) { - curl_easy_cleanup(easy); - easy = dup; + curldupe = curl_easy_duphandle(curl); + if(curldupe) { + curl_easy_cleanup(curl); + curl = curldupe; } else { curl_slist_free_all(dns_cache_list); - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); curl_global_cleanup(); return CURLE_OUT_OF_MEMORY; } multi_init(multi); - multi_add_handle(multi, easy); + multi_add_handle(multi, curl); multi_perform(multi, &still_running); @@ -121,26 +121,26 @@ static CURLcode test_lib1502(const char *URL) default: /* undocumented cleanup sequence - type UA */ curl_multi_cleanup(multi); - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); curl_global_cleanup(); break; case 1503: /* proper cleanup sequence - type PA */ - curl_multi_remove_handle(multi, easy); + curl_multi_remove_handle(multi, curl); curl_multi_cleanup(multi); - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); curl_global_cleanup(); break; case 1504: /* undocumented cleanup sequence - type UB */ - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); curl_multi_cleanup(multi); curl_global_cleanup(); break; case 1505: /* proper cleanup sequence - type PB */ - curl_multi_remove_handle(multi, easy); - curl_easy_cleanup(easy); + curl_multi_remove_handle(multi, curl); + curl_easy_cleanup(curl); curl_multi_cleanup(multi); curl_global_cleanup(); break; diff --git a/tests/libtest/lib1506.c b/tests/libtest/lib1506.c index 66768f756379..5790f3baebad 100644 --- a/tests/libtest/lib1506.c +++ b/tests/libtest/lib1506.c @@ -30,7 +30,7 @@ static CURLcode test_lib1506(const char *URL) CURLcode res = CURLE_OK; CURL *curl[NUM_HANDLES] = {0}; int running; - CURLM *m = NULL; + CURLM *multi = NULL; size_t i; char target_url[256]; char dnsentry[256]; @@ -57,9 +57,9 @@ static CURLcode test_lib1506(const char *URL) global_init(CURL_GLOBAL_ALL); - multi_init(m); + multi_init(multi); - multi_setopt(m, CURLMOPT_MAXCONNECTS, 3L); + multi_setopt(multi, CURLMOPT_MAXCONNECTS, 3L); /* get each easy handle */ for(i = 0; i < CURL_ARRAYSIZE(curl); i++) { @@ -83,7 +83,7 @@ static CURLcode test_lib1506(const char *URL) for(i = 0; i < CURL_ARRAYSIZE(curl); i++) { /* add handle to multi */ - multi_add_handle(m, curl[i]); + multi_add_handle(multi, curl[i]); for(;;) { struct timeval interval; @@ -93,7 +93,7 @@ static CURLcode test_lib1506(const char *URL) interval.tv_sec = 1; interval.tv_usec = 0; - multi_perform(m, &running); + multi_perform(multi, &running); abort_on_test_timeout(); @@ -104,7 +104,7 @@ static CURLcode test_lib1506(const char *URL) FD_ZERO(&wr); FD_ZERO(&exc); - multi_fdset(m, &rd, &wr, &exc, &maxfd); + multi_fdset(multi, &rd, &wr, &exc, &maxfd); /* At this point, maxfd is guaranteed to be greater or equal than -1. */ @@ -120,13 +120,13 @@ static CURLcode test_lib1506(const char *URL) /* proper cleanup sequence - type PB */ for(i = 0; i < CURL_ARRAYSIZE(curl); i++) { - curl_multi_remove_handle(m, curl[i]); + curl_multi_remove_handle(multi, curl[i]); curl_easy_cleanup(curl[i]); } curl_slist_free_all(slist); - curl_multi_cleanup(m); + curl_multi_cleanup(multi); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib1507.c b/tests/libtest/lib1507.c index 8d96c6b3009d..a02a07e61b29 100644 --- a/tests/libtest/lib1507.c +++ b/tests/libtest/lib1507.c @@ -40,7 +40,7 @@ static CURLcode test_lib1507(const char *URL) CURLcode res = CURLE_OK; CURL *curl = NULL; - CURLM *mcurl = NULL; + CURLM *multi = NULL; int still_running = 1; struct curltime mp_start; struct curl_slist *rcpt_list = NULL; @@ -49,7 +49,7 @@ static CURLcode test_lib1507(const char *URL) easy_init(curl); - multi_init(mcurl); + multi_init(multi); rcpt_list = curl_slist_append(rcpt_list, "<1507-recipient@example.com>"); #if 0 @@ -66,12 +66,12 @@ static CURLcode test_lib1507(const char *URL) curl_easy_setopt(curl, CURLOPT_MAIL_FROM, "<1507-realuser@example.com>"); curl_easy_setopt(curl, CURLOPT_MAIL_RCPT, rcpt_list); curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); - multi_add_handle(mcurl, curl); + multi_add_handle(multi, curl); mp_start = curlx_now(); /* we start some action by calling perform right away */ - curl_multi_perform(mcurl, &still_running); + curl_multi_perform(multi, &still_running); while(still_running) { struct timeval timeout; @@ -92,7 +92,7 @@ static CURLcode test_lib1507(const char *URL) timeout.tv_sec = 1; timeout.tv_usec = 0; - curl_multi_timeout(mcurl, &curl_timeo); + curl_multi_timeout(multi, &curl_timeo); if(curl_timeo >= 0) { curlx_mstotv(&timeout, curl_timeo); if(timeout.tv_sec > 1) { @@ -102,7 +102,7 @@ static CURLcode test_lib1507(const char *URL) } /* get file descriptors from the transfers */ - curl_multi_fdset(mcurl, &fdread, &fdwrite, &fdexcep, &maxfd); + curl_multi_fdset(multi, &fdread, &fdwrite, &fdexcep, &maxfd); /* In a real-world program you OF COURSE check the return code of the function calls. On success, the value of maxfd is guaranteed to be @@ -124,7 +124,7 @@ static CURLcode test_lib1507(const char *URL) break; case 0: /* timeout */ default: /* action */ - curl_multi_perform(mcurl, &still_running); + curl_multi_perform(multi, &still_running); break; } } @@ -132,8 +132,8 @@ static CURLcode test_lib1507(const char *URL) test_cleanup: curl_slist_free_all(rcpt_list); - curl_multi_remove_handle(mcurl, curl); - curl_multi_cleanup(mcurl); + curl_multi_remove_handle(multi, curl); + curl_multi_cleanup(multi); curl_easy_cleanup(curl); curl_global_cleanup(); diff --git a/tests/libtest/lib1508.c b/tests/libtest/lib1508.c index a305e652ff22..b7b47daa3f9e 100644 --- a/tests/libtest/lib1508.c +++ b/tests/libtest/lib1508.c @@ -28,19 +28,19 @@ static CURLcode test_lib1508(const char *URL) { CURLcode res = CURLE_OK; - CURLM *m = NULL; + CURLM *multi = NULL; (void)URL; global_init(CURL_GLOBAL_ALL); - multi_init(m); + multi_init(multi); test_cleanup: /* proper cleanup sequence - type PB */ - curl_multi_cleanup(m); + curl_multi_cleanup(multi); curl_global_cleanup(); curl_mprintf("We are done\n"); diff --git a/tests/libtest/lib1515.c b/tests/libtest/lib1515.c index 02c3c99bf806..679a413c69a3 100644 --- a/tests/libtest/lib1515.c +++ b/tests/libtest/lib1515.c @@ -35,9 +35,10 @@ #define DNS_TIMEOUT 1L -static CURLcode do_one_request(CURLM *m, const char *URL, const char *resolve) +static CURLcode do_one_request(CURLM *multi, const char *URL, + const char *resolve) { - CURL *curls; + CURL *curl; struct curl_slist *resolve_list = NULL; int still_running; CURLcode res = CURLE_OK; @@ -46,20 +47,20 @@ static CURLcode do_one_request(CURLM *m, const char *URL, const char *resolve) resolve_list = curl_slist_append(resolve_list, resolve); - easy_init(curls); + easy_init(curl); - easy_setopt(curls, CURLOPT_URL, URL); - easy_setopt(curls, CURLOPT_RESOLVE, resolve_list); - easy_setopt(curls, CURLOPT_DNS_CACHE_TIMEOUT, DNS_TIMEOUT); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_RESOLVE, resolve_list); + easy_setopt(curl, CURLOPT_DNS_CACHE_TIMEOUT, DNS_TIMEOUT); debug_config.nohex = TRUE; debug_config.tracetime = TRUE; - easy_setopt(curls, CURLOPT_DEBUGDATA, &debug_config); - easy_setopt(curls, CURLOPT_DEBUGFUNCTION, libtest_debug_cb); - easy_setopt(curls, CURLOPT_VERBOSE, 1L); + easy_setopt(curl, CURLOPT_DEBUGDATA, &debug_config); + easy_setopt(curl, CURLOPT_DEBUGFUNCTION, libtest_debug_cb); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); - multi_add_handle(m, curls); - multi_perform(m, &still_running); + multi_add_handle(multi, curl); + multi_perform(multi, &still_running); abort_on_test_timeout(); @@ -74,18 +75,18 @@ static CURLcode do_one_request(CURLM *m, const char *URL, const char *resolve) timeout.tv_sec = 1; timeout.tv_usec = 0; - multi_fdset(m, &fdread, &fdwrite, &fdexcep, &maxfd); + multi_fdset(multi, &fdread, &fdwrite, &fdexcep, &maxfd); select_test(maxfd + 1, &fdread, &fdwrite, &fdexcep, &timeout); abort_on_test_timeout(); - multi_perform(m, &still_running); + multi_perform(multi, &still_running); abort_on_test_timeout(); } do { - msg = curl_multi_info_read(m, &msgs_left); - if(msg && msg->msg == CURLMSG_DONE && msg->easy_handle == curls) { + msg = curl_multi_info_read(multi, &msgs_left); + if(msg && msg->msg == CURLMSG_DONE && msg->easy_handle == curl) { res = msg->data.result; break; } @@ -93,8 +94,8 @@ static CURLcode do_one_request(CURLM *m, const char *URL, const char *resolve) test_cleanup: - curl_multi_remove_handle(m, curls); - curl_easy_cleanup(curls); + curl_multi_remove_handle(multi, curl); + curl_easy_cleanup(curl); curl_slist_free_all(resolve_list); return res; diff --git a/tests/libtest/lib1523.c b/tests/libtest/lib1523.c index 77767b20bec6..36bdce8e83bc 100644 --- a/tests/libtest/lib1523.c +++ b/tests/libtest/lib1523.c @@ -46,37 +46,37 @@ static size_t t1523_write_cb(char *d, size_t n, size_t l, void *p) return n*l; } -static CURLcode run(CURL *hnd, long limit, long time) +static CURLcode run(CURL *curl, long limit, long time) { - curl_easy_setopt(hnd, CURLOPT_LOW_SPEED_LIMIT, limit); - curl_easy_setopt(hnd, CURLOPT_LOW_SPEED_TIME, time); - return curl_easy_perform(hnd); + curl_easy_setopt(curl, CURLOPT_LOW_SPEED_LIMIT, limit); + curl_easy_setopt(curl, CURLOPT_LOW_SPEED_TIME, time); + return curl_easy_perform(curl); } static CURLcode test_lib1523(const char *URL) { CURLcode ret; - CURL *hnd; + CURL *curl; char buffer[CURL_ERROR_SIZE]; curl_global_init(CURL_GLOBAL_ALL); - hnd = curl_easy_init(); - curl_easy_setopt(hnd, CURLOPT_URL, URL); - curl_easy_setopt(hnd, CURLOPT_WRITEFUNCTION, t1523_write_cb); - curl_easy_setopt(hnd, CURLOPT_ERRORBUFFER, buffer); - curl_easy_setopt(hnd, CURLOPT_NOPROGRESS, 0L); - curl_easy_setopt(hnd, CURLOPT_XFERINFOFUNCTION, dload_progress_cb); + curl = curl_easy_init(); + curl_easy_setopt(curl, CURLOPT_URL, URL); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, t1523_write_cb); + curl_easy_setopt(curl, CURLOPT_ERRORBUFFER, buffer); + curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 0L); + curl_easy_setopt(curl, CURLOPT_XFERINFOFUNCTION, dload_progress_cb); - ret = run(hnd, 1, 2); + ret = run(curl, 1, 2); if(ret) curl_mfprintf(stderr, "error (%d) %s\n", ret, buffer); - ret = run(hnd, 12000, 1); + ret = run(curl, 12000, 1); if(ret != CURLE_OPERATION_TIMEDOUT) curl_mfprintf(stderr, "error (%d) %s\n", ret, buffer); else ret = CURLE_OK; - curl_easy_cleanup(hnd); + curl_easy_cleanup(curl); curl_global_cleanup(); return ret; diff --git a/tests/libtest/lib1531.c b/tests/libtest/lib1531.c index 9d4cd7753993..6e69c5baee38 100644 --- a/tests/libtest/lib1531.c +++ b/tests/libtest/lib1531.c @@ -30,8 +30,8 @@ static CURLcode test_lib1531(const char *URL) static char const testData[] = ".abc\0xyz"; static curl_off_t const testDataSize = sizeof(testData) - 1; - CURL *easy; - CURLM *multi_handle; + CURL *curl; + CURLM *multi; int still_running; /* keep number of running handles */ CURLMsg *msg; /* for picking up messages with the transfer status */ int msgs_left; /* how many messages are left */ @@ -42,21 +42,21 @@ static CURLcode test_lib1531(const char *URL) global_init(CURL_GLOBAL_ALL); /* Allocate one curl handle per transfer */ - easy = curl_easy_init(); + curl = curl_easy_init(); /* init a multi stack */ - multi_handle = curl_multi_init(); + multi = curl_multi_init(); /* add the individual transfer */ - curl_multi_add_handle(multi_handle, easy); + curl_multi_add_handle(multi, curl); /* set the options (I left out a few, you'll get the point anyway) */ - curl_easy_setopt(easy, CURLOPT_URL, URL); - curl_easy_setopt(easy, CURLOPT_POSTFIELDSIZE_LARGE, testDataSize); - curl_easy_setopt(easy, CURLOPT_POSTFIELDS, testData); + curl_easy_setopt(curl, CURLOPT_URL, URL); + curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE_LARGE, testDataSize); + curl_easy_setopt(curl, CURLOPT_POSTFIELDS, testData); /* we start some action by calling perform right away */ - curl_multi_perform(multi_handle, &still_running); + curl_multi_perform(multi, &still_running); abort_on_test_timeout(); @@ -80,7 +80,7 @@ static CURLcode test_lib1531(const char *URL) timeout.tv_sec = 1; timeout.tv_usec = 0; - curl_multi_timeout(multi_handle, &curl_timeo); + curl_multi_timeout(multi, &curl_timeo); if(curl_timeo >= 0) { curlx_mstotv(&timeout, curl_timeo); if(timeout.tv_sec > 1) { @@ -90,7 +90,7 @@ static CURLcode test_lib1531(const char *URL) } /* get file descriptors from the transfers */ - mc = curl_multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd); + mc = curl_multi_fdset(multi, &fdread, &fdwrite, &fdexcep, &maxfd); if(mc != CURLM_OK) { curl_mfprintf(stderr, "curl_multi_fdset() failed, code %d.\n", mc); @@ -118,7 +118,7 @@ static CURLcode test_lib1531(const char *URL) break; case 0: /* timeout */ default: /* action */ - curl_multi_perform(multi_handle, &still_running); + curl_multi_perform(multi, &still_running); break; } @@ -127,7 +127,7 @@ static CURLcode test_lib1531(const char *URL) /* See how the transfers went */ do { - msg = curl_multi_info_read(multi_handle, &msgs_left); + msg = curl_multi_info_read(multi, &msgs_left); if(msg && msg->msg == CURLMSG_DONE) { curl_mprintf("HTTP transfer completed with status %d\n", msg->data.result); @@ -138,10 +138,10 @@ static CURLcode test_lib1531(const char *URL) } while(msg); test_cleanup: - curl_multi_cleanup(multi_handle); + curl_multi_cleanup(multi); /* Free the curl handles */ - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib1533.c b/tests/libtest/lib1533.c index ff5c83cc8201..1c6017273410 100644 --- a/tests/libtest/lib1533.c +++ b/tests/libtest/lib1533.c @@ -34,7 +34,7 @@ #include "memdebug.h" struct cb_data { - CURL *easy_handle; + CURL *curl; int response_received; int paused; size_t remaining_bytes; @@ -42,7 +42,7 @@ struct cb_data { static void reset_data(struct cb_data *data, CURL *curl) { - data->easy_handle = curl; + data->curl = curl; data->response_received = 0; data->paused = 0; data->remaining_bytes = 3; @@ -85,7 +85,7 @@ static size_t t1533_write_cb(char *ptr, size_t size, size_t nmemb, void *userp) if(data->paused) { /* continue to send request body data */ data->paused = 0; - curl_easy_pause(data->easy_handle, CURLPAUSE_CONT); + curl_easy_pause(data->curl, CURLPAUSE_CONT); } return totalsize; diff --git a/tests/libtest/lib1540.c b/tests/libtest/lib1540.c index 55195b6ba834..7f9123435632 100644 --- a/tests/libtest/lib1540.c +++ b/tests/libtest/lib1540.c @@ -27,7 +27,7 @@ #include "memdebug.h" struct t1540_transfer_status { - CURL *easy; + CURL *curl; int halted; int counter; /* count write callback invokes */ int please; /* number of times xferinfo is called while halted */ @@ -48,7 +48,7 @@ static int please_continue(void *userp, st->please++; if(st->please == 2) { /* waited enough, unpause! */ - curl_easy_pause(st->easy, CURLPAUSE_CONT); + curl_easy_pause(st->curl, CURLPAUSE_CONT); } } curl_mfprintf(stderr, "xferinfo: paused %d\n", st->halted); @@ -83,7 +83,7 @@ static size_t t1540_write_cb(char *ptr, size_t size, size_t nmemb, void *userp) static CURLcode test_lib1540(const char *URL) { - CURL *curls = NULL; + CURL *curl = NULL; CURLcode res = CURLE_OK; struct t1540_transfer_status st; @@ -93,30 +93,30 @@ static CURLcode test_lib1540(const char *URL) global_init(CURL_GLOBAL_ALL); - easy_init(curls); - st.easy = curls; /* to allow callbacks access */ + easy_init(curl); + st.curl = curl; /* to allow callbacks access */ - easy_setopt(curls, CURLOPT_URL, URL); - easy_setopt(curls, CURLOPT_WRITEFUNCTION, t1540_write_cb); - easy_setopt(curls, CURLOPT_WRITEDATA, &st); - easy_setopt(curls, CURLOPT_HEADERFUNCTION, t1540_header_callback); - easy_setopt(curls, CURLOPT_HEADERDATA, &st); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_WRITEFUNCTION, t1540_write_cb); + easy_setopt(curl, CURLOPT_WRITEDATA, &st); + easy_setopt(curl, CURLOPT_HEADERFUNCTION, t1540_header_callback); + easy_setopt(curl, CURLOPT_HEADERDATA, &st); - easy_setopt(curls, CURLOPT_XFERINFOFUNCTION, please_continue); - easy_setopt(curls, CURLOPT_XFERINFODATA, &st); - easy_setopt(curls, CURLOPT_NOPROGRESS, 0L); + easy_setopt(curl, CURLOPT_XFERINFOFUNCTION, please_continue); + easy_setopt(curl, CURLOPT_XFERINFODATA, &st); + easy_setopt(curl, CURLOPT_NOPROGRESS, 0L); debug_config.nohex = TRUE; debug_config.tracetime = TRUE; - test_setopt(curls, CURLOPT_DEBUGDATA, &debug_config); - easy_setopt(curls, CURLOPT_DEBUGFUNCTION, libtest_debug_cb); - easy_setopt(curls, CURLOPT_VERBOSE, 1L); + test_setopt(curl, CURLOPT_DEBUGDATA, &debug_config); + easy_setopt(curl, CURLOPT_DEBUGFUNCTION, libtest_debug_cb); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); - res = curl_easy_perform(curls); + res = curl_easy_perform(curl); test_cleanup: - curl_easy_cleanup(curls); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; /* return the final return code */ diff --git a/tests/libtest/lib1541.c b/tests/libtest/lib1541.c index 9e7b2d436528..a2caaef8c3fc 100644 --- a/tests/libtest/lib1541.c +++ b/tests/libtest/lib1541.c @@ -26,7 +26,7 @@ #include "memdebug.h" struct t1541_transfer_status { - CURL *easy; + CURL *curl; int hd_count; int bd_count; CURLcode result; @@ -50,11 +50,11 @@ static void report_time(const char *key, const char *where, curl_off_t time, key, where, time); } -static void check_time(CURL *easy, int key, const char *name, +static void check_time(CURL *curl, int key, const char *name, const char *where) { curl_off_t tval; - CURLcode res = curl_easy_getinfo(easy, (CURLINFO)key, &tval); + CURLcode res = curl_easy_getinfo(curl, (CURLINFO)key, &tval); if(res) { t1541_geterr(name, res, __LINE__); } @@ -62,11 +62,11 @@ static void check_time(CURL *easy, int key, const char *name, report_time(name, where, tval, tval > 0); } -static void check_time0(CURL *easy, int key, const char *name, +static void check_time0(CURL *curl, int key, const char *name, const char *where) { curl_off_t tval; - CURLcode res = curl_easy_getinfo(easy, (CURLINFO)key, &tval); + CURLcode res = curl_easy_getinfo(curl, (CURLINFO)key, &tval); if(res) { t1541_geterr(name, res, __LINE__); } @@ -83,15 +83,15 @@ static size_t t1541_header_callback(char *ptr, size_t size, size_t nmemb, (void)ptr; if(!st->hd_count++) { /* first header, check some CURLINFO value to be reported. See #13125 */ - check_time(st->easy, KN(CURLINFO_CONNECT_TIME_T), "1st header"); - check_time(st->easy, KN(CURLINFO_PRETRANSFER_TIME_T), "1st header"); - check_time(st->easy, KN(CURLINFO_STARTTRANSFER_TIME_T), "1st header"); + check_time(st->curl, KN(CURLINFO_CONNECT_TIME_T), "1st header"); + check_time(st->curl, KN(CURLINFO_PRETRANSFER_TIME_T), "1st header"); + check_time(st->curl, KN(CURLINFO_STARTTRANSFER_TIME_T), "1st header"); /* continuously updated */ - check_time(st->easy, KN(CURLINFO_TOTAL_TIME_T), "1st header"); + check_time(st->curl, KN(CURLINFO_TOTAL_TIME_T), "1st header"); /* no SSL, must be 0 */ - check_time0(st->easy, KN(CURLINFO_APPCONNECT_TIME_T), "1st header"); + check_time0(st->curl, KN(CURLINFO_APPCONNECT_TIME_T), "1st header"); /* download not really started */ - check_time0(st->easy, KN(CURLINFO_SPEED_DOWNLOAD_T), "1st header"); + check_time0(st->curl, KN(CURLINFO_SPEED_DOWNLOAD_T), "1st header"); } (void)fwrite(ptr, size, nmemb, stdout); return len; @@ -109,7 +109,7 @@ static size_t t1541_write_cb(char *ptr, size_t size, size_t nmemb, void *userp) static CURLcode test_lib1541(const char *URL) { - CURL *curls = NULL; + CURL *curl = NULL; CURLcode res = CURLE_OK; struct t1541_transfer_status st; @@ -119,31 +119,31 @@ static CURLcode test_lib1541(const char *URL) global_init(CURL_GLOBAL_ALL); - easy_init(curls); - st.easy = curls; /* to allow callbacks access */ + easy_init(curl); + st.curl = curl; /* to allow callbacks access */ - easy_setopt(curls, CURLOPT_URL, URL); - easy_setopt(curls, CURLOPT_WRITEFUNCTION, t1541_write_cb); - easy_setopt(curls, CURLOPT_WRITEDATA, &st); - easy_setopt(curls, CURLOPT_HEADERFUNCTION, t1541_header_callback); - easy_setopt(curls, CURLOPT_HEADERDATA, &st); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_WRITEFUNCTION, t1541_write_cb); + easy_setopt(curl, CURLOPT_WRITEDATA, &st); + easy_setopt(curl, CURLOPT_HEADERFUNCTION, t1541_header_callback); + easy_setopt(curl, CURLOPT_HEADERDATA, &st); - easy_setopt(curls, CURLOPT_NOPROGRESS, 0L); + easy_setopt(curl, CURLOPT_NOPROGRESS, 0L); - res = curl_easy_perform(curls); + res = curl_easy_perform(curl); - check_time(curls, KN(CURLINFO_CONNECT_TIME_T), "done"); - check_time(curls, KN(CURLINFO_PRETRANSFER_TIME_T), "done"); - check_time(curls, KN(CURLINFO_POSTTRANSFER_TIME_T), "done"); - check_time(curls, KN(CURLINFO_STARTTRANSFER_TIME_T), "done"); + check_time(curl, KN(CURLINFO_CONNECT_TIME_T), "done"); + check_time(curl, KN(CURLINFO_PRETRANSFER_TIME_T), "done"); + check_time(curl, KN(CURLINFO_POSTTRANSFER_TIME_T), "done"); + check_time(curl, KN(CURLINFO_STARTTRANSFER_TIME_T), "done"); /* no SSL, must be 0 */ - check_time0(curls, KN(CURLINFO_APPCONNECT_TIME_T), "done"); - check_time(curls, KN(CURLINFO_SPEED_DOWNLOAD_T), "done"); - check_time(curls, KN(CURLINFO_TOTAL_TIME_T), "done"); + check_time0(curl, KN(CURLINFO_APPCONNECT_TIME_T), "done"); + check_time(curl, KN(CURLINFO_SPEED_DOWNLOAD_T), "done"); + check_time(curl, KN(CURLINFO_TOTAL_TIME_T), "done"); test_cleanup: - curl_easy_cleanup(curls); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; /* return the final return code */ diff --git a/tests/libtest/lib1542.c b/tests/libtest/lib1542.c index b8edbcb79710..9fc9f17efb46 100644 --- a/tests/libtest/lib1542.c +++ b/tests/libtest/lib1542.c @@ -37,26 +37,26 @@ static CURLcode test_lib1542(const char *URL) { - CURL *easy = NULL; + CURL *curl = NULL; CURLcode res = CURLE_OK; global_init(CURL_GLOBAL_ALL); - res_easy_init(easy); + res_easy_init(curl); - easy_setopt(easy, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_URL, URL); debug_config.nohex = TRUE; debug_config.tracetime = FALSE; - easy_setopt(easy, CURLOPT_DEBUGDATA, &debug_config); - easy_setopt(easy, CURLOPT_DEBUGFUNCTION, libtest_debug_cb); - easy_setopt(easy, CURLOPT_VERBOSE, 1L); + easy_setopt(curl, CURLOPT_DEBUGDATA, &debug_config); + easy_setopt(curl, CURLOPT_DEBUGFUNCTION, libtest_debug_cb); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); - res = curl_easy_perform(easy); + res = curl_easy_perform(curl); if(res) goto test_cleanup; - res = curl_easy_perform(easy); + res = curl_easy_perform(curl); if(res) goto test_cleanup; @@ -64,19 +64,19 @@ static CURLcode test_lib1542(const char *URL) * seconds old */ curlx_wait_ms(2000); - res = curl_easy_perform(easy); + res = curl_easy_perform(curl); if(res) goto test_cleanup; - easy_setopt(easy, CURLOPT_MAXLIFETIME_CONN, 1L); + easy_setopt(curl, CURLOPT_MAXLIFETIME_CONN, 1L); - res = curl_easy_perform(easy); + res = curl_easy_perform(curl); if(res) goto test_cleanup; test_cleanup: - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib1545.c b/tests/libtest/lib1545.c index ac59d028c01d..7bb851f36e18 100644 --- a/tests/libtest/lib1545.c +++ b/tests/libtest/lib1545.c @@ -25,27 +25,27 @@ static CURLcode test_lib1545(const char *URL) { - CURL *eh = NULL; + CURL *curl = NULL; CURLcode res = CURLE_OK; struct curl_httppost *lastptr = NULL; struct curl_httppost *m_formpost = NULL; global_init(CURL_GLOBAL_ALL); - easy_init(eh); + easy_init(curl); - easy_setopt(eh, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_URL, URL); curl_formadd(&m_formpost, &lastptr, CURLFORM_COPYNAME, "file", CURLFORM_FILE, "missing-file", CURLFORM_END); - curl_easy_setopt(eh, CURLOPT_HTTPPOST, m_formpost); + curl_easy_setopt(curl, CURLOPT_HTTPPOST, m_formpost); - (void)curl_easy_perform(eh); - (void)curl_easy_perform(eh); + (void)curl_easy_perform(curl); + (void)curl_easy_perform(curl); test_cleanup: curl_formfree(m_formpost); - curl_easy_cleanup(eh); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib1550.c b/tests/libtest/lib1550.c index 11583aec4728..566cbfa1928a 100644 --- a/tests/libtest/lib1550.c +++ b/tests/libtest/lib1550.c @@ -29,7 +29,7 @@ static CURLcode test_lib1550(const char *URL) { - CURLM *handle; + CURLM *multi; CURLcode res = CURLE_OK; static const char * const bl_servers[] = {"Microsoft-IIS/6.0", "nginx/0.8.54", NULL}; @@ -37,12 +37,12 @@ static CURLcode test_lib1550(const char *URL) {"curl.se:443", "example.com:80", NULL}; global_init(CURL_GLOBAL_ALL); - handle = curl_multi_init(); + multi = curl_multi_init(); (void)URL; - curl_multi_setopt(handle, CURLMOPT_PIPELINING_SERVER_BL, bl_servers); - curl_multi_setopt(handle, CURLMOPT_PIPELINING_SITE_BL, bl_sites); - curl_multi_cleanup(handle); + curl_multi_setopt(multi, CURLMOPT_PIPELINING_SERVER_BL, bl_servers); + curl_multi_setopt(multi, CURLMOPT_PIPELINING_SITE_BL, bl_sites); + curl_multi_cleanup(multi); curl_global_cleanup(); return CURLE_OK; } diff --git a/tests/libtest/lib1552.c b/tests/libtest/lib1552.c index a5b23fbd8b65..d0c3469d4cea 100644 --- a/tests/libtest/lib1552.c +++ b/tests/libtest/lib1552.c @@ -27,7 +27,7 @@ static CURLcode test_lib1552(const char *URL) { - CURL *curls = NULL; + CURL *curl = NULL; CURLM *multi = NULL; int still_running; CURLcode i = CURLE_OK; @@ -41,14 +41,14 @@ static CURLcode test_lib1552(const char *URL) multi_init(multi); - easy_init(curls); + easy_init(curl); - easy_setopt(curls, CURLOPT_URL, URL); - easy_setopt(curls, CURLOPT_HEADER, 1L); - easy_setopt(curls, CURLOPT_VERBOSE, 1L); - easy_setopt(curls, CURLOPT_USERPWD, "u:s"); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_HEADER, 1L); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); + easy_setopt(curl, CURLOPT_USERPWD, "u:s"); - multi_add_handle(multi, curls); + multi_add_handle(multi, curl); multi_perform(multi, &still_running); @@ -82,7 +82,7 @@ static CURLcode test_lib1552(const char *URL) /* undocumented cleanup sequence - type UA */ curl_multi_cleanup(multi); - curl_easy_cleanup(curls); + curl_easy_cleanup(curl); curl_global_cleanup(); if(res) diff --git a/tests/libtest/lib1553.c b/tests/libtest/lib1553.c index 5d35adac5c82..fa753ac23102 100644 --- a/tests/libtest/lib1553.c +++ b/tests/libtest/lib1553.c @@ -41,7 +41,7 @@ static int t1553_xferinfo(void *p, static CURLcode test_lib1553(const char *URL) { - CURL *curls = NULL; + CURL *curl = NULL; CURLM *multi = NULL; int still_running; CURLcode i = CURLE_OK; @@ -56,28 +56,28 @@ static CURLcode test_lib1553(const char *URL) multi_init(multi); - easy_init(curls); + easy_init(curl); - mime = curl_mime_init(curls); + mime = curl_mime_init(curl); field = curl_mime_addpart(mime); curl_mime_name(field, "name"); curl_mime_data(field, "value", CURL_ZERO_TERMINATED); - easy_setopt(curls, CURLOPT_URL, URL); - easy_setopt(curls, CURLOPT_HEADER, 1L); - easy_setopt(curls, CURLOPT_VERBOSE, 1L); - easy_setopt(curls, CURLOPT_MIMEPOST, mime); - easy_setopt(curls, CURLOPT_USERPWD, "u:s"); - easy_setopt(curls, CURLOPT_XFERINFOFUNCTION, t1553_xferinfo); - easy_setopt(curls, CURLOPT_NOPROGRESS, 1L); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_HEADER, 1L); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); + easy_setopt(curl, CURLOPT_MIMEPOST, mime); + easy_setopt(curl, CURLOPT_USERPWD, "u:s"); + easy_setopt(curl, CURLOPT_XFERINFOFUNCTION, t1553_xferinfo); + easy_setopt(curl, CURLOPT_NOPROGRESS, 1L); debug_config.nohex = TRUE; debug_config.tracetime = TRUE; - test_setopt(curls, CURLOPT_DEBUGDATA, &debug_config); - easy_setopt(curls, CURLOPT_DEBUGFUNCTION, libtest_debug_cb); - easy_setopt(curls, CURLOPT_VERBOSE, 1L); + test_setopt(curl, CURLOPT_DEBUGDATA, &debug_config); + easy_setopt(curl, CURLOPT_DEBUGFUNCTION, libtest_debug_cb); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); - multi_add_handle(multi, curls); + multi_add_handle(multi, curl); multi_perform(multi, &still_running); @@ -103,9 +103,9 @@ static CURLcode test_lib1553(const char *URL) test_cleanup: curl_mime_free(mime); - curl_multi_remove_handle(multi, curls); + curl_multi_remove_handle(multi, curl); curl_multi_cleanup(multi); - curl_easy_cleanup(curls); + curl_easy_cleanup(curl); curl_global_cleanup(); if(res) diff --git a/tests/libtest/lib1554.c b/tests/libtest/lib1554.c index 240fea657791..050075df3f34 100644 --- a/tests/libtest/lib1554.c +++ b/tests/libtest/lib1554.c @@ -37,19 +37,19 @@ static const char *ldata_names[] = { "NULL", }; -static void t1554_test_lock(CURL *handle, curl_lock_data data, +static void t1554_test_lock(CURL *curl, curl_lock_data data, curl_lock_access laccess, void *useptr) { - (void)handle; + (void)curl; (void)data; (void)laccess; (void)useptr; curl_mprintf("-> Mutex lock %s\n", ldata_names[data]); } -static void t1554_test_unlock(CURL *handle, curl_lock_data data, void *useptr) +static void t1554_test_unlock(CURL *curl, curl_lock_data data, void *useptr) { - (void)handle; + (void)curl; (void)data; (void)useptr; curl_mprintf("<- Mutex unlock %s\n", ldata_names[data]); diff --git a/tests/libtest/lib1557.c b/tests/libtest/lib1557.c index 0e33f48fbb17..1c2785dbe33e 100644 --- a/tests/libtest/lib1557.c +++ b/tests/libtest/lib1557.c @@ -27,7 +27,7 @@ static CURLcode test_lib1557(const char *URL) { - CURLM *curlm = NULL; + CURLM *multi = NULL; CURL *curl1 = NULL; CURL *curl2 = NULL; int running_handles = 0; @@ -35,28 +35,28 @@ static CURLcode test_lib1557(const char *URL) global_init(CURL_GLOBAL_ALL); - multi_init(curlm); - multi_setopt(curlm, CURLMOPT_MAX_HOST_CONNECTIONS, 1L); + multi_init(multi); + multi_setopt(multi, CURLMOPT_MAX_HOST_CONNECTIONS, 1L); easy_init(curl1); easy_setopt(curl1, CURLOPT_URL, URL); - multi_add_handle(curlm, curl1); + multi_add_handle(multi, curl1); easy_init(curl2); easy_setopt(curl2, CURLOPT_URL, URL); - multi_add_handle(curlm, curl2); + multi_add_handle(multi, curl2); - multi_perform(curlm, &running_handles); + multi_perform(multi, &running_handles); - multi_remove_handle(curlm, curl2); + multi_remove_handle(multi, curl2); /* If curl2 is still in the connect-pending list, this will crash */ - multi_remove_handle(curlm, curl1); + multi_remove_handle(multi, curl1); test_cleanup: curl_easy_cleanup(curl1); curl_easy_cleanup(curl2); - curl_multi_cleanup(curlm); + curl_multi_cleanup(multi); curl_global_cleanup(); return res; } diff --git a/tests/libtest/lib1565.c b/tests/libtest/lib1565.c index 1b218d37a773..893950b90d23 100644 --- a/tests/libtest/lib1565.c +++ b/tests/libtest/lib1565.c @@ -32,7 +32,7 @@ #define TIME_BETWEEN_START_SECS 2 static pthread_mutex_t lock = PTHREAD_MUTEX_INITIALIZER; -static CURL *pending_handles[CONN_NUM]; +static CURL *pending_curls[CONN_NUM]; static int pending_num = 0; static CURLcode t1565_test_failure = CURLE_OK; @@ -41,7 +41,7 @@ static const char *t1565_url; static void *t1565_run_thread(void *ptr) { - CURL *easy = NULL; + CURL *curl = NULL; CURLcode res = CURLE_OK; int i; @@ -50,10 +50,10 @@ static void *t1565_run_thread(void *ptr) for(i = 0; i < CONN_NUM; i++) { curlx_wait_ms(TIME_BETWEEN_START_SECS * 1000); - easy_init(easy); + easy_init(curl); - easy_setopt(easy, CURLOPT_URL, t1565_url); - easy_setopt(easy, CURLOPT_VERBOSE, 0L); + easy_setopt(curl, CURLOPT_URL, t1565_url); + easy_setopt(curl, CURLOPT_VERBOSE, 0L); pthread_mutex_lock(&lock); @@ -62,9 +62,9 @@ static void *t1565_run_thread(void *ptr) goto test_cleanup; } - pending_handles[pending_num] = easy; + pending_curls[pending_num] = curl; pending_num++; - easy = NULL; + curl = NULL; pthread_mutex_unlock(&lock); @@ -73,7 +73,7 @@ static void *t1565_run_thread(void *ptr) test_cleanup: - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); pthread_mutex_lock(&lock); @@ -92,7 +92,7 @@ static CURLcode test_lib1565(const char *URL) int i; int result; CURLcode res = CURLE_OK; - CURL *started_handles[CONN_NUM]; + CURL *started_curls[CONN_NUM]; int started_num = 0; int finished_num = 0; pthread_t tid = 0; @@ -150,13 +150,13 @@ static CURLcode test_lib1565(const char *URL) pthread_mutex_lock(&lock); while(pending_num > 0) { - res_multi_add_handle(testmulti, pending_handles[pending_num - 1]); + res_multi_add_handle(testmulti, pending_curls[pending_num - 1]); if(res) { pthread_mutex_unlock(&lock); goto test_cleanup; } - started_handles[started_num] = pending_handles[pending_num - 1]; + started_curls[started_num] = pending_curls[pending_num - 1]; started_num++; pending_num--; } @@ -190,9 +190,9 @@ static CURLcode test_lib1565(const char *URL) curl_multi_cleanup(testmulti); for(i = 0; i < pending_num; i++) - curl_easy_cleanup(pending_handles[i]); + curl_easy_cleanup(pending_curls[i]); for(i = 0; i < started_num; i++) - curl_easy_cleanup(started_handles[i]); + curl_easy_cleanup(started_curls[i]); curl_global_cleanup(); return t1565_test_failure; diff --git a/tests/libtest/lib1568.c b/tests/libtest/lib1568.c index 695badc85ce2..9e73029d510a 100644 --- a/tests/libtest/lib1568.c +++ b/tests/libtest/lib1568.c @@ -28,23 +28,23 @@ static CURLcode test_lib1568(const char *URL) { CURLcode ret; - CURL *hnd; + CURL *curl; curl_global_init(CURL_GLOBAL_ALL); - hnd = curl_easy_init(); - curl_easy_setopt(hnd, CURLOPT_URL, URL); - curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L); - curl_easy_setopt(hnd, CURLOPT_HEADER, 1L); - curl_easy_setopt(hnd, CURLOPT_USERPWD, "testuser:testpass"); - curl_easy_setopt(hnd, CURLOPT_USERAGENT, "lib1568"); - curl_easy_setopt(hnd, CURLOPT_HTTPAUTH, CURLAUTH_DIGEST); - curl_easy_setopt(hnd, CURLOPT_MAXREDIRS, 50L); - curl_easy_setopt(hnd, CURLOPT_PORT, atol(libtest_arg2)); + curl = curl_easy_init(); + curl_easy_setopt(curl, CURLOPT_URL, URL); + curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); + curl_easy_setopt(curl, CURLOPT_HEADER, 1L); + curl_easy_setopt(curl, CURLOPT_USERPWD, "testuser:testpass"); + curl_easy_setopt(curl, CURLOPT_USERAGENT, "lib1568"); + curl_easy_setopt(curl, CURLOPT_HTTPAUTH, CURLAUTH_DIGEST); + curl_easy_setopt(curl, CURLOPT_MAXREDIRS, 50L); + curl_easy_setopt(curl, CURLOPT_PORT, atol(libtest_arg2)); - ret = curl_easy_perform(hnd); + ret = curl_easy_perform(curl); - curl_easy_cleanup(hnd); - hnd = NULL; + curl_easy_cleanup(curl); + curl = NULL; curl_global_cleanup(); return ret; diff --git a/tests/libtest/lib1569.c b/tests/libtest/lib1569.c index 2846909e88f3..c2fd27bfe195 100644 --- a/tests/libtest/lib1569.c +++ b/tests/libtest/lib1569.c @@ -28,23 +28,23 @@ static CURLcode test_lib1569(const char *URL) { CURLcode res = CURLE_OK; - CURL *hnd; + CURL *curl; global_init(CURL_GLOBAL_ALL); - easy_init(hnd); - easy_setopt(hnd, CURLOPT_URL, URL); - easy_setopt(hnd, CURLOPT_VERBOSE, 1L); - easy_setopt(hnd, CURLOPT_HEADER, 1L); + easy_init(curl); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); + easy_setopt(curl, CURLOPT_HEADER, 1L); - res = curl_easy_perform(hnd); + res = curl_easy_perform(curl); if(res) goto test_cleanup; - curl_easy_setopt(hnd, CURLOPT_URL, libtest_arg2); - res = curl_easy_perform(hnd); + curl_easy_setopt(curl, CURLOPT_URL, libtest_arg2); + res = curl_easy_perform(curl); test_cleanup: - curl_easy_cleanup(hnd); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; } diff --git a/tests/libtest/lib1592.c b/tests/libtest/lib1592.c index 3f76a19c4f50..7e23d576bf2b 100644 --- a/tests/libtest/lib1592.c +++ b/tests/libtest/lib1592.c @@ -41,7 +41,7 @@ static CURLcode test_lib1592(const char *URL) { int stillRunning; - CURLM *multiHandle = NULL; + CURLM *multi = NULL; CURL *curl = NULL; CURLcode res = CURLE_OK; CURLMcode mres; @@ -49,7 +49,7 @@ static CURLcode test_lib1592(const char *URL) global_init(CURL_GLOBAL_ALL); - multi_init(multiHandle); + multi_init(multi); easy_init(curl); @@ -88,17 +88,17 @@ static CURLcode test_lib1592(const char *URL) this. */ easy_setopt(curl, CURLOPT_TIMEOUT_MS, timeout); - multi_add_handle(multiHandle, curl); + multi_add_handle(multi, curl); /* This should move the handle from INIT => CONNECT => WAITRESOLVE. */ curl_mfprintf(stderr, "curl_multi_perform()...\n"); - multi_perform(multiHandle, &stillRunning); + multi_perform(multi, &stillRunning); curl_mfprintf(stderr, "curl_multi_perform() succeeded\n"); /* Start measuring how long it takes to remove the handle. */ curl_mfprintf(stderr, "curl_multi_remove_handle()...\n"); start_test_timing(); - mres = curl_multi_remove_handle(multiHandle, curl); + mres = curl_multi_remove_handle(multi, curl); if(mres) { curl_mfprintf(stderr, "curl_multi_remove_handle() failed, with code %d\n", mres); @@ -114,7 +114,7 @@ static CURLcode test_lib1592(const char *URL) test_cleanup: curl_easy_cleanup(curl); - curl_multi_cleanup(multiHandle); + curl_multi_cleanup(multi); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib1662.c b/tests/libtest/lib1662.c index b0ca4c5094c9..41a1bc0bd4bb 100644 --- a/tests/libtest/lib1662.c +++ b/tests/libtest/lib1662.c @@ -49,7 +49,7 @@ static size_t t1662_read_cb(char *ptr, size_t size, size_t nmemb, void *userp) static CURLcode test_lib1662(const char *URL) { CURLcode res = CURLE_OK; - CURL *hnd; + CURL *curl; curl_mime *mime1; curl_mimepart *part1; struct t1662_WriteThis pooh = { 1 }; @@ -58,30 +58,30 @@ static CURLcode test_lib1662(const char *URL) global_init(CURL_GLOBAL_ALL); - hnd = curl_easy_init(); - if(hnd) { - curl_easy_setopt(hnd, CURLOPT_BUFFERSIZE, 102400L); - curl_easy_setopt(hnd, CURLOPT_URL, URL); - curl_easy_setopt(hnd, CURLOPT_NOPROGRESS, 1L); - mime1 = curl_mime_init(hnd); + curl = curl_easy_init(); + if(curl) { + curl_easy_setopt(curl, CURLOPT_BUFFERSIZE, 102400L); + curl_easy_setopt(curl, CURLOPT_URL, URL); + curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 1L); + mime1 = curl_mime_init(curl); if(mime1) { part1 = curl_mime_addpart(mime1); curl_mime_data_cb(part1, -1, t1662_read_cb, NULL, NULL, &pooh); curl_mime_filename(part1, "poetry.txt"); curl_mime_name(part1, "content"); - curl_easy_setopt(hnd, CURLOPT_MIMEPOST, mime1); - curl_easy_setopt(hnd, CURLOPT_USERAGENT, "curl/2000"); - curl_easy_setopt(hnd, CURLOPT_FOLLOWLOCATION, 1L); - curl_easy_setopt(hnd, CURLOPT_MAXREDIRS, 50L); - curl_easy_setopt(hnd, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2TLS); - curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L); - curl_easy_setopt(hnd, CURLOPT_FTP_SKIP_PASV_IP, 1L); - curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L); - res = curl_easy_perform(hnd); + curl_easy_setopt(curl, CURLOPT_MIMEPOST, mime1); + curl_easy_setopt(curl, CURLOPT_USERAGENT, "curl/2000"); + curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L); + curl_easy_setopt(curl, CURLOPT_MAXREDIRS, 50L); + curl_easy_setopt(curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2TLS); + curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); + curl_easy_setopt(curl, CURLOPT_FTP_SKIP_PASV_IP, 1L); + curl_easy_setopt(curl, CURLOPT_TCP_KEEPALIVE, 1L); + res = curl_easy_perform(curl); } } - curl_easy_cleanup(hnd); + curl_easy_cleanup(curl); curl_mime_free(mime1); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib1900.c b/tests/libtest/lib1900.c index 3e9c60f4a8e0..2f0954bb6c52 100644 --- a/tests/libtest/lib1900.c +++ b/tests/libtest/lib1900.c @@ -28,26 +28,26 @@ static CURLcode test_lib1900(const char *URL) { CURLcode res = CURLE_OK; - CURL *hnd = NULL; - CURL *second = NULL; + CURL *curl1 = NULL; + CURL *curl2 = NULL; global_init(CURL_GLOBAL_ALL); - easy_init(hnd); - easy_setopt(hnd, CURLOPT_URL, URL); - easy_setopt(hnd, CURLOPT_HSTS, "first-hsts.txt"); - easy_setopt(hnd, CURLOPT_HSTS, "second-hsts.txt"); + easy_init(curl1); + easy_setopt(curl1, CURLOPT_URL, URL); + easy_setopt(curl1, CURLOPT_HSTS, "first-hsts.txt"); + easy_setopt(curl1, CURLOPT_HSTS, "second-hsts.txt"); - second = curl_easy_duphandle(hnd); + curl2 = curl_easy_duphandle(curl1); - curl_easy_cleanup(hnd); - curl_easy_cleanup(second); + curl_easy_cleanup(curl1); + curl_easy_cleanup(curl2); curl_global_cleanup(); return CURLE_OK; test_cleanup: - curl_easy_cleanup(hnd); - curl_easy_cleanup(second); + curl_easy_cleanup(curl1); + curl_easy_cleanup(curl2); curl_global_cleanup(); return res; } diff --git a/tests/libtest/lib1903.c b/tests/libtest/lib1903.c index af21e946b924..fc2858d5eecb 100644 --- a/tests/libtest/lib1903.c +++ b/tests/libtest/lib1903.c @@ -28,26 +28,26 @@ static CURLcode test_lib1903(const char *URL) { CURLcode res = CURLE_OK; - CURL *ch = NULL; + CURL *curl = NULL; global_init(CURL_GLOBAL_ALL); - easy_init(ch); + easy_init(curl); - easy_setopt(ch, CURLOPT_URL, URL); - easy_setopt(ch, CURLOPT_COOKIEFILE, libtest_arg2); - res = curl_easy_perform(ch); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_COOKIEFILE, libtest_arg2); + res = curl_easy_perform(curl); if(res) goto test_cleanup; - curl_easy_reset(ch); + curl_easy_reset(curl); - easy_setopt(ch, CURLOPT_URL, URL); - easy_setopt(ch, CURLOPT_COOKIEFILE, libtest_arg2); - easy_setopt(ch, CURLOPT_COOKIEJAR, libtest_arg3); - res = curl_easy_perform(ch); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_COOKIEFILE, libtest_arg2); + easy_setopt(curl, CURLOPT_COOKIEJAR, libtest_arg3); + res = curl_easy_perform(curl); test_cleanup: - curl_easy_cleanup(ch); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib1905.c b/tests/libtest/lib1905.c index a227a09beb43..600e6962383e 100644 --- a/tests/libtest/lib1905.c +++ b/tests/libtest/lib1905.c @@ -27,35 +27,35 @@ static CURLcode test_lib1905(const char *URL) { - CURLSH *sh = NULL; - CURL *ch = NULL; + CURLSH *share = NULL; + CURL *curl = NULL; int unfinished; - CURLM *cm; + CURLM *multi; curl_global_init(CURL_GLOBAL_ALL); - cm = curl_multi_init(); - if(!cm) { + multi = curl_multi_init(); + if(!multi) { curl_global_cleanup(); return TEST_ERR_MULTI; } - sh = curl_share_init(); - if(!sh) + share = curl_share_init(); + if(!share) goto cleanup; - curl_share_setopt(sh, CURLSHOPT_SHARE, CURL_LOCK_DATA_COOKIE); - curl_share_setopt(sh, CURLSHOPT_SHARE, CURL_LOCK_DATA_COOKIE); + curl_share_setopt(share, CURLSHOPT_SHARE, CURL_LOCK_DATA_COOKIE); + curl_share_setopt(share, CURLSHOPT_SHARE, CURL_LOCK_DATA_COOKIE); - ch = curl_easy_init(); - if(!ch) + curl = curl_easy_init(); + if(!curl) goto cleanup; - curl_easy_setopt(ch, CURLOPT_SHARE, sh); - curl_easy_setopt(ch, CURLOPT_URL, URL); - curl_easy_setopt(ch, CURLOPT_COOKIEFILE, libtest_arg2); - curl_easy_setopt(ch, CURLOPT_COOKIEJAR, libtest_arg2); + curl_easy_setopt(curl, CURLOPT_SHARE, share); + curl_easy_setopt(curl, CURLOPT_URL, URL); + curl_easy_setopt(curl, CURLOPT_COOKIEFILE, libtest_arg2); + curl_easy_setopt(curl, CURLOPT_COOKIEJAR, libtest_arg2); - curl_multi_add_handle(cm, ch); + curl_multi_add_handle(multi, curl); unfinished = 1; while(unfinished) { @@ -67,10 +67,10 @@ static CURLcode test_lib1905(const char *URL) FD_ZERO(&R); FD_ZERO(&W); FD_ZERO(&E); - curl_multi_perform(cm, &unfinished); + curl_multi_perform(multi, &unfinished); - curl_multi_fdset(cm, &R, &W, &E, &MAX); - curl_multi_timeout(cm, &max_tout); + curl_multi_fdset(multi, &R, &W, &E, &MAX); + curl_multi_timeout(multi, &max_tout); if(max_tout > 0) { curlx_mstotv(&timeout, max_tout); @@ -83,14 +83,14 @@ static CURLcode test_lib1905(const char *URL) select(MAX + 1, &R, &W, &E, &timeout); } - curl_easy_setopt(ch, CURLOPT_COOKIELIST, "FLUSH"); - curl_easy_setopt(ch, CURLOPT_SHARE, NULL); + curl_easy_setopt(curl, CURLOPT_COOKIELIST, "FLUSH"); + curl_easy_setopt(curl, CURLOPT_SHARE, NULL); - curl_multi_remove_handle(cm, ch); + curl_multi_remove_handle(multi, curl); cleanup: - curl_easy_cleanup(ch); - curl_share_cleanup(sh); - curl_multi_cleanup(cm); + curl_easy_cleanup(curl); + curl_share_cleanup(share); + curl_multi_cleanup(multi); curl_global_cleanup(); return CURLE_OK; diff --git a/tests/libtest/lib1908.c b/tests/libtest/lib1908.c index 98e01fac9a08..500120066ed2 100644 --- a/tests/libtest/lib1908.c +++ b/tests/libtest/lib1908.c @@ -28,34 +28,34 @@ static CURLcode test_lib1908(const char *URL) { CURLcode ret = CURLE_OK; - CURL *hnd; + CURL *curl; start_test_timing(); curl_global_init(CURL_GLOBAL_ALL); - hnd = curl_easy_init(); - if(hnd) { - curl_easy_setopt(hnd, CURLOPT_URL, URL); - curl_easy_setopt(hnd, CURLOPT_NOPROGRESS, 1L); - curl_easy_setopt(hnd, CURLOPT_ALTSVC, libtest_arg2); - ret = curl_easy_perform(hnd); + curl = curl_easy_init(); + if(curl) { + curl_easy_setopt(curl, CURLOPT_URL, URL); + curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 1L); + curl_easy_setopt(curl, CURLOPT_ALTSVC, libtest_arg2); + ret = curl_easy_perform(curl); if(!ret) { /* make a copy and check that this also has alt-svc activated */ - CURL *also = curl_easy_duphandle(hnd); - if(also) { - ret = curl_easy_perform(also); + CURL *curldupe = curl_easy_duphandle(curl); + if(curldupe) { + ret = curl_easy_perform(curldupe); /* we close the second handle first, which makes it store the alt-svc file only to get overwritten when the next handle is closed! */ - curl_easy_cleanup(also); + curl_easy_cleanup(curldupe); } } - curl_easy_reset(hnd); + curl_easy_reset(curl); /* using the same file name for the alt-svc cache, this clobbers the - content just written from the 'also' handle */ - curl_easy_cleanup(hnd); + content just written from the 'curldupe' handle */ + curl_easy_cleanup(curl); } curl_global_cleanup(); return ret; diff --git a/tests/libtest/lib1910.c b/tests/libtest/lib1910.c index 6164d595459b..425598bf8833 100644 --- a/tests/libtest/lib1910.c +++ b/tests/libtest/lib1910.c @@ -28,19 +28,19 @@ static CURLcode test_lib1910(const char *URL) { CURLcode ret = CURLE_OK; - CURL *hnd; + CURL *curl; start_test_timing(); curl_global_init(CURL_GLOBAL_ALL); - hnd = curl_easy_init(); - if(hnd) { - curl_easy_setopt(hnd, CURLOPT_URL, URL); - curl_easy_setopt(hnd, CURLOPT_NOPROGRESS, 1L); - curl_easy_setopt(hnd, CURLOPT_FOLLOWLOCATION, 1L); - curl_easy_setopt(hnd, CURLOPT_USERPWD, "user\nname:pass\nword"); - ret = curl_easy_perform(hnd); - curl_easy_cleanup(hnd); + curl = curl_easy_init(); + if(curl) { + curl_easy_setopt(curl, CURLOPT_URL, URL); + curl_easy_setopt(curl, CURLOPT_NOPROGRESS, 1L); + curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L); + curl_easy_setopt(curl, CURLOPT_USERPWD, "user\nname:pass\nword"); + ret = curl_easy_perform(curl); + curl_easy_cleanup(curl); } curl_global_cleanup(); return ret; diff --git a/tests/libtest/lib1911.c b/tests/libtest/lib1911.c index 4ffc8085dc12..7add65ec48c6 100644 --- a/tests/libtest/lib1911.c +++ b/tests/libtest/lib1911.c @@ -34,13 +34,13 @@ static CURLcode test_lib1911(const char *URL) static char testbuf[MAX_INPUT_LENGTH + 2]; const struct curl_easyoption *o; - CURL *easy; + CURL *curl; int error = 0; (void)URL; curl_global_init(CURL_GLOBAL_ALL); - easy = curl_easy_init(); - if(!easy) { + curl = curl_easy_init(); + if(!curl) { curl_global_cleanup(); return TEST_ERR_EASY_INIT; } @@ -72,7 +72,7 @@ static CURLcode test_lib1911(const char *URL) /* This is a string. Make sure that passing in a string longer CURL_MAX_INPUT_LENGTH returns an error */ - result = curl_easy_setopt(easy, o->id, testbuf); + result = curl_easy_setopt(curl, o->id, testbuf); switch(result) { case CURLE_BAD_FUNCTION_ARGUMENT: /* the most normal */ case CURLE_UNKNOWN_OPTION: /* left out from the build */ @@ -88,7 +88,7 @@ static CURLcode test_lib1911(const char *URL) } } } - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); curl_global_cleanup(); return error == 0 ? CURLE_OK : TEST_ERR_FAILURE; } diff --git a/tests/libtest/lib1913.c b/tests/libtest/lib1913.c index e0519aef296d..94a319f0c745 100644 --- a/tests/libtest/lib1913.c +++ b/tests/libtest/lib1913.c @@ -28,20 +28,20 @@ static CURLcode test_lib1913(const char *URL) { CURLcode ret = CURLE_OK; - CURL *hnd; + CURL *curl; start_test_timing(); curl_global_init(CURL_GLOBAL_ALL); - hnd = curl_easy_init(); - if(hnd) { - curl_easy_setopt(hnd, CURLOPT_URL, URL); - curl_easy_setopt(hnd, CURLOPT_NOBODY, 1L); + curl = curl_easy_init(); + if(curl) { + curl_easy_setopt(curl, CURLOPT_URL, URL); + curl_easy_setopt(curl, CURLOPT_NOBODY, 1L); if(libtest_arg2) /* test1914 sets this extra arg */ - curl_easy_setopt(hnd, CURLOPT_FILETIME, 1L); - ret = curl_easy_perform(hnd); - curl_easy_cleanup(hnd); + curl_easy_setopt(curl, CURLOPT_FILETIME, 1L); + ret = curl_easy_perform(curl); + curl_easy_cleanup(curl); } curl_global_cleanup(); return ret; diff --git a/tests/libtest/lib1915.c b/tests/libtest/lib1915.c index c4cc39455feb..e47ae9ee8028 100644 --- a/tests/libtest/lib1915.c +++ b/tests/libtest/lib1915.c @@ -31,7 +31,7 @@ struct state { }; /* "read" is from the point of the library, it wants data from us */ -static CURLSTScode hstsread(CURL *easy, struct curl_hstsentry *e, +static CURLSTScode hstsread(CURL *curl, struct curl_hstsentry *e, void *userp) { struct entry { @@ -56,7 +56,7 @@ static CURLSTScode hstsread(CURL *easy, struct curl_hstsentry *e, const char *host; const char *expire; struct state *s = (struct state *)userp; - (void)easy; + (void)curl; host = preload_hosts[s->index].name; expire = preload_hosts[s->index++].exp; @@ -72,20 +72,20 @@ static CURLSTScode hstsread(CURL *easy, struct curl_hstsentry *e, } /* verify error from callback */ -static CURLSTScode hstsreadfail(CURL *easy, struct curl_hstsentry *e, +static CURLSTScode hstsreadfail(CURL *curl, struct curl_hstsentry *e, void *userp) { - (void)easy; + (void)curl; (void)e; (void)userp; return CURLSTS_FAIL; } /* check that we get the hosts back in the save */ -static CURLSTScode hstswrite(CURL *easy, struct curl_hstsentry *e, +static CURLSTScode hstswrite(CURL *curl, struct curl_hstsentry *e, struct curl_index *i, void *userp) { - (void)easy; + (void)curl; (void)userp; curl_mprintf("[%zu/%zu] %s %s\n", i->index, i->total, e->name, e->expire); return CURLSTS_OK; @@ -98,7 +98,7 @@ static CURLSTScode hstswrite(CURL *easy, struct curl_hstsentry *e, static CURLcode test_lib1915(const char *URL) { CURLcode res = CURLE_OK; - CURL *hnd; + CURL *curl; struct state st = {0}; global_init(CURL_GLOBAL_ALL); @@ -106,43 +106,43 @@ static CURLcode test_lib1915(const char *URL) debug_config.nohex = TRUE; debug_config.tracetime = TRUE; - easy_init(hnd); - easy_setopt(hnd, CURLOPT_URL, URL); - easy_setopt(hnd, CURLOPT_CONNECTTIMEOUT, 1L); - easy_setopt(hnd, CURLOPT_HSTSREADFUNCTION, hstsread); - easy_setopt(hnd, CURLOPT_HSTSREADDATA, &st); - easy_setopt(hnd, CURLOPT_HSTSWRITEFUNCTION, hstswrite); - easy_setopt(hnd, CURLOPT_HSTSWRITEDATA, &st); - easy_setopt(hnd, CURLOPT_HSTS_CTRL, CURLHSTS_ENABLE); - easy_setopt(hnd, CURLOPT_DEBUGDATA, &debug_config); - easy_setopt(hnd, CURLOPT_DEBUGFUNCTION, libtest_debug_cb); - easy_setopt(hnd, CURLOPT_VERBOSE, 1L); - res = curl_easy_perform(hnd); - curl_easy_cleanup(hnd); - hnd = NULL; + easy_init(curl); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, 1L); + easy_setopt(curl, CURLOPT_HSTSREADFUNCTION, hstsread); + easy_setopt(curl, CURLOPT_HSTSREADDATA, &st); + easy_setopt(curl, CURLOPT_HSTSWRITEFUNCTION, hstswrite); + easy_setopt(curl, CURLOPT_HSTSWRITEDATA, &st); + easy_setopt(curl, CURLOPT_HSTS_CTRL, CURLHSTS_ENABLE); + easy_setopt(curl, CURLOPT_DEBUGDATA, &debug_config); + easy_setopt(curl, CURLOPT_DEBUGFUNCTION, libtest_debug_cb); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); + res = curl_easy_perform(curl); + curl_easy_cleanup(curl); + curl = NULL; if(res == CURLE_OPERATION_TIMEDOUT) /* we expect that on Windows */ res = CURLE_COULDNT_CONNECT; curl_mprintf("First request returned %d\n", res); res = CURLE_OK; - easy_init(hnd); - easy_setopt(hnd, CURLOPT_URL, URL); - easy_setopt(hnd, CURLOPT_CONNECTTIMEOUT, 1L); - easy_setopt(hnd, CURLOPT_HSTSREADFUNCTION, hstsreadfail); - easy_setopt(hnd, CURLOPT_HSTSREADDATA, &st); - easy_setopt(hnd, CURLOPT_HSTSWRITEFUNCTION, hstswrite); - easy_setopt(hnd, CURLOPT_HSTSWRITEDATA, &st); - easy_setopt(hnd, CURLOPT_HSTS_CTRL, CURLHSTS_ENABLE); - easy_setopt(hnd, CURLOPT_DEBUGDATA, &debug_config); - easy_setopt(hnd, CURLOPT_DEBUGFUNCTION, libtest_debug_cb); - easy_setopt(hnd, CURLOPT_VERBOSE, 1L); - res = curl_easy_perform(hnd); - curl_easy_cleanup(hnd); - hnd = NULL; + easy_init(curl); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, 1L); + easy_setopt(curl, CURLOPT_HSTSREADFUNCTION, hstsreadfail); + easy_setopt(curl, CURLOPT_HSTSREADDATA, &st); + easy_setopt(curl, CURLOPT_HSTSWRITEFUNCTION, hstswrite); + easy_setopt(curl, CURLOPT_HSTSWRITEDATA, &st); + easy_setopt(curl, CURLOPT_HSTS_CTRL, CURLHSTS_ENABLE); + easy_setopt(curl, CURLOPT_DEBUGDATA, &debug_config); + easy_setopt(curl, CURLOPT_DEBUGFUNCTION, libtest_debug_cb); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); + res = curl_easy_perform(curl); + curl_easy_cleanup(curl); + curl = NULL; curl_mprintf("Second request returned %d\n", res); test_cleanup: - curl_easy_cleanup(hnd); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; } diff --git a/tests/libtest/lib1939.c b/tests/libtest/lib1939.c index 61199900df49..5a10db96b138 100644 --- a/tests/libtest/lib1939.c +++ b/tests/libtest/lib1939.c @@ -28,29 +28,29 @@ static CURLcode test_lib1939(const char *URL) { CURLM *multi; - CURL *easy; + CURL *curl; int running_handles; curl_global_init(CURL_GLOBAL_DEFAULT); multi = curl_multi_init(); if(multi) { - easy = curl_easy_init(); - if(easy) { + curl = curl_easy_init(); + if(curl) { CURLcode c; CURLMcode m; /* Crash only happens when using HTTPS */ - c = curl_easy_setopt(easy, CURLOPT_URL, URL); + c = curl_easy_setopt(curl, CURLOPT_URL, URL); if(!c) /* Any old HTTP tunneling proxy will do here */ - c = curl_easy_setopt(easy, CURLOPT_PROXY, libtest_arg2); + c = curl_easy_setopt(curl, CURLOPT_PROXY, libtest_arg2); if(!c) { /* We're going to drive the transfer using multi interface here, because we want to stop during the middle. */ - m = curl_multi_add_handle(multi, easy); + m = curl_multi_add_handle(multi, curl); if(!m) /* Run the multi handle once, just enough to start establishing an @@ -62,7 +62,7 @@ static CURLcode test_lib1939(const char *URL) } /* Close the easy handle *before* the multi handle. Doing it the other way around avoids the issue. */ - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); } curl_multi_cleanup(multi); /* double-free happens here */ } diff --git a/tests/libtest/lib1940.c b/tests/libtest/lib1940.c index 50f4010e94eb..117afecf2fdc 100644 --- a/tests/libtest/lib1940.c +++ b/tests/libtest/lib1940.c @@ -33,7 +33,7 @@ static size_t t1940_write_cb(char *data, size_t n, size_t l, void *userp) return n*l; } -static void t1940_showem(CURL *easy, int header_request, unsigned int type) +static void t1940_showem(CURL *curl, int header_request, unsigned int type) { static const char *testdata[] = { "daTE", @@ -52,7 +52,7 @@ static void t1940_showem(CURL *easy, int header_request, unsigned int type) int i; struct curl_header *header; for(i = 0; testdata[i]; i++) { - if(CURLHE_OK == curl_easy_header(easy, testdata[i], 0, + if(CURLHE_OK == curl_easy_header(curl, testdata[i], 0, type, header_request, &header)) { if(header->amount > 1) { /* more than one, iterate over them */ @@ -64,7 +64,7 @@ static void t1940_showem(CURL *easy, int header_request, unsigned int type) if(++index == amount) break; - if(CURLHE_OK != curl_easy_header(easy, testdata[i], index, + if(CURLHE_OK != curl_easy_header(curl, testdata[i], index, type, header_request, &header)) break; } while(1); @@ -79,7 +79,7 @@ static void t1940_showem(CURL *easy, int header_request, unsigned int type) static CURLcode test_lib1940(const char *URL) { - CURL *easy = NULL; + CURL *curl = NULL; CURLcode res = CURLE_OK; int header_request; @@ -91,32 +91,32 @@ static CURLcode test_lib1940(const char *URL) } global_init(CURL_GLOBAL_DEFAULT); - easy_init(easy); - easy_setopt(easy, CURLOPT_URL, URL); - easy_setopt(easy, CURLOPT_VERBOSE, 1L); - easy_setopt(easy, CURLOPT_FOLLOWLOCATION, 1L); + easy_init(curl); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); + easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L); /* ignores any content */ - easy_setopt(easy, CURLOPT_WRITEFUNCTION, t1940_write_cb); + easy_setopt(curl, CURLOPT_WRITEFUNCTION, t1940_write_cb); /* if there's a proxy set, use it */ if(libtest_arg2 && *libtest_arg2) { - easy_setopt(easy, CURLOPT_PROXY, libtest_arg2); - easy_setopt(easy, CURLOPT_HTTPPROXYTUNNEL, 1L); + easy_setopt(curl, CURLOPT_PROXY, libtest_arg2); + easy_setopt(curl, CURLOPT_HTTPPROXYTUNNEL, 1L); } - res = curl_easy_perform(easy); + res = curl_easy_perform(curl); if(res) goto test_cleanup; - t1940_showem(easy, header_request, CURLH_HEADER); + t1940_showem(curl, header_request, CURLH_HEADER); if(libtest_arg2 && *libtest_arg2) { /* now show connect headers only */ - t1940_showem(easy, header_request, CURLH_CONNECT); + t1940_showem(curl, header_request, CURLH_CONNECT); } - t1940_showem(easy, header_request, CURLH_1XX); - t1940_showem(easy, header_request, CURLH_TRAILER); + t1940_showem(curl, header_request, CURLH_1XX); + t1940_showem(curl, header_request, CURLH_TRAILER); test_cleanup: - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; } diff --git a/tests/libtest/lib1945.c b/tests/libtest/lib1945.c index 6e693bda625d..f0a92d6033e2 100644 --- a/tests/libtest/lib1945.c +++ b/tests/libtest/lib1945.c @@ -25,13 +25,13 @@ #include "memdebug.h" -static void t1945_showem(CURL *easy, unsigned int type) +static void t1945_showem(CURL *curl, unsigned int type) { struct curl_header *header = NULL; struct curl_header *prev = NULL; /* !checksrc! disable EQUALSNULL 1 */ - while((header = curl_easy_nextheader(easy, type, 0, prev)) != NULL) { + while((header = curl_easy_nextheader(curl, type, 0, prev)) != NULL) { curl_mprintf(" %s == %s (%zu/%zu)\n", header->name, header->value, header->index, header->amount); prev = header; @@ -48,31 +48,31 @@ static size_t t1945_write_cb(char *data, size_t n, size_t l, void *userp) static CURLcode test_lib1945(const char *URL) { - CURL *easy; + CURL *curl; CURLcode res = CURLE_OK; global_init(CURL_GLOBAL_DEFAULT); - easy_init(easy); - curl_easy_setopt(easy, CURLOPT_URL, URL); - curl_easy_setopt(easy, CURLOPT_VERBOSE, 1L); - curl_easy_setopt(easy, CURLOPT_FOLLOWLOCATION, 1L); + easy_init(curl); + curl_easy_setopt(curl, CURLOPT_URL, URL); + curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); + curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L); /* ignores any content */ - curl_easy_setopt(easy, CURLOPT_WRITEFUNCTION, t1945_write_cb); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, t1945_write_cb); /* if there's a proxy set, use it */ if(libtest_arg2 && *libtest_arg2) { - curl_easy_setopt(easy, CURLOPT_PROXY, libtest_arg2); - curl_easy_setopt(easy, CURLOPT_HTTPPROXYTUNNEL, 1L); + curl_easy_setopt(curl, CURLOPT_PROXY, libtest_arg2); + curl_easy_setopt(curl, CURLOPT_HTTPPROXYTUNNEL, 1L); } - res = curl_easy_perform(easy); + res = curl_easy_perform(curl); if(res) { curl_mprintf("badness: %d\n", res); } - t1945_showem(easy, CURLH_CONNECT|CURLH_HEADER|CURLH_TRAILER|CURLH_1XX); + t1945_showem(curl, CURLH_CONNECT|CURLH_HEADER|CURLH_TRAILER|CURLH_1XX); test_cleanup: - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; } diff --git a/tests/libtest/lib2032.c b/tests/libtest/lib2032.c index 25de34d53024..81c949ab4488 100644 --- a/tests/libtest/lib2032.c +++ b/tests/libtest/lib2032.c @@ -28,13 +28,13 @@ #define MAX_EASY_HANDLES 3 static int ntlm_counter[MAX_EASY_HANDLES]; -static CURL *ntlm_easy[MAX_EASY_HANDLES]; +static CURL *ntlm_curls[MAX_EASY_HANDLES]; static curl_socket_t ntlm_sockets[MAX_EASY_HANDLES]; static CURLcode ntlmcb_res = CURLE_OK; static size_t callback(char *ptr, size_t size, size_t nmemb, void *data) { - ssize_t idx = ((CURL **) data) - ntlm_easy; + ssize_t idx = ((CURL **) data) - ntlm_curls; curl_socket_t sock; long longdata; CURLcode code; @@ -44,7 +44,7 @@ static size_t callback(char *ptr, size_t size, size_t nmemb, void *data) ntlm_counter[idx] += (int)(size * nmemb); /* Get socket being used for this easy handle, otherwise CURL_SOCKET_BAD */ - code = curl_easy_getinfo(ntlm_easy[idx], CURLINFO_LASTSOCKET, &longdata); + code = curl_easy_getinfo(ntlm_curls[idx], CURLINFO_LASTSOCKET, &longdata); if(CURLE_OK != code) { curl_mfprintf(stderr, "%s:%d curl_easy_getinfo() failed, " @@ -102,7 +102,7 @@ static CURLcode test_lib2032(const char *URL) /* libntlmconnect */ } for(i = 0; i < MAX_EASY_HANDLES; ++i) { - ntlm_easy[i] = NULL; + ntlm_curls[i] = NULL; ntlm_sockets[i] = CURL_SOCKET_BAD; } @@ -125,28 +125,28 @@ static CURLcode test_lib2032(const char *URL) /* libntlmconnect */ /* Start a new handle if we aren't at the max */ if(state == ReadyForNewHandle) { - easy_init(ntlm_easy[num_handles]); + easy_init(ntlm_curls[num_handles]); if(num_handles % 3 == 2) { curl_msnprintf(full_url, urllen, "%s0200", URL); - easy_setopt(ntlm_easy[num_handles], CURLOPT_HTTPAUTH, CURLAUTH_NTLM); + easy_setopt(ntlm_curls[num_handles], CURLOPT_HTTPAUTH, CURLAUTH_NTLM); } else { curl_msnprintf(full_url, urllen, "%s0100", URL); - easy_setopt(ntlm_easy[num_handles], CURLOPT_HTTPAUTH, CURLAUTH_BASIC); + easy_setopt(ntlm_curls[num_handles], CURLOPT_HTTPAUTH, CURLAUTH_BASIC); } - easy_setopt(ntlm_easy[num_handles], CURLOPT_FRESH_CONNECT, 1L); - easy_setopt(ntlm_easy[num_handles], CURLOPT_URL, full_url); - easy_setopt(ntlm_easy[num_handles], CURLOPT_VERBOSE, 1L); - easy_setopt(ntlm_easy[num_handles], CURLOPT_HTTPGET, 1L); - easy_setopt(ntlm_easy[num_handles], CURLOPT_USERPWD, + easy_setopt(ntlm_curls[num_handles], CURLOPT_FRESH_CONNECT, 1L); + easy_setopt(ntlm_curls[num_handles], CURLOPT_URL, full_url); + easy_setopt(ntlm_curls[num_handles], CURLOPT_VERBOSE, 1L); + easy_setopt(ntlm_curls[num_handles], CURLOPT_HTTPGET, 1L); + easy_setopt(ntlm_curls[num_handles], CURLOPT_USERPWD, "testuser:testpass"); - easy_setopt(ntlm_easy[num_handles], CURLOPT_WRITEFUNCTION, callback); - easy_setopt(ntlm_easy[num_handles], CURLOPT_WRITEDATA, - (void *)(ntlm_easy + num_handles)); - easy_setopt(ntlm_easy[num_handles], CURLOPT_HEADER, 1L); + easy_setopt(ntlm_curls[num_handles], CURLOPT_WRITEFUNCTION, callback); + easy_setopt(ntlm_curls[num_handles], CURLOPT_WRITEDATA, + (void *)(ntlm_curls + num_handles)); + easy_setopt(ntlm_curls[num_handles], CURLOPT_HEADER, 1L); - multi_add_handle(multi, ntlm_easy[num_handles]); + multi_add_handle(multi, ntlm_curls[num_handles]); num_handles += 1; state = NeedSocketForNewHandle; res = ntlmcb_res; @@ -223,8 +223,8 @@ static CURLcode test_lib2032(const char *URL) /* libntlmconnect */ for(i = 0; i < MAX_EASY_HANDLES; i++) { curl_mprintf("Data connection %d: %d\n", i, ntlm_counter[i]); - curl_multi_remove_handle(multi, ntlm_easy[i]); - curl_easy_cleanup(ntlm_easy[i]); + curl_multi_remove_handle(multi, ntlm_curls[i]); + curl_easy_cleanup(ntlm_curls[i]); } curl_multi_cleanup(multi); diff --git a/tests/libtest/lib2301.c b/tests/libtest/lib2301.c index cc6c00a1d439..40e357a3bafd 100644 --- a/tests/libtest/lib2301.c +++ b/tests/libtest/lib2301.c @@ -42,7 +42,7 @@ static void t2301_websocket(CURL *curl) static size_t t2301_write_cb(char *b, size_t size, size_t nitems, void *p) { - CURL *easy = p; + CURL *curl = p; unsigned char *buffer = (unsigned char *)b; size_t i; size_t sent; @@ -59,7 +59,7 @@ static size_t t2301_write_cb(char *b, size_t size, size_t nitems, void *p) if(buffer[0] == 0x89) { CURLcode result; curl_mfprintf(stderr, "send back a simple PONG\n"); - result = curl_ws_send(easy, pong, 2, &sent, 0, 0); + result = curl_ws_send(curl, pong, 2, &sent, 0, 0); if(result) nitems = 0; } diff --git a/tests/libtest/lib2302.c b/tests/libtest/lib2302.c index d72761a8510b..47276197bb08 100644 --- a/tests/libtest/lib2302.c +++ b/tests/libtest/lib2302.c @@ -26,7 +26,7 @@ #ifndef CURL_DISABLE_WEBSOCKETS struct ws_data { - CURL *easy; + CURL *curl; char *buf; size_t blen; size_t nwrites; @@ -83,7 +83,7 @@ static size_t t2302_write_cb(char *buffer, size_t size, size_t nitems, void *p) const struct curl_ws_frame *meta; (void)size; - meta = curl_ws_meta(ws_data->easy); + meta = curl_ws_meta(ws_data->curl); incoming = add_data(ws_data, buffer, incoming, meta); if(nitems != incoming) @@ -106,7 +106,7 @@ static CURLcode test_lib2302(const char *URL) if(ws_data.buf) { curl = curl_easy_init(); if(curl) { - ws_data.easy = curl; + ws_data.curl = curl; curl_easy_setopt(curl, CURLOPT_URL, URL); /* use the callback style */ diff --git a/tests/libtest/lib2306.c b/tests/libtest/lib2306.c index d2832e1cb21b..6b60ea637609 100644 --- a/tests/libtest/lib2306.c +++ b/tests/libtest/lib2306.c @@ -26,24 +26,24 @@ static CURLcode test_lib2306(const char *URL) { /* first a fine GET response, then a bad one */ - CURL *cl; + CURL *curl; CURLcode res = CURLE_OK; global_init(CURL_GLOBAL_ALL); - easy_init(cl); - easy_setopt(cl, CURLOPT_URL, URL); - easy_setopt(cl, CURLOPT_VERBOSE, 1L); - res = curl_easy_perform(cl); + easy_init(curl); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); + res = curl_easy_perform(curl); if(res) goto test_cleanup; /* reuse handle, do a second transfer */ - easy_setopt(cl, CURLOPT_URL, libtest_arg2); - res = curl_easy_perform(cl); + easy_setopt(curl, CURLOPT_URL, libtest_arg2); + res = curl_easy_perform(curl); test_cleanup: - curl_easy_cleanup(cl); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; } diff --git a/tests/libtest/lib2402.c b/tests/libtest/lib2402.c index ef3dc226a09b..1695208716b1 100644 --- a/tests/libtest/lib2402.c +++ b/tests/libtest/lib2402.c @@ -30,7 +30,7 @@ static CURLcode test_lib2402(const char *URL) CURLcode res = CURLE_OK; CURL *curl[NUM_HANDLES] = {0}; int running; - CURLM *m = NULL; + CURLM *multi = NULL; size_t i; char target_url[256]; char dnsentry[256]; @@ -53,9 +53,9 @@ static CURLcode test_lib2402(const char *URL) global_init(CURL_GLOBAL_ALL); - multi_init(m); + multi_init(multi); - multi_setopt(m, CURLMOPT_MAXCONNECTS, 1L); + multi_setopt(multi, CURLMOPT_MAXCONNECTS, 1L); /* get each easy handle */ for(i = 0; i < CURL_ARRAYSIZE(curl); i++) { @@ -86,7 +86,7 @@ static CURLcode test_lib2402(const char *URL) for(i = 0; i < CURL_ARRAYSIZE(curl); i++) { /* add handle to multi */ - multi_add_handle(m, curl[i]); + multi_add_handle(multi, curl[i]); for(;;) { struct timeval interval; @@ -96,7 +96,7 @@ static CURLcode test_lib2402(const char *URL) interval.tv_sec = 1; interval.tv_usec = 0; - multi_perform(m, &running); + multi_perform(multi, &running); abort_on_test_timeout(); @@ -107,7 +107,7 @@ static CURLcode test_lib2402(const char *URL) FD_ZERO(&wr); FD_ZERO(&exc); - multi_fdset(m, &rd, &wr, &exc, &maxfd); + multi_fdset(multi, &rd, &wr, &exc, &maxfd); /* At this point, maxfd is guaranteed to be greater or equal than -1. */ @@ -123,13 +123,13 @@ static CURLcode test_lib2402(const char *URL) /* proper cleanup sequence - type PB */ for(i = 0; i < CURL_ARRAYSIZE(curl); i++) { - curl_multi_remove_handle(m, curl[i]); + curl_multi_remove_handle(multi, curl[i]); curl_easy_cleanup(curl[i]); } curl_slist_free_all(slist); - curl_multi_cleanup(m); + curl_multi_cleanup(multi); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib2404.c b/tests/libtest/lib2404.c index 8551957e0b4f..42d81d8d4ae6 100644 --- a/tests/libtest/lib2404.c +++ b/tests/libtest/lib2404.c @@ -30,7 +30,7 @@ static CURLcode test_lib2404(const char *URL) CURLcode res = CURLE_OK; CURL *curl[NUM_HANDLES] = {0}; int running; - CURLM *m = NULL; + CURLM *multi = NULL; size_t i; char target_url[256]; char dnsentry[256]; @@ -53,9 +53,9 @@ static CURLcode test_lib2404(const char *URL) global_init(CURL_GLOBAL_ALL); - multi_init(m); + multi_init(multi); - multi_setopt(m, CURLMOPT_MAXCONNECTS, 1L); + multi_setopt(multi, CURLMOPT_MAXCONNECTS, 1L); /* get each easy handle */ for(i = 0; i < CURL_ARRAYSIZE(curl); i++) { @@ -88,7 +88,7 @@ static CURLcode test_lib2404(const char *URL) for(i = 0; i < CURL_ARRAYSIZE(curl); i++) { /* add handle to multi */ - multi_add_handle(m, curl[i]); + multi_add_handle(multi, curl[i]); for(;;) { struct timeval interval; @@ -98,7 +98,7 @@ static CURLcode test_lib2404(const char *URL) interval.tv_sec = 1; interval.tv_usec = 0; - multi_perform(m, &running); + multi_perform(multi, &running); abort_on_test_timeout(); @@ -109,7 +109,7 @@ static CURLcode test_lib2404(const char *URL) FD_ZERO(&wr); FD_ZERO(&exc); - multi_fdset(m, &rd, &wr, &exc, &maxfd); + multi_fdset(multi, &rd, &wr, &exc, &maxfd); /* At this point, maxfd is guaranteed to be greater or equal than -1. */ @@ -125,13 +125,13 @@ static CURLcode test_lib2404(const char *URL) /* proper cleanup sequence - type PB */ for(i = 0; i < CURL_ARRAYSIZE(curl); i++) { - curl_multi_remove_handle(m, curl[i]); + curl_multi_remove_handle(multi, curl[i]); curl_easy_cleanup(curl[i]); } curl_slist_free_all(slist); - curl_multi_cleanup(m); + curl_multi_cleanup(multi); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib2405.c b/tests/libtest/lib2405.c index 571a0bcaa80d..8d7f9056ff05 100644 --- a/tests/libtest/lib2405.c +++ b/tests/libtest/lib2405.c @@ -74,43 +74,43 @@ static size_t emptyWriteFunc(void *ptr, size_t size, size_t nmemb, return size * nmemb; } -static CURLcode set_easy(const char *URL, CURL *easy, long option) +static CURLcode set_easy(const char *URL, CURL *curl, long option) { CURLcode res = CURLE_OK; /* First set the URL that is about to receive our POST. */ - easy_setopt(easy, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_URL, URL); /* get verbose debug output please */ - easy_setopt(easy, CURLOPT_VERBOSE, 1L); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); switch(option) { case TEST_USE_HTTP1: /* go http1 */ - easy_setopt(easy, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1); + easy_setopt(curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1); break; case TEST_USE_HTTP2: /* go http2 */ - easy_setopt(easy, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0); + easy_setopt(curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0); break; case TEST_USE_HTTP2_MPLEX: /* go http2 with multiplexing */ - easy_setopt(easy, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0); - easy_setopt(easy, CURLOPT_PIPEWAIT, 1L); + easy_setopt(curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0); + easy_setopt(curl, CURLOPT_PIPEWAIT, 1L); break; } /* no peer verify */ - easy_setopt(easy, CURLOPT_SSL_VERIFYPEER, 0L); - easy_setopt(easy, CURLOPT_SSL_VERIFYHOST, 0L); + easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L); + easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L); /* include headers */ - easy_setopt(easy, CURLOPT_HEADER, 1L); + easy_setopt(curl, CURLOPT_HEADER, 1L); /* empty write function */ - easy_setopt(easy, CURLOPT_WRITEFUNCTION, emptyWriteFunc); + easy_setopt(curl, CURLOPT_WRITEFUNCTION, emptyWriteFunc); test_cleanup: return res; @@ -123,8 +123,8 @@ static CURLcode test_run(const char *URL, long option, CURLM *multi = NULL; CURLM *multi1 = NULL; - CURL *easy1 = NULL; - CURL *easy2 = NULL; + CURL *curl1 = NULL; + CURL *curl2 = NULL; unsigned int max_count = 0; @@ -139,13 +139,13 @@ static CURLcode test_run(const char *URL, long option, struct curl_waitfd ufds1[10]; int numfds; - easy_init(easy1); - easy_init(easy2); + easy_init(curl1); + easy_init(curl2); - if(set_easy(URL, easy1, option) != CURLE_OK) + if(set_easy(URL, curl1, option) != CURLE_OK) goto test_cleanup; - if(set_easy(URL, easy2, option) != CURLE_OK) + if(set_easy(URL, curl2, option) != CURLE_OK) goto test_cleanup; multi_init(multi); @@ -154,8 +154,8 @@ static CURLcode test_run(const char *URL, long option, if(option == TEST_USE_HTTP2_MPLEX) multi_setopt(multi, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX); - multi_add_handle(multi, easy1); - multi_add_handle(multi, easy2); + multi_add_handle(multi, curl1); + multi_add_handle(multi, curl2); while(!mc) { /* get the count of file descriptors from the transfers */ @@ -293,12 +293,12 @@ static CURLcode test_run(const char *URL, long option, } } - curl_multi_remove_handle(multi, easy1); - curl_multi_remove_handle(multi, easy2); + curl_multi_remove_handle(multi, curl1); + curl_multi_remove_handle(multi, curl2); test_cleanup: - curl_easy_cleanup(easy1); - curl_easy_cleanup(easy2); + curl_easy_cleanup(curl1); + curl_easy_cleanup(curl2); curl_multi_cleanup(multi); curl_multi_cleanup(multi1); @@ -313,7 +313,7 @@ static CURLcode empty_multi_test(void) { CURLMcode mc = CURLM_OK; CURLM *multi = NULL; - CURL *easy = NULL; + CURL *curl = NULL; struct curl_waitfd ufds[10]; @@ -338,12 +338,12 @@ static CURLcode empty_multi_test(void) } /* calling curl_multi_waitfds() on multi handle with added easy handle. */ - easy_init(easy); + easy_init(curl); - if(set_easy("http://example.com", easy, TEST_USE_HTTP1) != CURLE_OK) + if(set_easy("http://example.com", curl, TEST_USE_HTTP1) != CURLE_OK) goto test_cleanup; - multi_add_handle(multi, easy); + multi_add_handle(multi, curl); mc = curl_multi_waitfds(multi, ufds, 10, &fd_count); @@ -359,10 +359,10 @@ static CURLcode empty_multi_test(void) goto test_cleanup; } - curl_multi_remove_handle(multi, easy); + curl_multi_remove_handle(multi, curl); test_cleanup: - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); curl_multi_cleanup(multi); return res; } diff --git a/tests/libtest/lib2502.c b/tests/libtest/lib2502.c index ba7da99a0706..b9a2cabd798c 100644 --- a/tests/libtest/lib2502.c +++ b/tests/libtest/lib2502.c @@ -31,7 +31,7 @@ static CURLcode test_lib2502(const char *URL) CURLcode res = CURLE_OK; CURL *curl[NUM_HANDLES] = {0}; int running; - CURLM *m = NULL; + CURLM *multi = NULL; size_t i; char target_url[256]; char dnsentry[256]; @@ -54,9 +54,9 @@ static CURLcode test_lib2502(const char *URL) global_init(CURL_GLOBAL_ALL); - multi_init(m); + multi_init(multi); - multi_setopt(m, CURLMOPT_MAXCONNECTS, 1L); + multi_setopt(multi, CURLMOPT_MAXCONNECTS, 1L); /* get each easy handle */ for(i = 0; i < CURL_ARRAYSIZE(curl); i++) { @@ -90,7 +90,7 @@ static CURLcode test_lib2502(const char *URL) for(i = 0; i < CURL_ARRAYSIZE(curl); i++) { /* add handle to multi */ - multi_add_handle(m, curl[i]); + multi_add_handle(multi, curl[i]); for(;;) { struct timeval interval; @@ -100,7 +100,7 @@ static CURLcode test_lib2502(const char *URL) interval.tv_sec = 1; interval.tv_usec = 0; - multi_perform(m, &running); + multi_perform(multi, &running); abort_on_test_timeout(); @@ -111,7 +111,7 @@ static CURLcode test_lib2502(const char *URL) FD_ZERO(&wr); FD_ZERO(&exc); - multi_fdset(m, &rd, &wr, &exc, &maxfd); + multi_fdset(multi, &rd, &wr, &exc, &maxfd); /* At this point, maxfd is guaranteed to be greater or equal than -1. */ @@ -127,13 +127,13 @@ static CURLcode test_lib2502(const char *URL) /* proper cleanup sequence - type PB */ for(i = 0; i < CURL_ARRAYSIZE(curl); i++) { - curl_multi_remove_handle(m, curl[i]); + curl_multi_remove_handle(multi, curl[i]); curl_easy_cleanup(curl[i]); } curl_slist_free_all(slist); - curl_multi_cleanup(m); + curl_multi_cleanup(multi); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib3027.c b/tests/libtest/lib3027.c index 735f4c96e964..5cd2bd757d86 100644 --- a/tests/libtest/lib3027.c +++ b/tests/libtest/lib3027.c @@ -28,26 +28,26 @@ static CURLcode test_lib3027(const char *URL) { CURLcode ret = CURLE_OK; - CURL *hnd; + CURL *curl; start_test_timing(); curl_global_init(CURL_GLOBAL_ALL); - hnd = curl_easy_init(); - if(hnd) { - curl_easy_setopt(hnd, CURLOPT_URL, URL); - curl_easy_setopt(hnd, CURLOPT_FILETIME, 1L); - ret = curl_easy_perform(hnd); + curl = curl_easy_init(); + if(curl) { + curl_easy_setopt(curl, CURLOPT_URL, URL); + curl_easy_setopt(curl, CURLOPT_FILETIME, 1L); + ret = curl_easy_perform(curl); if(CURLE_OK == ret) { long filetime; - ret = curl_easy_getinfo(hnd, CURLINFO_FILETIME, &filetime); + ret = curl_easy_getinfo(curl, CURLINFO_FILETIME, &filetime); /* MTDM fails with 550, so filetime should be -1 */ if((CURLE_OK == ret) && (filetime != -1)) { /* we just need to return something which is not CURLE_OK */ ret = CURLE_UNSUPPORTED_PROTOCOL; } } - curl_easy_cleanup(hnd); + curl_easy_cleanup(curl); } curl_global_cleanup(); return ret; diff --git a/tests/libtest/lib3033.c b/tests/libtest/lib3033.c index 1c0b9856fceb..b00bba9e7466 100644 --- a/tests/libtest/lib3033.c +++ b/tests/libtest/lib3033.c @@ -27,7 +27,7 @@ #include "memdebug.h" -static CURLcode t3033_req_test(CURLM *multi, CURL *easy, +static CURLcode t3033_req_test(CURLM *multi, CURL *curl, const char *URL, int index) { CURLMsg *msg = NULL; @@ -43,13 +43,13 @@ static CURLcode t3033_req_test(CURLM *multi, CURL *easy, curl_mprintf("[%d] no network change\n", index); } - curl_easy_reset(easy); - curl_easy_setopt(easy, CURLOPT_URL, URL); - easy_setopt(easy, CURLOPT_DEBUGDATA, &debug_config); - easy_setopt(easy, CURLOPT_DEBUGFUNCTION, libtest_debug_cb); - easy_setopt(easy, CURLOPT_VERBOSE, 1L); + curl_easy_reset(curl); + curl_easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_DEBUGDATA, &debug_config); + easy_setopt(curl, CURLOPT_DEBUGFUNCTION, libtest_debug_cb); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); - curl_multi_add_handle(multi, easy); + curl_multi_add_handle(multi, curl); do { CURLMcode mres; @@ -76,7 +76,7 @@ static CURLcode t3033_req_test(CURLM *multi, CURL *easy, goto test_cleanup; } - curl_easy_getinfo(easy, CURLINFO_NUM_CONNECTS, &num_connects); + curl_easy_getinfo(curl, CURLINFO_NUM_CONNECTS, &num_connects); if(index == 1 && num_connects == 0) { curl_mprintf("[1] should not reuse connection in pool\n"); res = TEST_ERR_MAJOR_BAD; @@ -92,7 +92,7 @@ static CURLcode t3033_req_test(CURLM *multi, CURL *easy, test_cleanup: - curl_multi_remove_handle(multi, easy); + curl_multi_remove_handle(multi, curl); return res; } diff --git a/tests/libtest/lib3105.c b/tests/libtest/lib3105.c index 29dfdae00c37..808fd98ca4de 100644 --- a/tests/libtest/lib3105.c +++ b/tests/libtest/lib3105.c @@ -27,7 +27,7 @@ static CURLcode test_lib3105(const char *URL) { - CURL *curls = NULL; + CURL *curl = NULL; CURLM *multi = NULL; CURLcode i = CURLE_OK; CURLcode res = CURLE_OK; @@ -37,14 +37,14 @@ static CURLcode test_lib3105(const char *URL) multi_init(multi); - easy_init(curls); + easy_init(curl); - easy_setopt(curls, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_URL, URL); - multi_add_handle(multi, curls); + multi_add_handle(multi, curl); - mc = curl_multi_remove_handle(multi, curls); - mc += curl_multi_remove_handle(multi, curls); + mc = curl_multi_remove_handle(multi, curl); + mc += curl_multi_remove_handle(multi, curl); if(mc) { curl_mfprintf(stderr, "%d was unexpected\n", mc); @@ -53,7 +53,7 @@ static CURLcode test_lib3105(const char *URL) test_cleanup: curl_multi_cleanup(multi); - curl_easy_cleanup(curls); + curl_easy_cleanup(curl); curl_global_cleanup(); if(res) diff --git a/tests/libtest/lib3207.c b/tests/libtest/lib3207.c index e3b50ff40ff2..316258c86e93 100644 --- a/tests/libtest/lib3207.c +++ b/tests/libtest/lib3207.c @@ -115,19 +115,19 @@ static unsigned int test_thread(void *ptr) #if defined(USE_THREADS_POSIX) || defined(USE_THREADS_WIN32) -static void t3207_test_lock(CURL *handle, curl_lock_data data, +static void t3207_test_lock(CURL *curl, curl_lock_data data, curl_lock_access laccess, void *useptr) { curl_mutex_t *mutexes = (curl_mutex_t*) useptr; - (void)handle; + (void)curl; (void)laccess; Curl_mutex_acquire(&mutexes[data]); } -static void t3207_test_unlock(CURL *handle, curl_lock_data data, void *useptr) +static void t3207_test_unlock(CURL *curl, curl_lock_data data, void *useptr) { curl_mutex_t *mutexes = (curl_mutex_t*) useptr; - (void)handle; + (void)curl; Curl_mutex_release(&mutexes[data]); } diff --git a/tests/libtest/lib502.c b/tests/libtest/lib502.c index 9a51267aae03..c33783ea687a 100644 --- a/tests/libtest/lib502.c +++ b/tests/libtest/lib502.c @@ -31,8 +31,8 @@ static CURLcode test_lib502(const char *URL) { - CURL *c = NULL; - CURLM *m = NULL; + CURL *curl = NULL; + CURLM *multi = NULL; CURLcode res = CURLE_OK; int running; @@ -40,13 +40,13 @@ static CURLcode test_lib502(const char *URL) global_init(CURL_GLOBAL_ALL); - easy_init(c); + easy_init(curl); - easy_setopt(c, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_URL, URL); - multi_init(m); + multi_init(multi); - multi_add_handle(m, c); + multi_add_handle(multi, curl); for(;;) { struct timeval timeout; @@ -56,7 +56,7 @@ static CURLcode test_lib502(const char *URL) timeout.tv_sec = 0; timeout.tv_usec = 100000L; /* 100 ms */ - multi_perform(m, &running); + multi_perform(multi, &running); abort_on_test_timeout(); @@ -67,7 +67,7 @@ static CURLcode test_lib502(const char *URL) FD_ZERO(&fdwrite); FD_ZERO(&fdexcep); - multi_fdset(m, &fdread, &fdwrite, &fdexcep, &maxfd); + multi_fdset(multi, &fdread, &fdwrite, &fdexcep, &maxfd); /* At this point, maxfd is guaranteed to be greater or equal than -1. */ @@ -80,9 +80,9 @@ static CURLcode test_lib502(const char *URL) /* proper cleanup sequence - type PA */ - curl_multi_remove_handle(m, c); - curl_multi_cleanup(m); - curl_easy_cleanup(c); + curl_multi_remove_handle(multi, curl); + curl_multi_cleanup(multi); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib503.c b/tests/libtest/lib503.c index f7529d47b79f..34a6105bf7ae 100644 --- a/tests/libtest/lib503.c +++ b/tests/libtest/lib503.c @@ -35,8 +35,8 @@ static CURLcode test_lib503(const char *URL) { - CURL *c = NULL; - CURLM *m = NULL; + CURL *curl = NULL; + CURLM *multi = NULL; CURLcode res = CURLE_OK; int running; @@ -44,20 +44,20 @@ static CURLcode test_lib503(const char *URL) global_init(CURL_GLOBAL_ALL); - easy_init(c); + easy_init(curl); - easy_setopt(c, CURLOPT_PROXY, libtest_arg2); /* set in first.c */ - easy_setopt(c, CURLOPT_URL, URL); - easy_setopt(c, CURLOPT_USERPWD, "test:ing"); - easy_setopt(c, CURLOPT_PROXYUSERNAME, "test%20"); - easy_setopt(c, CURLOPT_PROXYPASSWORD, "ing%41"); - easy_setopt(c, CURLOPT_HTTPPROXYTUNNEL, 1L); - easy_setopt(c, CURLOPT_HEADER, 1L); - easy_setopt(c, CURLOPT_VERBOSE, 1L); + easy_setopt(curl, CURLOPT_PROXY, libtest_arg2); /* set in first.c */ + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_USERPWD, "test:ing"); + easy_setopt(curl, CURLOPT_PROXYUSERNAME, "test%20"); + easy_setopt(curl, CURLOPT_PROXYPASSWORD, "ing%41"); + easy_setopt(curl, CURLOPT_HTTPPROXYTUNNEL, 1L); + easy_setopt(curl, CURLOPT_HEADER, 1L); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); - multi_init(m); + multi_init(multi); - multi_add_handle(m, c); + multi_add_handle(multi, curl); for(;;) { struct timeval interval; @@ -67,7 +67,7 @@ static CURLcode test_lib503(const char *URL) interval.tv_sec = 1; interval.tv_usec = 0; - multi_perform(m, &running); + multi_perform(multi, &running); abort_on_test_timeout(); @@ -78,7 +78,7 @@ static CURLcode test_lib503(const char *URL) FD_ZERO(&wr); FD_ZERO(&exc); - multi_fdset(m, &rd, &wr, &exc, &maxfd); + multi_fdset(multi, &rd, &wr, &exc, &maxfd); /* At this point, maxfd is guaranteed to be greater or equal than -1. */ @@ -91,9 +91,9 @@ static CURLcode test_lib503(const char *URL) /* proper cleanup sequence - type PA */ - curl_multi_remove_handle(m, c); - curl_multi_cleanup(m); - curl_easy_cleanup(c); + curl_multi_remove_handle(multi, curl); + curl_multi_cleanup(multi); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib504.c b/tests/libtest/lib504.c index 07b46345bbf8..fa9338f262ec 100644 --- a/tests/libtest/lib504.c +++ b/tests/libtest/lib504.c @@ -34,9 +34,9 @@ */ static CURLcode test_lib504(const char *URL) { - CURL *c = NULL; + CURL *curl = NULL; CURLcode res = CURLE_OK; - CURLM *m = NULL; + CURLM *multi = NULL; fd_set rd, wr, exc; int running; @@ -44,18 +44,18 @@ static CURLcode test_lib504(const char *URL) global_init(CURL_GLOBAL_ALL); - easy_init(c); + easy_init(curl); /* The point here is that there must not be anything running on the given proxy port */ if(libtest_arg2) - easy_setopt(c, CURLOPT_PROXY, libtest_arg2); - easy_setopt(c, CURLOPT_URL, URL); - easy_setopt(c, CURLOPT_VERBOSE, 1L); + easy_setopt(curl, CURLOPT_PROXY, libtest_arg2); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); - multi_init(m); + multi_init(multi); - multi_add_handle(m, c); + multi_add_handle(multi, curl); for(;;) { struct timeval interval; @@ -66,12 +66,12 @@ static CURLcode test_lib504(const char *URL) curl_mfprintf(stderr, "curl_multi_perform()\n"); - multi_perform(m, &running); + multi_perform(multi, &running); while(running) { CURLMcode mres; int num; - mres = curl_multi_wait(m, NULL, 0, TEST_HANG_TIMEOUT, &num); + mres = curl_multi_wait(multi, NULL, 0, TEST_HANG_TIMEOUT, &num); if(mres != CURLM_OK) { curl_mprintf("curl_multi_wait() returned %d\n", mres); res = TEST_ERR_MAJOR_BAD; @@ -79,7 +79,7 @@ static CURLcode test_lib504(const char *URL) } abort_on_test_timeout(); - multi_perform(m, &running); + multi_perform(multi, &running); abort_on_test_timeout(); } @@ -88,7 +88,7 @@ static CURLcode test_lib504(const char *URL) if(!running) { /* This is where this code is expected to reach */ int numleft; - CURLMsg *msg = curl_multi_info_read(m, &numleft); + CURLMsg *msg = curl_multi_info_read(multi, &numleft); curl_mfprintf(stderr, "Expected: not running\n"); if(msg && !numleft) res = TEST_ERR_SUCCESS; /* this is where we should be */ @@ -104,7 +104,7 @@ static CURLcode test_lib504(const char *URL) curl_mfprintf(stderr, "curl_multi_fdset()\n"); - multi_fdset(m, &rd, &wr, &exc, &maxfd); + multi_fdset(multi, &rd, &wr, &exc, &maxfd); /* At this point, maxfd is guaranteed to be greater or equal than -1. */ @@ -117,9 +117,9 @@ static CURLcode test_lib504(const char *URL) /* proper cleanup sequence - type PA */ - curl_multi_remove_handle(m, c); - curl_multi_cleanup(m); - curl_easy_cleanup(c); + curl_multi_remove_handle(multi, curl); + curl_multi_cleanup(multi); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib506.c b/tests/libtest/lib506.c index 4b6eb05f814f..7971fbeb17d6 100644 --- a/tests/libtest/lib506.c +++ b/tests/libtest/lib506.c @@ -42,14 +42,14 @@ struct t506_userdata { static int locks[3]; /* lock callback */ -static void t506_test_lock(CURL *handle, curl_lock_data data, +static void t506_test_lock(CURL *curl, curl_lock_data data, curl_lock_access laccess, void *useptr) { const char *what; struct t506_userdata *user = (struct t506_userdata *)useptr; int locknum; - (void)handle; + (void)curl; (void)laccess; switch(data) { @@ -82,12 +82,12 @@ static void t506_test_lock(CURL *handle, curl_lock_data data, } /* unlock callback */ -static void t506_test_unlock(CURL *handle, curl_lock_data data, void *useptr) +static void t506_test_unlock(CURL *curl, curl_lock_data data, void *useptr) { const char *what; struct t506_userdata *user = (struct t506_userdata *)useptr; int locknum; - (void)handle; + (void)curl; switch(data) { case CURL_LOCK_DATA_SHARE: what = "share"; diff --git a/tests/libtest/lib507.c b/tests/libtest/lib507.c index de23b02f0a3b..9a306d39a656 100644 --- a/tests/libtest/lib507.c +++ b/tests/libtest/lib507.c @@ -27,7 +27,7 @@ static CURLcode test_lib507(const char *URL) { - CURL *curls = NULL; + CURL *curl = NULL; CURLM *multi = NULL; int still_running; CURLcode i = TEST_ERR_MAJOR_BAD; @@ -40,12 +40,12 @@ static CURLcode test_lib507(const char *URL) multi_init(multi); - easy_init(curls); + easy_init(curl); - easy_setopt(curls, CURLOPT_URL, URL); - easy_setopt(curls, CURLOPT_HEADER, 1L); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_HEADER, 1L); - multi_add_handle(multi, curls); + multi_add_handle(multi, curl); multi_perform(multi, &still_running); @@ -88,7 +88,7 @@ static CURLcode test_lib507(const char *URL) /* undocumented cleanup sequence - type UA */ curl_multi_cleanup(multi); - curl_easy_cleanup(curls); + curl_easy_cleanup(curl); curl_global_cleanup(); if(res) diff --git a/tests/libtest/lib525.c b/tests/libtest/lib525.c index 55224eb76e05..4c33973ec9f7 100644 --- a/tests/libtest/lib525.c +++ b/tests/libtest/lib525.c @@ -33,7 +33,7 @@ static CURLcode test_lib525(const char *URL) FILE *hd_src = NULL; int hd; struct_stat file_info; - CURLM *m = NULL; + CURLM *multi = NULL; int running; start_test_timing(); @@ -101,9 +101,9 @@ static CURLcode test_lib525(const char *URL) make sure that to pass in a type 'long' argument. */ easy_setopt(curl, CURLOPT_INFILESIZE_LARGE, (curl_off_t)file_info.st_size); - multi_init(m); + multi_init(multi); - multi_add_handle(m, curl); + multi_add_handle(multi, curl); for(;;) { struct timeval interval; @@ -113,7 +113,7 @@ static CURLcode test_lib525(const char *URL) interval.tv_sec = 1; interval.tv_usec = 0; - multi_perform(m, &running); + multi_perform(multi, &running); abort_on_test_timeout(); @@ -124,7 +124,7 @@ static CURLcode test_lib525(const char *URL) FD_ZERO(&wr); FD_ZERO(&exc); - multi_fdset(m, &rd, &wr, &exc, &maxfd); + multi_fdset(multi, &rd, &wr, &exc, &maxfd); /* At this point, maxfd is guaranteed to be greater or equal than -1. */ @@ -137,16 +137,16 @@ static CURLcode test_lib525(const char *URL) if(testnum == 529) { /* proper cleanup sequence - type PA */ - curl_multi_remove_handle(m, curl); - curl_multi_cleanup(m); + curl_multi_remove_handle(multi, curl); + curl_multi_cleanup(multi); curl_easy_cleanup(curl); curl_global_cleanup(); } else { /* testnum == 525 */ /* proper cleanup sequence - type PB */ - curl_multi_remove_handle(m, curl); + curl_multi_remove_handle(multi, curl); curl_easy_cleanup(curl); - curl_multi_cleanup(m); + curl_multi_cleanup(multi); curl_global_cleanup(); } diff --git a/tests/libtest/lib526.c b/tests/libtest/lib526.c index 963181713b27..6f586c5a3e54 100644 --- a/tests/libtest/lib526.c +++ b/tests/libtest/lib526.c @@ -49,7 +49,7 @@ static CURLcode test_lib526(const char *URL) CURLcode res = CURLE_OK; CURL *curl[NUM_HANDLES]; int running; - CURLM *m = NULL; + CURLM *multi = NULL; size_t current = 0; size_t i; @@ -69,9 +69,9 @@ static CURLcode test_lib526(const char *URL) easy_setopt(curl[i], CURLOPT_VERBOSE, 1L); } - multi_init(m); + multi_init(multi); - multi_add_handle(m, curl[current]); + multi_add_handle(multi, curl[current]); curl_mfprintf(stderr, "Start at URL 0\n"); @@ -83,7 +83,7 @@ static CURLcode test_lib526(const char *URL) interval.tv_sec = 1; interval.tv_usec = 0; - multi_perform(m, &running); + multi_perform(multi, &running); abort_on_test_timeout(); @@ -99,7 +99,7 @@ static CURLcode test_lib526(const char *URL) curl_mfprintf(stderr, "Advancing to URL %zu\n", current); if(testnum == 532) { /* first remove the only handle we use */ - curl_multi_remove_handle(m, curl[0]); + curl_multi_remove_handle(multi, curl[0]); /* make us reuse the same handle all the time, and try resetting the handle first too */ @@ -109,10 +109,10 @@ static CURLcode test_lib526(const char *URL) easy_setopt(curl[0], CURLOPT_VERBOSE, 1L); /* re-add it */ - multi_add_handle(m, curl[0]); + multi_add_handle(multi, curl[0]); } else { - multi_add_handle(m, curl[current]); + multi_add_handle(multi, curl[current]); } } else { @@ -124,7 +124,7 @@ static CURLcode test_lib526(const char *URL) FD_ZERO(&wr); FD_ZERO(&exc); - multi_fdset(m, &rd, &wr, &exc, &maxfd); + multi_fdset(multi, &rd, &wr, &exc, &maxfd); /* At this point, maxfd is guaranteed to be greater or equal than -1. */ @@ -139,10 +139,10 @@ static CURLcode test_lib526(const char *URL) /* proper cleanup sequence - type PB */ for(i = 0; i < CURL_ARRAYSIZE(curl); i++) { - curl_multi_remove_handle(m, curl[i]); + curl_multi_remove_handle(multi, curl[i]); curl_easy_cleanup(curl[i]); } - curl_multi_cleanup(m); + curl_multi_cleanup(multi); curl_global_cleanup(); } else if(testnum == 527) { @@ -155,7 +155,7 @@ static CURLcode test_lib526(const char *URL) for(i = 0; i < CURL_ARRAYSIZE(curl); i++) curl_easy_cleanup(curl[i]); - curl_multi_cleanup(m); + curl_multi_cleanup(multi); curl_global_cleanup(); } @@ -164,7 +164,7 @@ static CURLcode test_lib526(const char *URL) for(i = 0; i < CURL_ARRAYSIZE(curl); i++) curl_easy_cleanup(curl[i]); - curl_multi_cleanup(m); + curl_multi_cleanup(multi); curl_global_cleanup(); } diff --git a/tests/libtest/lib530.c b/tests/libtest/lib530.c index 7d8cc3cbcb2d..5558487122c1 100644 --- a/tests/libtest/lib530.c +++ b/tests/libtest/lib530.c @@ -131,12 +131,12 @@ static int t530_addFd(struct t530_Sockets *sockets, curl_socket_t fd, /** * Callback invoked by curl to poll reading / writing of a socket. */ -static int t530_curlSocketCallback(CURL *easy, curl_socket_t s, int action, +static int t530_curlSocketCallback(CURL *curl, curl_socket_t s, int action, void *userp, void *socketp) { struct t530_ReadWriteSockets *sockets = userp; - (void)easy; + (void)curl; (void)socketp; t530_ctx.socket_calls++; @@ -189,13 +189,13 @@ static int t530_curlTimerCallback(CURLM *multi, long timeout_ms, void *userp) /** * Check for curl completion. */ -static int t530_checkForCompletion(CURLM *curl, int *success) +static int t530_checkForCompletion(CURLM *multi, int *success) { int result = 0; *success = 0; while(1) { int numMessages; - CURLMsg *message = curl_multi_info_read(curl, &numMessages); + CURLMsg *message = curl_multi_info_read(multi, &numMessages); if(!message) break; if(message->msg == CURLMSG_DONE) { @@ -250,11 +250,12 @@ static void t530_updateFdSet(struct t530_Sockets *sockets, fd_set* fdset, } } -static CURLMcode socket_action(CURLM *curl, curl_socket_t s, int evBitmask, +static CURLMcode socket_action(CURLM *multi, curl_socket_t s, int evBitmask, const char *info) { int numhandles = 0; - CURLMcode result = curl_multi_socket_action(curl, s, evBitmask, &numhandles); + CURLMcode result = curl_multi_socket_action(multi, s, evBitmask, + &numhandles); if(result != CURLM_OK) { curl_mfprintf(stderr, "%s Curl error on %s (%i) %s\n", t530_tag(), info, result, curl_multi_strerror(result)); @@ -265,7 +266,7 @@ static CURLMcode socket_action(CURLM *curl, curl_socket_t s, int evBitmask, /** * Invoke curl when a file descriptor is set. */ -static CURLMcode t530_checkFdSet(CURLM *curl, struct t530_Sockets *sockets, +static CURLMcode t530_checkFdSet(CURLM *multi, struct t530_Sockets *sockets, fd_set *fdset, int evBitmask, const char *name) { @@ -273,7 +274,7 @@ static CURLMcode t530_checkFdSet(CURLM *curl, struct t530_Sockets *sockets, CURLMcode result = CURLM_OK; for(i = 0; i < sockets->count; ++i) { if(FD_ISSET(sockets->sockets[i], fdset)) { - result = socket_action(curl, sockets->sockets[i], evBitmask, name); + result = socket_action(multi, sockets->sockets[i], evBitmask, name); if(result) break; } @@ -284,7 +285,8 @@ static CURLMcode t530_checkFdSet(CURLM *curl, struct t530_Sockets *sockets, static CURLcode testone(const char *URL, int timer_fail_at, int socket_fail_at) { CURLcode res = CURLE_OK; - CURL *curl = NULL; CURLM *m = NULL; + CURL *curl = NULL; + CURLM *multi = NULL; struct t530_ReadWriteSockets sockets = {{NULL, 0, 0}, {NULL, 0, 0}}; int success = 0; struct curltime timeout = {0}; @@ -310,22 +312,22 @@ static CURLcode testone(const char *URL, int timer_fail_at, int socket_fail_at) /* go verbose */ easy_setopt(curl, CURLOPT_VERBOSE, 1L); - multi_init(m); + multi_init(multi); - multi_setopt(m, CURLMOPT_SOCKETFUNCTION, t530_curlSocketCallback); - multi_setopt(m, CURLMOPT_SOCKETDATA, &sockets); + multi_setopt(multi, CURLMOPT_SOCKETFUNCTION, t530_curlSocketCallback); + multi_setopt(multi, CURLMOPT_SOCKETDATA, &sockets); - multi_setopt(m, CURLMOPT_TIMERFUNCTION, t530_curlTimerCallback); - multi_setopt(m, CURLMOPT_TIMERDATA, &timeout); + multi_setopt(multi, CURLMOPT_TIMERFUNCTION, t530_curlTimerCallback); + multi_setopt(multi, CURLMOPT_TIMERDATA, &timeout); - multi_add_handle(m, curl); + multi_add_handle(multi, curl); - if(socket_action(m, CURL_SOCKET_TIMEOUT, 0, "timeout")) { + if(socket_action(multi, CURL_SOCKET_TIMEOUT, 0, "timeout")) { res = TEST_ERR_MAJOR_BAD; goto test_cleanup; } - while(!t530_checkForCompletion(m, &success)) { + while(!t530_checkForCompletion(multi, &success)) { fd_set readSet, writeSet; curl_socket_t maxFd = 0; struct timeval tv = {0}; @@ -350,12 +352,12 @@ static CURLcode testone(const char *URL, int timer_fail_at, int socket_fail_at) select_test((int)maxFd, &readSet, &writeSet, NULL, &tv); /* Check the sockets for reading / writing */ - if(t530_checkFdSet(m, &sockets.read, &readSet, CURL_CSELECT_IN, + if(t530_checkFdSet(multi, &sockets.read, &readSet, CURL_CSELECT_IN, "read")) { res = TEST_ERR_MAJOR_BAD; goto test_cleanup; } - if(t530_checkFdSet(m, &sockets.write, &writeSet, CURL_CSELECT_OUT, + if(t530_checkFdSet(multi, &sockets.write, &writeSet, CURL_CSELECT_OUT, "write")) { res = TEST_ERR_MAJOR_BAD; goto test_cleanup; @@ -364,7 +366,7 @@ static CURLcode testone(const char *URL, int timer_fail_at, int socket_fail_at) if(timeout.tv_sec != (time_t)-1 && t530_getMicroSecondTimeout(&timeout) == 0) { /* Curl's timer has elapsed. */ - if(socket_action(m, CURL_SOCKET_TIMEOUT, 0, "timeout")) { + if(socket_action(multi, CURL_SOCKET_TIMEOUT, 0, "timeout")) { res = TEST_ERR_BAD_TIMEOUT; goto test_cleanup; } @@ -382,9 +384,9 @@ static CURLcode testone(const char *URL, int timer_fail_at, int socket_fail_at) /* proper cleanup sequence */ t530_msg("cleanup"); - curl_multi_remove_handle(m, curl); + curl_multi_remove_handle(multi, curl); curl_easy_cleanup(curl); - curl_multi_cleanup(m); + curl_multi_cleanup(multi); curl_global_cleanup(); /* free local memory */ diff --git a/tests/libtest/lib533.c b/tests/libtest/lib533.c index adba324f669f..8f3b0f1474c0 100644 --- a/tests/libtest/lib533.c +++ b/tests/libtest/lib533.c @@ -32,7 +32,7 @@ static CURLcode test_lib533(const char *URL) CURLcode res = CURLE_OK; CURL *curl = NULL; int running; - CURLM *m = NULL; + CURLM *multi = NULL; int current = 0; start_test_timing(); @@ -45,9 +45,9 @@ static CURLcode test_lib533(const char *URL) easy_setopt(curl, CURLOPT_VERBOSE, 1L); easy_setopt(curl, CURLOPT_FAILONERROR, 1L); - multi_init(m); + multi_init(multi); - multi_add_handle(m, curl); + multi_add_handle(multi, curl); curl_mfprintf(stderr, "Start at URL 0\n"); @@ -59,7 +59,7 @@ static CURLcode test_lib533(const char *URL) interval.tv_sec = 1; interval.tv_usec = 0; - multi_perform(m, &running); + multi_perform(multi, &running); abort_on_test_timeout(); @@ -67,7 +67,7 @@ static CURLcode test_lib533(const char *URL) if(!current++) { curl_mfprintf(stderr, "Advancing to URL 1\n"); /* remove the handle we use */ - curl_multi_remove_handle(m, curl); + curl_multi_remove_handle(multi, curl); /* make us reuse the same handle all the time, and try resetting the handle first too */ @@ -77,7 +77,7 @@ static CURLcode test_lib533(const char *URL) easy_setopt(curl, CURLOPT_FAILONERROR, 1L); /* re-add it */ - multi_add_handle(m, curl); + multi_add_handle(multi, curl); } else break; /* done */ @@ -87,7 +87,7 @@ static CURLcode test_lib533(const char *URL) FD_ZERO(&wr); FD_ZERO(&exc); - multi_fdset(m, &rd, &wr, &exc, &maxfd); + multi_fdset(multi, &rd, &wr, &exc, &maxfd); /* At this point, maxfd is guaranteed to be greater or equal than -1. */ @@ -101,7 +101,7 @@ static CURLcode test_lib533(const char *URL) /* undocumented cleanup sequence - type UB */ curl_easy_cleanup(curl); - curl_multi_cleanup(m); + curl_multi_cleanup(multi); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib540.c b/tests/libtest/lib540.c index f544dec48d3f..9eb7e407c0f5 100644 --- a/tests/libtest/lib540.c +++ b/tests/libtest/lib540.c @@ -34,48 +34,49 @@ #include "memdebug.h" -static CURL *testeh[2]; +static CURL *t540_curl[2]; -static CURLcode init(int num, CURLM *cm, const char *url, const char *userpwd, - struct curl_slist *headers) +static CURLcode init(int num, CURLM *multi, const char *url, + const char *userpwd, struct curl_slist *headers) { CURLcode res = CURLE_OK; const char *proxy = libtest_arg2; - res_easy_init(testeh[num]); + res_easy_init(t540_curl[num]); if(res) goto init_failed; - res_easy_setopt(testeh[num], CURLOPT_URL, url); + res_easy_setopt(t540_curl[num], CURLOPT_URL, url); if(res) goto init_failed; - res_easy_setopt(testeh[num], CURLOPT_PROXY, proxy); + res_easy_setopt(t540_curl[num], CURLOPT_PROXY, proxy); if(res) goto init_failed; - res_easy_setopt(testeh[num], CURLOPT_PROXYUSERPWD, userpwd); + res_easy_setopt(t540_curl[num], CURLOPT_PROXYUSERPWD, userpwd); if(res) goto init_failed; - res_easy_setopt(testeh[num], CURLOPT_PROXYAUTH, CURLAUTH_ANY); + res_easy_setopt(t540_curl[num], CURLOPT_PROXYAUTH, CURLAUTH_ANY); if(res) goto init_failed; - res_easy_setopt(testeh[num], CURLOPT_VERBOSE, 1L); + res_easy_setopt(t540_curl[num], CURLOPT_VERBOSE, 1L); if(res) goto init_failed; - res_easy_setopt(testeh[num], CURLOPT_HEADER, 1L); + res_easy_setopt(t540_curl[num], CURLOPT_HEADER, 1L); if(res) goto init_failed; - res_easy_setopt(testeh[num], CURLOPT_HTTPHEADER, headers); /* custom Host: */ + /* custom Host: */ + res_easy_setopt(t540_curl[num], CURLOPT_HTTPHEADER, headers); if(res) goto init_failed; - res_multi_add_handle(cm, testeh[num]); + res_multi_add_handle(multi, t540_curl[num]); if(res) goto init_failed; @@ -83,14 +84,14 @@ static CURLcode init(int num, CURLM *cm, const char *url, const char *userpwd, init_failed: - curl_easy_cleanup(testeh[num]); - testeh[num] = NULL; + curl_easy_cleanup(t540_curl[num]); + t540_curl[num] = NULL; return res; /* failure */ } -static CURLcode loop(int num, CURLM *cm, const char *url, const char *userpwd, - struct curl_slist *headers) +static CURLcode loop(int num, CURLM *multi, const char *url, + const char *userpwd, struct curl_slist *headers) { CURLMsg *msg; long L; @@ -99,7 +100,7 @@ static CURLcode loop(int num, CURLM *cm, const char *url, const char *userpwd, struct timeval T; CURLcode res = CURLE_OK; - res = init(num, cm, url, userpwd, headers); + res = init(num, multi, url, userpwd, headers); if(res) return res; @@ -107,7 +108,7 @@ static CURLcode loop(int num, CURLM *cm, const char *url, const char *userpwd, int M = -99; - res_multi_perform(cm, &U); + res_multi_perform(multi, &U); if(res) return res; @@ -120,13 +121,13 @@ static CURLcode loop(int num, CURLM *cm, const char *url, const char *userpwd, FD_ZERO(&W); FD_ZERO(&E); - res_multi_fdset(cm, &R, &W, &E, &M); + res_multi_fdset(multi, &R, &W, &E, &M); if(res) return res; /* At this point, M is guaranteed to be greater or equal than -1. */ - res_multi_timeout(cm, &L); + res_multi_timeout(multi, &L); if(res) return res; @@ -153,19 +154,19 @@ static CURLcode loop(int num, CURLM *cm, const char *url, const char *userpwd, } while(1) { - msg = curl_multi_info_read(cm, &Q); + msg = curl_multi_info_read(multi, &Q); if(!msg) break; if(msg->msg == CURLMSG_DONE) { size_t i; - CURL *e = msg->easy_handle; + CURL *curl = msg->easy_handle; curl_mfprintf(stderr, "R: %d - %s\n", msg->data.result, curl_easy_strerror(msg->data.result)); - curl_multi_remove_handle(cm, e); - curl_easy_cleanup(e); - for(i = 0; i < CURL_ARRAYSIZE(testeh); i++) { - if(testeh[i] == e) { - testeh[i] = NULL; + curl_multi_remove_handle(multi, curl); + curl_easy_cleanup(curl); + for(i = 0; i < CURL_ARRAYSIZE(t540_curl); i++) { + if(t540_curl[i] == curl) { + t540_curl[i] = NULL; break; } } @@ -184,7 +185,7 @@ static CURLcode loop(int num, CURLM *cm, const char *url, const char *userpwd, static CURLcode test_lib540(const char *URL) { - CURLM *cm = NULL; + CURLM *multi = NULL; struct curl_slist *headers = NULL; char buffer[246]; /* naively fixed-size */ CURLcode res = CURLE_OK; @@ -193,8 +194,8 @@ static CURLcode test_lib540(const char *URL) const char *proxyuserpws = libtest_arg3; const char *host; - for(i = 0; i < CURL_ARRAYSIZE(testeh); i++) - testeh[i] = NULL; + for(i = 0; i < CURL_ARRAYSIZE(t540_curl); i++) + t540_curl[i] = NULL; start_test_timing(); @@ -217,31 +218,31 @@ static CURLcode test_lib540(const char *URL) return res; } - res_multi_init(cm); + res_multi_init(multi); if(res) { curl_global_cleanup(); curl_slist_free_all(headers); return res; } - res = loop(0, cm, URL, proxyuserpws, headers); + res = loop(0, multi, URL, proxyuserpws, headers); if(res) goto test_cleanup; curl_mfprintf(stderr, "lib540: now we do the request again\n"); - res = loop(1, cm, URL, proxyuserpws, headers); + res = loop(1, multi, URL, proxyuserpws, headers); test_cleanup: /* proper cleanup sequence - type PB */ - for(i = 0; i < CURL_ARRAYSIZE(testeh); i++) { - curl_multi_remove_handle(cm, testeh[i]); - curl_easy_cleanup(testeh[i]); + for(i = 0; i < CURL_ARRAYSIZE(t540_curl); i++) { + curl_multi_remove_handle(multi, t540_curl[i]); + curl_easy_cleanup(t540_curl[i]); } - curl_multi_cleanup(cm); + curl_multi_cleanup(multi); curl_global_cleanup(); curl_slist_free_all(headers); diff --git a/tests/libtest/lib543.c b/tests/libtest/lib543.c index d3653dbccd2f..579a71a6117c 100644 --- a/tests/libtest/lib543.c +++ b/tests/libtest/lib543.c @@ -34,37 +34,37 @@ static CURLcode test_lib543(const char *URL) 0xe0, 0xd8, 0x7c, 0x20, 0xb7, 0xef, 0x53, 0x29, 0xfa, 0x1d, 0x57, 0xe1}; - CURL *easy; + CURL *curl; CURLcode res = CURLE_OK; (void)URL; global_init(CURL_GLOBAL_ALL); - easy = curl_easy_init(); - if(!easy) { + curl = curl_easy_init(); + if(!curl) { curl_mfprintf(stderr, "curl_easy_init() failed\n"); res = TEST_ERR_MAJOR_BAD; } else { int asize = (int)sizeof(a); - char *s = curl_easy_escape(easy, (const char *)a, asize); + char *s = curl_easy_escape(curl, (const char *)a, asize); if(s) { curl_mprintf("%s\n", s); curl_free(s); } - s = curl_easy_escape(easy, "", 0); + s = curl_easy_escape(curl, "", 0); if(s) { curl_mprintf("IN: '' OUT: '%s'\n", s); curl_free(s); } - s = curl_easy_escape(easy, " 123", 3); + s = curl_easy_escape(curl, " 123", 3); if(s) { curl_mprintf("IN: ' 12' OUT: '%s'\n", s); curl_free(s); } - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); } curl_global_cleanup(); diff --git a/tests/libtest/lib544.c b/tests/libtest/lib544.c index c49a8e54b8f4..d0ed914051ed 100644 --- a/tests/libtest/lib544.c +++ b/tests/libtest/lib544.c @@ -67,11 +67,11 @@ static CURLcode test_lib544(const char *URL) strcpy(teststring, "FAIL"); { - CURL *handle2; - handle2 = curl_easy_duphandle(curl); + CURL *curl2; + curl2 = curl_easy_duphandle(curl); curl_easy_cleanup(curl); - curl = handle2; + curl = curl2; } /* Now, this is a POST request with binary 0 embedded in POST data. */ diff --git a/tests/libtest/lib547.c b/tests/libtest/lib547.c index 6114d57aab27..9184d933a882 100644 --- a/tests/libtest/lib547.c +++ b/tests/libtest/lib547.c @@ -53,10 +53,10 @@ static size_t t547_read_cb(char *ptr, size_t size, size_t nmemb, void *clientp) return 0; } -static curlioerr t547_ioctl_callback(CURL *handle, int cmd, void *clientp) +static curlioerr t547_ioctl_callback(CURL *curl, int cmd, void *clientp) { int *counter = (int *)clientp; - (void)handle; + (void)curl; if(cmd == CURLIOCMD_RESTARTREAD) { curl_mfprintf(stderr, "REWIND!\n"); *counter = 0; /* clear counter to make the read callback restart */ diff --git a/tests/libtest/lib552.c b/tests/libtest/lib552.c index 198ba6aa8868..3d5b09c1ec3f 100644 --- a/tests/libtest/lib552.c +++ b/tests/libtest/lib552.c @@ -54,7 +54,7 @@ static size_t t552_write_cb(char *ptr, size_t size, size_t nmemb, void *stream) return amount; } -static curlioerr ioctl_callback(CURL *handle, int cmd, void *clientp) +static curlioerr ioctl_callback(CURL *curl, int cmd, void *clientp) { (void)clientp; if(cmd == CURLIOCMD_RESTARTREAD) { @@ -63,7 +63,7 @@ static curlioerr ioctl_callback(CURL *handle, int cmd, void *clientp) current_offset = 0; return CURLIOE_OK; } - (void)handle; + (void)curl; return CURLIOE_UNKNOWNCMD; } diff --git a/tests/libtest/lib555.c b/tests/libtest/lib555.c index fe3b6921174a..19e0480e2a51 100644 --- a/tests/libtest/lib555.c +++ b/tests/libtest/lib555.c @@ -57,10 +57,10 @@ static size_t t555_read_cb(char *ptr, size_t size, size_t nmemb, void *clientp) return 0; } -static curlioerr t555_ioctl_callback(CURL *handle, int cmd, void *clientp) +static curlioerr t555_ioctl_callback(CURL *curl, int cmd, void *clientp) { int *counter = (int *)clientp; - (void)handle; + (void)curl; if(cmd == CURLIOCMD_RESTARTREAD) { curl_mfprintf(stderr, "REWIND!\n"); *counter = 0; /* clear counter to make the read callback restart */ @@ -73,7 +73,7 @@ static CURLcode test_lib555(const char *URL) CURLcode res = CURLE_OK; CURL *curl = NULL; int counter = 0; - CURLM *m = NULL; + CURLM *multi = NULL; int running = 1; start_test_timing(); @@ -102,9 +102,9 @@ static CURLcode test_lib555(const char *URL) easy_setopt(curl, CURLOPT_PROXYAUTH, CURLAUTH_BASIC | CURLAUTH_DIGEST | CURLAUTH_NTLM); - multi_init(m); + multi_init(multi); - multi_add_handle(m, curl); + multi_add_handle(multi, curl); while(running) { struct timeval timeout; @@ -114,7 +114,7 @@ static CURLcode test_lib555(const char *URL) timeout.tv_sec = 0; timeout.tv_usec = 100000L; /* 100 ms */ - multi_perform(m, &running); + multi_perform(multi, &running); abort_on_test_timeout(); @@ -125,7 +125,7 @@ static CURLcode test_lib555(const char *URL) FD_ZERO(&fdwrite); FD_ZERO(&fdexcep); - multi_fdset(m, &fdread, &fdwrite, &fdexcep, &maxfd); + multi_fdset(multi, &fdread, &fdwrite, &fdexcep, &maxfd); /* At this point, maxfd is guaranteed to be greater or equal than -1. */ @@ -138,8 +138,8 @@ static CURLcode test_lib555(const char *URL) /* proper cleanup sequence - type PA */ - curl_multi_remove_handle(m, curl); - curl_multi_cleanup(m); + curl_multi_remove_handle(multi, curl); + curl_multi_cleanup(multi); curl_easy_cleanup(curl); curl_global_cleanup(); diff --git a/tests/libtest/lib556.c b/tests/libtest/lib556.c index 8239d2603480..78b89975e8ac 100644 --- a/tests/libtest/lib556.c +++ b/tests/libtest/lib556.c @@ -53,13 +53,15 @@ static CURLcode test_lib556(const char *URL) if(!res) { /* we are connected, now get an HTTP document the raw way */ - static const char *request = - "GET /556 HTTP/1.1\r\n" - "Host: ninja\r\n\r\n"; + char request[64]; const char *sbuf = request; - size_t sblen = strlen(request); + size_t sblen; size_t nwritten = 0, nread = 0; + sblen = curl_msnprintf(request, sizeof(request), + "GET /%d HTTP/1.1\r\n" + "Host: ninja\r\n\r\n", testnum); + do { char buf[1024]; diff --git a/tests/libtest/lib557.c b/tests/libtest/lib557.c index f831c9bfc252..84f61202117c 100644 --- a/tests/libtest/lib557.c +++ b/tests/libtest/lib557.c @@ -205,7 +205,7 @@ static int test_signed_short_formatting(void) i++; ss_test[i].num = -0x0050 -1; ss_test[i].expected = "-81"; i++; ss_test[i].num = -0x0005 -1; ss_test[i].expected = "-6"; - i++; ss_test[i].num = 0x0000 -1; ss_test[i].expected = "-1"; + i++; ss_test[i].num = 0x0000 -1; ss_test[i].expected = "-1"; num_sshort_tests = i; @@ -431,7 +431,7 @@ static int test_signed_int_formatting(void) i++; si_test[i].num = -0x0050 -1; si_test[i].expected = "-81"; i++; si_test[i].num = -0x0005 -1; si_test[i].expected = "-6"; - i++; si_test[i].num = 0x0000 -1; si_test[i].expected = "-1"; + i++; si_test[i].num = 0x0000 -1; si_test[i].expected = "-1"; num_sint_tests = i; @@ -498,7 +498,7 @@ static int test_signed_int_formatting(void) i++; si_test[i].num = -0x00000050 -1; si_test[i].expected = "-81"; i++; si_test[i].num = -0x00000005 -1; si_test[i].expected = "-6"; - i++; si_test[i].num = 0x00000000 -1; si_test[i].expected = "-1"; + i++; si_test[i].num = 0x00000000 -1; si_test[i].expected = "-1"; num_sint_tests = i; @@ -581,7 +581,7 @@ static int test_signed_int_formatting(void) i++; si_test[i].num = -0x0000000000000070 -1; si_test[i].expected = "-113"; i++; si_test[i].num = -0x0000000000000007 -1; si_test[i].expected = "-8"; - i++; si_test[i].num = 0x0000000000000000 -1; si_test[i].expected = "-1"; + i++; si_test[i].num = 0x0000000000000000 -1; si_test[i].expected = "-1"; num_sint_tests = i; @@ -808,7 +808,7 @@ static int test_signed_long_formatting(void) i++; sl_test[i].num = -0x0050L -1L; sl_test[i].expected = "-81"; i++; sl_test[i].num = -0x0005L -1L; sl_test[i].expected = "-6"; - i++; sl_test[i].num = 0x0000L -1L; sl_test[i].expected = "-1"; + i++; sl_test[i].num = 0x0000L -1L; sl_test[i].expected = "-1"; num_slong_tests = i; @@ -875,7 +875,7 @@ static int test_signed_long_formatting(void) i++; sl_test[i].num = -0x00000050L -1L; sl_test[i].expected = "-81"; i++; sl_test[i].num = -0x00000005L -1L; sl_test[i].expected = "-6"; - i++; sl_test[i].num = 0x00000000L -1L; sl_test[i].expected = "-1"; + i++; sl_test[i].num = 0x00000000L -1L; sl_test[i].expected = "-1"; num_slong_tests = i; @@ -958,7 +958,7 @@ static int test_signed_long_formatting(void) i++; sl_test[i].num = -0x0000000000000070L -1L; sl_test[i].expected = "-113"; i++; sl_test[i].num = -0x0000000000000007L -1L; sl_test[i].expected = "-8"; - i++; sl_test[i].num = 0x0000000000000000L -1L; sl_test[i].expected = "-1"; + i++; sl_test[i].num = 0x0000000000000000L -1L; sl_test[i].expected = "-1"; num_slong_tests = i; @@ -1074,7 +1074,7 @@ static int test_curl_off_t_formatting(void) i++; co_test[i].num = -0x0000000000000070 -1; co_test[i].expected = "-113"; i++; co_test[i].num = -0x0000000000000007 -1; co_test[i].expected = "-8"; - i++; co_test[i].num = 0x0000000000000000 -1; co_test[i].expected = "-1"; + i++; co_test[i].num = 0x0000000000000000 -1; co_test[i].expected = "-1"; num_cofft_tests = i; diff --git a/tests/libtest/lib560.c b/tests/libtest/lib560.c index 060e27eea059..bbdb7990e426 100644 --- a/tests/libtest/lib560.c +++ b/tests/libtest/lib560.c @@ -37,8 +37,8 @@ */ static CURLcode test_lib560(const char *URL) { - CURL *http_handle = NULL; - CURLM *multi_handle = NULL; + CURL *curl = NULL; + CURLM *multi = NULL; CURLcode res = CURLE_OK; int still_running; /* keep number of running handles */ @@ -49,22 +49,22 @@ static CURLcode test_lib560(const char *URL) ** curl_global_init called indirectly from curl_easy_init. */ - easy_init(http_handle); + easy_init(curl); /* set options */ - easy_setopt(http_handle, CURLOPT_URL, URL); - easy_setopt(http_handle, CURLOPT_HEADER, 1L); - easy_setopt(http_handle, CURLOPT_SSL_VERIFYPEER, 0L); - easy_setopt(http_handle, CURLOPT_SSL_VERIFYHOST, 0L); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_HEADER, 1L); + easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L); + easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L); /* init a multi stack */ - multi_init(multi_handle); + multi_init(multi); /* add the individual transfers */ - multi_add_handle(multi_handle, http_handle); + multi_add_handle(multi, curl); /* we start some action by calling perform right away */ - multi_perform(multi_handle, &still_running); + multi_perform(multi, &still_running); abort_on_test_timeout(); @@ -85,7 +85,7 @@ static CURLcode test_lib560(const char *URL) timeout.tv_usec = 0; /* get file descriptors from the transfers */ - multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd); + multi_fdset(multi, &fdread, &fdwrite, &fdexcep, &maxfd); /* At this point, maxfd is guaranteed to be greater or equal than -1. */ @@ -94,7 +94,7 @@ static CURLcode test_lib560(const char *URL) abort_on_test_timeout(); /* timeout or readable/writable sockets */ - multi_perform(multi_handle, &still_running); + multi_perform(multi, &still_running); abort_on_test_timeout(); } @@ -103,8 +103,8 @@ static CURLcode test_lib560(const char *URL) /* undocumented cleanup sequence - type UA */ - curl_multi_cleanup(multi_handle); - curl_easy_cleanup(http_handle); + curl_multi_cleanup(multi); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib564.c b/tests/libtest/lib564.c index 3fc86015044b..b105fc710e6b 100644 --- a/tests/libtest/lib564.c +++ b/tests/libtest/lib564.c @@ -31,7 +31,7 @@ static CURLcode test_lib564(const char *URL) CURLcode res = CURLE_OK; CURL *curl = NULL; int running; - CURLM *m = NULL; + CURLM *multi = NULL; debug_config.nohex = TRUE; debug_config.tracetime = TRUE; @@ -49,9 +49,9 @@ static CURLcode test_lib564(const char *URL) easy_setopt(curl, CURLOPT_PROXY, libtest_arg2); easy_setopt(curl, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS4); - multi_init(m); + multi_init(multi); - multi_add_handle(m, curl); + multi_add_handle(multi, curl); curl_mfprintf(stderr, "Start at URL 0\n"); @@ -63,7 +63,7 @@ static CURLcode test_lib564(const char *URL) interval.tv_sec = 1; interval.tv_usec = 0; - multi_perform(m, &running); + multi_perform(multi, &running); abort_on_test_timeout(); @@ -74,7 +74,7 @@ static CURLcode test_lib564(const char *URL) FD_ZERO(&wr); FD_ZERO(&exc); - multi_fdset(m, &rd, &wr, &exc, &maxfd); + multi_fdset(multi, &rd, &wr, &exc, &maxfd); /* At this point, maxfd is guaranteed to be greater or equal than -1. */ @@ -88,7 +88,7 @@ static CURLcode test_lib564(const char *URL) /* undocumented cleanup sequence - type UB */ curl_easy_cleanup(curl); - curl_multi_cleanup(m); + curl_multi_cleanup(multi); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib573.c b/tests/libtest/lib573.c index 572bfa0cd12c..38612df7b58c 100644 --- a/tests/libtest/lib573.c +++ b/tests/libtest/lib573.c @@ -32,8 +32,8 @@ static CURLcode test_lib573(const char *URL) { - CURL *c = NULL; - CURLM *m = NULL; + CURL *curl = NULL; + CURLM *multi = NULL; CURLcode res = CURLE_OK; int running = 1; double connect_time = 0.0; @@ -48,20 +48,20 @@ static CURLcode test_lib573(const char *URL) global_init(CURL_GLOBAL_ALL); - easy_init(c); + easy_init(curl); - easy_setopt(c, CURLOPT_HEADER, 1L); - easy_setopt(c, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_HEADER, 1L); + easy_setopt(curl, CURLOPT_URL, URL); debug_config.nohex = TRUE; debug_config.tracetime = TRUE; - easy_setopt(c, CURLOPT_DEBUGDATA, &debug_config); - easy_setopt(c, CURLOPT_DEBUGFUNCTION, libtest_debug_cb); - easy_setopt(c, CURLOPT_VERBOSE, 1L); + easy_setopt(curl, CURLOPT_DEBUGDATA, &debug_config); + easy_setopt(curl, CURLOPT_DEBUGFUNCTION, libtest_debug_cb); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); - multi_init(m); + multi_init(multi); - multi_add_handle(m, c); + multi_add_handle(multi, curl); while(running) { struct timeval timeout; @@ -71,7 +71,7 @@ static CURLcode test_lib573(const char *URL) timeout.tv_sec = 0; timeout.tv_usec = 100000L; /* 100 ms */ - multi_perform(m, &running); + multi_perform(multi, &running); abort_on_test_timeout(); @@ -82,7 +82,7 @@ static CURLcode test_lib573(const char *URL) FD_ZERO(&fdwrite); FD_ZERO(&fdexcep); - multi_fdset(m, &fdread, &fdwrite, &fdexcep, &maxfd); + multi_fdset(multi, &fdread, &fdwrite, &fdexcep, &maxfd); /* At this point, maxfd is guaranteed to be greater or equal than -1. */ @@ -91,7 +91,7 @@ static CURLcode test_lib573(const char *URL) abort_on_test_timeout(); } - curl_easy_getinfo(c, CURLINFO_CONNECT_TIME, &connect_time); + curl_easy_getinfo(curl, CURLINFO_CONNECT_TIME, &connect_time); if(connect_time < dbl_epsilon) { curl_mfprintf(stderr, "connect time %e is < epsilon %e\n", connect_time, dbl_epsilon); @@ -102,9 +102,9 @@ static CURLcode test_lib573(const char *URL) /* proper cleanup sequence - type PA */ - curl_multi_remove_handle(m, c); - curl_multi_cleanup(m); - curl_easy_cleanup(c); + curl_multi_remove_handle(multi, curl); + curl_multi_cleanup(multi); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib575.c b/tests/libtest/lib575.c index a0ac02f85212..36efe6ef5a66 100644 --- a/tests/libtest/lib575.c +++ b/tests/libtest/lib575.c @@ -33,9 +33,9 @@ static CURLcode test_lib575(const char *URL) { - CURL *handle = NULL; - CURL *duphandle = NULL; - CURLM *mhandle = NULL; + CURL *curl = NULL; + CURL *curldupe = NULL; + CURLM *multi = NULL; CURLcode res = CURLE_OK; int still_running = 0; @@ -43,31 +43,31 @@ static CURLcode test_lib575(const char *URL) global_init(CURL_GLOBAL_ALL); - easy_init(handle); + easy_init(curl); - easy_setopt(handle, CURLOPT_URL, URL); - easy_setopt(handle, CURLOPT_WILDCARDMATCH, 1L); - easy_setopt(handle, CURLOPT_VERBOSE, 1L); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_WILDCARDMATCH, 1L); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); - res = curl_easy_perform(handle); + res = curl_easy_perform(curl); if(res) goto test_cleanup; - res = curl_easy_perform(handle); + res = curl_easy_perform(curl); if(res) goto test_cleanup; - duphandle = curl_easy_duphandle(handle); - if(!duphandle) + curldupe = curl_easy_duphandle(curl); + if(!curldupe) goto test_cleanup; - curl_easy_cleanup(handle); - handle = duphandle; + curl_easy_cleanup(curl); + curl = curldupe; - multi_init(mhandle); + multi_init(multi); - multi_add_handle(mhandle, handle); + multi_add_handle(multi, curl); - multi_perform(mhandle, &still_running); + multi_perform(multi, &still_running); abort_on_test_timeout(); @@ -85,7 +85,7 @@ static CURLcode test_lib575(const char *URL) FD_ZERO(&fdwrite); FD_ZERO(&fdexcep); - multi_fdset(mhandle, &fdread, &fdwrite, &fdexcep, &maxfd); + multi_fdset(multi, &fdread, &fdwrite, &fdexcep, &maxfd); /* At this point, maxfd is guaranteed to be greater or equal than -1. */ @@ -93,7 +93,7 @@ static CURLcode test_lib575(const char *URL) abort_on_test_timeout(); - multi_perform(mhandle, &still_running); + multi_perform(multi, &still_running); abort_on_test_timeout(); } @@ -102,8 +102,8 @@ static CURLcode test_lib575(const char *URL) /* undocumented cleanup sequence - type UA */ - curl_multi_cleanup(mhandle); - curl_easy_cleanup(handle); + curl_multi_cleanup(multi); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib576.c b/tests/libtest/lib576.c index a054dba3fa91..11c0f76d1390 100644 --- a/tests/libtest/lib576.c +++ b/tests/libtest/lib576.c @@ -98,27 +98,27 @@ static long chunk_end(void *ptr) static CURLcode test_lib576(const char *URL) { - CURL *handle = NULL; + CURL *curl = NULL; CURLcode res = CURLE_OK; struct chunk_data chunk_data = {0, 0}; curl_global_init(CURL_GLOBAL_ALL); - handle = curl_easy_init(); - if(!handle) { + curl = curl_easy_init(); + if(!curl) { res = CURLE_OUT_OF_MEMORY; goto test_cleanup; } - test_setopt(handle, CURLOPT_URL, URL); - test_setopt(handle, CURLOPT_WILDCARDMATCH, 1L); - test_setopt(handle, CURLOPT_CHUNK_BGN_FUNCTION, chunk_bgn); - test_setopt(handle, CURLOPT_CHUNK_END_FUNCTION, chunk_end); - test_setopt(handle, CURLOPT_CHUNK_DATA, &chunk_data); + test_setopt(curl, CURLOPT_URL, URL); + test_setopt(curl, CURLOPT_WILDCARDMATCH, 1L); + test_setopt(curl, CURLOPT_CHUNK_BGN_FUNCTION, chunk_bgn); + test_setopt(curl, CURLOPT_CHUNK_END_FUNCTION, chunk_end); + test_setopt(curl, CURLOPT_CHUNK_DATA, &chunk_data); - res = curl_easy_perform(handle); + res = curl_easy_perform(curl); test_cleanup: - if(handle) - curl_easy_cleanup(handle); + if(curl) + curl_easy_cleanup(curl); curl_global_cleanup(); return res; } diff --git a/tests/libtest/lib582.c b/tests/libtest/lib582.c index 187432ac0cb8..e013daedff8a 100644 --- a/tests/libtest/lib582.c +++ b/tests/libtest/lib582.c @@ -92,12 +92,12 @@ static void t582_addFd(struct t582_Sockets *sockets, curl_socket_t fd, /** * Callback invoked by curl to poll reading / writing of a socket. */ -static int t582_curlSocketCallback(CURL *easy, curl_socket_t s, int action, +static int t582_curlSocketCallback(CURL *curl, curl_socket_t s, int action, void *userp, void *socketp) { struct t582_ReadWriteSockets *sockets = userp; - (void)easy; + (void)curl; (void)socketp; if(action == CURL_POLL_IN || action == CURL_POLL_INOUT) @@ -135,13 +135,13 @@ static int t582_curlTimerCallback(CURLM *multi, long timeout_ms, void *userp) /** * Check for curl completion. */ -static int t582_checkForCompletion(CURLM *curl, int *success) +static int t582_checkForCompletion(CURLM *multi, int *success) { int result = 0; *success = 0; while(1) { int numMessages; - CURLMsg *message = curl_multi_info_read(curl, &numMessages); + CURLMsg *message = curl_multi_info_read(multi, &numMessages); if(!message) break; if(message->msg == CURLMSG_DONE) { @@ -196,11 +196,12 @@ static void t582_updateFdSet(struct t582_Sockets *sockets, fd_set* fdset, } } -static void notifyCurl(CURLM *curl, curl_socket_t s, int evBitmask, +static void notifyCurl(CURLM *multi, curl_socket_t s, int evBitmask, const char *info) { int numhandles = 0; - CURLMcode result = curl_multi_socket_action(curl, s, evBitmask, &numhandles); + CURLMcode result = curl_multi_socket_action(multi, s, evBitmask, + &numhandles); if(result != CURLM_OK) { curl_mfprintf(stderr, "Curl error on %s (%i) %s\n", info, result, curl_multi_strerror(result)); @@ -210,13 +211,13 @@ static void notifyCurl(CURLM *curl, curl_socket_t s, int evBitmask, /** * Invoke curl when a file descriptor is set. */ -static void t582_checkFdSet(CURLM *curl, struct t582_Sockets *sockets, +static void t582_checkFdSet(CURLM *multi, struct t582_Sockets *sockets, fd_set *fdset, int evBitmask, const char *name) { int i; for(i = 0; i < sockets->count; ++i) { if(FD_ISSET(sockets->sockets[i], fdset)) { - notifyCurl(curl, sockets->sockets[i], evBitmask, name); + notifyCurl(multi, sockets->sockets[i], evBitmask, name); } } } @@ -229,7 +230,7 @@ static CURLcode test_lib582(const char *URL) FILE *hd_src = NULL; int hd; struct_stat file_info; - CURLM *m = NULL; + CURLM *multi = NULL; struct t582_ReadWriteSockets sockets = {{NULL, 0, 0}, {NULL, 0, 0}}; int success = 0; struct curltime timeout = {0}; @@ -297,17 +298,17 @@ static CURLcode test_lib582(const char *URL) easy_setopt(curl, CURLOPT_INFILESIZE_LARGE, (curl_off_t)file_info.st_size); - multi_init(m); + multi_init(multi); - multi_setopt(m, CURLMOPT_SOCKETFUNCTION, t582_curlSocketCallback); - multi_setopt(m, CURLMOPT_SOCKETDATA, &sockets); + multi_setopt(multi, CURLMOPT_SOCKETFUNCTION, t582_curlSocketCallback); + multi_setopt(multi, CURLMOPT_SOCKETDATA, &sockets); - multi_setopt(m, CURLMOPT_TIMERFUNCTION, t582_curlTimerCallback); - multi_setopt(m, CURLMOPT_TIMERDATA, &timeout); + multi_setopt(multi, CURLMOPT_TIMERFUNCTION, t582_curlTimerCallback); + multi_setopt(multi, CURLMOPT_TIMERDATA, &timeout); - multi_add_handle(m, curl); + multi_add_handle(multi, curl); - while(!t582_checkForCompletion(m, &success)) { + while(!t582_checkForCompletion(multi, &success)) { fd_set readSet, writeSet; curl_socket_t maxFd = 0; struct timeval tv = {0}; @@ -331,13 +332,15 @@ static CURLcode test_lib582(const char *URL) select_test((int)maxFd, &readSet, &writeSet, NULL, &tv); /* Check the sockets for reading / writing */ - t582_checkFdSet(m, &sockets.read, &readSet, CURL_CSELECT_IN, "read"); - t582_checkFdSet(m, &sockets.write, &writeSet, CURL_CSELECT_OUT, "write"); + t582_checkFdSet(multi, &sockets.read, &readSet, CURL_CSELECT_IN, + "read"); + t582_checkFdSet(multi, &sockets.write, &writeSet, CURL_CSELECT_OUT, + "write"); if(timeout.tv_sec != (time_t)-1 && t582_getMicroSecondTimeout(&timeout) == 0) { /* Curl's timer has elapsed. */ - notifyCurl(m, CURL_SOCKET_TIMEOUT, 0, "timeout"); + notifyCurl(multi, CURL_SOCKET_TIMEOUT, 0, "timeout"); } abort_on_test_timeout(); @@ -352,9 +355,9 @@ static CURLcode test_lib582(const char *URL) /* proper cleanup sequence - type PB */ - curl_multi_remove_handle(m, curl); + curl_multi_remove_handle(multi, curl); curl_easy_cleanup(curl); - curl_multi_cleanup(m); + curl_multi_cleanup(multi); curl_global_cleanup(); /* close the local file */ diff --git a/tests/libtest/lib583.c b/tests/libtest/lib583.c index 9950e8b402b7..510c5a3bdcf6 100644 --- a/tests/libtest/lib583.c +++ b/tests/libtest/lib583.c @@ -33,7 +33,7 @@ static CURLcode test_lib583(const char *URL) { int stillRunning; - CURLM *multiHandle = NULL; + CURLM *multi = NULL; CURL *curl = NULL; CURLcode res = CURLE_OK; CURLMcode mres; @@ -42,7 +42,7 @@ static CURLcode test_lib583(const char *URL) global_init(CURL_GLOBAL_ALL); - multi_init(multiHandle); + multi_init(multi); easy_init(curl); @@ -56,19 +56,19 @@ static CURLcode test_lib583(const char *URL) easy_setopt(curl, CURLOPT_URL, URL); easy_setopt(curl, CURLOPT_INFILESIZE, 5L); - multi_add_handle(multiHandle, curl); + multi_add_handle(multi, curl); /* this tests if removing an easy handle immediately after multi perform has been called succeeds or not. */ curl_mfprintf(stderr, "curl_multi_perform()...\n"); - multi_perform(multiHandle, &stillRunning); + multi_perform(multi, &stillRunning); curl_mfprintf(stderr, "curl_multi_perform() succeeded\n"); curl_mfprintf(stderr, "curl_multi_remove_handle()...\n"); - mres = curl_multi_remove_handle(multiHandle, curl); + mres = curl_multi_remove_handle(multi, curl); if(mres) { curl_mfprintf(stderr, "curl_multi_remove_handle() failed, with code %d\n", mres); @@ -82,7 +82,7 @@ static CURLcode test_lib583(const char *URL) /* undocumented cleanup sequence - type UB */ curl_easy_cleanup(curl); - curl_multi_cleanup(multiHandle); + curl_multi_cleanup(multi); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib586.c b/tests/libtest/lib586.c index 439c92bf3522..5ee1582a8eb2 100644 --- a/tests/libtest/lib586.c +++ b/tests/libtest/lib586.c @@ -39,13 +39,13 @@ struct t586_userdata { }; /* lock callback */ -static void t586_test_lock(CURL *handle, curl_lock_data data, +static void t586_test_lock(CURL *curl, curl_lock_data data, curl_lock_access laccess, void *useptr) { const char *what; struct t586_userdata *user = (struct t586_userdata *)useptr; - (void)handle; + (void)curl; (void)laccess; switch(data) { @@ -70,11 +70,11 @@ static void t586_test_lock(CURL *handle, curl_lock_data data, } /* unlock callback */ -static void t586_test_unlock(CURL *handle, curl_lock_data data, void *useptr) +static void t586_test_unlock(CURL *curl, curl_lock_data data, void *useptr) { const char *what; struct t586_userdata *user = (struct t586_userdata *)useptr; - (void)handle; + (void)curl; switch(data) { case CURL_LOCK_DATA_SHARE: what = "share"; diff --git a/tests/libtest/lib591.c b/tests/libtest/lib591.c index c0d5b1a43686..0b7a0b4e855e 100644 --- a/tests/libtest/lib591.c +++ b/tests/libtest/lib591.c @@ -29,7 +29,7 @@ static CURLcode test_lib591(const char *URL) { - CURL *easy = NULL; + CURL *curl = NULL; CURLM *multi = NULL; CURLcode res = CURLE_OK; int running; @@ -54,29 +54,29 @@ static CURLcode test_lib591(const char *URL) return res; } - easy_init(easy); + easy_init(curl); /* go verbose */ - easy_setopt(easy, CURLOPT_VERBOSE, 1L); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); /* specify target */ - easy_setopt(easy, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_URL, URL); /* enable uploading */ - easy_setopt(easy, CURLOPT_UPLOAD, 1L); + easy_setopt(curl, CURLOPT_UPLOAD, 1L); /* data pointer for the file read function */ - easy_setopt(easy, CURLOPT_READDATA, upload); + easy_setopt(curl, CURLOPT_READDATA, upload); /* use active mode FTP */ - easy_setopt(easy, CURLOPT_FTPPORT, "-"); + easy_setopt(curl, CURLOPT_FTPPORT, "-"); /* server connection timeout */ - easy_setopt(easy, CURLOPT_ACCEPTTIMEOUT_MS, atol(libtest_arg2)*1000); + easy_setopt(curl, CURLOPT_ACCEPTTIMEOUT_MS, atol(libtest_arg2)*1000); multi_init(multi); - multi_add_handle(multi, easy); + multi_add_handle(multi, curl); for(;;) { struct timeval interval; @@ -134,7 +134,7 @@ static CURLcode test_lib591(const char *URL) /* undocumented cleanup sequence - type UA */ curl_multi_cleanup(multi); - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); curl_global_cleanup(); /* close the local file */ diff --git a/tests/libtest/lib597.c b/tests/libtest/lib597.c index 126ce74f3853..e82d061a222e 100644 --- a/tests/libtest/lib597.c +++ b/tests/libtest/lib597.c @@ -36,7 +36,7 @@ static CURLcode test_lib597(const char *URL) { - CURL *easy = NULL; + CURL *curl = NULL; CURLM *multi = NULL; CURLcode res = CURLE_OK; int running; @@ -47,19 +47,19 @@ static CURLcode test_lib597(const char *URL) global_init(CURL_GLOBAL_ALL); - easy_init(easy); + easy_init(curl); multi_init(multi); /* go verbose */ - easy_setopt(easy, CURLOPT_VERBOSE, 1L); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); /* specify target */ - easy_setopt(easy, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_URL, URL); - easy_setopt(easy, CURLOPT_CONNECT_ONLY, 1L); + easy_setopt(curl, CURLOPT_CONNECT_ONLY, 1L); - multi_add_handle(multi, easy); + multi_add_handle(multi, curl); for(;;) { struct timeval interval; @@ -113,14 +113,14 @@ static CURLcode test_lib597(const char *URL) if(msg) res = msg->data.result; - multi_remove_handle(multi, easy); + multi_remove_handle(multi, curl); test_cleanup: /* undocumented cleanup sequence - type UA */ curl_multi_cleanup(multi); - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib643.c b/tests/libtest/lib643.c index 612f0b566c88..a0fef02dda90 100644 --- a/tests/libtest/lib643.c +++ b/tests/libtest/lib643.c @@ -225,13 +225,13 @@ static CURLcode t643_test_once(const char *URL, bool oldstyle) static CURLcode t643_cyclic_add(void) { - CURL *easy = curl_easy_init(); - curl_mime *mime = curl_mime_init(easy); + CURL *curl = curl_easy_init(); + curl_mime *mime = curl_mime_init(curl); curl_mimepart *part = curl_mime_addpart(mime); CURLcode a1 = curl_mime_subparts(part, mime); if(a1 == CURLE_BAD_FUNCTION_ARGUMENT) { - curl_mime *submime = curl_mime_init(easy); + curl_mime *submime = curl_mime_init(curl); curl_mimepart *subpart = curl_mime_addpart(submime); curl_mime_subparts(part, submime); @@ -239,7 +239,7 @@ static CURLcode t643_cyclic_add(void) } curl_mime_free(mime); - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); if(a1 != CURLE_BAD_FUNCTION_ARGUMENT) /* that should have failed */ return TEST_ERR_FAILURE; diff --git a/tests/libtest/lib653.c b/tests/libtest/lib653.c index 4f20865e269d..21948a5720e6 100644 --- a/tests/libtest/lib653.c +++ b/tests/libtest/lib653.c @@ -27,36 +27,36 @@ static CURLcode test_lib653(const char *URL) { - CURL *curls = NULL; + CURL *curl = NULL; CURLcode res = CURLE_OK; curl_mimepart *field = NULL; curl_mime *mime = NULL; global_init(CURL_GLOBAL_ALL); - easy_init(curls); + easy_init(curl); - mime = curl_mime_init(curls); + mime = curl_mime_init(curl); field = curl_mime_addpart(mime); curl_mime_name(field, "name"); curl_mime_data(field, "short value", CURL_ZERO_TERMINATED); - easy_setopt(curls, CURLOPT_URL, URL); - easy_setopt(curls, CURLOPT_HEADER, 1L); - easy_setopt(curls, CURLOPT_VERBOSE, 1L); - easy_setopt(curls, CURLOPT_MIMEPOST, mime); - easy_setopt(curls, CURLOPT_NOPROGRESS, 1L); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_HEADER, 1L); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); + easy_setopt(curl, CURLOPT_MIMEPOST, mime); + easy_setopt(curl, CURLOPT_NOPROGRESS, 1L); - res = curl_easy_perform(curls); + res = curl_easy_perform(curl); if(res) goto test_cleanup; /* Alter form and resubmit. */ curl_mime_data(field, "long value for length change", CURL_ZERO_TERMINATED); - res = curl_easy_perform(curls); + res = curl_easy_perform(curl); test_cleanup: curl_mime_free(mime); - curl_easy_cleanup(curls); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; /* return the final return code */ } diff --git a/tests/libtest/lib654.c b/tests/libtest/lib654.c index a808e24a0acd..5b2236ebb044 100644 --- a/tests/libtest/lib654.c +++ b/tests/libtest/lib654.c @@ -63,8 +63,8 @@ static CURLcode test_lib654(const char *URL) { static const char testdata[] = "dummy\n"; - CURL *easy = NULL; - CURL *easy2 = NULL; + CURL *curl = NULL; + CURL *curl2 = NULL; curl_mime *mime = NULL; curl_mimepart *part; struct curl_slist *hdrs = NULL; @@ -81,16 +81,16 @@ static CURLcode test_lib654(const char *URL) return TEST_ERR_MAJOR_BAD; } - easy = curl_easy_init(); + curl = curl_easy_init(); /* First set the URL that is about to receive our POST. */ - test_setopt(easy, CURLOPT_URL, URL); + test_setopt(curl, CURLOPT_URL, URL); /* get verbose debug output please */ - test_setopt(easy, CURLOPT_VERBOSE, 1L); + test_setopt(curl, CURLOPT_VERBOSE, 1L); /* include headers in the output */ - test_setopt(easy, CURLOPT_HEADER, 1L); + test_setopt(curl, CURLOPT_HEADER, 1L); /* Prepare the callback structure. */ pooh.readptr = testdata; @@ -98,7 +98,7 @@ static CURLcode test_lib654(const char *URL) pooh.freecount = 0; /* Build the mime tree. */ - mime = curl_mime_init(easy); + mime = curl_mime_init(curl); part = curl_mime_addpart(mime); curl_mime_data(part, "hello", CURL_ZERO_TERMINATED); curl_mime_name(part, "greeting"); @@ -113,11 +113,11 @@ static CURLcode test_lib654(const char *URL) free_callback, &pooh); /* Bind mime data to its easy handle. */ - test_setopt(easy, CURLOPT_MIMEPOST, mime); + test_setopt(curl, CURLOPT_MIMEPOST, mime); /* Duplicate the handle. */ - easy2 = curl_easy_duphandle(easy); - if(!easy2) { + curl2 = curl_easy_duphandle(curl); + if(!curl2) { curl_mfprintf(stderr, "curl_easy_duphandle() failed\n"); res = TEST_ERR_FAILURE; goto test_cleanup; @@ -129,7 +129,7 @@ static CURLcode test_lib654(const char *URL) mime = NULL; /* Already cleaned up. */ /* Perform on the first handle: should not send any data. */ - res = curl_easy_perform(easy); + res = curl_easy_perform(curl); if(res != CURLE_OK) { curl_mfprintf(stderr, "curl_easy_perform(original) failed\n"); goto test_cleanup; @@ -137,7 +137,7 @@ static CURLcode test_lib654(const char *URL) /* Perform on the second handle: if the bound mime structure has not been duplicated properly, it should cause a valgrind error. */ - res = curl_easy_perform(easy2); + res = curl_easy_perform(curl2); if(res != CURLE_OK) { curl_mfprintf(stderr, "curl_easy_perform(duplicated) failed\n"); goto test_cleanup; @@ -146,8 +146,8 @@ static CURLcode test_lib654(const char *URL) /* Free the duplicated handle: it should call free_callback again. If the mime copy was bad or not automatically released, valgrind will signal it. */ - curl_easy_cleanup(easy2); - easy2 = NULL; /* Already cleaned up. */ + curl_easy_cleanup(curl2); + curl2 = NULL; /* Already cleaned up. */ if(pooh.freecount != 2) { curl_mfprintf(stderr, "free_callback() called %d times instead of 2\n", @@ -157,8 +157,8 @@ static CURLcode test_lib654(const char *URL) } test_cleanup: - curl_easy_cleanup(easy); - curl_easy_cleanup(easy2); + curl_easy_cleanup(curl); + curl_easy_cleanup(curl2); curl_mime_free(mime); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib658.c b/tests/libtest/lib658.c index 00a2a35906b9..4f0f867d65de 100644 --- a/tests/libtest/lib658.c +++ b/tests/libtest/lib658.c @@ -31,13 +31,13 @@ static CURLcode test_lib658(const char *URL) { - CURL *handle = NULL; + CURL *curl = NULL; CURLcode res = CURLE_OK; CURLU *urlp = NULL; CURLUcode uc = CURLUE_OK; global_init(CURL_GLOBAL_ALL); - easy_init(handle); + easy_init(curl); urlp = curl_url(); @@ -54,12 +54,12 @@ static CURLcode test_lib658(const char *URL) } /* demonstrate override behavior */ - easy_setopt(handle, CURLOPT_URL, "http://www.example.com"); + easy_setopt(curl, CURLOPT_URL, "http://www.example.com"); - easy_setopt(handle, CURLOPT_CURLU, urlp); - easy_setopt(handle, CURLOPT_VERBOSE, 1L); + easy_setopt(curl, CURLOPT_CURLU, urlp); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); - res = curl_easy_perform(handle); + res = curl_easy_perform(curl); if(res) { curl_mfprintf(stderr, "%s:%d curl_easy_perform() failed " @@ -71,7 +71,7 @@ static CURLcode test_lib658(const char *URL) test_cleanup: curl_url_cleanup(urlp); - curl_easy_cleanup(handle); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib659.c b/tests/libtest/lib659.c index 70a630758c14..44fe7b0c49e1 100644 --- a/tests/libtest/lib659.c +++ b/tests/libtest/lib659.c @@ -31,12 +31,12 @@ static CURLcode test_lib659(const char *URL) { - CURL *handle = NULL; + CURL *curl = NULL; CURLcode res = CURLE_OK; CURLU *urlp = NULL; global_init(CURL_GLOBAL_ALL); - easy_init(handle); + easy_init(curl); urlp = curl_url(); @@ -53,11 +53,11 @@ static CURLcode test_lib659(const char *URL) goto test_cleanup; } - easy_setopt(handle, CURLOPT_CURLU, urlp); - easy_setopt(handle, CURLOPT_VERBOSE, 1L); - easy_setopt(handle, CURLOPT_PROXY, URL); + easy_setopt(curl, CURLOPT_CURLU, urlp); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); + easy_setopt(curl, CURLOPT_PROXY, URL); - res = curl_easy_perform(handle); + res = curl_easy_perform(curl); if(res) { curl_mfprintf(stderr, "%s:%d curl_easy_perform() failed " @@ -69,7 +69,7 @@ static CURLcode test_lib659(const char *URL) test_cleanup: curl_url_cleanup(urlp); - curl_easy_cleanup(handle); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib667.c b/tests/libtest/lib667.c index a46d1b8cdd76..2827d0051194 100644 --- a/tests/libtest/lib667.c +++ b/tests/libtest/lib667.c @@ -55,7 +55,7 @@ static CURLcode test_lib667(const char *URL) { static const char testdata[] = "dummy"; - CURL *easy = NULL; + CURL *curl = NULL; curl_mime *mime = NULL; curl_mimepart *part; CURLcode res = TEST_ERR_FAILURE; @@ -71,23 +71,23 @@ static CURLcode test_lib667(const char *URL) return TEST_ERR_MAJOR_BAD; } - easy = curl_easy_init(); + curl = curl_easy_init(); /* First set the URL that is about to receive our POST. */ - test_setopt(easy, CURLOPT_URL, URL); + test_setopt(curl, CURLOPT_URL, URL); /* get verbose debug output please */ - test_setopt(easy, CURLOPT_VERBOSE, 1L); + test_setopt(curl, CURLOPT_VERBOSE, 1L); /* include headers in the output */ - test_setopt(easy, CURLOPT_HEADER, 1L); + test_setopt(curl, CURLOPT_HEADER, 1L); /* Prepare the callback structure. */ pooh.readptr = testdata; pooh.sizeleft = (curl_off_t) strlen(testdata); /* Build the mime tree. */ - mime = curl_mime_init(easy); + mime = curl_mime_init(curl); part = curl_mime_addpart(mime); curl_mime_name(part, "field"); curl_mime_encoder(part, "base64"); @@ -96,16 +96,16 @@ static CURLcode test_lib667(const char *URL) NULL, NULL, &pooh); /* Bind mime data to its easy handle. */ - test_setopt(easy, CURLOPT_MIMEPOST, mime); + test_setopt(curl, CURLOPT_MIMEPOST, mime); /* Send data. */ - res = curl_easy_perform(easy); + res = curl_easy_perform(curl); if(res != CURLE_OK) { curl_mfprintf(stderr, "curl_easy_perform() failed\n"); } test_cleanup: - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); curl_mime_free(mime); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib668.c b/tests/libtest/lib668.c index 87cf19bbe4b7..488f86215247 100644 --- a/tests/libtest/lib668.c +++ b/tests/libtest/lib668.c @@ -50,7 +50,7 @@ static CURLcode test_lib668(const char *URL) { static const char testdata[] = "dummy"; - CURL *easy = NULL; + CURL *curl = NULL; curl_mime *mime = NULL; curl_mimepart *part; CURLcode res = TEST_ERR_FAILURE; @@ -65,16 +65,16 @@ static CURLcode test_lib668(const char *URL) return TEST_ERR_MAJOR_BAD; } - easy = curl_easy_init(); + curl = curl_easy_init(); /* First set the URL that is about to receive our POST. */ - test_setopt(easy, CURLOPT_URL, URL); + test_setopt(curl, CURLOPT_URL, URL); /* get verbose debug output please */ - test_setopt(easy, CURLOPT_VERBOSE, 1L); + test_setopt(curl, CURLOPT_VERBOSE, 1L); /* include headers in the output */ - test_setopt(easy, CURLOPT_HEADER, 1L); + test_setopt(curl, CURLOPT_HEADER, 1L); /* Prepare the callback structures. */ pooh1.readptr = testdata; @@ -82,7 +82,7 @@ static CURLcode test_lib668(const char *URL) pooh2 = pooh1; /* Build the mime tree. */ - mime = curl_mime_init(easy); + mime = curl_mime_init(curl); part = curl_mime_addpart(mime); curl_mime_name(part, "field1"); /* Early end of data detection can be done because the data size is known. */ @@ -101,16 +101,16 @@ static CURLcode test_lib668(const char *URL) curl_mime_filedata(part, libtest_arg2); /* Bind mime data to its easy handle. */ - test_setopt(easy, CURLOPT_MIMEPOST, mime); + test_setopt(curl, CURLOPT_MIMEPOST, mime); /* Send data. */ - res = curl_easy_perform(easy); + res = curl_easy_perform(curl); if(res != CURLE_OK) { curl_mfprintf(stderr, "curl_easy_perform() failed\n"); } test_cleanup: - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); curl_mime_free(mime); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib670.c b/tests/libtest/lib670.c index 9dcdd7fd45e8..b30d097f68ff 100644 --- a/tests/libtest/lib670.c +++ b/tests/libtest/lib670.c @@ -28,7 +28,7 @@ #define PAUSE_TIME 5 struct t670_ReadThis { - CURL *easy; + CURL *curl; time_t origin; int count; }; @@ -79,7 +79,7 @@ static int t670_xferinfo(void *clientp, } if(delta >= PAUSE_TIME) - curl_easy_pause(pooh->easy, CURLPAUSE_CONT); + curl_easy_pause(pooh->curl, CURLPAUSE_CONT); } return 0; @@ -106,21 +106,21 @@ static CURLcode test_lib670(const char *URL) pooh.origin = (time_t) 0; pooh.count = 0; - pooh.easy = curl_easy_init(); + pooh.curl = curl_easy_init(); /* First set the URL that is about to receive our POST. */ - test_setopt(pooh.easy, CURLOPT_URL, URL); + test_setopt(pooh.curl, CURLOPT_URL, URL); /* get verbose debug output please */ - test_setopt(pooh.easy, CURLOPT_VERBOSE, 1L); + test_setopt(pooh.curl, CURLOPT_VERBOSE, 1L); /* include headers in the output */ - test_setopt(pooh.easy, CURLOPT_HEADER, 1L); + test_setopt(pooh.curl, CURLOPT_HEADER, 1L); if(testnum == 670 || testnum == 671) { curl_mimepart *part; /* Build the mime tree. */ - mime = curl_mime_init(pooh.easy); + mime = curl_mime_init(pooh.curl); part = curl_mime_addpart(mime); res = curl_mime_name(part, testname); if(res != CURLE_OK) { @@ -135,7 +135,7 @@ static CURLcode test_lib670(const char *URL) /* Bind mime data to its easy handle. */ if(res == CURLE_OK) - test_setopt(pooh.easy, CURLOPT_MIMEPOST, mime); + test_setopt(pooh.curl, CURLOPT_MIMEPOST, mime); } else { struct curl_httppost *lastptr = NULL; @@ -152,10 +152,10 @@ static CURLcode test_lib670(const char *URL) } /* We want to use our own read function. */ - test_setopt(pooh.easy, CURLOPT_READFUNCTION, t670_read_cb); + test_setopt(pooh.curl, CURLOPT_READFUNCTION, t670_read_cb); /* Send a multi-part formpost. */ - test_setopt(pooh.easy, CURLOPT_HTTPPOST, formpost); + test_setopt(pooh.curl, CURLOPT_HTTPPOST, formpost); } if(testnum == 670 || testnum == 672) { @@ -163,7 +163,7 @@ static CURLcode test_lib670(const char *URL) CURLM *multi; /* Use the multi interface. */ multi = curl_multi_init(); - mres = curl_multi_add_handle(multi, pooh.easy); + mres = curl_multi_add_handle(multi, pooh.curl); while(!mres) { struct timeval timeout; int rc = 0; @@ -187,7 +187,7 @@ static CURLcode test_lib670(const char *URL) } if(delta >= PAUSE_TIME) - curl_easy_pause(pooh.easy, CURLPAUSE_CONT); + curl_easy_pause(pooh.curl, CURLPAUSE_CONT); } FD_ZERO(&fdread); @@ -222,19 +222,19 @@ static CURLcode test_lib670(const char *URL) } } - curl_multi_remove_handle(multi, pooh.easy); + curl_multi_remove_handle(multi, pooh.curl); curl_multi_cleanup(multi); } else { /* Use the easy interface. */ - test_setopt(pooh.easy, CURLOPT_XFERINFODATA, &pooh); - test_setopt(pooh.easy, CURLOPT_XFERINFOFUNCTION, t670_xferinfo); - test_setopt(pooh.easy, CURLOPT_NOPROGRESS, 0L); - res = curl_easy_perform(pooh.easy); + test_setopt(pooh.curl, CURLOPT_XFERINFODATA, &pooh); + test_setopt(pooh.curl, CURLOPT_XFERINFOFUNCTION, t670_xferinfo); + test_setopt(pooh.curl, CURLOPT_NOPROGRESS, 0L); + res = curl_easy_perform(pooh.curl); } test_cleanup: - curl_easy_cleanup(pooh.easy); + curl_easy_cleanup(pooh.curl); if(testnum == 670 || testnum == 671) { curl_mime_free(mime); diff --git a/tests/libtest/lib674.c b/tests/libtest/lib674.c index a46f2be6eb14..668ecdf32d14 100644 --- a/tests/libtest/lib674.c +++ b/tests/libtest/lib674.c @@ -31,14 +31,14 @@ static CURLcode test_lib674(const char *URL) { - CURL *handle = NULL; - CURL *handle2; + CURL *curl = NULL; + CURL *curl2; CURLcode res = CURLE_OK; CURLU *urlp = NULL; CURLUcode uc = CURLUE_OK; global_init(CURL_GLOBAL_ALL); - easy_init(handle); + easy_init(curl); urlp = curl_url(); @@ -56,10 +56,10 @@ static CURLcode test_lib674(const char *URL) /* demonstrate override behavior */ - easy_setopt(handle, CURLOPT_CURLU, urlp); - easy_setopt(handle, CURLOPT_VERBOSE, 1L); + easy_setopt(curl, CURLOPT_CURLU, urlp); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); - res = curl_easy_perform(handle); + res = curl_easy_perform(curl); if(res) { curl_mfprintf(stderr, "%s:%d curl_easy_perform() failed " @@ -68,14 +68,14 @@ static CURLcode test_lib674(const char *URL) goto test_cleanup; } - handle2 = curl_easy_duphandle(handle); - res = curl_easy_perform(handle2); - curl_easy_cleanup(handle2); + curl2 = curl_easy_duphandle(curl); + res = curl_easy_perform(curl2); + curl_easy_cleanup(curl2); test_cleanup: curl_url_cleanup(urlp); - curl_easy_cleanup(handle); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib678.c b/tests/libtest/lib678.c index 5fdabdda9609..2a2e21321f79 100644 --- a/tests/libtest/lib678.c +++ b/tests/libtest/lib678.c @@ -99,15 +99,14 @@ static CURLcode test_lib678(const char *URL) CURLcode res = CURLE_OK; curl_global_init(CURL_GLOBAL_DEFAULT); if(!strcmp("check", URL)) { - CURL *e; CURLcode w = CURLE_OK; struct curl_blob blob = {0}; - e = curl_easy_init(); - if(e) { - w = curl_easy_setopt(e, CURLOPT_CAINFO_BLOB, &blob); + CURL *curl = curl_easy_init(); + if(curl) { + w = curl_easy_setopt(curl, CURLOPT_CAINFO_BLOB, &blob); if(w) curl_mprintf("CURLOPT_CAINFO_BLOB is not supported\n"); - curl_easy_cleanup(e); + curl_easy_cleanup(curl); } res = w; } diff --git a/tests/libtest/lib751.c b/tests/libtest/lib751.c index 0e0a1968e68e..42c1aeb1176e 100644 --- a/tests/libtest/lib751.c +++ b/tests/libtest/lib751.c @@ -31,37 +31,37 @@ static CURLcode test_lib751(const char *URL) { - CURL *easies[1000]; - CURLM *m; + CURL *curls[1000]; + CURLM *multi; CURLcode res = CURLE_FAILED_INIT; CURLMcode mres; int i; (void)URL; - memset(easies, 0, sizeof(easies)); + memset(curls, 0, sizeof(curls)); curl_global_init(CURL_GLOBAL_DEFAULT); - m = curl_multi_init(); - if(!m) { + multi = curl_multi_init(); + if(!multi) { res = CURLE_OUT_OF_MEMORY; goto test_cleanup; } for(i = 0; i < 1000; i++) { - CURL *e = curl_easy_init(); - if(!e) { + CURL *curl = curl_easy_init(); + if(!curl) { res = CURLE_OUT_OF_MEMORY; goto test_cleanup; } - easies[i] = e; + curls[i] = curl; - res = curl_easy_setopt(e, CURLOPT_URL, "https://www.example.com/"); + res = curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.com/"); if(!res) - res = curl_easy_setopt(e, CURLOPT_VERBOSE, 1L); + res = curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L); if(res) goto test_cleanup; - mres = curl_multi_add_handle(m, e); + mres = curl_multi_add_handle(multi, curl); if(mres != CURLM_OK) { curl_mfprintf(stderr, "MULTI ERROR: %s\n", curl_multi_strerror(mres)); res = CURLE_FAILED_INIT; @@ -75,13 +75,13 @@ static CURLcode test_lib751(const char *URL) curl_mfprintf(stderr, "ERROR: %s\n", curl_easy_strerror(res)); for(i = 0; i < 1000; i++) { - if(easies[i]) { - curl_multi_add_handle(m, easies[i]); - curl_easy_cleanup(easies[i]); - easies[i] = NULL; + if(curls[i]) { + curl_multi_add_handle(multi, curls[i]); + curl_easy_cleanup(curls[i]); + curls[i] = NULL; } } - curl_multi_cleanup(m); + curl_multi_cleanup(multi); curl_global_cleanup(); return res; diff --git a/tests/libtest/lib753.c b/tests/libtest/lib753.c index ea3f0268af01..19194c4646a5 100644 --- a/tests/libtest/lib753.c +++ b/tests/libtest/lib753.c @@ -27,7 +27,7 @@ #include "memdebug.h" struct t753_transfer_status { - CURL *easy; + CURL *curl; const char *name; bool pause; bool is_paused; @@ -56,49 +56,49 @@ static size_t t753_hd_cb(char *ptr, size_t size, size_t nmemb, void *userp) curl_mfprintf(stderr, "[%s] hd_cb '%.*s'\n", st->name, (int)len, ptr); if(!strcmp("230 Welcome you silly person\r\n", ptr)) { st->seen_welcome = TRUE; - st->easy = NULL; + st->curl = NULL; } return len; } static bool t753_setup(const char *URL, const char *name, - CURL **peasy, + CURL **pcurl, struct t753_transfer_status *st) { - CURL *easy = NULL; + CURL *curl = NULL; CURLcode res = CURLE_OK; - *peasy = NULL; + *pcurl = NULL; memset(st, 0, sizeof(*st)); st->name = name; - st->easy = easy; + st->curl = curl; st->pause = TRUE; - easy_init(easy); + easy_init(curl); - easy_setopt(easy, CURLOPT_URL, URL); - easy_setopt(easy, CURLOPT_WRITEFUNCTION, t753_write_cb); - easy_setopt(easy, CURLOPT_WRITEDATA, st); - easy_setopt(easy, CURLOPT_HEADERFUNCTION, t753_hd_cb); - easy_setopt(easy, CURLOPT_HEADERDATA, st); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_WRITEFUNCTION, t753_write_cb); + easy_setopt(curl, CURLOPT_WRITEDATA, st); + easy_setopt(curl, CURLOPT_HEADERFUNCTION, t753_hd_cb); + easy_setopt(curl, CURLOPT_HEADERDATA, st); - easy_setopt(easy, CURLOPT_NOPROGRESS, 1L); - easy_setopt(easy, CURLOPT_DEBUGDATA, &debug_config); - easy_setopt(easy, CURLOPT_DEBUGFUNCTION, libtest_debug_cb); - easy_setopt(easy, CURLOPT_VERBOSE, 1L); + easy_setopt(curl, CURLOPT_NOPROGRESS, 1L); + easy_setopt(curl, CURLOPT_DEBUGDATA, &debug_config); + easy_setopt(curl, CURLOPT_DEBUGFUNCTION, libtest_debug_cb); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); - *peasy = easy; + *pcurl = curl; return TRUE; test_cleanup: - if(easy) - curl_easy_cleanup(easy); + if(curl) + curl_easy_cleanup(curl); return FALSE; } static CURLcode test_lib753(const char *URL) { - CURL *easy1 = NULL, *easy2 = NULL; + CURL *curl1 = NULL, *curl2 = NULL; CURLM *multi = NULL; struct t753_transfer_status st1, st2; CURLcode res = CURLE_OK; @@ -119,10 +119,10 @@ static CURLcode test_lib753(const char *URL) goto test_cleanup; } - if(!t753_setup(URL, "EASY1", &easy1, &st1)) + if(!t753_setup(URL, "EASY1", &curl1, &st1)) goto test_cleanup; - multi_add_handle(multi, easy1); + multi_add_handle(multi, curl1); multi_perform(multi, &still_running); abort_on_test_timeout(); @@ -142,14 +142,14 @@ static CURLcode test_lib753(const char *URL) * that the connection is NOT reused, e.g. all FTP commands * are sent again on the new connection. */ - if(easy1 && st1.seen_welcome) { - curl_easy_cleanup(easy1); - easy1 = NULL; - if(!easy2) { - if(!t753_setup(URL, "EASY2", &easy2, &st2)) + if(curl1 && st1.seen_welcome) { + curl_easy_cleanup(curl1); + curl1 = NULL; + if(!curl2) { + if(!t753_setup(URL, "EASY2", &curl2, &st2)) goto test_cleanup; st2.pause = FALSE; - multi_add_handle(multi, easy2); + multi_add_handle(multi, curl2); } } @@ -173,10 +173,10 @@ static CURLcode test_lib753(const char *URL) if(res) curl_mfprintf(stderr, "ERROR: %s\n", curl_easy_strerror(res)); - if(easy1) - curl_easy_cleanup(easy1); - if(easy2) - curl_easy_cleanup(easy2); + if(curl1) + curl_easy_cleanup(curl1); + if(curl2) + curl_easy_cleanup(curl2); curl_multi_cleanup(multi); curl_global_cleanup(); diff --git a/tests/libtest/lib758.c b/tests/libtest/lib758.c index e9fe4ea2c98b..35e60cc04f50 100644 --- a/tests/libtest/lib758.c +++ b/tests/libtest/lib758.c @@ -146,12 +146,12 @@ static int t758_addFd(struct t758_Sockets *sockets, curl_socket_t fd, /** * Callback invoked by curl to poll reading / writing of a socket. */ -static int t758_curlSocketCallback(CURL *easy, curl_socket_t s, int action, +static int t758_curlSocketCallback(CURL *curl, curl_socket_t s, int action, void *userp, void *socketp) { struct t758_ReadWriteSockets *sockets = userp; - (void)easy; + (void)curl; (void)socketp; t758_ctx.socket_calls++; @@ -235,13 +235,13 @@ t758_set_ssl_ctx_callback(CURL *curl, void *ssl_ctx, void *clientp) /** * Check for curl completion. */ -static int t758_checkForCompletion(CURLM *curl, int *success) +static int t758_checkForCompletion(CURLM *multi, int *success) { int result = 0; *success = 0; while(1) { int numMessages; - CURLMsg *message = curl_multi_info_read(curl, &numMessages); + CURLMsg *message = curl_multi_info_read(multi, &numMessages); if(!message) break; if(message->msg == CURLMSG_DONE) { @@ -296,11 +296,12 @@ static void t758_updateFdSet(struct t758_Sockets *sockets, fd_set* fdset, } } -static CURLMcode t758_saction(CURLM *curl, curl_socket_t s, +static CURLMcode t758_saction(CURLM *multi, curl_socket_t s, int evBitmask, const char *info) { int numhandles = 0; - CURLMcode result = curl_multi_socket_action(curl, s, evBitmask, &numhandles); + CURLMcode result = curl_multi_socket_action(multi, s, evBitmask, + &numhandles); if(result != CURLM_OK) { curl_mfprintf(stderr, "%s Curl error on %s (%i) %s\n", t758_tag(), info, result, curl_multi_strerror(result)); @@ -311,7 +312,7 @@ static CURLMcode t758_saction(CURLM *curl, curl_socket_t s, /** * Invoke curl when a file descriptor is set. */ -static CURLMcode t758_checkFdSet(CURLM *curl, struct t758_Sockets *sockets, +static CURLMcode t758_checkFdSet(CURLM *multi, struct t758_Sockets *sockets, fd_set *fdset, int evBitmask, const char *name) { @@ -319,7 +320,7 @@ static CURLMcode t758_checkFdSet(CURLM *curl, struct t758_Sockets *sockets, CURLMcode result = CURLM_OK; for(i = 0; i < sockets->count; ++i) { if(FD_ISSET(sockets->sockets[i], fdset)) { - result = t758_saction(curl, sockets->sockets[i], evBitmask, name); + result = t758_saction(multi, sockets->sockets[i], evBitmask, name); if(result) break; } @@ -331,7 +332,8 @@ static CURLcode t758_one(const char *URL, int timer_fail_at, int socket_fail_at) { CURLcode res = CURLE_OK; - CURL *curl = NULL; CURLM *m = NULL; + CURL *curl = NULL; + CURLM *multi = NULL; struct t758_ReadWriteSockets sockets = {{NULL, 0, 0}, {NULL, 0, 0}}; int success = 0; struct curltime timeout = {0}; @@ -373,28 +375,28 @@ static CURLcode t758_one(const char *URL, int timer_fail_at, easy_setopt(curl, CURLOPT_SSL_CTX_FUNCTION, t758_set_ssl_ctx_callback); - multi_init(m); + multi_init(multi); - multi_setopt(m, CURLMOPT_SOCKETFUNCTION, t758_curlSocketCallback); - multi_setopt(m, CURLMOPT_SOCKETDATA, &sockets); + multi_setopt(multi, CURLMOPT_SOCKETFUNCTION, t758_curlSocketCallback); + multi_setopt(multi, CURLMOPT_SOCKETDATA, &sockets); - multi_setopt(m, CURLMOPT_TIMERFUNCTION, t758_curlTimerCallback); - multi_setopt(m, CURLMOPT_TIMERDATA, &timeout); + multi_setopt(multi, CURLMOPT_TIMERFUNCTION, t758_curlTimerCallback); + multi_setopt(multi, CURLMOPT_TIMERDATA, &timeout); - multi_add_handle(m, curl); + multi_add_handle(multi, curl); - if(t758_saction(m, CURL_SOCKET_TIMEOUT, 0, "timeout")) { + if(t758_saction(multi, CURL_SOCKET_TIMEOUT, 0, "timeout")) { res = TEST_ERR_MAJOR_BAD; goto test_cleanup; } - while(!t758_checkForCompletion(m, &success)) { + while(!t758_checkForCompletion(multi, &success)) { fd_set readSet, writeSet; curl_socket_t maxFd = 0; struct timeval tv = {0}; tv.tv_sec = 10; if(t758_ctx.fake_async_cert_verification_pending && - !t758_ctx.fake_async_cert_verification_finished) { + !t758_ctx.fake_async_cert_verification_finished) { if(sockets.read.count || sockets.write.count) { t758_msg("during verification there should be no sockets scheduled"); res = TEST_ERR_MAJOR_BAD; @@ -406,13 +408,13 @@ static CURLcode t758_one(const char *URL, int timer_fail_at, goto test_cleanup; } t758_ctx.fake_async_cert_verification_finished = 1; - if(t758_saction(m, CURL_SOCKET_TIMEOUT, 0, "timeout")) { + if(t758_saction(multi, CURL_SOCKET_TIMEOUT, 0, "timeout")) { t758_msg("spurious retry cert action"); res = TEST_ERR_MAJOR_BAD; goto test_cleanup; } curl_easy_pause(curl, CURLPAUSE_CONT); - if(t758_saction(m, CURL_SOCKET_TIMEOUT, 0, "timeout")) { + if(t758_saction(multi, CURL_SOCKET_TIMEOUT, 0, "timeout")) { t758_msg("unblocking transfer after cert verification finished"); res = TEST_ERR_MAJOR_BAD; goto test_cleanup; @@ -442,12 +444,12 @@ static CURLcode t758_one(const char *URL, int timer_fail_at, select_test((int)maxFd, &readSet, &writeSet, NULL, &tv); /* Check the sockets for reading / writing */ - if(t758_checkFdSet(m, &sockets.read, &readSet, CURL_CSELECT_IN, + if(t758_checkFdSet(multi, &sockets.read, &readSet, CURL_CSELECT_IN, "read")) { res = TEST_ERR_MAJOR_BAD; goto test_cleanup; } - if(t758_checkFdSet(m, &sockets.write, &writeSet, CURL_CSELECT_OUT, + if(t758_checkFdSet(multi, &sockets.write, &writeSet, CURL_CSELECT_OUT, "write")) { res = TEST_ERR_MAJOR_BAD; goto test_cleanup; @@ -456,7 +458,7 @@ static CURLcode t758_one(const char *URL, int timer_fail_at, if(timeout.tv_sec != (time_t)-1 && t758_getMicroSecondTimeout(&timeout) == 0) { /* Curl's timer has elapsed. */ - if(t758_saction(m, CURL_SOCKET_TIMEOUT, 0, "timeout")) { + if(t758_saction(multi, CURL_SOCKET_TIMEOUT, 0, "timeout")) { res = TEST_ERR_BAD_TIMEOUT; goto test_cleanup; } @@ -479,9 +481,9 @@ static CURLcode t758_one(const char *URL, int timer_fail_at, /* proper cleanup sequence */ t758_msg("cleanup"); - curl_multi_remove_handle(m, curl); + curl_multi_remove_handle(multi, curl); curl_easy_cleanup(curl); - curl_multi_cleanup(m); + curl_multi_cleanup(multi); curl_global_cleanup(); /* free local memory */ diff --git a/tests/libtest/lib766.c b/tests/libtest/lib766.c index 5cfc6bb270f3..53f1dd97b551 100644 --- a/tests/libtest/lib766.c +++ b/tests/libtest/lib766.c @@ -42,24 +42,24 @@ static int sockopt_766(void *clientp, static CURLcode test_lib766(const char *URL) { - CURL *easy = NULL; + CURL *curl = NULL; CURLcode res = CURLE_OK; start_test_timing(); res_global_init(CURL_GLOBAL_ALL); - easy_init(easy); - easy_setopt(easy, CURLOPT_VERBOSE, 1L); - easy_setopt(easy, CURLOPT_URL, URL); - easy_setopt(easy, CURLOPT_FTPPORT, "-"); - easy_setopt(easy, CURLOPT_SOCKOPTFUNCTION, sockopt_766); + easy_init(curl); + easy_setopt(curl, CURLOPT_VERBOSE, 1L); + easy_setopt(curl, CURLOPT_URL, URL); + easy_setopt(curl, CURLOPT_FTPPORT, "-"); + easy_setopt(curl, CURLOPT_SOCKOPTFUNCTION, sockopt_766); - res = curl_easy_perform(easy); + res = curl_easy_perform(curl); test_cleanup: - curl_easy_cleanup(easy); + curl_easy_cleanup(curl); curl_global_cleanup(); return res; diff --git a/tests/libtest/test613.pl b/tests/libtest/test613.pl index 48179833f3fc..d45e2e4e960a 100755 --- a/tests/libtest/test613.pl +++ b/tests/libtest/test613.pl @@ -59,6 +59,14 @@ sub errout { utime time, timegm(0,0,12,1,0,100), "plainfile.txt"; chmod 0666, "plainfile.txt"; + open(FILE, ">emptyfile.txt") || errout "$!"; + binmode FILE; + close(FILE); + # The mtime is specifically chosen to be an even number so that it can be + # represented exactly on a FAT file system. + utime time, timegm(0,0,12,1,0,100), "emptyfile.txt"; + chmod 0666, "emptyfile.txt"; + open(FILE, ">rofile.txt") || errout "$!"; binmode FILE; print FILE "Read-only test file to support curl test suite\n"; @@ -83,6 +91,7 @@ sub errout { } chmod 0666, "$dirname/rofile.txt"; unlink "$dirname/rofile.txt"; + unlink "$dirname/emptyfile.txt"; unlink "$dirname/plainfile.txt"; rmdir "$dirname/asubdir"; diff --git a/tests/libtest/testtrace.c b/tests/libtest/testtrace.c index 8aa377fb0c31..092aca8385bf 100644 --- a/tests/libtest/testtrace.c +++ b/tests/libtest/testtrace.c @@ -81,7 +81,7 @@ void debug_dump(const char *timebuf, const char *text, fflush(stream); } -int libtest_debug_cb(CURL *handle, curl_infotype type, +int libtest_debug_cb(CURL *curl, curl_infotype type, char *data, size_t size, void *userp) { struct libtest_trace_cfg *trace_cfg = userp; @@ -89,7 +89,7 @@ int libtest_debug_cb(CURL *handle, curl_infotype type, char timebuf[20]; char *timestr; - (void)handle; + (void)curl; timebuf[0] = '\0'; timestr = &timebuf[0]; @@ -157,7 +157,7 @@ static void log_line_start(FILE *log, const char *idsbuf, curl_infotype type) } /* callback for CURLOPT_DEBUGFUNCTION (used in client tests) */ -int cli_debug_cb(CURL *handle, curl_infotype type, +int cli_debug_cb(CURL *curl, curl_infotype type, char *data, size_t size, void *userp) { FILE *output = stderr; @@ -166,11 +166,11 @@ int cli_debug_cb(CURL *handle, curl_infotype type, char idsbuf[60]; curl_off_t xfer_id, conn_id; - (void)handle; + (void)curl; (void)userp; - if(!curl_easy_getinfo(handle, CURLINFO_XFER_ID, &xfer_id) && xfer_id >= 0) { - if(!curl_easy_getinfo(handle, CURLINFO_CONN_ID, &conn_id) && + if(!curl_easy_getinfo(curl, CURLINFO_XFER_ID, &xfer_id) && xfer_id >= 0) { + if(!curl_easy_getinfo(curl, CURLINFO_CONN_ID, &conn_id) && conn_id >= 0) { curl_msnprintf(idsbuf, sizeof(idsbuf), "[%" CURL_FORMAT_CURL_OFF_T "-" diff --git a/tests/libtest/testtrace.h b/tests/libtest/testtrace.h index 79d2f8529d96..e066595b2cef 100644 --- a/tests/libtest/testtrace.h +++ b/tests/libtest/testtrace.h @@ -36,11 +36,11 @@ struct libtest_trace_cfg { extern struct libtest_trace_cfg debug_config; -int libtest_debug_cb(CURL *handle, curl_infotype type, +int libtest_debug_cb(CURL *curl, curl_infotype type, char *data, size_t size, void *userp); /* callback for CURLOPT_DEBUGFUNCTION (client tests) */ -int cli_debug_cb(CURL *handle, curl_infotype type, +int cli_debug_cb(CURL *curl, curl_infotype type, char *data, size_t size, void *userp); #endif /* HEADER_LIBTEST_TESTTRACE_H */ diff --git a/tests/requirements.txt b/tests/requirements.txt index 501c1fc69359..0d08837bd745 100644 --- a/tests/requirements.txt +++ b/tests/requirements.txt @@ -2,4 +2,4 @@ # # SPDX-License-Identifier: curl -impacket>=0.11.0,<=0.12.0 +impacket>=0.11.0,<=0.13.0 diff --git a/tests/runner.pm b/tests/runner.pm index 1eef1f5b9d3f..8b9c0c3f2e51 100644 --- a/tests/runner.pm +++ b/tests/runner.pm @@ -299,7 +299,7 @@ sub prepro { my (@entiretest) = @_; my $show = 1; my @out; - my $data_crlf; + my $data_crlf = ""; my @pshow; my @altshow; my $plvl; @@ -351,21 +351,26 @@ sub prepro { next; } if($show) { - # The processor does CRLF replacements in the sections if - # necessary since those parts might be read by separate servers. - if($s =~ /^ */) { - if($1 =~ /crlf="yes"/) { - $data_crlf = 1; + # The processor does CRLF replacements in the and + # sections if necessary since those parts might be read by separate + # servers. + if($s =~ /^ *<(data|connect)(.*)\>/) { + if($2 =~ /crlf="yes"/) { + $data_crlf = "yes"; + } + elsif($2 =~ /crlf="headers"/) { + $data_crlf = "headers"; } } - elsif(($s =~ /^ *<\/data/) && $data_crlf) { - $data_crlf = 0; + elsif(($s =~ /^ *<\/(data|connect)/) && $data_crlf ne "") { + $data_crlf = ""; } subvariables(\$s, $testnum, "%"); subbase64(\$s); subsha256base64file(\$s); substrippemfile(\$s); - subnewlines(0, \$s) if($data_crlf); + subnewlines(1, \$s) if($data_crlf eq "yes"); + subnewlines(0, \$s) if($data_crlf eq "headers"); push @out, $s; } } @@ -758,7 +763,6 @@ sub singletest_prepare { logmsg " $testnum: IGNORED: Section client=>file has no name attribute\n"; return -1; } - my $fileContent = join('', @inputfile); # make directories if needed my $path = dirname($filename); @@ -775,11 +779,15 @@ sub singletest_prepare { } if(open(my $outfile, ">", "$filename")) { binmode $outfile; # for crapage systems, use binary + if($fileattr{'nonewline'}) { # cut off the final newline - chomp($fileContent); + chomp($inputfile[-1]); + } + if($fileattr{'crlf'}) { + subnewlines(1, \$_) for @inputfile; } - print $outfile $fileContent; + print $outfile join('', @inputfile); close($outfile); } else { logmsg "ERROR: cannot write $filename\n"; @@ -947,6 +955,10 @@ sub singletest_run { chomp($stdintest[-1]); } + if($hash{'crlf'}) { + subnewlines(1, \$_) for @stdintest; + } + writearray($stdinfile, \@stdintest); $cmdargs .= " <$stdinfile"; @@ -1136,6 +1148,15 @@ sub singletest_postcheck { } } } + + if($checktests) { + loadtest("${TESTDIR}/test${testnum}"); # load the raw original data + if(checktest()) { + logmsg " $testnum: postcheck FAILED: issue(s) found in test data\n"; + return -1; + } + } + return 0; } diff --git a/tests/runtests.pl b/tests/runtests.pl index d836841a296d..761056a8ed6c 100755 --- a/tests/runtests.pl +++ b/tests/runtests.pl @@ -1191,6 +1191,10 @@ sub singletest_shouldrun { } } + if($why && $checktests && checktest()) { + logmsg "Warning: issue(s) found in test data: ${TESTDIR}/test${testnum}\n"; + } + return ($why, $errorreturncode); } @@ -1306,7 +1310,12 @@ sub singletest_check { } if($hash{'crlf'}) { - subnewlines(0, \$_) for @validstdout; + if($hash{'crlf'} eq "headers") { + subnewlines(0, \$_) for @validstdout; + } + else { + subnewlines(1, \$_) for @validstdout; + } } $res = compare($runnerid, $testnum, $testname, "stdout", \@actual, \@validstdout); @@ -1355,7 +1364,12 @@ sub singletest_check { } if($hash{'crlf'}) { - subnewlines(0, \$_) for @validstderr; + if($hash{'crlf'} eq "headers") { + subnewlines(0, \$_) for @validstderr; + } + else { + subnewlines(1, \$_) for @validstderr; + } } $res = compare($runnerid, $testnum, $testname, "stderr", \@actual, \@validstderr); @@ -1404,7 +1418,12 @@ sub singletest_check { } if($hash{'crlf'}) { - subnewlines(1, \$_) for @protocol; + if($hash{'crlf'} eq "headers") { + subnewlines(0, \$_) for @protocol; + } + else { + subnewlines(1, \$_) for @protocol; + } } if((!$out[0] || ($out[0] eq "")) && $protocol[0]) { @@ -1446,7 +1465,12 @@ sub singletest_check { chomp($replycheckpart[-1]); } if($replycheckpartattr{'crlf'}) { - subnewlines(0, \$_) for @replycheckpart; + if($replycheckpartattr{'crlf'} eq "headers") { + subnewlines(0, \$_) for @replycheckpart; + } + else { + subnewlines(1, \$_) for @replycheckpart; + } } push(@reply, @replycheckpart); } @@ -1467,7 +1491,12 @@ sub singletest_check { normalize_text(\@reply); } if($replyattr{'crlf'}) { - subnewlines(0, \$_) for @reply; + if($replyattr{'crlf'} eq "headers") { + subnewlines(0, \$_) for @reply; + } + else { + subnewlines(1, \$_) for @reply; + } } } @@ -1560,7 +1589,12 @@ sub singletest_check { } if($hash{'crlf'}) { - subnewlines(0, \$_) for @proxyprot; + if($hash{'crlf'} eq "headers") { + subnewlines(0, \$_) for @proxyprot; + } + else { + subnewlines(1, \$_) for @proxyprot; + } } $res = compare($runnerid, $testnum, $testname, "proxy", \@out, \@proxyprot); @@ -1618,7 +1652,12 @@ sub singletest_check { normalize_text(\@generated); } if($hash{'crlf'}) { - subnewlines(0, \$_) for @outfile; + if($hash{'crlf'} eq "headers") { + subnewlines(0, \$_) for @outfile; + } + else { + subnewlines(1, \$_) for @outfile; + } } for my $strip (@stripfilepar) { @@ -2385,6 +2424,10 @@ sub pickrunner { # execute in scrambled order $scrambleorder=1; } + elsif($ARGV[0] eq "-w") { + # verify test data + $checktests=1; + } elsif($ARGV[0] =~ /^-t(.*)/) { # torture $torture=1; @@ -2528,6 +2571,7 @@ sub pickrunner { -u error instead of warning on server unexpectedly alive -v verbose output -vc path use this curl only to verify the existing servers + -w check test data [num] like "5 6 9" or " 5 to 22 " to run those tests only [!num] like "!5 !6 !9" to disable those tests [~num] like "~5 ~6 ~9" to ignore the result of those tests diff --git a/tests/server/dnsd.c b/tests/server/dnsd.c index 3f8f5b37a7d3..93edcb2397c6 100644 --- a/tests/server/dnsd.c +++ b/tests/server/dnsd.c @@ -83,7 +83,7 @@ static const char *type2string(unsigned short qtype) * Return query (qname + type + class), type and id. */ static int store_incoming(const unsigned char *data, size_t size, - unsigned char *qbuf, size_t *qlen, + unsigned char *qbuf, size_t qbuflen, size_t *qlen, unsigned short *qtype, unsigned short *idp) { FILE *server; @@ -159,6 +159,12 @@ static int store_incoming(const unsigned char *data, size_t size, (void) get16bit(&data, &size); *qlen = qsize - size; /* total size of the query */ + if(*qlen > qbuflen) { + logmsg("dnsd: query too large: %lu > %lu", + (unsigned long)*qlen, (unsigned long)qbuflen); + fclose(server); + return -1; + } memcpy(qbuf, qptr, *qlen); } else @@ -616,7 +622,7 @@ static int test_dnsd(int argc, char **argv) per test case */ read_instructions(); - store_incoming(inbuffer, n, qbuf, &qlen, &qtype, &id); + store_incoming(inbuffer, n, qbuf, sizeof(qbuf), &qlen, &qtype, &id); set_advisor_read_lock(loglockfile); serverlogslocked = 1; diff --git a/tests/server/rtspd.c b/tests/server/rtspd.c index 5e8bdc15cea3..d13b8ff9a96b 100644 --- a/tests/server/rtspd.c +++ b/tests/server/rtspd.c @@ -631,7 +631,7 @@ static int rtspd_get_request(curl_socket_t sock, struct rtspd_httprequest *req) else { if(req->skip) /* we are instructed to not read the entire thing, so we make sure to - only read what we're supposed to and NOT read the enire thing the + only read what we're supposed to and NOT read the entire thing the client wants to send! */ got = sread(sock, reqbuf + req->offset, req->cl); else diff --git a/tests/server/tftpd.c b/tests/server/tftpd.c index 64f005dfe5f4..31ae5c8a3943 100644 --- a/tests/server/tftpd.c +++ b/tests/server/tftpd.c @@ -310,7 +310,7 @@ static struct tftphdr *rw_init(int x) { newline = 0; /* init crlf flag */ prevchar = -1; - bfs[0].counter = BF_ALLOC; /* pass out the first buffer */ + bfs[0].counter = BF_ALLOC; /* pass out the first buffer */ current = 0; bfs[1].counter = BF_FREE; nextone = x; /* ahead or behind? */ diff --git a/tests/test1139.pl b/tests/test1139.pl index cabb893d6985..cebf58ccf207 100755 --- a/tests/test1139.pl +++ b/tests/test1139.pl @@ -90,7 +90,7 @@ sub scanmdpage { } } foreach my $m (@words) { - my @g = grep(/$m/, @m); + my @g = grep(/$m\b/, @m); if(!$g[0]) { print STDERR "Missing mention of $m in $file\n"; $errors++; diff --git a/tests/testutil.pm b/tests/testutil.pm index 3477d5bb57f8..126f83e021f2 100644 --- a/tests/testutil.pm +++ b/tests/testutil.pm @@ -147,6 +147,10 @@ sub subbase64 { $$thing =~ s/%%DAYS%%/%alternatives[$d,$d2]/; } + $$thing =~ s/%SP/ /g; # space + $$thing =~ s/%TAB/\t/g; # horizontal tab + $$thing =~ s/%CR/\r/g; # carriage return aka \r aka 0x0d + # include a file $$thing =~ s/%include ([^%]*)%[\n\r]+/includefile($1)/ge; } @@ -161,8 +165,9 @@ sub subnewlines { return; } - if(($$thing =~ /^HTTP\/(1.1|1.0|2|3) [1-5][^\x0d]*\z/) || - ($$thing =~ /^(GET|POST|PUT|DELETE) \S+ HTTP\/\d+(\.\d+)?/) || + if(($$thing =~ /^HTTP\/(1.1|1.0|2|3) ([1-5]|9)[^\x0d]*\z/) || + ($$thing =~ /^(GET|HEAD|POST|PUT|DELETE|CONNECT) \S+ HTTP\/\d+(\.\d+)?/) || + ($$thing =~ /^(SETUP|GET_PARAMETER|OPTIONS|ANNOUNCE|DESCRIBE) \S+ RTSP\/\d+(\.\d+)?/) || (($$thing =~ /^[a-z0-9_-]+: [^\x0d]*\z/i) && # skip curl error messages ($$thing !~ /^curl: \(\d+\) /))) { diff --git a/tests/unit/unit1303.c b/tests/unit/unit1303.c index 49ff3e69f2ce..1ce367b6a796 100644 --- a/tests/unit/unit1303.c +++ b/tests/unit/unit1303.c @@ -148,7 +148,7 @@ static CURLcode test_unit1303(const char *arg) timediff_t timeout; NOW(run[i].now_s, run[i].now_us); TIMEOUTS(run[i].timeout_ms, run[i].connecttimeout_ms); - timeout = Curl_timeleft(easy, &now, run[i].connecting); + timeout = Curl_timeleft(easy, &now, run[i].connecting); if(timeout != run[i].result) fail(run[i].comment); } diff --git a/tests/unit/unit2604.c b/tests/unit/unit2604.c index 3d57f16c8ff1..7cb82bbcf1cf 100644 --- a/tests/unit/unit2604.c +++ b/tests/unit/unit2604.c @@ -68,6 +68,10 @@ static CURLcode test_unit2604(const char *arg) { "\"\" c", "", "", "", CURLE_QUOTE_ERROR}, { "foo\"", "foo\"", "", "/", CURLE_OK}, { "foo \"", "foo", "\"", "/", CURLE_OK}, + { " \t\t \t ", "", "", "/", CURLE_QUOTE_ERROR}, + { " ", "", "", "/", CURLE_QUOTE_ERROR}, + { "", "", "", "/", CURLE_QUOTE_ERROR}, + { " \r \n ", "\r", "\n ", "/", CURLE_OK}, { NULL, NULL, NULL, NULL, CURLE_OK } }; diff --git a/tests/unit/unit3200.c b/tests/unit/unit3200.c index 5c3e4d14ad47..15abba25db79 100644 --- a/tests/unit/unit3200.c +++ b/tests/unit/unit3200.c @@ -76,12 +76,13 @@ static CURLcode test_unit3200(const char *arg) #endif size_t i; - int rc = 0; + CURLcode result = CURLE_OK; for(i = 0; i < CURL_ARRAYSIZE(filecontents); i++) { FILE *fp; struct dynbuf buf; size_t len = 4096; char *line; + bool eof; curlx_dyn_init(&buf, len); fp = curlx_fopen(arg, "wb"); @@ -95,63 +96,63 @@ static CURLcode test_unit3200(const char *arg) curl_mfprintf(stderr, "Test %zd...", i); switch(i) { case 0: - rc = Curl_get_line(&buf, fp); + result = Curl_get_line(&buf, fp, &eof); line = curlx_dyn_ptr(&buf); - fail_unless(rc && line && !strcmp("LINE1\n", line), + fail_unless(!result && line && !strcmp("LINE1\n", line), "First line failed (1)"); - rc = Curl_get_line(&buf, fp); + result = Curl_get_line(&buf, fp, &eof); line = curlx_dyn_ptr(&buf); - fail_unless(rc && line && !strcmp("LINE2 NEWLINE\n", line), + fail_unless(!result && line && !strcmp("LINE2 NEWLINE\n", line), "Second line failed (1)"); - rc = Curl_get_line(&buf, fp); - abort_unless(!curlx_dyn_len(&buf), "Missed EOF (1)"); + result = Curl_get_line(&buf, fp, &eof); + abort_unless(eof, "Missed EOF (1)"); break; case 1: - rc = Curl_get_line(&buf, fp); + result = Curl_get_line(&buf, fp, &eof); line = curlx_dyn_ptr(&buf); - fail_unless(rc && line && !strcmp("LINE1\n", line), + fail_unless(!result && line && !strcmp("LINE1\n", line), "First line failed (2)"); - rc = Curl_get_line(&buf, fp); + result = Curl_get_line(&buf, fp, &eof); line = curlx_dyn_ptr(&buf); - fail_unless(rc && line && !strcmp("LINE2 NONEWLINE\n", line), + fail_unless(!result && line && !strcmp("LINE2 NONEWLINE\n", line), "Second line failed (2)"); - rc = Curl_get_line(&buf, fp); - abort_unless(!curlx_dyn_len(&buf), "Missed EOF (2)"); + result = Curl_get_line(&buf, fp, &eof); + abort_unless(eof, "Missed EOF (2)"); break; case 2: - rc = Curl_get_line(&buf, fp); + result = Curl_get_line(&buf, fp, &eof); line = curlx_dyn_ptr(&buf); - fail_unless(rc && line && !strcmp("LINE1\n", line), + fail_unless(!result && line && !strcmp("LINE1\n", line), "First line failed (3)"); - rc = Curl_get_line(&buf, fp); + result = Curl_get_line(&buf, fp, &eof); fail_unless(!curlx_dyn_len(&buf), "Did not detect max read on EOF (3)"); break; case 3: - rc = Curl_get_line(&buf, fp); + result = Curl_get_line(&buf, fp, &eof); line = curlx_dyn_ptr(&buf); - fail_unless(rc && line && !strcmp("LINE1\n", line), + fail_unless(!result && line && !strcmp("LINE1\n", line), "First line failed (4)"); - rc = Curl_get_line(&buf, fp); + result = Curl_get_line(&buf, fp, &eof); fail_unless(!curlx_dyn_len(&buf), "Did not ignore partial on EOF (4)"); break; case 4: - rc = Curl_get_line(&buf, fp); + result = Curl_get_line(&buf, fp, &eof); line = curlx_dyn_ptr(&buf); - fail_unless(rc && line && !strcmp("LINE1\n", line), + fail_unless(!result && line && !strcmp("LINE1\n", line), "First line failed (5)"); - rc = Curl_get_line(&buf, fp); + result = Curl_get_line(&buf, fp, &eof); fail_unless(!curlx_dyn_len(&buf), "Did not bail out on too long line"); break; case 5: - rc = Curl_get_line(&buf, fp); + result = Curl_get_line(&buf, fp, &eof); line = curlx_dyn_ptr(&buf); - fail_unless(rc && line && !strcmp("LINE1\x1aTEST\n", line), + fail_unless(!result && line && !strcmp("LINE1\x1aTEST\n", line), "Missed/Misinterpreted ^Z (6)"); - rc = Curl_get_line(&buf, fp); - abort_unless(!curlx_dyn_len(&buf), "Missed EOF (6)"); + result = Curl_get_line(&buf, fp, &eof); + abort_unless(eof, "Missed EOF (6)"); break; default: abort_unless(1, "Unknown case"); @@ -161,7 +162,7 @@ static CURLcode test_unit3200(const char *arg) curlx_fclose(fp); curl_mfprintf(stderr, "OK\n"); } - return (CURLcode)rc; + return result; #endif