|
From: | Markus Armbruster |
Subject: | Re: [PATCH 08/11] sockets: Fix socket_sockaddr_to_address_unix() for abstract sockets |
Date: | Fri, 30 Oct 2020 09:56:11 +0100 |
User-agent: | Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) |
Paolo Bonzini <pbonzini@redhat.com> writes: > On 29/10/20 14:38, Markus Armbruster wrote: >> + /* Linux abstract socket */ >> + addr->u.q_unix.path = g_strndup(su->sun_path + 1, >> + sizeof(su->sun_path) - 1); >> + addr->u.q_unix.has_abstract = true; >> + addr->u.q_unix.abstract = true; >> + addr->u.q_unix.has_tight = true; >> + addr->u.q_unix.tight = !su->sun_path[sizeof(su->sun_path) - 1]; >> + return addr; > > I think this should be > > addr->u.q_unit.tight = salen < sizeof(*su); > > Paolo You're right, my code is wrong. The case "@path just fits" is ambiguous: @tight doesn't matter then. Your code arbitrarily picks tight=false then. Picking the default tight=true would perhaps be a bit nicer. Not worth complicating the code.
[Prev in Thread] | Current Thread | [Next in Thread] |