Commit b4983c57 authored by Thomas Huth's avatar Thomas Huth Committed by Dr. David Alan Gilbert
Browse files

net: Remove deprecated [hub_id name] tuple of 'hostfwd_add' / 'hostfwd_remove'



It's been deprecated since QEMU v3.1.0. Time to finally remove it now.

Signed-off-by: default avatarThomas Huth <thuth@redhat.com>
Message-Id: <20191205104109.18680-1-thuth@redhat.com>
Signed-off-by: default avatarDr. David Alan Gilbert <dgilbert@redhat.com>
  Reworked Thomas's deprecated.texi to the rst
parent 89802d5a
Loading
Loading
Loading
Loading
+9 −6
Original line number Diff line number Diff line
@@ -248,12 +248,6 @@ the 'wait' field, which is only applicable to sockets in server mode
Human Monitor Protocol (HMP) commands
-------------------------------------

The ``hub_id`` parameter of ``hostfwd_add`` / ``hostfwd_remove`` (since 3.1)
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

The ``[hub_id name]`` parameter tuple of the 'hostfwd_add' and
'hostfwd_remove' HMP commands has been replaced by ``netdev_id``.

``cpu-add`` (since 4.0)
'''''''''''''''''''''''

@@ -430,6 +424,15 @@ QEMU Machine Protocol (QMP) commands
The "autoload" parameter has been ignored since 2.12.0. All bitmaps
are automatically loaded from qcow2 images.

Human Monitor Protocol (HMP) commands
-------------------------------------

The ``hub_id`` parameter of ``hostfwd_add`` / ``hostfwd_remove`` (removed in 5.0)
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

The ``[hub_id name]`` parameter tuple of the 'hostfwd_add' and
'hostfwd_remove' HMP commands has been replaced by ``netdev_id``.

Related binaries
----------------

+4 −4
Original line number Diff line number Diff line
@@ -1369,8 +1369,8 @@ ERST
#ifdef CONFIG_SLIRP
    {
        .name       = "hostfwd_add",
        .args_type  = "arg1:s,arg2:s?,arg3:s?",
        .params     = "[hub_id name]|[netdev_id] [tcp|udp]:[hostaddr]:hostport-[guestaddr]:guestport",
        .args_type  = "arg1:s,arg2:s?",
        .params     = "[netdev_id] [tcp|udp]:[hostaddr]:hostport-[guestaddr]:guestport",
        .help       = "redirect TCP or UDP connections from host to guest (requires -net user)",
        .cmd        = hmp_hostfwd_add,
    },
@@ -1383,8 +1383,8 @@ ERST
#ifdef CONFIG_SLIRP
    {
        .name       = "hostfwd_remove",
        .args_type  = "arg1:s,arg2:s?,arg3:s?",
        .params     = "[hub_id name]|[netdev_id] [tcp|udp]:[hostaddr]:hostport",
        .args_type  = "arg1:s,arg2:s?",
        .params     = "[netdev_id] [tcp|udp]:[hostaddr]:hostport",
        .help       = "remove host-to-guest TCP or UDP redirection",
        .cmd        = hmp_hostfwd_remove,
    },
+0 −23
Original line number Diff line number Diff line
@@ -193,29 +193,6 @@ NetClientState *net_hub_add_port(int hub_id, const char *name,
    return &port->nc;
}

/**
 * Find a specific client on a hub
 */
NetClientState *net_hub_find_client_by_name(int hub_id, const char *name)
{
    NetHub *hub;
    NetHubPort *port;
    NetClientState *peer;

    QLIST_FOREACH(hub, &hubs, next) {
        if (hub->id == hub_id) {
            QLIST_FOREACH(port, &hub->ports, next) {
                peer = port->nc.peer;

                if (peer && strcmp(peer->name, name) == 0) {
                    return peer;
                }
            }
        }
    }
    return NULL;
}

/**
 * Find a available port on a hub; otherwise create one new port
 */
+0 −2
Original line number Diff line number Diff line
@@ -15,10 +15,8 @@
#ifndef NET_HUB_H
#define NET_HUB_H


NetClientState *net_hub_add_port(int hub_id, const char *name,
                                 NetClientState *hubpeer);
NetClientState *net_hub_find_client_by_name(int hub_id, const char *name);
void net_hub_info(Monitor *mon);
void net_hub_check_clients(void);
bool net_hub_flush(NetClientState *nc);
+12 −32
Original line number Diff line number Diff line
@@ -610,26 +610,14 @@ error:
    return -1;
}

static SlirpState *slirp_lookup(Monitor *mon, const char *hub_id,
                                const char *name)
static SlirpState *slirp_lookup(Monitor *mon, const char *id)
{
    if (name) {
        NetClientState *nc;
        if (hub_id) {
            nc = net_hub_find_client_by_name(strtol(hub_id, NULL, 0), name);
            if (!nc) {
                monitor_printf(mon, "unrecognized (hub-id, stackname) pair\n");
                return NULL;
            }
            warn_report("Using 'hub-id' is deprecated, specify the netdev id "
                        "directly instead");
        } else {
            nc = qemu_find_netdev(name);
    if (id) {
        NetClientState *nc = qemu_find_netdev(id);
        if (!nc) {
                monitor_printf(mon, "unrecognized netdev id '%s'\n", name);
            monitor_printf(mon, "unrecognized netdev id '%s'\n", id);
            return NULL;
        }
        }
        if (strcmp(nc->model, "user")) {
            monitor_printf(mon, "invalid device specified\n");
            return NULL;
@@ -655,16 +643,12 @@ void hmp_hostfwd_remove(Monitor *mon, const QDict *qdict)
    int err;
    const char *arg1 = qdict_get_str(qdict, "arg1");
    const char *arg2 = qdict_get_try_str(qdict, "arg2");
    const char *arg3 = qdict_get_try_str(qdict, "arg3");

    if (arg3) {
        s = slirp_lookup(mon, arg1, arg2);
        src_str = arg3;
    } else if (arg2) {
        s = slirp_lookup(mon, NULL, arg1);
    if (arg2) {
        s = slirp_lookup(mon, arg1);
        src_str = arg2;
    } else {
        s = slirp_lookup(mon, NULL, NULL);
        s = slirp_lookup(mon, NULL);
        src_str = arg1;
    }
    if (!s) {
@@ -784,16 +768,12 @@ void hmp_hostfwd_add(Monitor *mon, const QDict *qdict)
    SlirpState *s;
    const char *arg1 = qdict_get_str(qdict, "arg1");
    const char *arg2 = qdict_get_try_str(qdict, "arg2");
    const char *arg3 = qdict_get_try_str(qdict, "arg3");

    if (arg3) {
        s = slirp_lookup(mon, arg1, arg2);
        redir_str = arg3;
    } else if (arg2) {
        s = slirp_lookup(mon, NULL, arg1);
    if (arg2) {
        s = slirp_lookup(mon, arg1);
        redir_str = arg2;
    } else {
        s = slirp_lookup(mon, NULL, NULL);
        s = slirp_lookup(mon, NULL);
        redir_str = arg1;
    }
    if (s) {