Prepare Open vSwitch 1.1.2 release.
[sliver-openvswitch.git] / utilities / ovs-appctl.c
index 060e8e2..742603b 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2008, 2009 Nicira Networks.
+ * Copyright (c) 2008, 2009, 2010 Nicira Networks.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -45,7 +45,6 @@ main(int argc, char *argv[])
     int i;
 
     set_program_name(argv[0]);
-    time_init();
 
     /* Parse command line and connect to target. */
     target = parse_command_line(argc, argv);
@@ -66,11 +65,16 @@ main(int argc, char *argv[])
         ovs_fatal(error, "%s: transaction error", target);
     }
     if (code / 100 != 2) {
+        fputs(reply, stderr);
         ovs_error(0, "%s: server returned reply code %03d", target, code);
         exit(2);
     }
     fputs(reply, stdout);
 
+    unixctl_client_destroy(client);
+    free(reply);
+    ds_destroy(&request);
+
     return 0;
 }
 
@@ -170,17 +174,16 @@ connect_to_target(const char *target)
 
     if (target[0] != '/') {
         char *pidfile_name;
-        char *socket_name;
         pid_t pid;
 
-        pidfile_name = xasprintf("%s/%s.pid", ovs_rundir, target);
+        pidfile_name = xasprintf("%s/%s.pid", ovs_rundir(), target);
         pid = read_pidfile(pidfile_name);
         if (pid < 0) {
             ovs_fatal(-pid, "cannot read pidfile \"%s\"", pidfile_name);
         }
         free(pidfile_name);
         socket_name = xasprintf("%s/%s.%ld.ctl",
-                                ovs_rundir, target, (long int) pid);
+                                ovs_rundir(), target, (long int) pid);
     } else {
         socket_name = xstrdup(target);
     }