diff options
| author | Mitsuru IWASAKI <iwasaki@FreeBSD.org> | 2000-05-17 18:29:17 +0000 |
|---|---|---|
| committer | Mitsuru IWASAKI <iwasaki@FreeBSD.org> | 2000-05-17 18:29:17 +0000 |
| commit | 83896393a60b631a10e349c34643c1eff7968ae8 (patch) | |
| tree | fa9c9e1a3b047e28c16ae3377f5e5158211f74b3 | |
| parent | b787acb5e31f387d435112a9366b9dd3b9eb4e5b (diff) | |
Notes
| -rw-r--r-- | usr.sbin/pccard/pccardd/cardd.c | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/usr.sbin/pccard/pccardd/cardd.c b/usr.sbin/pccard/pccardd/cardd.c index ccac0b3da9b1..e8e16224f42b 100644 --- a/usr.sbin/pccard/pccardd/cardd.c +++ b/usr.sbin/pccard/pccardd/cardd.c @@ -206,6 +206,21 @@ card_removed(struct slot *sp) pool_irq[sp->irq] = 1; } +/* CIS string comparison */ + +static int +cis_strcmp(char *db, char *cis) +{ + size_t n; + + if (!db || !cis) { + return -1; + } + n = strlen(db); + return strncmp(db, cis, n); + /* XXX Add code for regex CIS string comparison here */ +} + /* * card_inserted - Card has been inserted; * - Read the CIS @@ -235,8 +250,8 @@ card_inserted(struct slot *sp) for (cp = cards; cp; cp = cp->next) { switch (cp->deftype) { case DT_VERS: - if (strcmp(cp->manuf, sp->cis->manuf) == 0 && - strcmp(cp->version, sp->cis->vers) == 0) { + if (cis_strcmp(cp->manuf, sp->cis->manuf) == 0 && + cis_strcmp(cp->version, sp->cis->vers) == 0) { logmsg("Card \"%s\"(\"%s\") " "matched \"%s\" (\"%s\") ", sp->cis->manuf, sp->cis->vers, |
