提交 96a96b84 编写于 作者: E Erik Skultety

admin: Add support for URI aliases

Now that we introduced URI support in libvirt-admin, we should also support URI
aliases during connection establishment phase. After applying this patch,
virAdmConnectOpen will also support VIR_CONNECT_NO_ALIASES flag.
上级 fb90fcc0
...@@ -195,6 +195,7 @@ virAdmConnectPtr ...@@ -195,6 +195,7 @@ virAdmConnectPtr
virAdmConnectOpen(const char *name, unsigned int flags) virAdmConnectOpen(const char *name, unsigned int flags)
{ {
char *sock_path = NULL; char *sock_path = NULL;
char *alias = NULL;
virAdmConnectPtr conn = NULL; virAdmConnectPtr conn = NULL;
virConfPtr conf = NULL; virConfPtr conf = NULL;
...@@ -203,6 +204,7 @@ virAdmConnectOpen(const char *name, unsigned int flags) ...@@ -203,6 +204,7 @@ virAdmConnectOpen(const char *name, unsigned int flags)
VIR_DEBUG("flags=%x", flags); VIR_DEBUG("flags=%x", flags);
virResetLastError(); virResetLastError();
virCheckFlags(VIR_CONNECT_NO_ALIASES, NULL);
if (!(conn = virAdmConnectNew())) if (!(conn = virAdmConnectNew()))
goto error; goto error;
...@@ -213,7 +215,11 @@ virAdmConnectOpen(const char *name, unsigned int flags) ...@@ -213,7 +215,11 @@ virAdmConnectOpen(const char *name, unsigned int flags)
if (!name && !(name = virAdmGetDefaultURI(conf))) if (!name && !(name = virAdmGetDefaultURI(conf)))
goto error; goto error;
if (!(conn->uri = virURIParse(name))) if ((!(flags & VIR_CONNECT_NO_ALIASES) &&
virURIResolveAlias(conf, name, &alias) < 0))
goto error;
if (!(conn->uri = virURIParse(alias ? alias : name)))
goto error; goto error;
if (!(sock_path = getSocketPath(conn->uri))) if (!(sock_path = getSocketPath(conn->uri)))
...@@ -229,6 +235,7 @@ virAdmConnectOpen(const char *name, unsigned int flags) ...@@ -229,6 +235,7 @@ virAdmConnectOpen(const char *name, unsigned int flags)
cleanup: cleanup:
VIR_FREE(sock_path); VIR_FREE(sock_path);
VIR_FREE(alias);
virConfFree(conf); virConfFree(conf);
return conn; return conn;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册