[Privoxy-commits] [privoxy] 13/38: Add test helper script that checks if a local address is available to bind to

User Git git at git.privoxy.org
Thu Apr 9 09:37:11 CEST 2026


This is an automated email from the git hooks/post-receive script.

git pushed a commit to branch master
in repository privoxy.

commit 45ef7f57b470131cc9a1dc0df4b08b3d79a36ece
Author: Fabian Keil <fk at fabiankeil.de>
AuthorDate: Thu Apr 2 08:07:00 2026 +0200

    Add test helper script that checks if a local address is available to bind to
---
 tests/cts/bind-to-address.pl | 40 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 40 insertions(+)

diff --git a/tests/cts/bind-to-address.pl b/tests/cts/bind-to-address.pl
new file mode 100755
index 00000000..02da30d7
--- /dev/null
+++ b/tests/cts/bind-to-address.pl
@@ -0,0 +1,40 @@
+#!/usr/bin/perl
+
+################################################################################
+# bind-to-address.pl
+#
+# Tries to bind to the IP address given as argument. Used as precheck by
+# some of the ACL tests to figure out if a test should be executed.
+#
+# Copyright (c) 2026 Fabian Keil <fk at fabiankeil.de>
+#
+# 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.
+################################################################################
+
+use Socket;
+use warnings;
+use strict;
+
+sub main() {
+    my $ip_address = $ARGV[0] || die "No address passed as argument!\n";
+    my $port = 12345;
+
+    socket(SOCKET,PF_INET,SOCK_STREAM,(getprotobyname('tcp'))[2]);
+    unless (bind(SOCKET, pack_sockaddr_in($port, inet_aton($ip_address)))) {
+        print "Failed to bind to $ip_address:$port: $!\n";
+        return 1;
+    }
+    return 0;
+}
+
+main();

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Privoxy-commits mailing list