- Changed strcmp to strncmp for checking the CIS manufacturer strings,

since we only store CIS_MAXSTR data, and the users may stick the
  'entire' CIS string returned from the card in /etc/pccard.conf and
  cause the comparison to (bogusly) fail.

Submitted by:	Brad Karp <karp@eecs.harvard.edu>
This commit is contained in:
nate 1997-12-08 06:35:07 +00:00
parent f22f07ffe0
commit db661a8b0c

View File

@ -26,7 +26,7 @@
#ifndef lint
static const char rcsid[] =
"$Id: cardd.c,v 1.21 1997/11/19 02:31:37 nate Exp $";
"$Id: cardd.c,v 1.22 1997/11/25 19:15:59 nate Exp $";
#endif /* not lint */
#include <fcntl.h>
@ -288,8 +288,8 @@ card_inserted(struct slot *sp)
dumpcis(sp->cis);
#endif
for (cp = cards; cp; cp = cp->next)
if (strcmp(cp->manuf, sp->cis->manuf) == 0 &&
strcmp(cp->version, sp->cis->vers) == 0)
if (strncmp(cp->manuf, sp->cis->manuf, CIS_MAXSTR) == 0 &&
strncmp(cp->version, sp->cis->vers, CIS_MAXSTR) == 0)
break;
sp->card = cp;
#if 0