[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 00/41] Slirp Fixes and Enhancements - Reloaded
From: |
Jan Kiszka |
Subject: |
[Qemu-devel] [PATCH 00/41] Slirp Fixes and Enhancements - Reloaded |
Date: |
Wed, 24 Jun 2009 14:42:27 +0200 |
User-agent: |
StGIT/0.14.3 |
The foundation of this series are the patches from my previous posting
that didn't make it into upstream. But while reworking them, the series
grow far beyond the previous approach, adding lots of fixes and cleanups
to the slirp stack and its interfaces.
One major contribution is that the virtual IP addresses used inside
slirp VLANs are now (almost) freely configurable. This enables
sophisticated virtual network setups, specifically with guests that
depends on specific addresses.
In this second step, the series also comes with support for multiple
slirp instances per VM. Further contributions are
- proper dynamic slirp cleanup during runtime
- 'info usernet' command to dump slirp connection states
- reworked monitor commands hostfwd_add/remove (formerly known as
host_net_redir)
- save/restore fixes for slirp
- first larger code cleanup (more work required...)
- various small fixes
The patches have been successfully tested against basic use cases:
connections to/from the guests, redirections, tftp, multi-instance,
save/restore. Moreover, they also passed successfull build tests
against mingw32.
Regarding the preferred flow: Mark, will you let this go through your
network tree first? Currently the series is based on upstream/master,
but I can rebase if required.
Find this series also at git://git.kiszka.org/qemu.git queues/net
Jan Kiszka (41):
slirp: Drop redundant lines from udp_input
slirp: Refactor tcp_ctl
Revert "User networking: Show active connections"
Introduce get_next_param_value
slirp: Move smb, redir, tftp and bootp parameters and -net channel
slirp: Rework internal configuration
slirp: Rework external configuration interface
slirp: Fix port comparision in slirp_remove_hostfwd
slirp: Rework monitor commands for host forwarding
slirp: Bind support for host forwarding rules
slirp: Prepare for persistent socket state flags
slirp: Explicitely mark host-forwarding sockets
slirp: Do not allow to remove non-hostfwd sockets
slirp: Mark sockets of incoming TCP connections
slirp: Add info usernet for dumping connection states
slirp: Drop dead code
slirp: Drop statistic code
slirp: Cleanup and basic reanimation of debug code
slirp: Drop unused icmp_var.h
slirp: tftp: Cleanup tftp_prefix check
slirp: tftp: Clean up tftp_send_error
slirp: tftp: Refactor tftp_handle_rrq
slirp: tftp: Rework filename handling
slirp: Factor out one-time initialization
slirp: Make IP packet ID consistent
slirp: Clean up updtime
slirp: Kill slirp_is_inited
slirp: Drop redundant checks from slirp_output
slirp: Clean up timeout handling around slirp_select_fill/poll
slirp: Drop link_up checks from if_output and slirp_socket_can_recv
slirp: Factor out internal state structure
slirp: Use internal state in interface
slirp: Allocate/free stack instance dynamically
slirp: Enable multiple instances
slirp: Save/restore bootp client states
slirp: Use shell to erase smb directory
slirp: Improve error handling in slirp_smb
slirp: Enable multi-instance support for the smb service
net: Provide VLAN client lookup helper
slirp: Make hostfwd_add/remove multi-instance-aware
slirp: Basic VLAN client info_str
Makefile | 2 +-
hw/xen_nic.c | 2 +-
monitor.c | 4 +-
net.c | 745 ++++++++++++++++++++++++++++++++++++----------------
net.h | 14 +-
qemu-monitor.hx | 14 +-
qemu-options.hx | 226 +++++++++-------
slirp/bootp.c | 92 +++----
slirp/bootp.h | 7 +
slirp/ctl.h | 7 -
slirp/debug.c | 393 ---------------------------
slirp/debug.h | 17 +-
slirp/icmp_var.h | 67 -----
slirp/if.c | 135 ++--------
slirp/if.h | 40 +---
slirp/ip.h | 40 ---
slirp/ip_icmp.c | 42 +--
slirp/ip_input.c | 120 +++------
slirp/ip_output.c | 37 +---
slirp/libslirp.h | 72 +++---
slirp/main.h | 10 +-
slirp/mbuf.c | 39 +--
slirp/mbuf.h | 23 +--
slirp/misc.c | 625 ++++++-------------------------------------
slirp/misc.h | 16 +-
slirp/sbuf.c | 8 -
slirp/slirp.c | 500 +++++++++++++++++++----------------
slirp/slirp.h | 89 +++++--
slirp/socket.c | 128 +++------
slirp/socket.h | 15 +-
slirp/tcp.h | 7 -
slirp/tcp_input.c | 303 +++-------------------
slirp/tcp_output.c | 115 +--------
slirp/tcp_subr.c | 559 ++++++---------------------------------
slirp/tcp_timer.c | 46 +---
slirp/tcp_timer.h | 10 +-
slirp/tcp_var.h | 71 +-----
slirp/tftp.c | 168 +++++-------
slirp/tftp.h | 10 +
slirp/udp.c | 114 ++++-----
slirp/udp.h | 28 +--
sysemu.h | 2 +
vl.c | 48 ++--
43 files changed, 1624 insertions(+), 3386 deletions(-)
delete mode 100644 slirp/ctl.h
delete mode 100644 slirp/debug.c
delete mode 100644 slirp/icmp_var.h
--
Siemens AG, Corporate Technology, CT SE 2
Corporate Competence Center Embedded Linux
- [Qemu-devel] [PATCH 00/41] Slirp Fixes and Enhancements - Reloaded,
Jan Kiszka <=
- [Qemu-devel] [PATCH 01/41] slirp: Drop redundant lines from udp_input, Jan Kiszka, 2009/06/24
- [Qemu-devel] [PATCH 02/41] slirp: Refactor tcp_ctl, Jan Kiszka, 2009/06/24
- [Qemu-devel] [PATCH 03/41] Revert "User networking: Show active connections", Jan Kiszka, 2009/06/24
- [Qemu-devel] [PATCH 08/41] slirp: Fix port comparision in slirp_remove_hostfwd, Jan Kiszka, 2009/06/24
- [Qemu-devel] [PATCH 09/41] slirp: Rework monitor commands for host forwarding, Jan Kiszka, 2009/06/24
- [Qemu-devel] [PATCH 11/41] slirp: Prepare for persistent socket state flags, Jan Kiszka, 2009/06/24
- [Qemu-devel] [PATCH 07/41] slirp: Rework external configuration interface, Jan Kiszka, 2009/06/24
- [Qemu-devel] [PATCH 10/41] slirp: Bind support for host forwarding rules, Jan Kiszka, 2009/06/24
- [Qemu-devel] [PATCH 12/41] slirp: Explicitely mark host-forwarding sockets, Jan Kiszka, 2009/06/24
- [Qemu-devel] [PATCH 13/41] slirp: Do not allow to remove non-hostfwd sockets, Jan Kiszka, 2009/06/24