On 01/21/2019 10:00 AM, Ján Tomko wrote: > Similar to what commit 86dba8f3 did for virPortAllocatorRelease, > ignore port 0 in virPortAllocatorSetUsed. > > For all the reasonable use cases the callers already check that > the port is non-zero, however if the port from the XML overflows > unsigned short and turns into 0, it can be set as used by > virPortAllocatorSetUsed but not released by virPortAllocatorRelease. > > Also skip port '0' in virPortAllocatorSetUsed to make this behavior > symmetric. > > The serenity was disturbed by commit 5dbda5e9 which started using > virPortAllocatorRelease instead of virPortAllocatorSetUsed (false). > > https://bugzilla.redhat.com/show_bug.cgi?id=1591645 > > Signed-off-by: Ján Tomko <jtomko@xxxxxxxxxx> > --- > src/util/virportallocator.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/src/util/virportallocator.c b/src/util/virportallocator.c > index db95a601c7..d48963c1ff 100644 > --- a/src/util/virportallocator.c > +++ b/src/util/virportallocator.c > @@ -294,6 +294,9 @@ virPortAllocatorSetUsed(unsigned short port) > if (!pa) > return -1; > > + if (!port) > + return 0; > + > virObjectLock(pa); > > if (virBitmapIsBitSet(pa->bitmap, port) || > Reviewed-by: Cole Robinson <crobinso@xxxxxxxxxx> There's a portallocator unit test file but no direct tests for this function unfortunately - Cole -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list