smi Namespace Reference


Classes

class  SmiFactory
class  ISmi
class  IDellCallingInterfaceSmi
class  SmiFactoryImpl
class  SmiStrategy
class  SmiMockStrategy
class  SmiArchStrategy
class  DellCallingInterfaceSmiImpl
struct  callintf_cmd
struct  calling_interface_command_buffer

Enumerations

enum  { cbARG1 = 0, cbARG2 = 1, cbARG3 = 2, cbARG4 = 3 }
enum  { cbRES1 = 0, cbRES2 = 1, cbRES3 = 2, cbRES4 = 3 }
enum  password_format_enum { PW_FORMAT_UNKNOWN, PW_FORMAT_SCAN_CODE, PW_FORMAT_ASCII }
enum  radioNum { WLAN_RADIO_NUM = 1, BLUETOOTH_RADIO_NUM = 2, WWAN_RADIO_NUM = 3 }
enum  { WLAN_SWITCH_CTL = 1, BLUETOOTH_SWITCH_CTL = 2, WWAN_SWITCH_CTL = 4, LOCATOR_SWITCH_CTL = 5 }
enum  radioStatusCode {
  STATUS_ENABLED, STATUS_DISABLED, STATUS_NOT_PRESENT, STATUS_UNSUPPORTED,
  STATUS_UNKNOWN
}
enum  { class_user_password = 9, class_admin_password = 10 }

Functions

 DECLARE_EXCEPTION (SmiException)
 Abstract base class for the smi read write operations.
 DECLARE_EXCEPTION_EX (InvalidSmiMode, smi, SmiException)
 DECLARE_EXCEPTION_EX (ParameterError, smi, SmiException)
 DECLARE_EXCEPTION_EX (UnhandledSmi, smi, SmiException)
 DECLARE_EXCEPTION_EX (UnsupportedSmi, smi, SmiException)
 DECLARE_EXCEPTION_EX (SmiExecutedWithError, smi, SmiException)
 DECLARE_EXCEPTION_EX (PasswordVerificationFailed, smi, SmiException)
 DECLARE_EXCEPTION_EX (ConfigError, smi, SmiException)
void doSimpleCallingInterfaceSmi (u16 smiClass, u16 select, const u32 args[4], u32 res[4])
std::auto_ptr< smi::IDellCallingInterfaceSmisetupCallingInterfaceSmi (u16 smiClass, u16 select, const u32 args[4])
u32 getAuthenticationKey (const std::string &password)
password_format_enum getPasswordFormat ()
std::string getServiceTag ()
void setServiceTag (const std::string &password, const std::string &newTag)
std::string getAssetTag ()
void setAssetTag (const std::string &password, const std::string &newTag)
u32 readNVStorage (u32 location, u32 *minValue, u32 *maxValue)
u32 readBatteryModeSetting (u32 location, u32 *minValue, u32 *maxValue)
u32 readACModeSetting (u32 location, u32 *minValue, u32 *maxValue)
u32 readSystemStatus (u32 *failingSensorHandle)
u32 writeNVStorage (const std::string &password, u32 location, u32 value, u32 *minValue, u32 *maxValue)
u32 writeBatteryModeSetting (const std::string &password, u32 location, u32 value, u32 *minValue, u32 *maxValue)
u32 writeACModeSetting (const std::string &password, u32 location, u32 value, u32 *minValue, u32 *maxValue)
void getDisplayType (u32 &type, u32 &resolution, u32 &memSizeX256kb)
void getPanelResolution (u32 &horiz, u32 &vert)
void getActiveDisplays (u32 &bits)
void setActiveDisplays (u32 &bits)
void getPropertyOwnershipTag (char *tagBuf, size_t size)
void setPropertyOwnershipTag (const std::string password, const char *newTag, size_t size)
void wirelessRadioControl (bool enable, bool boot, bool runtime, int enable_token, int disable_token, int radioNum, std::string password)
void wirelessSwitchControl (bool enable, bool boot, bool runtime, int enable_token, int disable_token, int switchNum, std::string password)
radioStatusCode wirelessRadioStatus (radioNum which, std::ostream &cout=std::cout, u32 defRes2=0)
static bool getPasswordPropertiesII (u16 which, u8 &maxLen, u8 &minLen, u8 &props)
static u32 getAuthenticationKeyII (const string &password)
u32 getAuthenticationKey (const string &password)
static u32 readSetting (u16 select, u32 location, u32 *minValue, u32 *maxValue)
static u32 writeSetting (const std::string &password, u16 select, u32 location, u32 newValue, u32 *minValue, u32 *maxValue)
void setPropertyOwnershipTag (const string password, const char *newTag, size_t size)
static void switchControl (u32 whichConfig, u32 whichSwitch, bool enable)
 DEFINE_EXCEPTION_EX (SmiExceptionImpl, smi, SmiException)
 DEFINE_EXCEPTION_EX (InvalidSmiModeImpl, smi, InvalidSmiMode)
 DEFINE_EXCEPTION_EX (ParameterErrorImpl, smi, ParameterError)
 DEFINE_EXCEPTION_EX (UnsupportedSmiImpl, smi, UnsupportedSmi)
 DEFINE_EXCEPTION_EX (UnhandledSmiImpl, smi, UnhandledSmi)
 DEFINE_EXCEPTION_EX (SmiExecutedWithErrorImpl, smi, SmiExecutedWithError)
 DEFINE_EXCEPTION_EX (PasswordVerificationFailedImpl, smi, PasswordVerificationFailed)
 DEFINE_EXCEPTION_EX (ConfigErrorImpl, smi, ConfigError)

Variables

const int Bluetooth_Devices_Disable
const int Bluetooth_Devices_Enable
const int Cellular_Radio_Disable
const int Cellular_Radio_Enable
const int WiFi_Locator_Disable
const int WiFi_Locator_Enable
const int Wireless_LAN_Disable
const int Wireless_LAN_Enable
const int Wireless_Switch_Bluetooth_Control_Disable
const int Wireless_Switch_Bluetooth_Control_Enable
const int Wireless_Switch_Cellular_Control_Disable
const int Wireless_Switch_Cellular_Control_Enable
const int Wireless_Switch_Wireless_LAN_Control_Disable
const int Wireless_Switch_Wireless_LAN_Control_Enable
const int Radio_Transmission_Enable
const int Radio_Transmission_Disable
const int Wireless_Device_Disable
const int Wireless_Device_App_Control
const int Wireless_Device_App_Or_Hotkey_Control
const int Bluetooth_Devices_Disable = 0x0153
const int Bluetooth_Devices_Enable = 0x0152
const int Cellular_Radio_Disable = 0x017B
const int Cellular_Radio_Enable = 0x017C
const int WiFi_Locator_Disable = 0x017D
const int WiFi_Locator_Enable = 0x017E
const int Wireless_LAN_Disable = 0x017F
const int Wireless_LAN_Enable = 0x0180
const int Wireless_Switch_Bluetooth_Control_Disable = 0x0181
const int Wireless_Switch_Bluetooth_Control_Enable = 0x0182
const int Wireless_Switch_Cellular_Control_Disable = 0x0183
const int Wireless_Switch_Cellular_Control_Enable = 0x0184
const int Wireless_Switch_Wireless_LAN_Control_Disable = 0x0185
const int Wireless_Switch_Wireless_LAN_Control_Enable = 0x0186
const int Radio_Transmission_Enable = 0x010c
const int Radio_Transmission_Disable = 0x010d
const int Wireless_Device_Disable = 0x0114
const int Wireless_Device_App_Control = 0x0115
const int Wireless_Device_App_Or_Hotkey_Control = 0x0116
smi::callintf_cmd LIBSMBIOS_PACKED_ATTR
smi::calling_interface_command_buffer LIBSMBIOS_PACKED_ATTR


Enumeration Type Documentation

anonymous enum

Enumerator:
class_user_password 
class_admin_password 

Definition at line 81 of file SmiLowLevel.h.

anonymous enum

Enumerator:
cbARG1 
cbARG2 
cbARG3 
cbARG4 

Definition at line 95 of file ISmi.h.

anonymous enum

Enumerator:
cbRES1 
cbRES2 
cbRES3 
cbRES4 

Definition at line 96 of file ISmi.h.

anonymous enum

Enumerator:
WLAN_SWITCH_CTL 
BLUETOOTH_SWITCH_CTL 
WWAN_SWITCH_CTL 
LOCATOR_SWITCH_CTL 

Definition at line 156 of file ISmi.h.

enum password_format_enum

Enumerator:
PW_FORMAT_UNKNOWN 
PW_FORMAT_SCAN_CODE 
PW_FORMAT_ASCII 

Definition at line 105 of file ISmi.h.

enum radioNum

Enumerator:
WLAN_RADIO_NUM 
BLUETOOTH_RADIO_NUM 
WWAN_RADIO_NUM 

Definition at line 153 of file ISmi.h.

enum radioStatusCode

Enumerator:
STATUS_ENABLED 
STATUS_DISABLED 
STATUS_NOT_PRESENT 
STATUS_UNSUPPORTED 
STATUS_UNKNOWN 

Definition at line 159 of file ISmi.h.


Function Documentation

smi::DECLARE_EXCEPTION ( SmiException   ) 

Abstract base class for the smi read write operations.

smi::DECLARE_EXCEPTION_EX ( ConfigError  ,
smi  ,
SmiException   
)

smi::DECLARE_EXCEPTION_EX ( PasswordVerificationFailed  ,
smi  ,
SmiException   
)

smi::DECLARE_EXCEPTION_EX ( SmiExecutedWithError  ,
smi  ,
SmiException   
)

smi::DECLARE_EXCEPTION_EX ( UnsupportedSmi  ,
smi  ,
SmiException   
)

smi::DECLARE_EXCEPTION_EX ( UnhandledSmi  ,
smi  ,
SmiException   
)

smi::DECLARE_EXCEPTION_EX ( ParameterError  ,
smi  ,
SmiException   
)

smi::DECLARE_EXCEPTION_EX ( InvalidSmiMode  ,
smi  ,
SmiException   
)

smi::DEFINE_EXCEPTION_EX ( ConfigErrorImpl  ,
smi  ,
ConfigError   
)

smi::DEFINE_EXCEPTION_EX ( PasswordVerificationFailedImpl  ,
smi  ,
PasswordVerificationFailed   
)

smi::DEFINE_EXCEPTION_EX ( SmiExecutedWithErrorImpl  ,
smi  ,
SmiExecutedWithError   
)

smi::DEFINE_EXCEPTION_EX ( UnhandledSmiImpl  ,
smi  ,
UnhandledSmi   
)

smi::DEFINE_EXCEPTION_EX ( UnsupportedSmiImpl  ,
smi  ,
UnsupportedSmi   
)

smi::DEFINE_EXCEPTION_EX ( ParameterErrorImpl  ,
smi  ,
ParameterError   
)

smi::DEFINE_EXCEPTION_EX ( InvalidSmiModeImpl  ,
smi  ,
InvalidSmiMode   
)

smi::DEFINE_EXCEPTION_EX ( SmiExceptionImpl  ,
smi  ,
SmiException   
)

void doSimpleCallingInterfaceSmi ( u16  smiClass,
u16  select,
const u32  args[4],
u32  res[4] 
)

Definition at line 220 of file Smi.cpp.

References setupCallingInterfaceSmi().

Referenced by getActiveDisplays(), getAuthenticationKey(), getDisplayType(), getPanelResolution(), getPasswordFormat(), getPasswordPropertiesII(), getTagFromSMI(), readSetting(), setActiveDisplays(), setTagUsingSMI(), wirelessRadioControl(), wirelessRadioStatus(), and writeSetting().

void getActiveDisplays ( u32 bits  ) 

Definition at line 555 of file Smi.cpp.

References doSimpleCallingInterfaceSmi().

std::string smi::getAssetTag (  ) 

u32 smi::getAuthenticationKey ( const string &  password  ) 

Definition at line 338 of file Smi.cpp.

References class_admin_password, class_user_password, DCERR, doSimpleCallingInterfaceSmi(), and getAuthenticationKeyII().

u32 smi::getAuthenticationKey ( const std::string &  password  ) 

Referenced by smbios::executeWithPassword(), setPropertyOwnershipTag(), setTagUsingSMI(), and writeSetting().

static u32 smi::getAuthenticationKeyII ( const string &  password  )  [static]

Definition at line 277 of file Smi.cpp.

References class_admin_password, class_user_password, DCERR, getPasswordPropertiesII(), and setupCallingInterfaceSmi().

Referenced by getAuthenticationKey().

void getDisplayType ( u32 type,
u32 resolution,
u32 memSizeX256kb 
)

Definition at line 536 of file Smi.cpp.

References doSimpleCallingInterfaceSmi().

void getPanelResolution ( u32 horiz,
u32 vert 
)

Definition at line 546 of file Smi.cpp.

References doSimpleCallingInterfaceSmi().

password_format_enum getPasswordFormat (  ) 

Definition at line 400 of file Smi.cpp.

References class_admin_password, class_user_password, doSimpleCallingInterfaceSmi(), getPasswordPropertiesII(), PW_FORMAT_ASCII, PW_FORMAT_SCAN_CODE, and PW_FORMAT_UNKNOWN.

Referenced by SMBIOSGetSmiPasswordCoding().

static bool smi::getPasswordPropertiesII ( u16  which,
u8 maxLen,
u8 minLen,
u8 props 
) [static]

Definition at line 246 of file Smi.cpp.

References DCERR, and doSimpleCallingInterfaceSmi().

Referenced by getAuthenticationKeyII(), and getPasswordFormat().

void getPropertyOwnershipTag ( char *  tagBuf,
size_t  size 
)

Definition at line 569 of file Smi.cpp.

References setupCallingInterfaceSmi().

std::string smi::getServiceTag (  ) 

u32 readACModeSetting ( u32  location,
u32 minValue,
u32 maxValue 
)

Definition at line 473 of file Smi.cpp.

References readSetting().

u32 readBatteryModeSetting ( u32  location,
u32 minValue,
u32 maxValue 
)

Definition at line 468 of file Smi.cpp.

References readSetting().

u32 readNVStorage ( u32  location,
u32 minValue,
u32 maxValue 
)

Definition at line 463 of file Smi.cpp.

References readSetting().

Referenced by SmiTokenDA::isActive().

static u32 smi::readSetting ( u16  select,
u32  location,
u32 minValue,
u32 maxValue 
) [static]

Definition at line 452 of file Smi.cpp.

References doSimpleCallingInterfaceSmi().

Referenced by readACModeSetting(), readBatteryModeSetting(), readNVStorage(), and readSystemStatus().

u32 readSystemStatus ( u32 failingSensorHandle  ) 

Definition at line 478 of file Smi.cpp.

References readSetting().

void setActiveDisplays ( u32 bits  ) 

Definition at line 563 of file Smi.cpp.

References doSimpleCallingInterfaceSmi().

void smi::setAssetTag ( const std::string &  password,
const std::string &  newTag 
)

void smi::setPropertyOwnershipTag ( const string  password,
const char *  newTag,
size_t  size 
)

Definition at line 580 of file Smi.cpp.

References getAuthenticationKey(), and setupCallingInterfaceSmi().

void smi::setPropertyOwnershipTag ( const std::string  password,
const char *  newTag,
size_t  size 
)

void smi::setServiceTag ( const std::string &  password,
const std::string &  newTag 
)

std::auto_ptr< smi::IDellCallingInterfaceSmi > setupCallingInterfaceSmi ( u16  smiClass,
u16  select,
const u32  args[4] 
)

Definition at line 198 of file Smi.cpp.

References SmiFactory::DELL_CALLING_INTERFACE_SMI, SmiFactory::getFactory(), SmbiosFactory::getFactory(), SmiFactory::makeNew(), IDellCallingInterfaceSmi::setArg(), IDellCallingInterfaceSmi::setClass(), and IDellCallingInterfaceSmi::setSelect().

Referenced by doSimpleCallingInterfaceSmi(), getAuthenticationKeyII(), getPropertyOwnershipTag(), and setPropertyOwnershipTag().

static void smi::switchControl ( u32  whichConfig,
u32  whichSwitch,
bool  enable 
) [static]

Definition at line 671 of file Smi.cpp.

References cbARG1, cbRES2, SmiFactory::DELL_CALLING_INTERFACE_SMI, ISmi::execute(), SmiFactory::getFactory(), IDellCallingInterfaceSmi::getRes(), SmiFactory::makeNew(), IDellCallingInterfaceSmi::setArg(), IDellCallingInterfaceSmi::setClass(), and IDellCallingInterfaceSmi::setSelect().

Referenced by wirelessSwitchControl().

void wirelessRadioControl ( bool  enable,
bool  boot,
bool  runtime,
int  enable_token,
int  disable_token,
int  radioNum,
std::string  password 
)

Definition at line 650 of file Smi.cpp.

References smbios::activateToken(), doSimpleCallingInterfaceSmi(), and smbios::isTokenActive().

radioStatusCode wirelessRadioStatus ( radioNum  which,
std::ostream &  cout = std::cout,
u32  defRes2 = 0 
)

Definition at line 750 of file Smi.cpp.

References BLUETOOTH_RADIO_NUM, cbRES2, doSimpleCallingInterfaceSmi(), STATUS_DISABLED, STATUS_ENABLED, STATUS_NOT_PRESENT, STATUS_UNKNOWN, STATUS_UNSUPPORTED, WLAN_RADIO_NUM, and WWAN_RADIO_NUM.

void wirelessSwitchControl ( bool  enable,
bool  boot,
bool  runtime,
int  enable_token,
int  disable_token,
int  switchNum,
std::string  password 
)

Definition at line 715 of file Smi.cpp.

References smbios::activateToken(), BLUETOOTH_SWITCH_CTL, LOCATOR_SWITCH_CTL, switchControl(), WLAN_SWITCH_CTL, and WWAN_SWITCH_CTL.

u32 writeACModeSetting ( const std::string &  password,
u32  location,
u32  value,
u32 minValue,
u32 maxValue 
)

Definition at line 531 of file Smi.cpp.

References writeSetting().

u32 writeBatteryModeSetting ( const std::string &  password,
u32  location,
u32  value,
u32 minValue,
u32 maxValue 
)

Definition at line 526 of file Smi.cpp.

References writeSetting().

u32 writeNVStorage ( const std::string &  password,
u32  location,
u32  value,
u32 minValue,
u32 maxValue 
)

Definition at line 521 of file Smi.cpp.

References writeSetting().

Referenced by SmiTokenDA::activate().

static u32 smi::writeSetting ( const std::string &  password,
u16  select,
u32  location,
u32  newValue,
u32 minValue,
u32 maxValue 
) [static]

Definition at line 487 of file Smi.cpp.

References DCERR, doSimpleCallingInterfaceSmi(), and getAuthenticationKey().

Referenced by writeACModeSetting(), writeBatteryModeSetting(), and writeNVStorage().


Variable Documentation

const int Bluetooth_Devices_Disable = 0x0153

Definition at line 611 of file Smi.cpp.

const int Bluetooth_Devices_Disable

Definition at line 611 of file Smi.cpp.

const int Bluetooth_Devices_Enable = 0x0152

Definition at line 612 of file Smi.cpp.

const int Bluetooth_Devices_Enable

Definition at line 612 of file Smi.cpp.

const int Cellular_Radio_Disable = 0x017B

Definition at line 613 of file Smi.cpp.

const int Cellular_Radio_Disable

Definition at line 613 of file Smi.cpp.

const int Cellular_Radio_Enable = 0x017C

Definition at line 614 of file Smi.cpp.

const int Cellular_Radio_Enable

Definition at line 614 of file Smi.cpp.

struct smi::calling_interface_command_buffer LIBSMBIOS_PACKED_ATTR

struct smi::callintf_cmd LIBSMBIOS_PACKED_ATTR

const int Radio_Transmission_Disable = 0x010d

Definition at line 626 of file Smi.cpp.

const int Radio_Transmission_Disable

Definition at line 626 of file Smi.cpp.

const int Radio_Transmission_Enable = 0x010c

Definition at line 625 of file Smi.cpp.

const int Radio_Transmission_Enable

Definition at line 625 of file Smi.cpp.

const int WiFi_Locator_Disable = 0x017D

Definition at line 615 of file Smi.cpp.

const int WiFi_Locator_Disable

Definition at line 615 of file Smi.cpp.

const int WiFi_Locator_Enable = 0x017E

Definition at line 616 of file Smi.cpp.

const int WiFi_Locator_Enable

Definition at line 616 of file Smi.cpp.

const int Wireless_Device_App_Control = 0x0115

Definition at line 628 of file Smi.cpp.

const int Wireless_Device_App_Control

Definition at line 628 of file Smi.cpp.

const int Wireless_Device_App_Or_Hotkey_Control = 0x0116

Definition at line 629 of file Smi.cpp.

const int Wireless_Device_App_Or_Hotkey_Control

Definition at line 629 of file Smi.cpp.

const int Wireless_Device_Disable = 0x0114

Definition at line 627 of file Smi.cpp.

const int Wireless_Device_Disable

Definition at line 627 of file Smi.cpp.

const int Wireless_LAN_Disable = 0x017F

Definition at line 617 of file Smi.cpp.

const int Wireless_LAN_Disable

Definition at line 617 of file Smi.cpp.

const int Wireless_LAN_Enable = 0x0180

Definition at line 618 of file Smi.cpp.

const int Wireless_LAN_Enable

Definition at line 618 of file Smi.cpp.

const int Wireless_Switch_Bluetooth_Control_Disable = 0x0181

Definition at line 619 of file Smi.cpp.

const int Wireless_Switch_Bluetooth_Control_Disable

Definition at line 619 of file Smi.cpp.

const int Wireless_Switch_Bluetooth_Control_Enable = 0x0182

Definition at line 620 of file Smi.cpp.

const int Wireless_Switch_Bluetooth_Control_Enable

Definition at line 620 of file Smi.cpp.

const int Wireless_Switch_Cellular_Control_Disable = 0x0183

Definition at line 621 of file Smi.cpp.

const int Wireless_Switch_Cellular_Control_Disable

Definition at line 621 of file Smi.cpp.

const int Wireless_Switch_Cellular_Control_Enable = 0x0184

Definition at line 622 of file Smi.cpp.

const int Wireless_Switch_Cellular_Control_Enable

Definition at line 622 of file Smi.cpp.

const int Wireless_Switch_Wireless_LAN_Control_Disable = 0x0185

Definition at line 623 of file Smi.cpp.

const int Wireless_Switch_Wireless_LAN_Control_Disable

Definition at line 623 of file Smi.cpp.

const int Wireless_Switch_Wireless_LAN_Control_Enable = 0x0186

Definition at line 624 of file Smi.cpp.

const int Wireless_Switch_Wireless_LAN_Control_Enable

Definition at line 624 of file Smi.cpp.


Generated on Sat Apr 21 11:36:11 2007 for SMBIOS Library by  doxygen 1.5.2