diff --git a/src/net/fcoe.c b/src/net/fcoe.c index c43fef61..db2fc980 100644 --- a/src/net/fcoe.c +++ b/src/net/fcoe.c @@ -533,7 +533,9 @@ static int fcoe_fip_parse ( struct fcoe_port *fcoe, struct fip_header *fiphdr, /* Handle descriptors that we understand */ if ( ( desc_type > FIP_RESERVED ) && ( desc_type < FIP_NUM_DESCRIPTOR_TYPES ) ) { - descs->desc[desc_type] = desc; + /* Use only the first instance of a descriptor */ + if ( descs->desc[desc_type] == NULL ) + descs->desc[desc_type] = desc; continue; }