Commit 42f1e0e49b9c162c211eba0115c5e7d1de861f44
1 parent
27c3f2cb
tun-fd option support for external tundev config (Rusty Russell)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@398 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
7 additions
and
1 deletions
vl.c
... | ... | @@ -3393,6 +3393,7 @@ void help(void) |
3393 | 3393 | "-snapshot write to temporary files instead of disk image files\n" |
3394 | 3394 | "-m megs set virtual RAM size to megs MB\n" |
3395 | 3395 | "-n script set network init script [default=%s]\n" |
3396 | + "-tun-fd fd this fd talks to tap/tun, use it.\n" | |
3396 | 3397 | "-nographic disable graphical output\n" |
3397 | 3398 | "\n" |
3398 | 3399 | "Linux boot specific (does not require PC BIOS):\n" |
... | ... | @@ -3422,6 +3423,7 @@ struct option long_options[] = { |
3422 | 3423 | { "nographic", 0, NULL, 0, }, |
3423 | 3424 | { "kernel", 1, NULL, 0, }, |
3424 | 3425 | { "append", 1, NULL, 0, }, |
3426 | + { "tun-fd", 1, NULL, 0, }, | |
3425 | 3427 | { NULL, 0, NULL, 0 }, |
3426 | 3428 | }; |
3427 | 3429 | |
... | ... | @@ -3514,6 +3516,9 @@ int main(int argc, char **argv) |
3514 | 3516 | case 7: |
3515 | 3517 | kernel_cmdline = optarg; |
3516 | 3518 | break; |
3519 | + case 8: | |
3520 | + net_fd = atoi(optarg); | |
3521 | + break; | |
3517 | 3522 | } |
3518 | 3523 | break; |
3519 | 3524 | case 'h': |
... | ... | @@ -3568,7 +3573,8 @@ int main(int argc, char **argv) |
3568 | 3573 | } |
3569 | 3574 | |
3570 | 3575 | /* init network tun interface */ |
3571 | - net_init(); | |
3576 | + if (net_fd < 0) | |
3577 | + net_init(); | |
3572 | 3578 | |
3573 | 3579 | /* init the memory */ |
3574 | 3580 | tmpdir = getenv("QEMU_TMPDIR"); | ... | ... |