mirror of
https://github.com/moparisthebest/curl
synced 2024-12-23 00:28:48 -05:00
wording: avoid blacklist/whitelist stereotypes
Instead of discussing if there's value or meaning (implied or not) in the colors, let's use words without the same possibly negative associations. Closes #5546
This commit is contained in:
parent
f54b6c4bc2
commit
eab2f95c0d
@ -346,7 +346,7 @@ before_script:
|
|||||||
script:
|
script:
|
||||||
- ./scripts/travis/script.sh || travis_terminate 1
|
- ./scripts/travis/script.sh || travis_terminate 1
|
||||||
|
|
||||||
# whitelist branches to avoid testing feature branches twice (as branch and as pull request)
|
# select branches to avoid testing feature branches twice (as branch and as pull request)
|
||||||
branches:
|
branches:
|
||||||
only:
|
only:
|
||||||
- master
|
- master
|
||||||
|
@ -285,7 +285,7 @@ test_script:
|
|||||||
echo APPVEYOR_API_URL=%APPVEYOR_API_URL% &&
|
echo APPVEYOR_API_URL=%APPVEYOR_API_URL% &&
|
||||||
bash.exe -e -l -c "cd /c/projects/curl/tests && ./runtests.pl -a -b$(($(echo '%APPVEYOR_API_URL%' | cut -d'/' -f3 | cut -d':' -f2)+1)) -p !flaky %DISABLED_TESTS%" )
|
bash.exe -e -l -c "cd /c/projects/curl/tests && ./runtests.pl -a -b$(($(echo '%APPVEYOR_API_URL%' | cut -d'/' -f3 | cut -d':' -f2)+1)) -p !flaky %DISABLED_TESTS%" )
|
||||||
|
|
||||||
# whitelist branches to avoid testing feature branches twice (as branch and as pull request)
|
# select branches to avoid testing feature branches twice (as branch and as pull request)
|
||||||
branches:
|
branches:
|
||||||
only:
|
only:
|
||||||
- master
|
- master
|
||||||
|
@ -9,7 +9,7 @@ check that it adheres to our [Source Code Style guide](CODE_STYLE.md).
|
|||||||
|
|
||||||
## Command line options
|
## Command line options
|
||||||
|
|
||||||
`-W[file]` whitelists that file and excludes it from being checked. Helpful
|
`-W[file]` skip that file and excludes it from being checked. Helpful
|
||||||
when, for example, one of the files is generated.
|
when, for example, one of the files is generated.
|
||||||
|
|
||||||
`-D[dir]` directory name to prepend to file names when accessing them.
|
`-D[dir]` directory name to prepend to file names when accessing them.
|
||||||
@ -158,5 +158,5 @@ instances are ignored and nothing extra.
|
|||||||
This is a method we've transitioned away from. Use inline ignores as far as
|
This is a method we've transitioned away from. Use inline ignores as far as
|
||||||
possible.
|
possible.
|
||||||
|
|
||||||
Make a `checksrc.whitelist` file in the directory of the source code with the
|
Make a `checksrc.skip` file in the directory of the source code with the
|
||||||
false positive, and include the full offending line into this file.
|
false positive, and include the full offending line into this file.
|
||||||
|
@ -78,7 +78,7 @@
|
|||||||
depending on the OS or build configuration. The --ssl-no-revoke option was
|
depending on the OS or build configuration. The --ssl-no-revoke option was
|
||||||
introduced in 7.44.0 to disable revocation checking but currently is only
|
introduced in 7.44.0 to disable revocation checking but currently is only
|
||||||
supported for Schannel (the native Windows SSL library), with an exception
|
supported for Schannel (the native Windows SSL library), with an exception
|
||||||
in the case of Windows' Untrusted Publishers blacklist which it seems can't
|
in the case of Windows' Untrusted Publishers block list which it seems can't
|
||||||
be bypassed. This option may have broader support to accommodate other SSL
|
be bypassed. This option may have broader support to accommodate other SSL
|
||||||
backends in the future.
|
backends in the future.
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
.\" * | (__| |_| | _ <| |___
|
.\" * | (__| |_| | _ <| |___
|
||||||
.\" * \___|\___/|_| \_\_____|
|
.\" * \___|\___/|_| \_\_____|
|
||||||
.\" *
|
.\" *
|
||||||
.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
|
.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
.\" *
|
.\" *
|
||||||
.\" * This software is licensed as described in the file COPYING, which
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
.\" * you should have received as part of this distribution. The terms
|
.\" * you should have received as part of this distribution. The terms
|
||||||
@ -22,7 +22,7 @@
|
|||||||
.\"
|
.\"
|
||||||
.TH CURLMOPT_PIPELINING_SERVER_BL 3 "4 Nov 2014" "libcurl 7.39.0" "curl_multi_setopt options"
|
.TH CURLMOPT_PIPELINING_SERVER_BL 3 "4 Nov 2014" "libcurl 7.39.0" "curl_multi_setopt options"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
CURLMOPT_PIPELINING_SERVER_BL \- pipelining server blacklist
|
CURLMOPT_PIPELINING_SERVER_BL \- pipelining server block list
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
@ -31,28 +31,28 @@ CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_PIPELINING_SERVER_BL, char *
|
|||||||
No function since pipelining was removed in 7.62.0.
|
No function since pipelining was removed in 7.62.0.
|
||||||
|
|
||||||
Pass a \fBservers\fP array of char *, ending with a NULL entry. This is a list
|
Pass a \fBservers\fP array of char *, ending with a NULL entry. This is a list
|
||||||
of server types prefixes (in the Server: HTTP header) that are blacklisted
|
of server types prefixes (in the Server: HTTP header) that are blocked from
|
||||||
from pipelining, i.e server types that are known to not support HTTP
|
pipelining, i.e server types that are known to not support HTTP
|
||||||
pipelining. The array is copied by libcurl.
|
pipelining. The array is copied by libcurl.
|
||||||
|
|
||||||
Note that the comparison matches if the Server: header begins with the string
|
Note that the comparison matches if the Server: header begins with the string
|
||||||
in the blacklist, i.e "Server: Ninja 1.2.3" and "Server: Ninja 1.4.0" can
|
in the block list, i.e "Server: Ninja 1.2.3" and "Server: Ninja 1.4.0" can
|
||||||
both be blacklisted by having "Ninja" in the backlist.
|
both be blocked by having "Ninja" in the list.
|
||||||
|
|
||||||
Pass a NULL pointer to clear the blacklist.
|
Pass a NULL pointer to clear the block list.
|
||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
The default value is NULL, which means that there is no blacklist.
|
The default value is NULL, which means that there is no block list.
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
.nf
|
.nf
|
||||||
server_blacklist[] =
|
char *server_block_list[] =
|
||||||
{
|
{
|
||||||
"Microsoft-IIS/6.0",
|
"Microsoft-IIS/6.0",
|
||||||
"nginx/0.8.54",
|
"nginx/0.8.54",
|
||||||
NULL
|
NULL
|
||||||
};
|
};
|
||||||
|
|
||||||
curl_multi_setopt(m, CURLMOPT_PIPELINING_SERVER_BL, server_blacklist);
|
curl_multi_setopt(m, CURLMOPT_PIPELINING_SERVER_BL, server_block_list);
|
||||||
.fi
|
.fi
|
||||||
.SH AVAILABILITY
|
.SH AVAILABILITY
|
||||||
Added in 7.30.0
|
Added in 7.30.0
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
.\" * | (__| |_| | _ <| |___
|
.\" * | (__| |_| | _ <| |___
|
||||||
.\" * \___|\___/|_| \_\_____|
|
.\" * \___|\___/|_| \_\_____|
|
||||||
.\" *
|
.\" *
|
||||||
.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
|
.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
.\" *
|
.\" *
|
||||||
.\" * This software is licensed as described in the file COPYING, which
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
.\" * you should have received as part of this distribution. The terms
|
.\" * you should have received as part of this distribution. The terms
|
||||||
@ -22,7 +22,7 @@
|
|||||||
.\"
|
.\"
|
||||||
.TH CURLMOPT_PIPELINING_SITE_BL 3 "4 Nov 2014" "libcurl 7.39.0" "curl_multi_setopt options"
|
.TH CURLMOPT_PIPELINING_SITE_BL 3 "4 Nov 2014" "libcurl 7.39.0" "curl_multi_setopt options"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
CURLMOPT_PIPELINING_SITE_BL \- pipelining host blacklist
|
CURLMOPT_PIPELINING_SITE_BL \- pipelining host block list
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
#include <curl/curl.h>
|
#include <curl/curl.h>
|
||||||
|
|
||||||
@ -31,24 +31,24 @@ CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_PIPELINING_SITE_BL, char **h
|
|||||||
No function since pipelining was removed in 7.62.0.
|
No function since pipelining was removed in 7.62.0.
|
||||||
|
|
||||||
Pass a \fBhosts\fP array of char *, ending with a NULL entry. This is a list
|
Pass a \fBhosts\fP array of char *, ending with a NULL entry. This is a list
|
||||||
of sites that are blacklisted from pipelining, i.e sites that are known to not
|
of sites that are blocked from pipelining, i.e sites that are known to not
|
||||||
support HTTP pipelining. The array is copied by libcurl.
|
support HTTP pipelining. The array is copied by libcurl.
|
||||||
|
|
||||||
Pass a NULL pointer to clear the blacklist.
|
Pass a NULL pointer to clear the block list.
|
||||||
.SH DEFAULT
|
.SH DEFAULT
|
||||||
The default value is NULL, which means that there is no blacklist.
|
The default value is NULL, which means that there is no block list.
|
||||||
.SH PROTOCOLS
|
.SH PROTOCOLS
|
||||||
HTTP(S)
|
HTTP(S)
|
||||||
.SH EXAMPLE
|
.SH EXAMPLE
|
||||||
.nf
|
.nf
|
||||||
site_blacklist[] =
|
char *site_block_list[] =
|
||||||
{
|
{
|
||||||
"www.haxx.se",
|
"www.haxx.se",
|
||||||
"www.example.com:1234",
|
"www.example.com:1234",
|
||||||
NULL
|
NULL
|
||||||
};
|
};
|
||||||
|
|
||||||
curl_multi_setopt(m, CURLMOPT_PIPELINING_SITE_BL, site_blacklist);
|
curl_multi_setopt(m, CURLMOPT_PIPELINING_SITE_BL, site_block_list);
|
||||||
.fi
|
.fi
|
||||||
.SH AVAILABILITY
|
.SH AVAILABILITY
|
||||||
Added in 7.30.0
|
Added in 7.30.0
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
.\" * | (__| |_| | _ <| |___
|
.\" * | (__| |_| | _ <| |___
|
||||||
.\" * \___|\___/|_| \_\_____|
|
.\" * \___|\___/|_| \_\_____|
|
||||||
.\" *
|
.\" *
|
||||||
.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
|
.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
.\" *
|
.\" *
|
||||||
.\" * This software is licensed as described in the file COPYING, which
|
.\" * This software is licensed as described in the file COPYING, which
|
||||||
.\" * you should have received as part of this distribution. The terms
|
.\" * you should have received as part of this distribution. The terms
|
||||||
@ -65,7 +65,7 @@ additional \fIsetsockopt(2)\fP calls can of course be done on the socket at
|
|||||||
the user's discretion. A \fICURL_SOCKET_BAD\fP return value from the callback
|
the user's discretion. A \fICURL_SOCKET_BAD\fP return value from the callback
|
||||||
function will signal an unrecoverable error to libcurl and it will return
|
function will signal an unrecoverable error to libcurl and it will return
|
||||||
\fICURLE_COULDNT_CONNECT\fP from the function that triggered this callback.
|
\fICURLE_COULDNT_CONNECT\fP from the function that triggered this callback.
|
||||||
This return code can be used for IP address blacklisting.
|
This return code can be used for IP address block listing.
|
||||||
|
|
||||||
If you want to pass in a socket with an already established connection, pass
|
If you want to pass in a socket with an already established connection, pass
|
||||||
the socket back with this callback and then use
|
the socket back with this callback and then use
|
||||||
|
@ -42,7 +42,7 @@ supported for DarwinSSL, NSS and OpenSSL.
|
|||||||
Tells libcurl to disable certificate revocation checks for those SSL backends
|
Tells libcurl to disable certificate revocation checks for those SSL backends
|
||||||
where such behavior is present. This option is only supported for Schannel
|
where such behavior is present. This option is only supported for Schannel
|
||||||
(the native Windows SSL library), with an exception in the case of Windows'
|
(the native Windows SSL library), with an exception in the case of Windows'
|
||||||
Untrusted Publishers blacklist which it seems can't be bypassed. (Added in
|
Untrusted Publishers block list which it seems can't be bypassed. (Added in
|
||||||
7.44.0)
|
7.44.0)
|
||||||
.IP CURLSSLOPT_NO_PARTIALCHAIN
|
.IP CURLSSLOPT_NO_PARTIALCHAIN
|
||||||
Tells libcurl to not accept "partial" certificate chains, which it otherwise
|
Tells libcurl to not accept "partial" certificate chains, which it otherwise
|
||||||
|
@ -42,7 +42,7 @@ supported for DarwinSSL, NSS and OpenSSL.
|
|||||||
Tells libcurl to disable certificate revocation checks for those SSL backends
|
Tells libcurl to disable certificate revocation checks for those SSL backends
|
||||||
where such behavior is present. This option is only supported for Schannel
|
where such behavior is present. This option is only supported for Schannel
|
||||||
(the native Windows SSL library), with an exception in the case of Windows'
|
(the native Windows SSL library), with an exception in the case of Windows'
|
||||||
Untrusted Publishers blacklist which it seems can't be bypassed. (Added in
|
Untrusted Publishers block list which it seems can't be bypassed. (Added in
|
||||||
7.44.0)
|
7.44.0)
|
||||||
.IP CURLSSLOPT_NO_PARTIALCHAIN
|
.IP CURLSSLOPT_NO_PARTIALCHAIN
|
||||||
Tells libcurl to not accept "partial" certificate chains, which it otherwise
|
Tells libcurl to not accept "partial" certificate chains, which it otherwise
|
||||||
|
@ -377,12 +377,10 @@ typedef enum {
|
|||||||
will not be considered for pipelining */
|
will not be considered for pipelining */
|
||||||
CURLOPT(CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE, CURLOPTTYPE_OFF_T, 10),
|
CURLOPT(CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE, CURLOPTTYPE_OFF_T, 10),
|
||||||
|
|
||||||
/* a list of site names(+port) that are blacklisted from
|
/* a list of site names(+port) that are blocked from pipelining */
|
||||||
pipelining */
|
|
||||||
CURLOPT(CURLMOPT_PIPELINING_SITE_BL, CURLOPTTYPE_OBJECTPOINT, 11),
|
CURLOPT(CURLMOPT_PIPELINING_SITE_BL, CURLOPTTYPE_OBJECTPOINT, 11),
|
||||||
|
|
||||||
/* a list of server types that are blacklisted from
|
/* a list of server types that are blocked from pipelining */
|
||||||
pipelining */
|
|
||||||
CURLOPT(CURLMOPT_PIPELINING_SERVER_BL, CURLOPTTYPE_OBJECTPOINT, 12),
|
CURLOPT(CURLMOPT_PIPELINING_SERVER_BL, CURLOPTTYPE_OBJECTPOINT, 12),
|
||||||
|
|
||||||
/* maximum number of open connections in total */
|
/* maximum number of open connections in total */
|
||||||
|
@ -31,14 +31,14 @@ my $warnings = 0;
|
|||||||
my $swarnings = 0;
|
my $swarnings = 0;
|
||||||
my $errors = 0;
|
my $errors = 0;
|
||||||
my $serrors = 0;
|
my $serrors = 0;
|
||||||
my $suppressed; # whitelisted problems
|
my $suppressed; # skipped problems
|
||||||
my $file;
|
my $file;
|
||||||
my $dir=".";
|
my $dir=".";
|
||||||
my $wlist="";
|
my $wlist="";
|
||||||
my @alist;
|
my @alist;
|
||||||
my $windows_os = $^O eq 'MSWin32' || $^O eq 'cygwin' || $^O eq 'msys';
|
my $windows_os = $^O eq 'MSWin32' || $^O eq 'cygwin' || $^O eq 'msys';
|
||||||
my $verbose;
|
my $verbose;
|
||||||
my %whitelist;
|
my %skiplist;
|
||||||
|
|
||||||
my %ignore;
|
my %ignore;
|
||||||
my %ignore_set;
|
my %ignore_set;
|
||||||
@ -84,12 +84,12 @@ my %warnings = (
|
|||||||
'TYPEDEFSTRUCT' => 'typedefed struct',
|
'TYPEDEFSTRUCT' => 'typedefed struct',
|
||||||
);
|
);
|
||||||
|
|
||||||
sub readwhitelist {
|
sub readskiplist {
|
||||||
open(W, "<$dir/checksrc.whitelist") or return;
|
open(W, "<$dir/checksrc.skip") or return;
|
||||||
my @all=<W>;
|
my @all=<W>;
|
||||||
for(@all) {
|
for(@all) {
|
||||||
$windows_os ? $_ =~ s/\r?\n$// : chomp;
|
$windows_os ? $_ =~ s/\r?\n$// : chomp;
|
||||||
$whitelist{$_}=1;
|
$skiplist{$_}=1;
|
||||||
}
|
}
|
||||||
close(W);
|
close(W);
|
||||||
}
|
}
|
||||||
@ -142,8 +142,8 @@ sub checkwarn {
|
|||||||
# print STDERR "Dev! there's no description for $name!\n";
|
# print STDERR "Dev! there's no description for $name!\n";
|
||||||
#}
|
#}
|
||||||
|
|
||||||
# checksrc.whitelist
|
# checksrc.skip
|
||||||
if($whitelist{$line}) {
|
if($skiplist{$line}) {
|
||||||
$nowarn = 1;
|
$nowarn = 1;
|
||||||
}
|
}
|
||||||
# !checksrc! controlled
|
# !checksrc! controlled
|
||||||
@ -228,7 +228,7 @@ if(!$file) {
|
|||||||
print " -A[rule] Accept this violation, can be used multiple times\n";
|
print " -A[rule] Accept this violation, can be used multiple times\n";
|
||||||
print " -D[DIR] Directory to prepend file names\n";
|
print " -D[DIR] Directory to prepend file names\n";
|
||||||
print " -h Show help output\n";
|
print " -h Show help output\n";
|
||||||
print " -W[file] Whitelist the given file - ignore all its flaws\n";
|
print " -W[file] Skip the given file - ignore all its flaws\n";
|
||||||
print " -i<n> Indent spaces. Default: 2\n";
|
print " -i<n> Indent spaces. Default: 2\n";
|
||||||
print " -m<n> Maximum line length. Default: 79\n";
|
print " -m<n> Maximum line length. Default: 79\n";
|
||||||
print "\nDetects and warns for these problems:\n";
|
print "\nDetects and warns for these problems:\n";
|
||||||
@ -238,7 +238,7 @@ if(!$file) {
|
|||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
readwhitelist();
|
readskiplist();
|
||||||
readlocalfile();
|
readlocalfile();
|
||||||
|
|
||||||
do {
|
do {
|
||||||
|
@ -3698,9 +3698,8 @@ CURLcode Curl_http_readwrite_headers(struct Curl_easy *data,
|
|||||||
else if(conn->httpversion == 20 ||
|
else if(conn->httpversion == 20 ||
|
||||||
(k->upgr101 == UPGR101_REQUESTED && k->httpcode == 101)) {
|
(k->upgr101 == UPGR101_REQUESTED && k->httpcode == 101)) {
|
||||||
DEBUGF(infof(data, "HTTP/2 found, allow multiplexing\n"));
|
DEBUGF(infof(data, "HTTP/2 found, allow multiplexing\n"));
|
||||||
|
/* HTTP/2 cannot avoid multiplexing since it is a core functionality
|
||||||
/* HTTP/2 cannot blacklist multiplexing since it is a core
|
of the protocol */
|
||||||
functionality of the protocol */
|
|
||||||
conn->bundle->multiuse = BUNDLE_MULTIPLEX;
|
conn->bundle->multiuse = BUNDLE_MULTIPLEX;
|
||||||
}
|
}
|
||||||
else if(conn->httpversion >= 11 &&
|
else if(conn->httpversion >= 11 &&
|
||||||
|
@ -28,7 +28,7 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
# regexes of files to not scan
|
# regexes of files to not scan
|
||||||
my @whitelist=(
|
my @skiplist=(
|
||||||
'^tests\/data\/test(\d+)$', # test case data
|
'^tests\/data\/test(\d+)$', # test case data
|
||||||
'^docs\/cmdline-opts\/[a-z]+(.*)\.d$', # curl.1 pieces
|
'^docs\/cmdline-opts\/[a-z]+(.*)\.d$', # curl.1 pieces
|
||||||
'(\/|^)[A-Z0-9_.-]+$', # all uppercase file name, possibly with dot and dash
|
'(\/|^)[A-Z0-9_.-]+$', # all uppercase file name, possibly with dot and dash
|
||||||
@ -168,10 +168,10 @@ else {
|
|||||||
for my $f (@all) {
|
for my $f (@all) {
|
||||||
chomp $f;
|
chomp $f;
|
||||||
my $skipped = 0;
|
my $skipped = 0;
|
||||||
for my $skip (@whitelist) {
|
for my $skip (@skiplist) {
|
||||||
#print "$f matches $skip ?\n";
|
#print "$f matches $skip ?\n";
|
||||||
if($f =~ /$skip/) {
|
if($f =~ /$skip/) {
|
||||||
$whitelisted++;
|
$skiplisted++;
|
||||||
$skipped = 1;
|
$skipped = 1;
|
||||||
#print "$f: SKIPPED ($skip)\n";
|
#print "$f: SKIPPED ($skip)\n";
|
||||||
last;
|
last;
|
||||||
@ -186,6 +186,6 @@ for my $f (@all) {
|
|||||||
|
|
||||||
print STDERR "$missing files have no copyright\n" if($missing);
|
print STDERR "$missing files have no copyright\n" if($missing);
|
||||||
print STDERR "$wrong files have wrong copyright year\n" if ($wrong);
|
print STDERR "$wrong files have wrong copyright year\n" if ($wrong);
|
||||||
print STDERR "$whitelisted files are whitelisted\n" if ($whitelisted);
|
print STDERR "$skiplisted files are skipped\n" if ($skiplisted);
|
||||||
|
|
||||||
exit 1 if($missing || $wrong);
|
exit 1 if($missing || $wrong);
|
||||||
|
@ -20,7 +20,7 @@ lib1550
|
|||||||
</tool>
|
</tool>
|
||||||
|
|
||||||
<name>
|
<name>
|
||||||
verify setting pipeling blacklisting options
|
verify setting pipeling blocklisting options
|
||||||
</name>
|
</name>
|
||||||
<command>
|
<command>
|
||||||
http://%HOSTIP:%NOLISTENPORT/1550
|
http://%HOSTIP:%NOLISTENPORT/1550
|
||||||
|
@ -40,13 +40,13 @@ http
|
|||||||
lib1900
|
lib1900
|
||||||
</tool>
|
</tool>
|
||||||
<name>
|
<name>
|
||||||
HTTP GET using pipelining, blacklisted site
|
HTTP GET using pipelining, blocklisted site
|
||||||
</name>
|
</name>
|
||||||
<command>
|
<command>
|
||||||
http://%HOSTIP:%HTTPPIPEPORT/ log/urls1901.txt
|
http://%HOSTIP:%HTTPPIPEPORT/ log/urls1901.txt
|
||||||
</command>
|
</command>
|
||||||
<file name="log/urls1901.txt">
|
<file name="log/urls1901.txt">
|
||||||
blacklist_site 127.0.0.1:%HTTPPIPEPORT
|
blocklist_site 127.0.0.1:%HTTPPIPEPORT
|
||||||
0 1k.txt
|
0 1k.txt
|
||||||
1000 100k.txt
|
1000 100k.txt
|
||||||
0 1k.txt
|
0 1k.txt
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
* | (__| |_| | _ <| |___
|
* | (__| |_| | _ <| |___
|
||||||
* \___|\___/|_| \_\_____|
|
* \___|\___/|_| \_\_____|
|
||||||
*
|
*
|
||||||
* Copyright (C) 2013 - 2019, Linus Nielsen Feltzing, <linus@haxx.se>
|
* Copyright (C) 2013 - 2020, Linus Nielsen Feltzing, <linus@haxx.se>
|
||||||
*
|
*
|
||||||
* This software is licensed as described in the file COPYING, which
|
* This software is licensed as described in the file COPYING, which
|
||||||
* you should have received as part of this distribution. The terms
|
* you should have received as part of this distribution. The terms
|
||||||
@ -27,16 +27,16 @@
|
|||||||
|
|
||||||
#define TEST_HANG_TIMEOUT 60 * 1000
|
#define TEST_HANG_TIMEOUT 60 * 1000
|
||||||
#define MAX_URLS 200
|
#define MAX_URLS 200
|
||||||
#define MAX_BLACKLIST 20
|
#define MAX_BLOCKLIST 20
|
||||||
|
|
||||||
static int urltime[MAX_URLS];
|
static int urltime[MAX_URLS];
|
||||||
static char *urlstring[MAX_URLS];
|
static char *urlstring[MAX_URLS];
|
||||||
static CURL *handles[MAX_URLS];
|
static CURL *handles[MAX_URLS];
|
||||||
static char *site_blacklist[MAX_BLACKLIST];
|
static char *site_blocklist[MAX_BLOCKLIST];
|
||||||
static char *server_blacklist[MAX_BLACKLIST];
|
static char *server_blocklist[MAX_BLOCKLIST];
|
||||||
static int num_handles;
|
static int num_handles;
|
||||||
static int blacklist_num_servers;
|
static int blocklist_num_servers;
|
||||||
static int blacklist_num_sites;
|
static int blocklist_num_sites;
|
||||||
|
|
||||||
static size_t
|
static size_t
|
||||||
write_callback(void *contents, size_t size, size_t nmemb, void *userp)
|
write_callback(void *contents, size_t size, size_t nmemb, void *userp)
|
||||||
@ -55,8 +55,8 @@ static int parse_url_file(const char *filename)
|
|||||||
char buf[200];
|
char buf[200];
|
||||||
|
|
||||||
num_handles = 0;
|
num_handles = 0;
|
||||||
blacklist_num_sites = 0;
|
blocklist_num_sites = 0;
|
||||||
blacklist_num_servers = 0;
|
blocklist_num_servers = 0;
|
||||||
|
|
||||||
f = fopen(filename, "rb");
|
f = fopen(filename, "rb");
|
||||||
if(!f)
|
if(!f)
|
||||||
@ -70,9 +70,9 @@ static int parse_url_file(const char *filename)
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(fscanf(f, "blacklist_site %199s\n", buf)) {
|
if(fscanf(f, "blocklist_site %199s\n", buf)) {
|
||||||
site_blacklist[blacklist_num_sites] = strdup(buf);
|
site_blocklist[blocklist_num_sites] = strdup(buf);
|
||||||
blacklist_num_sites++;
|
blocklist_num_sites++;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -80,8 +80,8 @@ static int parse_url_file(const char *filename)
|
|||||||
}
|
}
|
||||||
fclose(f);
|
fclose(f);
|
||||||
|
|
||||||
site_blacklist[blacklist_num_sites] = NULL;
|
site_blocklist[blocklist_num_sites] = NULL;
|
||||||
server_blacklist[blacklist_num_servers] = NULL;
|
server_blocklist[blocklist_num_servers] = NULL;
|
||||||
return num_handles;
|
return num_handles;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -91,11 +91,11 @@ static void free_urls(void)
|
|||||||
for(i = 0; i < num_handles; i++) {
|
for(i = 0; i < num_handles; i++) {
|
||||||
Curl_safefree(urlstring[i]);
|
Curl_safefree(urlstring[i]);
|
||||||
}
|
}
|
||||||
for(i = 0; i < blacklist_num_servers; i++) {
|
for(i = 0; i < blocklist_num_servers; i++) {
|
||||||
Curl_safefree(server_blacklist[i]);
|
Curl_safefree(server_blocklist[i]);
|
||||||
}
|
}
|
||||||
for(i = 0; i < blacklist_num_sites; i++) {
|
for(i = 0; i < blocklist_num_sites; i++) {
|
||||||
Curl_safefree(site_blacklist[i]);
|
Curl_safefree(site_blocklist[i]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -159,8 +159,8 @@ int test(char *URL)
|
|||||||
multi_setopt(m, CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE, 15000L);
|
multi_setopt(m, CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE, 15000L);
|
||||||
multi_setopt(m, CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE, 10000L);
|
multi_setopt(m, CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE, 10000L);
|
||||||
|
|
||||||
multi_setopt(m, CURLMOPT_PIPELINING_SITE_BL, site_blacklist);
|
multi_setopt(m, CURLMOPT_PIPELINING_SITE_BL, site_blocklist);
|
||||||
multi_setopt(m, CURLMOPT_PIPELINING_SERVER_BL, server_blacklist);
|
multi_setopt(m, CURLMOPT_PIPELINING_SERVER_BL, server_blocklist);
|
||||||
|
|
||||||
last_handle_add = tutil_tvnow();
|
last_handle_add = tutil_tvnow();
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@
|
|||||||
# | (__| |_| | _ <| |___
|
# | (__| |_| | _ <| |___
|
||||||
# \___|\___/|_| \_\_____|
|
# \___|\___/|_| \_\_____|
|
||||||
#
|
#
|
||||||
# Copyright (C) 2016 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
|
# Copyright (C) 2016 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||||
#
|
#
|
||||||
# This software is licensed as described in the file COPYING, which
|
# This software is licensed as described in the file COPYING, which
|
||||||
# you should have received as part of this distribution. The terms
|
# you should have received as part of this distribution. The terms
|
||||||
@ -130,7 +130,7 @@ scanmanpage("$root/docs/libcurl/curl_easy_setopt.3", @curlopt);
|
|||||||
scanmanpage("$root/docs/libcurl/curl_easy_getinfo.3", @curlinfo);
|
scanmanpage("$root/docs/libcurl/curl_easy_getinfo.3", @curlinfo);
|
||||||
scanmanpage("$root/docs/libcurl/curl_multi_setopt.3", @curlmopt);
|
scanmanpage("$root/docs/libcurl/curl_multi_setopt.3", @curlmopt);
|
||||||
|
|
||||||
# using this hash array, we can whitelist specific options
|
# using this hash array, we can skip specific options
|
||||||
my %opts = (
|
my %opts = (
|
||||||
# pretend these --no options exists in tool_getparam.c
|
# pretend these --no options exists in tool_getparam.c
|
||||||
'--no-alpn' => 1,
|
'--no-alpn' => 1,
|
||||||
|
Loading…
Reference in New Issue
Block a user