]> xenbits.xensource.com Git - xenclient/toolstack.git/commitdiff
allow to override the socket path so that xenvm can be run as a normal user.
authorVincent Hanquez <vincent.hanquez@eu.citrix.com>
Mon, 20 Jul 2009 08:04:23 +0000 (09:04 +0100)
committerVincent Hanquez <vincent.hanquez@eu.citrix.com>
Mon, 20 Jul 2009 08:04:23 +0000 (09:04 +0100)
xenvm/xenvm.ml
xenvm/xenvmlib.ml

index cba0616eef70cba67ff47b9a832af0e85f98451c..66130a6ba594bffd09f492db25457ef0e7e676b2 100644 (file)
@@ -89,8 +89,10 @@ let bind_unix_socket filename listen_queue =
        socket
 
 let open_monitor_socket uuid name =
-       Unixext.mkdir_rec "/var/lib/xenvm" 0o640;
-       let filename = sprintf "/var/lib/xenvm/vm-%s" uuid in
+       (* look if we have forced the path to something else *)
+       let dir = try Sys.getenv "XENVM_SOCKET_DIR" with Not_found -> "/var/lib/xenvm" in
+       Unixext.mkdir_rec dir 0o640;
+       let filename = sprintf "%s/vm-%s" dir uuid in
        bind_unix_socket filename 10, filename
 
 let close_monitor_socket socket filename = Unix.close socket; Unixext.unlink_safe filename; ()
index 8ace27bbbaab873ad330f7808ef346d06004d595..282edec017544794dc2fc4e4f38fee5d5d5f202a 100644 (file)
@@ -27,7 +27,8 @@ exception Read_timeout
 exception Connect_refused of string
 
 let path_of_socket id =
-       Printf.sprintf "/var/lib/xenvm/vm-%s" id
+       let dir = try Sys.getenv "XENVM_SOCKET_DIR" with Not_found -> "/var/lib/xenvm" in
+       Printf.sprintf "%s/vm-%s" dir id
 
 let connect id =
        let filename = path_of_socket id in