--- junos.pm.orig	2019-02-06 02:03:28.000000000 -0500
+++ junos.pm	2019-02-12 21:16:55.165617409 -0500
@@ -150,7 +150,7 @@
 	tr/\015//d;
 	last if (/^$prompt/);
 	next if (/^system (shutdown message from|going down )/i);
-	next if (/^\{(master|backup)(:\d+)?\}/);
+	next if (/^\{(master|backup|linecard|primary|secondary)(:(node)?\d+)?\}/);
 
 	/error: the chassis(-control)? subsystem is not r/ && return(-1);
 	/Couldn\'t initiate connection/ && return(-1);
@@ -194,7 +194,7 @@
 	last if (/^$prompt/);
 	return 1 if (/^aborted!/i);
 	next if (/^system (shutdown message from|going down )/i);
-	next if (/^\{(master|backup)(:\d+)?\}/);
+	next if (/^\{(master|backup|linecard|primary|secondary)(:(node)?\d+)?\}/);
 
 	/error: the chassis(-control)? subsystem is not r/ && return(-1);
 	/Couldn\'t initiate connection/ && return(-1);
@@ -231,7 +231,7 @@
 	last if (/^$prompt/);
 	return(1) if (/^aborted!/i);
 	next if (/^system (shutdown message from|going down )/i);
-	next if (/^\{(master|backup)(:\d+)?\}/);
+	next if (/^\{(master|backup|linecard|primary|secondary)(:(node)?\d+)?\}/);
 
 	return(0) if ($junos::ShowChassisFirmware);
 	/error: the chassis(-control)? subsystem is not r/ && return(-1);
@@ -259,7 +259,7 @@
 	last if (/^$prompt/);
 	return 1 if (/^aborted!/i);
 	next if (/^system (shutdown message from|going down )/i);
-	next if (/^\{(master|backup)(:\d+)?\}/);
+	next if (/^\{(master|backup|linecard|primary|secondary)(:(node)?\d+)?\}/);
 
 	/error: the chassis(-control)? subsystem is not r/ && return(-1);
 	/Couldn\'t initiate connection/ && return(-1);
@@ -288,7 +288,7 @@
 	last if (/^$prompt/);
 	return 1 if (/^aborted!/i);
 	next if (/^system (shutdown message from|going down )/i);
-	next if (/^\{(master|backup)(:\d+)?\}/);
+	next if (/^\{(master|backup|linecard|primary|secondary)(:(node)?\d+)?\}/);
 
 	/error: the chassis(-control)? subsystem is not r/ && return(-1);
 	/Couldn\'t initiate connection/ && return(-1);
@@ -314,7 +314,7 @@
 	tr/\015//d;
 	last if (/^$prompt/);
 	next if (/^system (shutdown message from|going down )/i);
-	next if (/^\{(master|backup)(:\d+)?\}/);
+	next if (/^\{(master|backup|linecard|primary|secondary)(:(node)?\d+)?\}/);
 
 	/error: the chassis(-control)? subsystem is not r/ && return(-1);
 	/Couldn\'t initiate connection/ && return(-1);
@@ -348,7 +348,7 @@
 	tr/\015//d;
 	last if (/^$prompt/);
 	next if (/^system (shutdown message from|going down )/i);
-	next if (/^\{(master|backup)(:\d+)?\}/);
+	next if (/^\{(master|backup|linecard|primary|secondary)(:(node)?\d+)?\}/);
 
 	return(0) if ($junos::ShowChassisSCB);
 	/error: the chassis(-control)? subsystem is not r/ && return(-1);
@@ -382,7 +382,7 @@
 	tr/\015//d;
 	last if (/^$prompt/);
 	next if (/^system (shutdown message from|going down )/i);
-	next if (/^\{(master|backup)(:\d+)?\}/);
+	next if (/^\{(master|backup|linecard|primary|secondary)(:(node)?\d+)?\}/);
 
 	/Unrecognized command/ && return(1);
 	/command is not valid/ && return(1);
@@ -405,7 +405,7 @@
 	tr/\015//d;
 	last if (/^$prompt/);
 	next if (/^system (shutdown message from|going down )/i);
-	next if (/^\{(master|backup)(:\d+)?\}/);
+	next if (/^\{(master|backup|linecard|primary|secondary)(:(node)?\d+)?\}/);
 
 	/Unrecognized command/ && return(1);
 	/command is not valid/ && return(1);
@@ -431,7 +431,7 @@
 	tr/\015//d;
 	($found_end = 1, last) if (/^$prompt/);
 	next if (/^system (shutdown message from|going down )/i);
-	next if (/^\{(master|backup)(:\d+)?\}/);
+	next if (/^\{(master|backup|linecard|primary|secondary)(:(node)?\d+)?\}/);
 
 	/Unrecognized command/ && return(0);
 	/command is not valid/ && return(0);
@@ -456,6 +456,7 @@
     while (<$INPUT>) {
 	tr/\015//d;
 	last if (/^$prompt/);
+	next if (/^\{(master|backup|linecard|primary|secondary)(:(node)?\d+)?\}/);
 
 	/Unrecognized command/ && return(1);
 	/command is not valid/ && return(1);
@@ -480,7 +481,7 @@
 	tr/\015//d;
 	last if (/^$prompt/);
 	next if (/^system (shutdown message from|going down )/i);
-	next if (/^\{(master|backup)(:\d+)?\}/);
+	next if (/^\{(master|backup|linecard|primary|secondary)(:(node)?\d+)?\}/);
 
 	# licenses used changes constantly.  distill it to a percentage.
 	# example input:
@@ -534,7 +535,7 @@
 	tr/\015//d;
 	last if (/^$prompt/);
 	next if (/^system (shutdown message from|going down )/i);
-	next if (/^\{(master|backup)(:\d+)?\}/);
+	next if (/^\{(master|backup|linecard|primary|secondary)(:(node)?\d+)?\}/);
 
 	/Unrecognized command/ && return(1);
 	/command is not valid/ && return(1);
@@ -557,7 +558,7 @@
 	tr/\015//d;
 	last if (/^$prompt/);
 	next if (/^system (shutdown message from|going down )/i);
-	next if (/^\{(master|backup)(:\d+)?\}/);
+	next if (/^\{(master|backup|linecard|primary|secondary)(:(node)?\d+)?\}/);
 
 	/Unrecognized command/ && return(1);
 	/command is not valid/ && return(1);
@@ -587,7 +588,7 @@
 	return -1 if (/select: protocol failure /i);	# fail sending cmd
 	next if (/^\s*$/);
 	next if (/^system (shutdown message from|going down )/i);
-	next if (/^\{(master|backup)(:\d+)?\}/);
+	next if (/^\{(master|backup|linecard|primary|secondary)(:(node)?\d+)?\}/);
 	/error: abnormal communication termination with / && return(-1);
 	/error: could not connect to \S+ : no route to host/i && return(-1);
 
@@ -621,8 +622,7 @@
 	}
 	next if (/^system (shutdown message from|going down )/i);
 	next if (/^## last commit: /i);
-	next if (/^\{(master|backup)(:\d+)?\}/);
-	next if (/^\{(primary|secondary)(:\d+)?\}/);
+	next if (/^\{(master|backup|linecard|primary|secondary)(:(node)?\d+)?\}/);
 	$lines++;
 
 	/^database header mismatch: / && return(-1);
