X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=lib%2Funixctl.c;h=b52d3d1ece15e5c955d0bffda4b1437812738438;hb=c6278d208924bb04c41266ddca276712f95533bc;hp=f710ffd60fb363b8837fec387b372ad987f2409a;hpb=02dd3123a0e312f1d33403e744af52dd6096f12d;p=openvswitch diff --git a/lib/unixctl.c b/lib/unixctl.c index f710ffd6..b52d3d1e 100644 --- a/lib/unixctl.c +++ b/lib/unixctl.c @@ -186,11 +186,7 @@ unixctl_server_create(const char *path, struct unixctl_server **serverp) list_init(&server->conns); if (path) { - if (path[0] == '/') { - server->path = xstrdup(path); - } else { - server->path = xasprintf("%s/%s", ovs_rundir, path); - } + server->path = abs_file_name(ovs_rundir, path); } else { server->path = xasprintf("%s/%s.%ld.ctl", ovs_rundir, program_name, (long int) getpid()); @@ -447,7 +443,7 @@ unixctl_server_destroy(struct unixctl_server *server) /* Connects to a Vlog server socket. 'path' should be the name of a Vlog * server socket. If it does not start with '/', it will be prefixed with - * ovs_rundir (e.g. /var/run). + * ovs_rundir (e.g. /var/run/openvswitch). * * Returns 0 if successful, otherwise a positive errno value. If successful, * sets '*clientp' to the new unixctl_client, otherwise to NULL. */ @@ -461,11 +457,7 @@ unixctl_client_create(const char *path, struct unixctl_client **clientp) /* Determine location. */ client = xmalloc(sizeof *client); - if (path[0] == '/') { - client->connect_path = xstrdup(path); - } else { - client->connect_path = xasprintf("%s/%s", ovs_rundir, path); - } + client->connect_path = abs_file_name(ovs_rundir, path); client->bind_path = xasprintf("/tmp/vlog.%ld.%d", (long int) getpid(), counter++);