Blame SOURCES/open-lldp-v1.0.1-28-fix-oid-display.patch

3dfa50
From cf3f54d1883e5bc23e4c4006a63e1dde88684013 Mon Sep 17 00:00:00 2001
3dfa50
From: Aaron Conole <aconole@redhat.com>
3dfa50
Date: Thu, 21 Jun 2018 13:28:48 -0400
3dfa50
Subject: [PATCH] basman_clif: print the OID properly
3dfa50
3dfa50
When invoking the lldp tool to view the management information, the display
3dfa50
for the OID is printed as the actual binary bits, rather than the
3dfa50
OID dotted-notation form.
3dfa50
3dfa50
This change will display the OID as expected.
3dfa50
3dfa50
Signed-off-by: Aaron Conole <aconole@redhat.com>
3dfa50
---
3dfa50
 lldp_basman_clif.c | 18 ++++++++++++++++--
3dfa50
 1 file changed, 16 insertions(+), 2 deletions(-)
3dfa50
3dfa50
diff --git a/lldp_basman_clif.c b/lldp_basman_clif.c
3dfa50
index 7dba9d2..abd152d 100644
3dfa50
--- a/lldp_basman_clif.c
3dfa50
+++ b/lldp_basman_clif.c
3dfa50
@@ -272,8 +272,15 @@ void print_mng_addr(u16 len, char *info)
3dfa50
 		memset(buf, 0, sizeof(buf));
3dfa50
 		if (hexstr2bin(info+offset, (u8 *)&buf, oidlen))
3dfa50
 			printf("\tOID: Error parsing OID\n");
3dfa50
-		else
3dfa50
-			printf("\tOID: %s\n", buf);
3dfa50
+		else {
3dfa50
+			printf("\tOID: 0.");
3dfa50
+			for (i = 0; i < oidlen; ++i) {
3dfa50
+				printf("%d", buf[i]);
3dfa50
+				if (i != (oidlen - 1))
3dfa50
+					printf(".");
3dfa50
+			}
3dfa50
+			printf("\n");
3dfa50
+		}
3dfa50
 	} else if (oidlen > 128) {
3dfa50
 		printf("\tOID: Invalid length = %d\n", oidlen);
3dfa50
 	}
3dfa50
@@ -310,3 +317,10 @@ u32 basman_lookup_tlv_name(char *tlvid_str)
3dfa50
 	}
3dfa50
 	return INVALID_TLVID;
3dfa50
 }
3dfa50
+
3dfa50
+/* Local Variables:    */
3dfa50
+/* c-indent-level: 8   */
3dfa50
+/* c-basic-offset: 8   */
3dfa50
+/* tab-width: 8        */
3dfa50
+/* indent-tabs-mode: t */
3dfa50
+/* End:                */
3dfa50
-- 
3dfa50
2.14.3