Blame SOURCES/net-tools-interface-name-len.patch

b18d28
diff --git a/netstat.c b/netstat.c
b18d28
index c084dfb..cfcfb78 100644
b18d28
--- a/netstat.c
b18d28
+++ b/netstat.c
b18d28
@@ -743,6 +743,7 @@ static void igmp_do_one(int lnr, const char *line,const char *prot)
b18d28
     static int igmp6_flag = 0;
b18d28
     static char device[16];
b18d28
     int num, idx, refcnt;
b18d28
+    char* offset;
b18d28
 
b18d28
     if (lnr == 0) {
b18d28
 	/* IPV6 ONLY */
b18d28
@@ -794,17 +795,21 @@ static void igmp_do_one(int lnr, const char *line,const char *prot)
b18d28
 #if HAVE_AFINET
b18d28
 	if (line[0] != '\t') {
b18d28
 	    if (idx_flag) {
b18d28
-		if ((num = sscanf( line, "%d\t%10c", &idx, device)) < 2) {
b18d28
+		if ((num = sscanf( line, "%d\t%15c", &idx, device)) < 2) {
b18d28
 		    fprintf(stderr, _("warning, got bogus igmp line %d.\n"), lnr);
b18d28
 		    return;
b18d28
 		}
b18d28
 	    } else {
b18d28
-		if ( (num = sscanf( line, "%10c", device )) < 1 ) {
b18d28
+		if ( (num = sscanf( line, "%15c", device )) < 1 ) {
b18d28
 		    fprintf(stderr, _("warning, got bogus igmp line %d.\n"), lnr);
b18d28
 		    return;
b18d28
 		}
b18d28
 	    }
b18d28
-	    device[10] = '\0';
b18d28
+
b18d28
+	    offset = strrchr(device, ':');
b18d28
+	    if(offset)
b18d28
+		*offset = 0;
b18d28
+
b18d28
 	    return;
b18d28
 	} else if ( line[0] == '\t' ) {
b18d28
 	    if ( (num = sscanf(line, "\t%8[0-9A-Fa-f] %d", mcast_addr, &refcnt)) < 2 ) {
b18d28
@@ -2037,7 +2037,7 @@ static int iface_info(void)
b18d28
     if (flag_exp < 2) {
b18d28
 	ife_short = 1;
b18d28
 	if(!(count % 8))
b18d28
-	    printf(_("Iface      MTU    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg\n"));
b18d28
+	    printf(_("Iface             MTU    RX-OK RX-ERR RX-DRP RX-OVR    TX-OK TX-ERR TX-DRP TX-OVR Flg\n"));
b18d28
     }
b18d28
b18d28
     if (flag_int_name) {
b18d28
diff --git a/lib/interface.c b/lib/interface.c
b18d28
index 3bd999f..97f3db5 100644
b18d28
--- a/lib/interface.c
b18d28
+++ b/lib/interface.c
b18d28
@@ -655,7 +655,7 @@ int do_if_print(struct interface *ife, void *cookie)
b18d28
 
b18d28
 void ife_print_short(struct interface *ptr)
b18d28
 {
b18d28
-    printf("%-8.8s ", ptr->name);
b18d28
+    printf("%-15.15s ", ptr->name);
b18d28
     printf("%5d ", ptr->mtu);
b18d28
     /* If needed, display the interface statistics. */
b18d28
     if (ptr->statistics_valid) {