smartmontools SVN Rev 5662
Utility to control and monitor storage systems with "S.M.A.R.T."
|
Public Member Functions | |
win_areca_scsi_device (smart_interface *intf, const char *dev_name, int disknum, int encnum=1) | |
virtual bool | open () override |
Open device, return false on error. | |
virtual smart_device * | autodetect_open () override |
Open device with autodetection support. | |
virtual bool | arcmsr_lock () override |
virtual bool | arcmsr_unlock () override |
virtual int | arcmsr_do_scsi_io (struct scsi_cmnd_io *iop) override |
![]() | |
areca_scsi_device (smart_interface *intf, const char *dev_name, int disknum, int encnum=1) | |
~areca_scsi_device () | |
bool | arcmsr_lock () override |
bool | arcmsr_unlock () override |
int | arcmsr_do_scsi_io (struct scsi_cmnd_io *) override |
![]() | |
virtual bool | scsi_pass_through (scsi_cmnd_io *iop)=0 |
SCSI pass through. | |
bool | scsi_pass_through_and_check (scsi_cmnd_io *iop, const char *msg="") |
void | set_rcap16_first () |
Always try READ CAPACITY(10) (rcap10) first but once we know rcap16 is needed, use it instead. | |
bool | use_rcap16 () const |
void | set_spc4_or_higher () |
bool | is_spc4_or_higher () const |
bool | query_cmd_support () |
bool | checked_cmd_support () const |
enum scsi_cmd_support | cmd_support_level (uint8_t opcode, bool sa_valid, uint16_t sa, bool for_lsense_spc=false) const |
![]() | |
virtual | ~smart_device () |
bool | is_ata () const |
Return true if ATA device. | |
bool | is_scsi () const |
Return true if SCSI device. | |
bool | is_nvme () const |
Return true if NVMe device. | |
ata_device * | to_ata () |
Downcast to ATA device. | |
const ata_device * | to_ata () const |
Downcast to ATA device (const). | |
scsi_device * | to_scsi () |
Downcast to SCSI device. | |
const scsi_device * | to_scsi () const |
Downcast to SCSI device (const). | |
nvme_device * | to_nvme () |
Downcast to NVMe device. | |
const nvme_device * | to_nvme () const |
Downcast to NVMe device (const). | |
const device_info & | get_info () const |
Get device info struct. | |
const char * | get_dev_name () const |
Get device (path)name. | |
const char * | get_info_name () const |
Get informal name. | |
const char * | get_dev_type () const |
Get device type. | |
const char * | get_req_type () const |
Get type requested by user, empty if none. | |
const error_info & | get_err () const |
Get last error info struct. | |
int | get_errno () const |
Get last error number. | |
const char * | get_errmsg () const |
Get last error message. | |
virtual bool | is_syscall_unsup () const |
Return true if last error indicates an unsupported system call. | |
bool | set_err (int no, const char *msg,...) __attribute_format_printf(3 |
Set last error number and message. | |
bool bool | set_err (const error_info &err) |
Set last error info struct. | |
void | clear_err () |
Clear last error info. | |
bool | set_err (int no) |
Set last error number and default message. | |
virtual bool | is_open () const =0 |
Return true if device is open. | |
virtual bool | open ()=0 |
Open device, return false on error. | |
virtual bool | close ()=0 |
Close device, return false on error. | |
virtual smart_device * | autodetect_open () |
Open device with autodetection support. | |
virtual bool | is_powered_down () |
Early test if device is powered up or down. | |
virtual bool | owns (const smart_device *dev) const |
Return true if other device is owned by this device. | |
virtual void | release (const smart_device *dev) |
Release ownership of other device. | |
![]() | |
generic_areca_device (smart_interface *intf, const char *dev_name, int disknum, int encnum=1) | |
~generic_areca_device () | |
virtual bool | arcmsr_lock ()=0 |
virtual bool | arcmsr_unlock ()=0 |
virtual int | arcmsr_do_scsi_io (struct scsi_cmnd_io *iop)=0 |
virtual int | arcmsr_command_handler (unsigned long arcmsr_cmd, unsigned char *data, int data_len) |
virtual int | arcmsr_ui_handler (unsigned char *areca_packet, int areca_packet_len, unsigned char *result) |
virtual bool | arcmsr_probe () |
virtual int | arcmsr_get_dev_type () |
virtual int | arcmsr_get_controller_type () |
virtual bool | arcmsr_scsi_pass_through (scsi_cmnd_io *iop) |
virtual bool | arcmsr_ata_pass_through (const ata_cmd_in &in, ata_cmd_out &out) |
![]() | |
win_smart_device () | |
virtual | ~win_smart_device () |
virtual bool | is_open () const |
Return true if device is open. | |
virtual bool | close () |
Close device, return false on error. | |
Private Attributes | |
HANDLE | m_mutex |
Additional Inherited Members | |
![]() | |
static int | get_num_objects () |
Get current number of allocated 'smart_device' objects. | |
![]() | |
enum | do_not_use_in_implementation_classes { never_called } |
Dummy enum for dummy constructor. More... | |
![]() | |
areca_scsi_device () | |
virtual bool | scsi_pass_through (scsi_cmnd_io *iop) override |
SCSI pass through. | |
![]() | |
void | hide_scsi (bool hide=true) |
Hide/unhide SCSI interface. | |
scsi_device () | |
Default constructor, registers device as SCSI. | |
![]() | |
smart_device (smart_interface *intf, const char *dev_name, const char *dev_type, const char *req_type) | |
Constructor to init interface and device info. | |
smart_device (do_not_use_in_implementation_classes) | |
Dummy constructor for abstract classes. | |
device_info & | set_info () |
R/W access to device info struct. | |
smart_interface * | smi () |
Get interface which produced this object. | |
const smart_interface * | smi () const |
Get interface which produced this object (const). | |
![]() | |
generic_areca_device () | |
void | set_disknum (int disknum) |
void | set_encnum (int encnum) |
int | get_disknum () |
int | get_encnum () |
![]() | |
void | set_fh (HANDLE fh) |
Set handle for open() in derived classes. | |
HANDLE | get_fh () const |
Return handle for derived classes. | |
Definition at line 3161 of file os_win32.cpp.
os_win32::win_areca_scsi_device::win_areca_scsi_device | ( | smart_interface * | intf, |
const char * | dev_name, | ||
int | disknum, | ||
int | encnum = 1 |
||
) |
Definition at line 3180 of file os_win32.cpp.
|
overridevirtual |
Reimplemented from areca_scsi_device.
Definition at line 3218 of file os_win32.cpp.
|
overridevirtual |
Reimplemented from areca_scsi_device.
Definition at line 3236 of file os_win32.cpp.
|
overridevirtual |
Reimplemented from areca_scsi_device.
Definition at line 3259 of file os_win32.cpp.
|
overridevirtual |
Open device with autodetection support.
May return another device for further access. In this case, the original pointer is no longer valid. Default implementation calls 'open()' and returns 'this'.
Reimplemented from smart_device.
Definition at line 3213 of file os_win32.cpp.
|
overridevirtual |
Open device, return false on error.
Implements smart_device.
Definition at line 3189 of file os_win32.cpp.
|
private |
Definition at line 3174 of file os_win32.cpp.