Browse Source

[fcoe] Use only the first instance of a FIP descriptor

Almost all FIP packets contain at most one instance of each
descriptor.  A VLAN notification may contain multiple VLAN
descriptors.  The FCoE specification does not provide any guidance
regarding prioritisation of VLANs, so we may choose to arbitrarily
choose the first listed VLAN.

Signed-off-by: Michael Brown <mcb30@ipxe.org>
tags/v1.20.1
Michael Brown 13 years ago
parent
commit
54ec712ebe
1 changed files with 3 additions and 1 deletions
  1. 3
    1
      src/net/fcoe.c

+ 3
- 1
src/net/fcoe.c View File

@@ -533,7 +533,9 @@ static int fcoe_fip_parse ( struct fcoe_port *fcoe, struct fip_header *fiphdr,
533 533
 		/* Handle descriptors that we understand */
534 534
 		if ( ( desc_type > FIP_RESERVED ) &&
535 535
 		     ( desc_type < FIP_NUM_DESCRIPTOR_TYPES ) ) {
536
-			descs->desc[desc_type] = desc;
536
+			/* Use only the first instance of a descriptor */
537
+			if ( descs->desc[desc_type] == NULL )
538
+				descs->desc[desc_type] = desc;
537 539
 			continue;
538 540
 		}
539 541
 

Loading…
Cancel
Save