chardev: Reuse channel's cached local address
Directly accessing the fd member of a QIOChannelSocket is an undesirable leaky abstraction. What's more, grabbing that fd merely to force an eventual call to getsockname() can be wasteful, since the channel is often able to return its cached local name. Reported-by: Daniel P. Berrangé <berrange@redhat.com> Signed-off-by: Eric Blake <eblake@redhat.com> Message-ID: <20251113011625.878876-23-eblake@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
parent
e685dd26c7
commit
dfeadf82c2
1 changed files with 1 additions and 1 deletions
|
|
@ -1255,7 +1255,7 @@ static int qmp_chardev_open_socket_server(Chardev *chr,
|
|||
}
|
||||
|
||||
qapi_free_SocketAddress(s->addr);
|
||||
s->addr = socket_local_address(s->listener->sioc[0]->fd, errp);
|
||||
s->addr = qio_channel_socket_get_local_address(s->listener->sioc[0], errp);
|
||||
|
||||
skip_listen:
|
||||
update_disconnected_filename(s);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue