my $opt_help = 0;
my $opt_target = "samba";
my $opt_quick = 0;
+my $opt_quic_ko_wrapper = 0;
my $opt_socket_wrapper = 0;
my $opt_socket_wrapper_pcap = undef;
my $opt_socket_wrapper_keep_pcap = undef;
my $opt_default_ldb_backend = "mdb";
my $opt_resetup_env = undef;
my $opt_load_list = undef;
+my $opt_libquic_ko_wrapper_so_path = "";
my $opt_libnss_wrapper_so_path = "";
my $opt_libresolv_wrapper_so_path = "";
my $opt_libsocket_wrapper_so_path = "";
'help|h|?' => \$opt_help,
'target=s' => \$opt_target,
'prefix=s' => \$prefix,
+ 'quic-ko-wrapper' => \$opt_quic_ko_wrapper,
'socket-wrapper' => \$opt_socket_wrapper,
'socket-wrapper-pcap' => \$opt_socket_wrapper_pcap,
'socket-wrapper-keep-pcap' => \$opt_socket_wrapper_keep_pcap,
'testlist=s' => \@testlists,
'random-order' => \$opt_random_order,
'load-list=s' => \$opt_load_list,
+ 'quic_ko_wrapper_so_path=s' => \$opt_libquic_ko_wrapper_so_path,
'nss_wrapper_so_path=s' => \$opt_libnss_wrapper_so_path,
'resolv_wrapper_so_path=s' => \$opt_libresolv_wrapper_so_path,
'socket_wrapper_so_path=s' => \$opt_libsocket_wrapper_so_path,
}
}
+if ($opt_libquic_ko_wrapper_so_path) {
+ if ($ld_preload) {
+ $ld_preload = "$ld_preload:$opt_libquic_ko_wrapper_so_path";
+ } else {
+ $ld_preload = "$opt_libquic_ko_wrapper_so_path";
+ }
+}
+
if ($opt_libnss_wrapper_so_path) {
if ($ld_preload) {
$ld_preload = "$ld_preload:$opt_libnss_wrapper_so_path";
# We are already hitting the limit, so double it.
$ENV{NSS_WRAPPER_MAX_HOSTENTS} = 200;
+if ($opt_quic_ko_wrapper) {
+ $ENV{QUIC_KO_WRAPPER} = 1;
+}
+
my $socket_wrapper_dir;
if ($opt_socket_wrapper) {
$socket_wrapper_dir = SocketWrapper::setup_dir("$prefix/w", $opt_socket_wrapper_pcap);
# selftest can optionally use kernel namespaces instead of socket-wrapper
if os.environ.get('USE_NAMESPACES') is None:
env.OPTIONS += " --socket_wrapper_so_path=" + CONFIG_GET(opt, 'LIBSOCKET_WRAPPER_SO_PATH')
+ if CONFIG_SET(opt, 'QUIC_KO_WRAPPER'):
+ env.OPTIONS += " --quic_ko_wrapper_so_path=" + CONFIG_GET(opt, 'LIBQUIC_KO_WRAPPER_SO_PATH')
if not CONFIG_SET(opt, 'HAVE_RESOLV_CONF_SUPPORT'):
env.OPTIONS += " --use-dns-faking"
if Options.options.LIST:
cmd = '${CORE_COMMAND} --list'
else:
+ if CONFIG_SET(opt, 'QUIC_KO_WRAPPER'):
+ env.OPTIONS += ' --quic-ko-wrapper'
env.OPTIONS += ' --socket-wrapper'
cmd = '(${CORE_COMMAND} && touch ${SELFTEST_PREFIX}/st_done) | ${FILTER_OPTIONS}'