diff options
author | Matt Jacob <mjacob@FreeBSD.org> | 2006-03-22 01:30:07 +0000 |
---|---|---|
committer | Matt Jacob <mjacob@FreeBSD.org> | 2006-03-22 01:30:07 +0000 |
commit | 0fa274524ae4e828eb84b6b9ae18a3238f79c83d (patch) | |
tree | 32b1927ee9121724bebd312529ebe845f16d8c19 /share/examples/scsi_target | |
parent | 96c0381f5cd02b99ba5803d047cda782d3eeca8a (diff) |
At least respond to REPORT LUNS with an ILLEGAL COMMAND response.
This keeps us from dumping core when modern OS' like Windows and Linux
see us.
Notes
Notes:
svn path=/head/; revision=156981
Diffstat (limited to 'share/examples/scsi_target')
-rw-r--r-- | share/examples/scsi_target/scsi_cmds.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/share/examples/scsi_target/scsi_cmds.c b/share/examples/scsi_target/scsi_cmds.c index 3e152aabe422..33d1ceca6a21 100644 --- a/share/examples/scsi_target/scsi_cmds.c +++ b/share/examples/scsi_target/scsi_cmds.c @@ -48,6 +48,9 @@ typedef int targ_start_func(struct ccb_accept_tio *, struct ccb_scsiio *); typedef void targ_done_func(struct ccb_accept_tio *, struct ccb_scsiio *, io_ops); +#ifndef REPORT_LUNS +#define REPORT_LUNS 0xa0 +#endif struct targ_cdb_handlers { u_int8_t cmd; @@ -87,7 +90,7 @@ static struct targ_cdb_handlers cdb_handlers[] = { { SYNCHRONIZE_CACHE, tcmd_null_ok, NULL }, { MODE_SENSE_6, tcmd_illegal_req, NULL }, { MODE_SELECT_6, tcmd_illegal_req, NULL }, - /* XXX REPORT_LUNS should be handled here. */ + { REPORT_LUNS, tcmd_illegal_req, NULL }, #ifdef READ_16 { READ_16, tcmd_rdwr, tcmd_rdwr_done }, { WRITE_16, tcmd_rdwr, tcmd_rdwr_done }, |