Skip to content

Commit e978f1e

Browse files
committed
Separate input ISP and exit node ISP header into different columns.
1 parent e6fa052 commit e978f1e

2 files changed

Lines changed: 5 additions & 3 deletions

File tree

soaxreport/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ The tool generates a CSV file (`workspace/soax-results-<domain>-countries<N>.csv
7676
* `isp`: The ISP name of the proxy used.
7777
* `asn`: The ASN of the proxy exit node.
7878
* `exit_node_ip`: The IP address of the proxy exit node.
79+
* `exit_node_isp`: The ISP name reported by the proxy exit node (from headers).
7980
* `ech_grease`: `true` if ECH GREASE was enabled for the request, `false` otherwise.
8081
* `error`: Any error that occurred during the request.
8182
* `curl_exit_code`: The exit code returned by the `curl` command.

soaxreport/main.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ type TestResult struct {
4141
ISP string
4242
ASN string
4343
ExitNodeIP string
44+
ExitNodeISP string
4445
ECHGrease bool
4546
Error string
4647
CurlExitCode int
@@ -117,7 +118,7 @@ func runSoaxTest(
117118
case "ip":
118119
result.ExitNodeIP = val
119120
case "isp":
120-
result.ISP += " (" + val + ")"
121+
result.ExitNodeISP = val
121122
}
122123
}
123124

@@ -235,7 +236,7 @@ func main() {
235236
defer csvWriter.Flush()
236237

237238
header := []string{
238-
"domain", "country_code", "country_name", "isp", "asn", "exit_node_ip", "ech_grease", "error",
239+
"domain", "country_code", "country_name", "isp", "asn", "exit_node_ip", "exit_node_isp", "ech_grease", "error",
239240
"curl_exit_code", "curl_error_name", "dns_lookup_ms", "tcp_connection_ms",
240241
"tls_handshake_ms", "server_time_ms", "total_time_ms", "http_status",
241242
}
@@ -245,7 +246,7 @@ func main() {
245246

246247
for r := range resultsCh {
247248
record := []string{
248-
r.Domain, r.Country, r.CountryName, r.ISP, r.ASN, r.ExitNodeIP, strconv.FormatBool(r.ECHGrease), r.Error,
249+
r.Domain, r.Country, r.CountryName, r.ISP, r.ASN, r.ExitNodeIP, r.ExitNodeISP, strconv.FormatBool(r.ECHGrease), r.Error,
249250
strconv.Itoa(r.CurlExitCode), r.CurlErrorName,
250251
strconv.FormatInt(r.DNSLookup.Milliseconds(), 10),
251252
strconv.FormatInt(r.TCPConnection.Milliseconds(), 10),

0 commit comments

Comments
 (0)