diff options
author | imp <imp@FreeBSD.org> | 2005-07-15 06:05:11 +0000 |
---|---|---|
committer | imp <imp@FreeBSD.org> | 2005-07-15 06:05:11 +0000 |
commit | c5afaba5b2aad570770d3c5f929bd4823d599ff1 (patch) | |
tree | 827b305855b58d323f3ff0352dd893fb3a698000 /sys/dev/xe | |
parent | f33d2348a086a1269c442c7d09c7e524aca6e9d1 (diff) | |
download | FreeBSD-src-c5afaba5b2aad570770d3c5f929bd4823d599ff1.zip FreeBSD-src-c5afaba5b2aad570770d3c5f929bd4823d599ff1.tar.gz |
Fix the xircom match routine. In it we were always return a match
when the base vendor/id didn't match. Some cards woudl bogusly match
and would cause other downstream problems.
Diffstat (limited to 'sys/dev/xe')
-rw-r--r-- | sys/dev/xe/if_xe_pccard.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/dev/xe/if_xe_pccard.c b/sys/dev/xe/if_xe_pccard.c index bec7c69..baf9053 100644 --- a/sys/dev/xe/if_xe_pccard.c +++ b/sys/dev/xe/if_xe_pccard.c @@ -259,6 +259,9 @@ xe_pccard_product_match(device_t dev, const struct pccard_product* ent, int vpfm const struct xe_pccard_product* xpp; uint16_t prodext; + if (vpfmatch == 0) + return (0); + xpp = (const struct xe_pccard_product*)ent; pccard_get_prodext(dev, &prodext); if (xpp->prodext != prodext) |