From ba9ffc6243ec7c0a3a675cce74ed32afb50e4b8e Mon Sep 17 00:00:00 2001 From: Martin Stein Date: Wed, 22 May 2019 13:29:50 +0200 Subject: [PATCH] nic_dump: do not depend on libports repo Fixes #3372 --- repos/libports/run/nic_dump.run | 159 -------------------- repos/os/run/nic_dump.run | 259 ++++++++++++++++++++++++++++++++ 2 files changed, 259 insertions(+), 159 deletions(-) delete mode 100644 repos/libports/run/nic_dump.run create mode 100644 repos/os/run/nic_dump.run diff --git a/repos/libports/run/nic_dump.run b/repos/libports/run/nic_dump.run deleted file mode 100644 index aa188acfd..000000000 --- a/repos/libports/run/nic_dump.run +++ /dev/null @@ -1,159 +0,0 @@ -# -# Build components -# - -proc enable_test_1 { } { return 1 } -proc enable_test_2 { } { return 1 } - -source ${genode_dir}/repos/libports/run/nic_router.inc - -lappend targets server/nic_dump - -build $targets - -create_boot_directory - -proc test_1_config { } { - if {[enable_test_1]} { return " - [client_config udp_client_2 udp 10.0.2.212 10.0.2.1 255.255.255.0 nic_bridge 1 10.0.2.55] - [server_config udp_server_2 udp 18.17.16.15 18.17.16.14 255.255.0.0 nic_router 1 ]" } -} - -proc test_2_config { } { - if {[enable_test_2]} { return " - [client_config http_client_1 http 10.0.2.201 10.0.2.1 255.255.255.0 nic_bridge 80 10.0.2.55] - [server_config http_server_1 http 192.168.1.18 192.168.1.1 255.255.255.0 nic_router 80 ]" } -} - -append config { - - - - - - - - - - - - - - - - - - - } [platform_drv_config] { - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - } [test_1_config] { - } [test_2_config] { - - } - -install_config $config - -lappend boot_modules nic_dump - -build_boot_image $boot_modules - -for {set i 0} {$i < $nr_of_clients} {incr i 1} { - append done_string {.*Test done.*\n} -} - -run_genode_until $done_string 120 diff --git a/repos/os/run/nic_dump.run b/repos/os/run/nic_dump.run new file mode 100644 index 000000000..a50e9b8e5 --- /dev/null +++ b/repos/os/run/nic_dump.run @@ -0,0 +1,259 @@ +if {[have_spec foc] || [have_spec odroid_xu] || [have_spec linux] || [have_spec imx7d_sabre] || + [expr [have_spec imx53] && [have_spec trustzone]]} { + puts "Run script is not supported on this platform." + exit 0 +} + +set on_hardware [expr ![have_include power_on/qemu]] + +create_boot_directory + +import_from_depot [depot_user]/src/[base_src] \ + [depot_user]/pkg/[drivers_nic_pkg] \ + [depot_user]/src/init \ + [depot_user]/src/nic_bridge \ + [depot_user]/src/nic_router \ + +build { app/ping server/nic_dump } + +proc good_dst_ip { } { + if {![have_include power_on/qemu]} { + return "10.0.0.2" + } else { + return "10.0.2.2" + } +} +proc bad_dst_port { } { return "12345" } +proc bad_dst_ip { } { return "10.0.1.2" } + +append config { + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + } + +append_if $on_hardware config { + + + + + + + + + } + +append config { +} + +install_config $config +build_boot_image { ping nic_dump } + +proc qemu_nic_model {} { + if [have_spec x86] { return e1000 } + if [have_spec lan9118] { return lan9118 } + if [have_spec zynq] { return cadence_gem } + return nic_model_missing +} + +append qemu_args " -nographic " +append qemu_args " -netdev user,id=net0 " +append qemu_args " -net nic,model=[qemu_nic_model],netdev=net0 " + +set done_string "" +for {set i 0} {$i < 3} {incr i 1} { + append done_string ".*child \"ping...\" exited with exit value 0.*\n" +} +append done_string ".*ping_22\] From 10.0.4.1 icmp_seq=.* Destination Unreachable.*\n" + +append_if $on_hardware done_string ".*ping_23\] From [good_dst_ip] Destination Unreachable.*\n" + +run_genode_until $done_string 30