Added MTU information to sw_interface_dump

Change-Id: Ie69837fd6903b715cb7b840b67c869a9b12c84a7
Signed-off-by: Pavel <pavel.kotucek@pantheon.tech>
This commit is contained in:
Pavel
2016-02-17 15:10:04 +01:00
committed by Pavel Kotucek
parent e1cfcbcda6
commit 84e4ffeaf1
6 changed files with 13 additions and 3 deletions

View File

@@ -587,6 +587,7 @@ static void vl_api_sw_interface_details_t_handler_json
vat_json_object_add_uint(node, "link_up_down", mp->link_up_down);
vat_json_object_add_uint(node, "link_duplex", mp->link_duplex);
vat_json_object_add_uint(node, "link_speed", mp->link_speed);
vat_json_object_add_uint(node, "mtu", ntohs(mp->link_mtu));
vat_json_object_add_uint(node, "sub_id", ntohl(mp->sub_id));
vat_json_object_add_uint(node, "sub_dot1ad", mp->sub_dot1ad);
vat_json_object_add_uint(node, "sub_number_of_tags", mp->sub_number_of_tags);

View File

@@ -38,11 +38,12 @@ public final class vppInterfaceDetails {
public final int vtrPushDot1q;
public final int vtrTag1;
public final int vtrTag2;
public final int linkMtu;
public vppInterfaceDetails(int ifIndex, String interfaceName, int supIfIndex, byte[] physAddr, byte adminUp,
byte linkUp, byte linkDuplex, byte linkSpeed, int subId, byte subDot1ad, byte subNumberOfTags,
int subOuterVlanId, int subInnerVlanId, byte subExactMatch, byte subDefault, byte subOuterVlanIdAny,
byte subInnerVlanIdAny, int vtrOp, int vtrPushDot1q, int vtrTag1, int vtrTag2)
byte subInnerVlanIdAny, int vtrOp, int vtrPushDot1q, int vtrTag1, int vtrTag2, int linkMtu)
{
this.ifIndex = ifIndex;
this.interfaceName = interfaceName;
@@ -65,5 +66,6 @@ public final class vppInterfaceDetails {
this.vtrPushDot1q = vtrPushDot1q;
this.vtrTag1 = vtrTag1;
this.vtrTag2 = vtrTag2;
this.linkMtu = linkMtu;
}
}

View File

@@ -76,7 +76,7 @@ BIND_JAPI_BYTE_FIELD(vppBridgeDomainInterfaceDetails, splitHorizonGroup);
BIND_JAPI_STRING_FIELD(vppBridgeDomainInterfaceDetails, interfaceName);
BIND_JAPI_CLASS(vppInterfaceCounters, "(JJJJJJJJJJJJJJJJJJJJJJ)V");
BIND_JAPI_CLASS(vppInterfaceDetails, "(ILjava/lang/String;I[BBBBBIBBIIBBBBIIII)V");
BIND_JAPI_CLASS(vppInterfaceDetails, "(ILjava/lang/String;I[BBBBBIBBIIBBBBIIIII)V");
BIND_JAPI_CLASS(vppIPv4Address, "(IB)V");
BIND_JAPI_CLASS(vppIPv6Address, "([BB)V");
BIND_JAPI_CLASS(vppL2Fib, "([BZLjava/lang/String;ZZ)V");
@@ -694,6 +694,7 @@ static jobjectArray sw_if_dump_get_interfaces (JNIEnv * env)
jint vtrPushDot1q = sw_if_details->vtr_push_dot1q;
jint vtrTag1 = sw_if_details->vtr_tag1;
jint vtrTag2 = sw_if_details->vtr_tag2;
jint linkMtu = sw_if_details->link_mtu;
jbyte adminUpDown = sw_if_details->admin_up_down;
jbyte linkUpDown = sw_if_details->link_up_down;
@@ -712,7 +713,7 @@ static jobjectArray sw_if_dump_get_interfaces (JNIEnv * env)
linkDuplex, linkSpeed, subId, subDot1ad,
subNumberOfTags, subOuterVlanId, subInnerVlanId,
subExactMatch, subDefault, subOuterVlanIdAny,
subInnerVlanIdAny, vtrOp, vtrPushDot1q, vtrTag1, vtrTag2);
subInnerVlanIdAny, vtrOp, vtrPushDot1q, vtrTag1, vtrTag2, linkMtu);
(*env)->SetObjectArrayElement(env, ifArray, i, ifObj);
}

View File

@@ -40,6 +40,7 @@ typedef struct {
u8 link_up_down;
u8 link_duplex;
u8 link_speed;
u16 link_mtu;
u32 sub_id;
u8 sub_dot1ad;
u8 sub_number_of_tags;

View File

@@ -2374,6 +2374,7 @@ static void send_sw_interface_details (vpe_api_main_t * am,
VNET_HW_INTERFACE_FLAG_DUPLEX_SHIFT);
mp->link_speed = ((hi->flags & VNET_HW_INTERFACE_FLAG_SPEED_MASK) >>
VNET_HW_INTERFACE_FLAG_SPEED_SHIFT);
mp->link_mtu = ntohs(hi->max_packet_bytes);
strncpy ((char *) mp->interface_name,
(char *) interface_name, ARRAY_LEN(mp->interface_name)-1);

View File

@@ -51,6 +51,7 @@ define want_interface_events_reply {
@param interface_name - name of the interface
@param link_duplex - 1 if half duplex, 2 if full duplex
@param link_speed - 1 = 10M, 2 = 100M, 4 = 1G, 8 = 10G, 16 = 40G, 32 = 100G
@param link_MTU - max. transmittion unit
@param sub_if_id - A number 0-N to uniquely identify this subif on super if
@param sub_dot1ad - 0 = dot1q, 1=dot1ad
@param sub_number_of_tags - Number of tags (0 - 2)
@@ -88,6 +89,9 @@ manual_java define sw_interface_details {
/* 1 = 10M, 2 = 100M, 4 = 1G, 8 = 10G, 16 = 40G, 32 = 100G */
u8 link_speed;
/* MTU */
u16 link_mtu;
/* Subinterface ID. A number 0-N to uniquely identify this subinterface under the super interface*/
u32 sub_id;