diff --git a/samples/vboxwrapper/vbox.cpp b/samples/vboxwrapper/vbox.cpp index 3aafac3b02..35b4fe7d24 100644 --- a/samples/vboxwrapper/vbox.cpp +++ b/samples/vboxwrapper/vbox.cpp @@ -101,6 +101,7 @@ VBOX_VM::VBOX_VM() { enable_remotedesktop = false; register_only = false; enable_network = false; + bridged_mode = false; pf_guest_port = 0; pf_host_port = 0; headless = true; @@ -2394,6 +2395,14 @@ int VBOX_VM::set_network_access(bool enabled) { retval = vbm_popen(command, output, "enable network"); if (retval) return retval; + + if (bridged_mode) { + command = "modifyvm \"" + vm_name + "\" "; + command += "--nic1 bridged"; + + retval = vbm_popen(command, output, "set bridged mode"); + if (retval) return retval; + } } else { fprintf( stderr, diff --git a/samples/vboxwrapper/vbox.h b/samples/vboxwrapper/vbox.h index d69b61ed9f..7e7efa527b 100644 --- a/samples/vboxwrapper/vbox.h +++ b/samples/vboxwrapper/vbox.h @@ -140,6 +140,8 @@ public: // whether to add an extra cache disk for systems like uCernVM bool enable_network; // whether to allow network access + bool bridged_mode; + // use bridged mode for network bool enable_shared_directory; // whether to use shared directory infrastructure bool enable_floppyio; diff --git a/samples/vboxwrapper/vboxwrapper.cpp b/samples/vboxwrapper/vboxwrapper.cpp index fdf1455eb3..e7f3f7ecaf 100644 --- a/samples/vboxwrapper/vboxwrapper.cpp +++ b/samples/vboxwrapper/vboxwrapper.cpp @@ -199,6 +199,7 @@ int parse_job_file(VBOX_VM& vm) { else if (xp.parse_string("fraction_done_filename", vm.fraction_done_filename)) continue; else if (xp.parse_bool("enable_cern_dataformat", vm.enable_cern_dataformat)) continue; else if (xp.parse_bool("enable_network", vm.enable_network)) continue; + else if (xp.parse_bool("bridged_mode", vm.bridged_mode)) continue; else if (xp.parse_bool("enable_shared_directory", vm.enable_shared_directory)) continue; else if (xp.parse_bool("enable_floppyio", vm.enable_floppyio)) continue; else if (xp.parse_bool("enable_cache_disk", vm.enable_cache_disk)) continue;