nbd: use "" as a default export name if none provided
If the user does not provide an export name and the server is running the new style protocol, where export names are mandatory, use "" as the default export name if the user has not specified any. "" is defined in the NBD protocol as the default name to use in such scenarios. Signed-off-by: Daniel P. Berrange <berrange@redhat.com> Message-Id: <1455129674-17255-13-git-send-email-berrange@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
9344e5f554
commit
69b49502d8
@ -315,8 +315,8 @@ int nbd_receive_negotiate(QIOChannel *ioc, const char *name, uint32_t *flags,
|
|||||||
goto fail;
|
goto fail;
|
||||||
}
|
}
|
||||||
if (!name) {
|
if (!name) {
|
||||||
error_setg(errp, "Server requires an export name");
|
TRACE("Using default NBD export name \"\"");
|
||||||
goto fail;
|
name = "";
|
||||||
}
|
}
|
||||||
if (fixedNewStyle) {
|
if (fixedNewStyle) {
|
||||||
/* Check our desired export is present in the
|
/* Check our desired export is present in the
|
||||||
|
@ -220,6 +220,7 @@ static int nbd_negotiate_send_rep_list(QIOChannel *ioc, NBDExport *exp)
|
|||||||
uint64_t magic, name_len;
|
uint64_t magic, name_len;
|
||||||
uint32_t opt, type, len;
|
uint32_t opt, type, len;
|
||||||
|
|
||||||
|
TRACE("Advertizing export name '%s'", exp->name ? exp->name : "");
|
||||||
name_len = strlen(exp->name);
|
name_len = strlen(exp->name);
|
||||||
magic = cpu_to_be64(NBD_REP_MAGIC);
|
magic = cpu_to_be64(NBD_REP_MAGIC);
|
||||||
if (nbd_negotiate_write(ioc, &magic, sizeof(magic)) != sizeof(magic)) {
|
if (nbd_negotiate_write(ioc, &magic, sizeof(magic)) != sizeof(magic)) {
|
||||||
|
Loading…
Reference in New Issue
Block a user