search for: drive_transport_unix

Displaying 10 results from an estimated 10 matches for "drive_transport_unix".

2016 May 18
2
[PATCH v2 0/2] lib: qemu: Memoize qemu feature detection.
v1 -> v2: - Rebase on top of Pino's version work. Two patches went upstream, these are the two remaining patches. Note the generation number is still inside the qemu.stat file. We could put it in the filename, I have no particular preference. Rich.
2018 Jun 14
1
lib: Convert all drive socket parameters to an absolute path
One interesting omission is that we don't allow sockets in the abstract namespace. The API won't let you pass these sockets because they contain a '\0' character in the middle of the string. Therefore this patch doesn't need to deal with those. However we should in future allow that, probably using the '@' character to stand in for the NUL byte, as is used in a few
2018 Jun 21
2
[PATCH v3] lib: libvirt: Convert all drive socket parameters to an absolute path (RHBZ#1588451).
https://bugzilla.redhat.com/show_bug.cgi?id=1588451 v2 was here: https://www.redhat.com/archives/libguestfs/2018-June/msg00067.html This is a greatly simplified version, which just changes the libvirt backend to make the path absolute. None of the tests need to be adjusted. Rich.
2018 Jun 21
0
[PATCH v3] lib: libvirt: Convert all drive socket parameters to an absolute path (RHBZ#1588451).
...23,6 +23,7 @@ #include <stdarg.h> #include <stdbool.h> #include <unistd.h> +#include <limits.h> #include <fcntl.h> #include <grp.h> #include <errno.h> @@ -1698,8 +1699,20 @@ construct_libvirt_xml_disk_source_hosts (guestfs_h *g, } case drive_transport_unix: { + /* libvirt requires sockets to be specified as an absolute path + * (RHBZ#1588451). + */ + const char *socket = src->servers[i].u.socket; + CLEANUP_FREE char *abs_socket = realpath (socket, NULL); + + if (abs_socket == NULL) { + perrorf (...
2014 Jan 16
3
[PATCH 0/2] Don't use snapshot=on
QEMU upstream has broken snapshot=on ... again. These two patches stop using it entirely. Instead we run 'qemu-img create' to create overlay disks as required. Note that the libvirt and UML backends were already doing this: The libvirt backend because <transient/> has never worked, and the UML backend was running uml_mkcow because the UML-equivalent syntax of snapshot=on was
2015 Feb 02
1
RFC: Handle query strings for http and https (RHBZ#1092583)
...cheme, .user = (char *) user }; @@ -1217,6 +1218,7 @@ make_uri (guestfs_h *g, const char *scheme, const char *user, case drive_transport_tcp: uri.server = server->u.hostname; uri.port = server->port; + uri.query_raw = (char *) querystring; break; case drive_transport_unix: query = safe_asprintf (g, "socket=%s", server->u.socket); @@ -1258,36 +1260,36 @@ guestfs___drive_source_qemu_param (guestfs_h *g, const struct drive_source *src) case drive_protocol_ftp: return make_uri (g, "ftp", src->username, src->secret, -...
2016 May 12
7
[PATCH 0/4] lib: qemu: Memoize qemu feature detection.
Doing qemu feature detection in the direct backend takes ~100ms because we need to run `qemu -help' and `qemu -devices ?', and each of those interacts with glibc's very slow link loader. Fixing the link loader is really hard. Instead memoize the output of those two commands. This patch series first separates all the code dealing with qemu into a separate module (src/qemu.c) and
2018 Jun 15
1
[PATCH v2] lib: Convert all drive socket parameters to an absolute path (RHBZ#1588451).
...;string.h> #include <unistd.h> +#include <limits.h> #include <netdb.h> #include <arpa/inet.h> #include <assert.h> @@ -645,7 +646,18 @@ parse_one_server (guestfs_h *g, const char *server, struct drive_server *ret) return -1; } ret->transport = drive_transport_unix; - ret->u.socket = safe_strdup (g, server+5); + + /* libvirt requires sockets to be specified as an absolute path + * (see RHBZ#1588451), and it's probably a good idea anyway to + * check the socket exists and convert it to an absolute path. + */ + ret->u.socket = rea...
2018 Aug 09
0
Using SPDK as QEMU's rootfs disk && A patch for libguestfs to support SPDK
...cret != NULL) { + error (g, _("spdk: you cannot specify a secret with this protocol")); + return NULL; + } + + if (data->nr_servers != 1) { + error (g, _("spdk: you must specify exactly one server")); + return NULL; + } + + if (data->servers[0].transport != drive_transport_unix) { + error (g, _("spdk: only unix transport is supported")); + return NULL; + } + + return create_drive_non_file (g, data); +} + +bool +guestfs_int_has_spdk_drive (guestfs_h *g) +{ + size_t i; + struct drive *drv; + ITER_DRIVES(g, i, drv) { + if (drv->src.protocol == driv...
2014 Apr 30
3
[PATCH 2/2] Fix handling of passwords in URLs
...se drive_transport_tcp: - return make_uri (g, "gluster+tcp", - NULL, &src->servers[0], src->u.exportname); + return make_uri (g, "gluster+tcp", NULL, NULL, + &src->servers[0], src->u.exportname); case drive_transport_unix: - return make_uri (g, "gluster+unix", NULL, &src->servers[0], NULL); + return make_uri (g, "gluster+unix", NULL, NULL, + &src->servers[0], NULL); } case drive_protocol_http: - return make_uri (g, "http", src-&...