• M
    util: Prepare URI formatting for libxml2 >= 2.9.2 · 3d021408
    Martin Kletzander 提交于
    Since commit 8eb55d782a2b9afacc7938694891cc6fad7b42a5 libxml2 removes
    two slashes from the URI when there is no server part.  This is fixed
    with beb7281055dbf0ed4d041022a67c6c5cfd126f25, but only if the calling
    application calls xmlSaveUri() on URI that xmlURIParse() parsed.  And
    that is not the case in virURIFormat().  virURIFormat() accepts
    virURIPtr that can be created without parsing it and we do that when we
    format network storage paths for gluster for example.  Even though
    virStorageSourceParseBackingURI() uses virURIParse(), it throws that data
    structure right away.
    
    Since we want to format URIs as URIs and not absolute URIs or opaque
    URIs (see RFC 3986), we can specify that with a special hack thanks to
    commit beb7281055dbf0ed4d041022a67c6c5cfd126f25, by setting port to -1.
    
    This fixes qemuxml2argvtest test where the disk-drive-network-gluster
    case was failing.
    Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
    (cherry picked from commit 8f17d0ea)
    3d021408
viruri.c 8.1 KB