util: New function ovs_fatal_valist().
authorBen Pfaff <blp@nicira.com>
Thu, 31 Mar 2011 21:50:58 +0000 (14:50 -0700)
committerBen Pfaff <blp@nicira.com>
Mon, 4 Apr 2011 17:58:55 +0000 (10:58 -0700)
This commit adds a few initial users but more are coming up.

lib/util.c
lib/util.h
utilities/ovs-dpctl.c
utilities/ovs-ofctl.c

index b9dbdc48063164e1755c0c887901cd2f6d621306..c05c582fed6fe2e0b4481aa01cfeb1a05e1f23a4 100644 (file)
@@ -204,9 +204,14 @@ ovs_fatal(int err_no, const char *format, ...)
     va_list args;
 
     va_start(args, format);
-    ovs_error_valist(err_no, format, args);
-    va_end(args);
+    ovs_fatal_valist(err_no, format, args);
+}
 
+/* Same as ovs_fatal() except that the arguments are supplied as a va_list. */
+void
+ovs_fatal_valist(int err_no, const char *format, va_list args)
+{
+    ovs_error_valist(err_no, format, args);
     exit(EXIT_FAILURE);
 }
 
index e5339875494842cc1a6638c6cc6b5f6ccb5b8196..9c2352ffd3e2f2bd9b5b7b644dd2e0b527336779 100644 (file)
@@ -155,6 +155,8 @@ void ovs_abort(int err_no, const char *format, ...)
     PRINTF_FORMAT(2, 3) NO_RETURN;
 void ovs_fatal(int err_no, const char *format, ...)
     PRINTF_FORMAT(2, 3) NO_RETURN;
+void ovs_fatal_valist(int err_no, const char *format, va_list)
+    PRINTF_FORMAT(2, 0) NO_RETURN;
 void ovs_error(int err_no, const char *format, ...) PRINTF_FORMAT(2, 3);
 void ovs_error_valist(int err_no, const char *format, va_list)
     PRINTF_FORMAT(2, 0);
index f3e13a708ca32ad51ef6b6e72347a07baca2a1d7..9d6bf98520def196206c0b552aa87ca0649a4cf1 100644 (file)
@@ -146,17 +146,8 @@ static void run(int retval, const char *message, ...)
     if (retval) {
         va_list args;
 
-        fprintf(stderr, "%s: ", program_name);
         va_start(args, message);
-        vfprintf(stderr, message, args);
-        va_end(args);
-        if (retval == EOF) {
-            fputs(": unexpected end of file\n", stderr);
-        } else {
-            fprintf(stderr, ": %s\n", strerror(retval));
-        }
-
-        exit(EXIT_FAILURE);
+        ovs_fatal_valist(retval, message, args);
     }
 }
 \f
index 201a9633bd5b075c4d43bbd1e73f947c0399fa3f..994329e63edb12a90fc6a1d2d65f70a132d39e24 100644 (file)
@@ -199,17 +199,8 @@ static void run(int retval, const char *message, ...)
     if (retval) {
         va_list args;
 
-        fprintf(stderr, "%s: ", program_name);
         va_start(args, message);
-        vfprintf(stderr, message, args);
-        va_end(args);
-        if (retval == EOF) {
-            fputs(": unexpected end of file\n", stderr);
-        } else {
-            fprintf(stderr, ": %s\n", strerror(retval));
-        }
-
-        exit(EXIT_FAILURE);
+        ovs_fatal_valist(retval, message, args);
     }
 }
 \f