interface: use g_autofree and remove unnecessary label

Signed-off-by: Jiang Jiacheng <jiangjiacheng@huawei.com>
Reviewed-by: Jonathon Jongsma <jjongsma@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Signed-off-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
Jiang Jiacheng 2023-01-06 17:18:32 +08:00 committed by Ján Tomko
parent a9027d447b
commit a71744c7e5

View File

@ -879,24 +879,23 @@ udevGetIfaceDefVlan(struct udev *udev G_GNUC_UNUSED,
const char *name,
virInterfaceDef *ifacedef)
{
char *procpath = NULL;
char *buf = NULL;
g_autofree char *procpath = NULL;
g_autofree char *buf = NULL;
char *vid_pos, *dev_pos;
size_t vid_len, dev_len;
const char *vid_prefix = "VID: ";
const char *dev_prefix = "\nDevice: ";
int ret = -1;
procpath = g_strdup_printf("/proc/net/vlan/%s", name);
if (virFileReadAll(procpath, BUFSIZ, &buf) < 0)
goto cleanup;
return -1;
if ((vid_pos = strstr(buf, vid_prefix)) == NULL) {
virReportError(VIR_ERR_INTERNAL_ERROR,
_("failed to find the VID for the VLAN device '%s'"),
name);
goto cleanup;
return -1;
}
vid_pos += strlen(vid_prefix);
@ -905,14 +904,14 @@ udevGetIfaceDefVlan(struct udev *udev G_GNUC_UNUSED,
virReportError(VIR_ERR_INTERNAL_ERROR,
_("failed to find the VID for the VLAN device '%s'"),
name);
goto cleanup;
return -1;
}
if ((dev_pos = strstr(vid_pos + vid_len, dev_prefix)) == NULL) {
virReportError(VIR_ERR_INTERNAL_ERROR,
_("failed to find the real device for the VLAN device '%s'"),
name);
goto cleanup;
return -1;
}
dev_pos += strlen(dev_prefix);
@ -920,18 +919,13 @@ udevGetIfaceDefVlan(struct udev *udev G_GNUC_UNUSED,
virReportError(VIR_ERR_INTERNAL_ERROR,
_("failed to find the real device for the VLAN device '%s'"),
name);
goto cleanup;
return -1;
}
ifacedef->data.vlan.tag = g_strndup(vid_pos, vid_len);
ifacedef->data.vlan.dev_name = g_strndup(dev_pos, dev_len);
ret = 0;
cleanup:
VIR_FREE(procpath);
VIR_FREE(buf);
return ret;
return 0;
}
static virInterfaceDef * ATTRIBUTE_NONNULL(1)