ofp-util: New function ofputil_async_msg_type_to_string().
authorBen Pfaff <blp@ovn.org>
Thu, 7 Jan 2016 20:04:56 +0000 (12:04 -0800)
committerBen Pfaff <blp@ovn.org>
Wed, 20 Jan 2016 17:29:37 +0000 (09:29 -0800)
An upcoming commit will add another user.

Signed-off-by: Ben Pfaff <blp@ovn.org>
Acked-by: Jarno Rajahalme <jarno@ovn.org>
lib/ofp-print.c
lib/ofp-util.c
lib/ofp-util.h

index 42e822b..bf97b04 100644 (file)
@@ -2151,31 +2151,8 @@ ofp_print_nxt_set_async_config(struct ds *string,
 
             ds_put_format(string, "\n %s:\n", i == 0 ? "master" : "slave");
             for (type = 0; type < OAM_N_TYPES; type++) {
-                switch (type) {
-                case OAM_PACKET_IN:
-                    ds_put_cstr(string, "       PACKET_IN:");
-                    break;
-
-                case OAM_PORT_STATUS:
-                    ds_put_cstr(string, "     PORT_STATUS:");
-                    break;
-
-                case OAM_FLOW_REMOVED:
-                    ds_put_cstr(string, "    FLOW_REMOVED:");
-                    break;
-
-                case OAM_ROLE_STATUS:
-                    ds_put_cstr(string, "     ROLE_STATUS:");
-                    break;
-
-                case OAM_TABLE_STATUS:
-                    ds_put_cstr(string, "    TABLE_STATUS:");
-                    break;
-
-                case OAM_REQUESTFORWARD:
-                    ds_put_cstr(string, "  REQUESTFORWARD:");
-                    break;
-                }
+                ds_put_format(string, "%16s:",
+                              ofputil_async_msg_type_to_string(type));
 
                 for (j = 0; j < 32; j++) {
                     if (role[i][type] & (1u << j)) {
index f1aefdd..d8564c3 100644 (file)
@@ -9467,6 +9467,23 @@ ofputil_uninit_tlv_table(struct ovs_list *mappings)
     }
 }
 
+const char *
+ofputil_async_msg_type_to_string(enum ofputil_async_msg_type type)
+{
+    switch (type) {
+    case OAM_PACKET_IN:      return "PACKET_IN";
+    case OAM_PORT_STATUS:    return "PORT_STATUS";
+    case OAM_FLOW_REMOVED:   return "FLOW_REMOVED";
+    case OAM_ROLE_STATUS:    return "ROLE_STATUS";
+    case OAM_TABLE_STATUS:   return "TABLE_STATUS";
+    case OAM_REQUESTFORWARD: return "REQUESTFORWARD";
+
+    case OAM_N_TYPES:
+    default:
+        OVS_NOT_REACHED();
+    }
+}
+
 /* Decodes the OpenFlow "set async config" request and "get async config
  * reply" message in '*oh' into an abstract form in 'master' and 'slave'.
  *
index 89f3d95..1fd013d 100644 (file)
@@ -1323,6 +1323,7 @@ enum ofputil_async_msg_type {
     OAM_REQUESTFORWARD,         /* OFPT_REQUESTFORWARD. */
     OAM_N_TYPES
 };
+const char *ofputil_async_msg_type_to_string(enum ofputil_async_msg_type);
 
 enum ofperr ofputil_decode_set_async_config(const struct ofp_header *,
                                             uint32_t master[OAM_N_TYPES],