summaryrefslogtreecommitdiffstats
path: root/isys
diff options
context:
space:
mode:
authorMatt Wilson <msw@redhat.com>2001-03-22 21:13:35 +0000
committerMatt Wilson <msw@redhat.com>2001-03-22 21:13:35 +0000
commitb63492a5ba32a10afd2d6fa5bd841f57b51d1499 (patch)
tree9f181196317be007c1a31daa17012fc18520a776 /isys
parentfd89d63b9ef6226300f0fe64a1ae8a7037c966c6 (diff)
downloadanaconda-b63492a5ba32a10afd2d6fa5bd841f57b51d1499.tar.gz
anaconda-b63492a5ba32a10afd2d6fa5bd841f57b51d1499.tar.xz
anaconda-b63492a5ba32a10afd2d6fa5bd841f57b51d1499.zip
handle > 26 SCSI drives
Diffstat (limited to 'isys')
-rw-r--r--isys/probe.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/isys/probe.c b/isys/probe.c
index 932ac16ca..5e869a67b 100644
--- a/isys/probe.c
+++ b/isys/probe.c
@@ -233,7 +233,7 @@ int kdFindScsiList(struct knownDevices * devices, int code) {
char typebuf[10];
int i, state = SCSISCSI_TOP;
char * start, * chptr, * next, *end;
- char driveName = 'a';
+ int driveNum = 0;
char cdromNum = '0';
char tapeNum = '0';
struct kddevice device;
@@ -357,7 +357,12 @@ int kdFindScsiList(struct knownDevices * devices, int code) {
}
*typebuf = '\0';
if (strstr(start, "Direct-Access")) {
- sprintf(typebuf, "sd%c", driveName++);
+ if (driveNum < 26)
+ sprintf(typebuf, "sd%c", driveNum + 'a');
+ else
+ sprintf(typebuf, "sd%c%c", (driveNum / 26 - 1) + 'a',
+ (driveNum % 26) + 'a');
+ driveNum++;
device.class = CLASS_HD;
} else if (strstr(start, "Sequential-Access")) {
sprintf(typebuf, "st%c", tapeNum++);