net: Use id_generate() in the network subsystem, too

We already got a global function called id_generate() to create unique
IDs within QEMU. Let's use it in the network subsytem, too, instead of
inventing our own ID scheme here.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20210215090225.1046239-1-thuth@redhat.com>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
This commit is contained in:
Thomas Huth 2021-02-15 10:02:25 +01:00 committed by Laurent Vivier
parent 33b2b388a5
commit 27eb3722e4
3 changed files with 5 additions and 3 deletions

View File

@ -5,6 +5,7 @@ typedef enum IdSubSystems {
ID_QDEV,
ID_BLOCK,
ID_CHR,
ID_NET,
ID_MAX /* last element, used as array size */
} IdSubSystems;

View File

@ -43,6 +43,7 @@
#include "qemu/cutils.h"
#include "qemu/config-file.h"
#include "qemu/ctype.h"
#include "qemu/id.h"
#include "qemu/iov.h"
#include "qemu/qemu-print.h"
#include "qemu/main-loop.h"
@ -1111,8 +1112,7 @@ static int net_client_init(QemuOpts *opts, bool is_netdev, Error **errp)
/* Create an ID for -net if the user did not specify one */
if (!is_netdev && !qemu_opts_id(opts)) {
static int idx;
qemu_opts_set_id(opts, g_strdup_printf("__org.qemu.net%i", idx++));
qemu_opts_set_id(opts, id_generate(ID_NET));
}
if (visit_type_Netdev(v, NULL, &object, errp)) {
@ -1467,7 +1467,7 @@ static int net_param_nic(void *dummy, QemuOpts *opts, Error **errp)
/* Create an ID if the user did not specify one */
nd_id = g_strdup(qemu_opts_id(opts));
if (!nd_id) {
nd_id = g_strdup_printf("__org.qemu.nic%i", idx);
nd_id = id_generate(ID_NET);
qemu_opts_set_id(opts, nd_id);
}

View File

@ -35,6 +35,7 @@ static const char *const id_subsys_str[ID_MAX] = {
[ID_QDEV] = "qdev",
[ID_BLOCK] = "block",
[ID_CHR] = "chr",
[ID_NET] = "net",
};
/*