Commit 77af98e3 authored by Thierry Vermeylen's avatar Thierry Vermeylen Committed by Alexandre Julliard

wnaspi32: Do not crash on SC_GETSET_TIMEOUTS.

parent 21d14104
...@@ -573,6 +573,12 @@ DWORD __cdecl SendASPI32Command(LPSRB lpSRB) ...@@ -573,6 +573,12 @@ DWORD __cdecl SendASPI32Command(LPSRB lpSRB)
FIXME("SC_GET_DISK_INFO always return 'int13 unassociated disk'.\n"); FIXME("SC_GET_DISK_INFO always return 'int13 unassociated disk'.\n");
lpSRB->diskinfo.SRB_DriveFlags = 0; /* disk is not int13 served */ lpSRB->diskinfo.SRB_DriveFlags = 0; /* disk is not int13 served */
return SS_COMP; return SS_COMP;
case SC_GETSET_TIMEOUTS: {
PSRB_GetSetTimeouts psrb_gst = (PSRB_GetSetTimeouts)lpSRB;
FIXME("SC_GETSET_TIMEOUTS doesn't actually change the timeout value nor does it return the current value.\n");
psrb_gst->SRB_Status = SS_COMP; /* synchronous call, should be the same as the return value of SendASPI32Command */
return SS_COMP;
}
default: default:
FIXME("Unknown command %d\n", lpSRB->common.SRB_Cmd); FIXME("Unknown command %d\n", lpSRB->common.SRB_Cmd);
} }
......
...@@ -200,6 +200,17 @@ typedef struct tagSRB32_GetDiskInfo { ...@@ -200,6 +200,17 @@ typedef struct tagSRB32_GetDiskInfo {
BYTE SRB_Rsvd1[10]; /* 0E Reserved */ BYTE SRB_Rsvd1[10]; /* 0E Reserved */
} SRB_GetDiskInfo, *PSRB_GetDiskInfo; } SRB_GetDiskInfo, *PSRB_GetDiskInfo;
typedef struct tagSRB32_GetSetTimeouts {
BYTE SRB_Cmd; /* 00 ASPI cmd code = SC_GETSET_TIMEOUTS */
BYTE SRB_Status; /* 01 ASPI command status byte */
BYTE SRB_HaId; /* 02 ASPI host adapter number */
BYTE SRB_Flags; /* 03 Reserved */
DWORD SRB_Hdr_Rsvd; /* 04 Reserved */
BYTE SRB_Target; /* 08 Target's SCSI ID */
BYTE SRB_Lun; /* 09 Target's LUN number */
DWORD SRB_Timeout; /* 10 Target's Timeout value */
} SRB_GetSetTimeouts, *PSRB_GetSetTimeouts;
/* SRB header */ /* SRB header */
typedef struct tagSRB32_Header { typedef struct tagSRB32_Header {
BYTE SRB_Cmd; /* 00 ASPI cmd code = SC_RESET_DEV */ BYTE SRB_Cmd; /* 00 ASPI cmd code = SC_RESET_DEV */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment