mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
util: storage: Add 'ssh' network storage protocol
Allow using 'ssh' protocol in backing chains and later for disks themselves.
This commit is contained in:
parent
ba8806c8cc
commit
29f06ff548
@ -581,6 +581,7 @@ libxlMakeNetworkDiskSrcStr(virStorageSourcePtr src,
|
|||||||
case VIR_STORAGE_NET_PROTOCOL_ISCSI:
|
case VIR_STORAGE_NET_PROTOCOL_ISCSI:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_GLUSTER:
|
case VIR_STORAGE_NET_PROTOCOL_GLUSTER:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_SHEEPDOG:
|
case VIR_STORAGE_NET_PROTOCOL_SHEEPDOG:
|
||||||
|
case VIR_STORAGE_NET_PROTOCOL_SSH:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_LAST:
|
case VIR_STORAGE_NET_PROTOCOL_LAST:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_NONE:
|
case VIR_STORAGE_NET_PROTOCOL_NONE:
|
||||||
virReportError(VIR_ERR_NO_SUPPORT,
|
virReportError(VIR_ERR_NO_SUPPORT,
|
||||||
|
@ -480,6 +480,9 @@ qemuNetworkDriveGetPort(int protocol,
|
|||||||
case VIR_STORAGE_NET_PROTOCOL_NBD:
|
case VIR_STORAGE_NET_PROTOCOL_NBD:
|
||||||
return 10809;
|
return 10809;
|
||||||
|
|
||||||
|
case VIR_STORAGE_NET_PROTOCOL_SSH:
|
||||||
|
return 22;
|
||||||
|
|
||||||
case VIR_STORAGE_NET_PROTOCOL_ISCSI:
|
case VIR_STORAGE_NET_PROTOCOL_ISCSI:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_GLUSTER:
|
case VIR_STORAGE_NET_PROTOCOL_GLUSTER:
|
||||||
/* no default port specified */
|
/* no default port specified */
|
||||||
@ -878,6 +881,10 @@ qemuBuildNetworkDriveURI(virStorageSourcePtr src,
|
|||||||
ret = virBufferContentAndReset(&buf);
|
ret = virBufferContentAndReset(&buf);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case VIR_STORAGE_NET_PROTOCOL_SSH:
|
||||||
|
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
|
||||||
|
_("'ssh' protocol is not yet supported"));
|
||||||
|
goto cleanup;
|
||||||
|
|
||||||
case VIR_STORAGE_NET_PROTOCOL_LAST:
|
case VIR_STORAGE_NET_PROTOCOL_LAST:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_NONE:
|
case VIR_STORAGE_NET_PROTOCOL_NONE:
|
||||||
|
@ -13373,6 +13373,7 @@ qemuDomainSnapshotPrepareDiskExternalBackingInactive(virDomainDiskDefPtr disk)
|
|||||||
case VIR_STORAGE_NET_PROTOCOL_FTP:
|
case VIR_STORAGE_NET_PROTOCOL_FTP:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_FTPS:
|
case VIR_STORAGE_NET_PROTOCOL_FTPS:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_TFTP:
|
case VIR_STORAGE_NET_PROTOCOL_TFTP:
|
||||||
|
case VIR_STORAGE_NET_PROTOCOL_SSH:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_LAST:
|
case VIR_STORAGE_NET_PROTOCOL_LAST:
|
||||||
virReportError(VIR_ERR_INTERNAL_ERROR,
|
virReportError(VIR_ERR_INTERNAL_ERROR,
|
||||||
_("external inactive snapshots are not supported on "
|
_("external inactive snapshots are not supported on "
|
||||||
@ -13435,6 +13436,7 @@ qemuDomainSnapshotPrepareDiskExternalOverlayActive(virDomainSnapshotDiskDefPtr d
|
|||||||
case VIR_STORAGE_NET_PROTOCOL_FTP:
|
case VIR_STORAGE_NET_PROTOCOL_FTP:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_FTPS:
|
case VIR_STORAGE_NET_PROTOCOL_FTPS:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_TFTP:
|
case VIR_STORAGE_NET_PROTOCOL_TFTP:
|
||||||
|
case VIR_STORAGE_NET_PROTOCOL_SSH:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_LAST:
|
case VIR_STORAGE_NET_PROTOCOL_LAST:
|
||||||
virReportError(VIR_ERR_INTERNAL_ERROR,
|
virReportError(VIR_ERR_INTERNAL_ERROR,
|
||||||
_("external active snapshots are not supported on "
|
_("external active snapshots are not supported on "
|
||||||
@ -13579,6 +13581,7 @@ qemuDomainSnapshotPrepareDiskInternal(virConnectPtr conn,
|
|||||||
case VIR_STORAGE_NET_PROTOCOL_FTP:
|
case VIR_STORAGE_NET_PROTOCOL_FTP:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_FTPS:
|
case VIR_STORAGE_NET_PROTOCOL_FTPS:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_TFTP:
|
case VIR_STORAGE_NET_PROTOCOL_TFTP:
|
||||||
|
case VIR_STORAGE_NET_PROTOCOL_SSH:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_LAST:
|
case VIR_STORAGE_NET_PROTOCOL_LAST:
|
||||||
virReportError(VIR_ERR_INTERNAL_ERROR,
|
virReportError(VIR_ERR_INTERNAL_ERROR,
|
||||||
_("internal inactive snapshots are not supported on "
|
_("internal inactive snapshots are not supported on "
|
||||||
|
@ -2014,6 +2014,7 @@ qemuParseCommandLine(virCapsPtr caps,
|
|||||||
case VIR_STORAGE_NET_PROTOCOL_FTP:
|
case VIR_STORAGE_NET_PROTOCOL_FTP:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_FTPS:
|
case VIR_STORAGE_NET_PROTOCOL_FTPS:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_TFTP:
|
case VIR_STORAGE_NET_PROTOCOL_TFTP:
|
||||||
|
case VIR_STORAGE_NET_PROTOCOL_SSH:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_LAST:
|
case VIR_STORAGE_NET_PROTOCOL_LAST:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_NONE:
|
case VIR_STORAGE_NET_PROTOCOL_NONE:
|
||||||
/* ignored for now */
|
/* ignored for now */
|
||||||
|
@ -84,7 +84,8 @@ VIR_ENUM_IMPL(virStorageNetProtocol, VIR_STORAGE_NET_PROTOCOL_LAST,
|
|||||||
"https",
|
"https",
|
||||||
"ftp",
|
"ftp",
|
||||||
"ftps",
|
"ftps",
|
||||||
"tftp")
|
"tftp",
|
||||||
|
"ssh")
|
||||||
|
|
||||||
VIR_ENUM_IMPL(virStorageNetHostTransport, VIR_STORAGE_NET_HOST_TRANS_LAST,
|
VIR_ENUM_IMPL(virStorageNetHostTransport, VIR_STORAGE_NET_HOST_TRANS_LAST,
|
||||||
"tcp",
|
"tcp",
|
||||||
@ -2501,6 +2502,7 @@ virStorageSourceParseBackingColon(virStorageSourcePtr src,
|
|||||||
case VIR_STORAGE_NET_PROTOCOL_TFTP:
|
case VIR_STORAGE_NET_PROTOCOL_TFTP:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_ISCSI:
|
case VIR_STORAGE_NET_PROTOCOL_ISCSI:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_GLUSTER:
|
case VIR_STORAGE_NET_PROTOCOL_GLUSTER:
|
||||||
|
case VIR_STORAGE_NET_PROTOCOL_SSH:
|
||||||
virReportError(VIR_ERR_INTERNAL_ERROR,
|
virReportError(VIR_ERR_INTERNAL_ERROR,
|
||||||
_("malformed backing store path for protocol %s"),
|
_("malformed backing store path for protocol %s"),
|
||||||
protocol);
|
protocol);
|
||||||
|
@ -132,6 +132,7 @@ typedef enum {
|
|||||||
VIR_STORAGE_NET_PROTOCOL_FTP,
|
VIR_STORAGE_NET_PROTOCOL_FTP,
|
||||||
VIR_STORAGE_NET_PROTOCOL_FTPS,
|
VIR_STORAGE_NET_PROTOCOL_FTPS,
|
||||||
VIR_STORAGE_NET_PROTOCOL_TFTP,
|
VIR_STORAGE_NET_PROTOCOL_TFTP,
|
||||||
|
VIR_STORAGE_NET_PROTOCOL_SSH,
|
||||||
|
|
||||||
VIR_STORAGE_NET_PROTOCOL_LAST
|
VIR_STORAGE_NET_PROTOCOL_LAST
|
||||||
} virStorageNetProtocol;
|
} virStorageNetProtocol;
|
||||||
|
@ -727,6 +727,7 @@ xenFormatXLDiskSrcNet(virStorageSourcePtr src)
|
|||||||
case VIR_STORAGE_NET_PROTOCOL_ISCSI:
|
case VIR_STORAGE_NET_PROTOCOL_ISCSI:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_GLUSTER:
|
case VIR_STORAGE_NET_PROTOCOL_GLUSTER:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_SHEEPDOG:
|
case VIR_STORAGE_NET_PROTOCOL_SHEEPDOG:
|
||||||
|
case VIR_STORAGE_NET_PROTOCOL_SSH:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_LAST:
|
case VIR_STORAGE_NET_PROTOCOL_LAST:
|
||||||
case VIR_STORAGE_NET_PROTOCOL_NONE:
|
case VIR_STORAGE_NET_PROTOCOL_NONE:
|
||||||
virReportError(VIR_ERR_NO_SUPPORT,
|
virReportError(VIR_ERR_NO_SUPPORT,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user