smartmontools SVN Rev 3317
Utility to control and monitor storage systems with "S.M.A.R.T."
Classes | Enumerations | Functions
os_win32 Namespace Reference

Classes

class  win_smart_device
class  win_ata_device
class  win_scsi_device
class  csmi_device
class  csmi_ata_device
class  win_csmi_device
class  win_tw_cli_device
class  win_areca_ata_device
 Areca RAID support. More...
class  win_areca_scsi_device
class  win_smart_interface
union  STORAGE_DEVICE_DESCRIPTOR_DATA
struct  SCSI_PASS_THROUGH_DIRECT_WITH_BUFFER

Enumerations

enum  win_dev_type { DEV_UNKNOWN = 0, DEV_ATA, DEV_SCSI, DEV_USB }

Functions

static bool is_wow64 ()
static win_dev_type get_phy_drive_type (int drive)
static win_dev_type get_phy_drive_type (int drive, GETVERSIONINPARAMS_EX *ata_version_ex)
static win_dev_type get_log_drive_type (int drive)
static bool get_usb_id (int drive, unsigned short &vendor_id, unsigned short &product_id)
static const char * ata_get_def_options (void)
static int is_permissive ()
static int drive_letter (const char *s)
static const char * skipdev (const char *s)
static int sdxy_to_phydrive (const char(&xy)[2+1])
static win_dev_type get_dev_type (const char *name, int &phydrive)
static void print_ide_regs (const IDEREGS *r, int out)
static void print_ide_regs_io (const IDEREGS *ri, const IDEREGS *ro)
static int smart_get_version (HANDLE hdevice, GETVERSIONINPARAMS_EX *ata_version_ex=0)
static int smart_ioctl (HANDLE hdevice, IDEREGS *regs, char *data, unsigned datasize, int port)
static int ide_pass_through_ioctl (HANDLE hdevice, IDEREGS *regs, char *data, unsigned datasize)
static int ata_pass_through_ioctl (HANDLE hdevice, IDEREGS *regs, IDEREGS *prev_regs, char *data, int datasize)
static int ata_via_scsi_miniport_smart_ioctl (HANDLE hdevice, IDEREGS *regs, char *data, int datasize)
static int ata_via_3ware_miniport_ioctl (HANDLE hdevice, IDEREGS *regs, char *data, int datasize, int port)
static int update_3ware_devicemap_ioctl (HANDLE hdevice)
static int get_clipboard (char *data, int datasize)
static int run_cmd (const char *cmd, char *dataout, int outsize)
static const char * findstr (const char *str, const char *sub)
static void copy_swapped (unsigned char *dest, const char *src, int destsize)
static int storage_query_property_ioctl (HANDLE hdevice, STORAGE_DEVICE_DESCRIPTOR_DATA *data)
static int storage_predict_failure_ioctl (HANDLE hdevice, char *data=0)
static bool is_intel_raid_volume (const STORAGE_DEVICE_DESCRIPTOR_DATA *data)
static win_dev_type get_controller_type (HANDLE hdevice, bool admin, GETVERSIONINPARAMS_EX *ata_version_ex)
static win_dev_type get_controller_type (const char *path, GETVERSIONINPARAMS_EX *ata_version_ex=0)
static int get_identify_from_device_property (HANDLE hdevice, ata_identify_device *id)
static bool get_serial_from_wmi (int drive, ata_identify_device *id)
static int get_device_power_state (HANDLE hdevice)
static long scsi_pass_through_indirect (HANDLE h, SCSI_PASS_THROUGH_DIRECT_WITH_BUFFER *sbd)
static long scsi_pass_through_direct (HANDLE fd, UCHAR targetid, struct scsi_cmnd_io *iop)

Enumeration Type Documentation

Enumerator:
DEV_UNKNOWN 
DEV_ATA 
DEV_SCSI 
DEV_USB 

Definition at line 699 of file os_win32.cpp.


Function Documentation

static const char * os_win32::ata_get_def_options ( void  ) [static]

Definition at line 2333 of file os_win32.cpp.

static int os_win32::ata_pass_through_ioctl ( HANDLE  hdevice,
IDEREGS regs,
IDEREGS prev_regs,
char *  data,
int  datasize 
) [static]

Definition at line 1340 of file os_win32.cpp.

static int os_win32::ata_via_3ware_miniport_ioctl ( HANDLE  hdevice,
IDEREGS regs,
char *  data,
int  datasize,
int  port 
) [static]

Definition at line 1583 of file os_win32.cpp.

static int os_win32::ata_via_scsi_miniport_smart_ioctl ( HANDLE  hdevice,
IDEREGS regs,
char *  data,
int  datasize 
) [static]

Definition at line 1452 of file os_win32.cpp.

static void os_win32::copy_swapped ( unsigned char *  dest,
const char *  src,
int  destsize 
) [static]

Definition at line 1771 of file os_win32.cpp.

static int os_win32::drive_letter ( const char *  s) [static]

Definition at line 723 of file os_win32.cpp.

static const char* os_win32::findstr ( const char *  str,
const char *  sub 
) [static]

Definition at line 1764 of file os_win32.cpp.

static int os_win32::get_clipboard ( char *  data,
int  datasize 
) [static]

Definition at line 1687 of file os_win32.cpp.

static win_dev_type os_win32::get_controller_type ( HANDLE  hdevice,
bool  admin,
GETVERSIONINPARAMS_EX ata_version_ex 
) [static]

Definition at line 2031 of file os_win32.cpp.

static win_dev_type os_win32::get_controller_type ( const char *  path,
GETVERSIONINPARAMS_EX ata_version_ex = 0 
) [static]

Definition at line 2070 of file os_win32.cpp.

static win_dev_type os_win32::get_dev_type ( const char *  name,
int &  phydrive 
) [static]

Definition at line 761 of file os_win32.cpp.

static int os_win32::get_device_power_state ( HANDLE  hdevice) [static]

Definition at line 2310 of file os_win32.cpp.

static int os_win32::get_identify_from_device_property ( HANDLE  hdevice,
ata_identify_device id 
) [static]

Definition at line 2111 of file os_win32.cpp.

static win_dev_type os_win32::get_log_drive_type ( int  drive) [static]

Definition at line 2103 of file os_win32.cpp.

static win_dev_type os_win32::get_phy_drive_type ( int  drive) [static]

Definition at line 2097 of file os_win32.cpp.

static win_dev_type os_win32::get_phy_drive_type ( int  drive,
GETVERSIONINPARAMS_EX ata_version_ex 
) [static]

Definition at line 2090 of file os_win32.cpp.

static bool os_win32::get_serial_from_wmi ( int  drive,
ata_identify_device id 
) [static]

Definition at line 2153 of file os_win32.cpp.

static bool os_win32::get_usb_id ( int  drive,
unsigned short &  vendor_id,
unsigned short &  product_id 
) [static]

Definition at line 2182 of file os_win32.cpp.

static int os_win32::ide_pass_through_ioctl ( HANDLE  hdevice,
IDEREGS regs,
char *  data,
unsigned  datasize 
) [static]

Definition at line 1255 of file os_win32.cpp.

static bool os_win32::is_intel_raid_volume ( const STORAGE_DEVICE_DESCRIPTOR_DATA *  data) [static]

Definition at line 2018 of file os_win32.cpp.

static int os_win32::is_permissive ( ) [static]

Definition at line 710 of file os_win32.cpp.

static bool os_win32::is_wow64 ( ) [static]

Definition at line 573 of file os_win32.cpp.

static void os_win32::print_ide_regs ( const IDEREGS r,
int  out 
) [static]

Definition at line 1098 of file os_win32.cpp.

static void os_win32::print_ide_regs_io ( const IDEREGS ri,
const IDEREGS ro 
) [static]

Definition at line 1105 of file os_win32.cpp.

static int os_win32::run_cmd ( const char *  cmd,
char *  dataout,
int  outsize 
) [static]

inherit

Definition at line 1710 of file os_win32.cpp.

static long os_win32::scsi_pass_through_direct ( HANDLE  fd,
UCHAR  targetid,
struct scsi_cmnd_io iop 
) [static]

Definition at line 3445 of file os_win32.cpp.

static long os_win32::scsi_pass_through_indirect ( HANDLE  h,
SCSI_PASS_THROUGH_DIRECT_WITH_BUFFER *  sbd 
) [static]

Definition at line 3275 of file os_win32.cpp.

static int os_win32::sdxy_to_phydrive ( const char(&)  xy[2+1]) [static]

Definition at line 753 of file os_win32.cpp.

static const char* os_win32::skipdev ( const char *  s) [static]

Definition at line 733 of file os_win32.cpp.

static int os_win32::smart_get_version ( HANDLE  hdevice,
GETVERSIONINPARAMS_EX ata_version_ex = 0 
) [static]

Definition at line 1117 of file os_win32.cpp.

static int os_win32::smart_ioctl ( HANDLE  hdevice,
IDEREGS regs,
char *  data,
unsigned  datasize,
int  port 
) [static]

Definition at line 1152 of file os_win32.cpp.

static int os_win32::storage_predict_failure_ioctl ( HANDLE  hdevice,
char *  data = 0 
) [static]

Definition at line 1986 of file os_win32.cpp.

static int os_win32::storage_query_property_ioctl ( HANDLE  hdevice,
STORAGE_DEVICE_DESCRIPTOR_DATA *  data 
) [static]

Definition at line 1948 of file os_win32.cpp.

static int os_win32::update_3ware_devicemap_ioctl ( HANDLE  hdevice) [static]

Definition at line 1646 of file os_win32.cpp.