|
@@ -1360,14 +1360,15 @@ int esas2r_ioctl_handler(void *hostdata, int cmd, void __user *arg)
|
|
|
if (ioctl->header.channel == 0xFF) {
|
|
|
a = (struct esas2r_adapter *)hostdata;
|
|
|
} else {
|
|
|
- a = esas2r_adapters[ioctl->header.channel];
|
|
|
- if (ioctl->header.channel >= MAX_ADAPTERS || (a == NULL)) {
|
|
|
+ if (ioctl->header.channel >= MAX_ADAPTERS ||
|
|
|
+ esas2r_adapters[ioctl->header.channel] == NULL) {
|
|
|
ioctl->header.return_code = IOCTL_BAD_CHANNEL;
|
|
|
esas2r_log(ESAS2R_LOG_WARN, "bad channel value");
|
|
|
kfree(ioctl);
|
|
|
|
|
|
return -ENOTSUPP;
|
|
|
}
|
|
|
+ a = esas2r_adapters[ioctl->header.channel];
|
|
|
}
|
|
|
|
|
|
switch (cmd) {
|