📄 oidx500.cpp
字号:
// card->m_activeProfileSwitched = TRUE;
setAutoConfigTimer(card);
#ifdef DEBUG_AUTO_CONFIG_OID
DbgPrint(" InfBuffLen = %d\n", (int)InfBuffLen);
DbgPrint(" sizeof(PROFILE) = %d\n", (int)sizeof(PROFILE));
DbgPrint(" Profile name = %s\n", card->m_activeProfile->properties.name);
#endif
}
else {
*BytesCopied = (ULONG)-1;
#ifdef DEBUG_AUTO_CONFIG_OID
DbgPrint(" Error adding profile.\n");
#endif
}
#ifdef DEBUG_AUTO_CONFIG_OID
DbgPrint(" current = %s; active = %s; default = %s\n",
card->m_currentProfile->properties.name,
card->m_activeProfile->properties.name,
card->m_profiles->properties.name);
DbgPrint("------------------------------------------------------------------\n");
#endif
break;
}
case OID_X500_SELECT_PROFILE: {
PROFILE_PROPERTIES *profileProps = (PROFILE_PROPERTIES*)InfBuff;
#ifdef DEBUG_AUTO_CONFIG_OID
profileOIDCount++;
DbgPrint("%d\n", profileOIDCount);
DbgPrint("OID_X500_SELECT_PROFILE(%s):\n", profileProps->name);
listProfiles(card->m_profiles, card->m_numProfiles);
DbgPrint("\n");
#endif
*BytesCopied = sizeof(PROFILE_PROPERTIES);
//
// Select the current profile by name.
//
// First, see if we have a profile with the specified name.
//
USHORT index;
STPROFILE *profile = findProfileByName(profileProps->name,
card->m_profiles,
card->m_numProfiles,
&index);
if (profile != NULL) {
//
// found one.
//
card->m_currentProfile = profile;
#ifdef DEBUG_AUTO_CONFIG_OID
DbgPrint(" Selected profile %s.\n");
#endif
}
else {
#ifdef DEBUG_AUTO_CONFIG_OID
DbgPrint("Profile %s not found -- adding it\n", profileProps->name);
#endif
//
// profile doesn't exist so add it.
//
if (addProfile(card, profileProps) == NULL) {
*BytesCopied = (ULONG)-1;
#ifdef DEBUG_AUTO_CONFIG_OID
DbgPrint(" Error adding profile.\n");
#endif
}
}
#ifdef DEBUG_AUTO_CONFIG_OID
DbgPrint(" current = %s; active = %s; default = %s\n",
card->m_currentProfile->properties.name,
card->m_activeProfile->properties.name,
card->m_profiles->properties.name);
DbgPrint("------------------------------------------------------------------\n");
#endif
break;
}
case OID_X500_GET_PROFILE: {
#ifdef DEBUG_AUTO_CONFIG_OID
profileOIDCount++;
DbgPrint("%d\n", profileOIDCount);
DbgPrint("OID_X500_GET_PROFILE:\n");
listProfiles(card->m_profiles, card->m_numProfiles);
DbgPrint("\n");
#endif
//
// Return the the current profile.
//
*BytesCopied = MIN(sizeof(ZFLAGS), InfBuffLen);
NdisMoveMemory(InfBuff, &card->m_currentProfile->zFlags.cfg, *BytesCopied);
#ifdef DEBUG_AUTO_CONFIG_OID
DbgPrint(" current = %s; active = %s; default = %s\n",
card->m_currentProfile->properties.name,
card->m_activeProfile->properties.name,
card->m_profiles->properties.name);
DbgPrint("------------------------------------------------------------------\n");
#endif
break;
}
case OID_X500_SET_PROFILE: {
#ifdef DEBUG_AUTO_CONFIG_OID
profileOIDCount++;
DbgPrint("%d\n", profileOIDCount);
DbgPrint("OID_X500_SET_PROFILE:\n");
listProfiles(card->m_profiles, card->m_numProfiles);
DbgPrint("\n");
#endif
if (!cmdAwaken(card, TRUE)) {
*ReturnCode = -1000;
break;
}
//
// Set the current profile.
//
*BytesCopied = sizeof(ZFLAGS);
NdisMoveMemory(&card->m_currentProfile->zFlags.cfg, InfBuff, *BytesCopied);
//
// If the current profile is also active then write to the card too.
//
if (card->m_currentProfile == card->m_activeProfile) {
#ifdef DEBUG_AUTO_CONFIG_OID
DbgPrint(" current == active");
DbgPrint("\n");
#endif
cmdConfigSet(card, &((ZFLAGS*)InfBuff)->cfg);
cmdSSIDSet(card, &((ZFLAGS*)InfBuff)->SSIDList);
cmdAPsSet(card, &((ZFLAGS*)InfBuff)->APList);
}
#ifdef DEBUG_AUTO_CONFIG_OID
DbgPrint(" current = %s; active = %s; default = %s\n",
card->m_currentProfile->properties.name,
card->m_activeProfile->properties.name,
card->m_profiles->properties.name);
DbgPrint("------------------------------------------------------------------\n");
#endif
break;
}
case OID_X500_ENABLE_AUTO_PROFILE_SWITCH: {
#ifdef DEBUG_AUTO_CONFIG_OID
DbgPrint("OID_X500_ENABLE_AUTO_PROFILE_SWITCH:\n");
#endif
card->m_tempDisableAutoSwitch = FALSE;
break;
}
case OID_X500_DISABLE_AUTO_PROFILE_SWITCH: {
#ifdef DEBUG_AUTO_CONFIG_OID
DbgPrint("OID_X500_DISABLE_AUTO_PROFILE_SWITCH:\n");
#endif
card->m_tempDisableAutoSwitch = TRUE;
break;
}
case OID_GET_CONFIGUATION:
case OID_X500_GET_CONFIGURATION: {
if (!cmdAwaken(card, TRUE)) {
*ReturnCode = -1000;
break;
}
*BytesCopied = MIN(sizeof(CFG_X500), InfBuffLen);
CFG_X500 cfg;
if (cmdConfigGet(card, &cfg)) {
NdisMoveMemory(InfBuff, &cfg, *BytesCopied);
}
else {
*BytesCopied = (ULONG)-1;
}
/*
if( ! cmdAwaken(card, TRUE ) ){
*ReturnCode = -1000;
break;
}
*BytesCopied = cmdConfigGet(card, (CFG_X500 *)InfBuff) ? sizeof(CFG_X500) :(ULONG)-1 ;
*/
break;
}
case OID_X500_EE_GET_CONFIGURATION: {
if (!cmdAwaken(card, TRUE)) {
*ReturnCode = -1000;
break;
}
*BytesCopied = MIN(sizeof(CFG_X500), InfBuffLen);
CFG_X500 cfg;
if (EEReadConfig(card, &cfg)) {
NdisMoveMemory(InfBuff, &cfg, *BytesCopied);
}
else {
*BytesCopied = (ULONG)-1;
}
/*
if( ! cmdAwaken(card, TRUE ) ){
*ReturnCode = -1000;
break;
}
*BytesCopied = EEReadConfig(card, (CFG_X500 *)InfBuff) ? sizeof(CFG_X500) :(ULONG)-1 ;
*/
break;
}
case OID_SET_CONFIGUATION:
case OID_X500_SET_CONFIGURATION: {
if (!cmdAwaken(card, TRUE)) {
*ReturnCode = -1000;
break;
}
if (cmdConfigSet(card, (CFG_X500 *)InfBuff)) {
*BytesCopied = sizeof(CFG_X500);
NdisMoveMemory(&card->m_activeProfile->zFlags.cfg, InfBuff, sizeof(CFG_X500));
}
else {
*BytesCopied = (ULONG)-1;
}
break;
}
case OID_X500_EE_SET_CONFIGURATION: {
if( ! cmdAwaken(card, TRUE ) ){
*ReturnCode = -1000;
break;
}
*BytesCopied = EEWriteConfig(card, (CFG_X500 *)InfBuff) ? sizeof(CFG_X500) :(ULONG)-1 ;
break;
}
case OID_X500_GET_APS: {
if (!cmdAwaken(card, TRUE)) {
*ReturnCode = -1000;
break;
}
*BytesCopied = MIN(sizeof(STAPLIST), InfBuffLen);
STAPLIST apList;
if (cmdAPsGet(card, &apList)) {
NdisMoveMemory(InfBuff, &apList, *BytesCopied);
}
else {
*BytesCopied = (ULONG)-1;
}
/*
if( ! cmdAwaken(card, TRUE ) ){
*ReturnCode = -1000;
break;
}
*BytesCopied = cmdAPsGet(card, (STAPLIST *)InfBuff)? sizeof(STAPLIST) : (ULONG)-1;
*/
break;
}
case OID_X500_EE_GET_APS: {
if (!cmdAwaken(card, TRUE)) {
*ReturnCode = -1000;
break;
}
*BytesCopied = MIN(sizeof(STAPLIST), InfBuffLen);
STAPLIST apList;
if (EEReadAPS(card, &apList)) {
NdisMoveMemory(InfBuff, &apList, *BytesCopied);
}
else {
*BytesCopied = (ULONG)-1;
}
/*
if( ! cmdAwaken(card, TRUE ) ){
*ReturnCode = -1000;
break;
}
*BytesCopied = EEReadAPS(card, (STAPLIST *)InfBuff)? sizeof(STAPLIST) : (ULONG)-1;
*/
break;
}
case OID_X500_SET_APS: {
if (!cmdAwaken(card, TRUE)) {
*ReturnCode = -1000;
break;
}
if (cmdAPsSet(card, (STAPLIST *)InfBuff)) {
*BytesCopied = sizeof(STAPLIST);
NdisMoveMemory(&card->m_activeProfile->zFlags.APList, InfBuff, sizeof(STAPLIST));
}
else {
*BytesCopied = (ULONG)-1;
}
break;
}
case OID_X500_EE_SET_APS: {
if( ! cmdAwaken(card, TRUE ) ){
*ReturnCode = -1000;
break;
}
*BytesCopied = EEWriteAPS(card, (STAPLIST *)InfBuff)? sizeof(STAPLIST) : (ULONG)-1;
break;
}
case OID_X500_GET_SSIDS: {
if (!cmdAwaken(card, TRUE)) {
*ReturnCode = -1000;
break;
}
*BytesCopied = MIN(sizeof(STSSID), InfBuffLen);
STSSID ssidList;
if (cmdSSIDGet(card, &ssidList)) {
NdisMoveMemory(InfBuff, &ssidList, *BytesCopied);
}
else {
*BytesCopied = (ULONG)-1;
}
/*
if( ! cmdAwaken(card, TRUE ) ){
*ReturnCode = -1000;
break;
}
*BytesCopied = cmdSSIDGet(card, (STSSID *)InfBuff)? sizeof(STSSID) : (ULONG)-1;
*/
break;
}
case OID_X500_EE_GET_SSIDS: {
if (!cmdAwaken(card, TRUE)) {
*ReturnCode = -1000;
break;
}
*BytesCopied = MIN(sizeof(STSSID), InfBuffLen);
STSSID ssidList;
if (EEReadSSIDS(card, &ssidList)) {
NdisMoveMemory(InfBuff, &ssidList, *BytesCopied);
}
else {
*BytesCopied = (ULONG)-1;
}
*BytesCopied = EEReadSSIDS(card, (STSSID *)InfBuff)? sizeof(STSSID) : (ULONG)-1;
/*
if( ! cmdAwaken(card, TRUE ) ){
*ReturnCode = -1000;
break;
}
*BytesCopied = EEReadSSIDS(card, (STSSID *)InfBuff)? sizeof(STSSID) : (ULONG)-1;
*/
break;
}
case OID_X500_SET_SSIDS: {
if (!cmdAwaken(card, TRUE)) {
*ReturnCode = -1000;
break;
}
if (cmdSSIDSet(card, (STSSID *)InfBuff)) {
*BytesCopied = sizeof(STSSID);
NdisMoveMemory(&card->m_activeProfile->zFlags.SSIDList, InfBuff, sizeof(STSSID));
}
else {
*BytesCopied = (ULONG)-1;
}
break;
}
case OID_X500_EE_SET_SSIDS: {
if( ! cmdAwaken(card, TRUE ) ){
*ReturnCode = -1000;
break;
}
*BytesCopied = EEWriteSSIDS(card, (STSSID *)InfBuff)? sizeof(STSSID) : (ULONG)-1;
break;
}
case OID_GET_STATUS:
case OID_X500_GET_STATUS: {
if (!cmdAwaken(card, TRUE)) {
*ReturnCode = -1000;
break;
}
*BytesCopied = MIN(sizeof(STSTATUS), InfBuffLen);
STSTATUS status;
if (cmdStatusGet(card, &status)) {
NdisMoveMemory(InfBuff, &status, *BytesCopied);
}
else {
*BytesCopied = (ULONG)-1;
}
/*
if( ! cmdAwaken(card, TRUE ) ){
*ReturnCode = -1000;
break;
}
*BytesCopied = cmdStatusGet(card, (STSTATUS *)InfBuff ) ? sizeof(STSTATUS): (ULONG)-1;
*/
break;
}
case OID_GET_STATISTICS:
case OID_X500_GET_STATISTICS: {
if (!cmdAwaken(card, TRUE)) {
*ReturnCode = -1000;
break;
}
*BytesCopied = MIN(sizeof(STSTATISTICS), InfBuffLen);
STSTATISTICS stats;
if (cmdStatisticsGet(card, &stats)) {
NdisMoveMemory(InfBuff, &stats, *BytesCopied);
}
else {
*BytesCopied = (ULONG)-1;
}
/*
if( ! cmdAwaken(card, TRUE ) ){
*ReturnCode = -1000;
break;
}
*BytesCopied = cmdStatisticsGet(card, (STSTATISTICS *)InfBuff ) ? sizeof(STSTATISTICS): (ULONG)-1;
*/
break;
}
case OID_RESET_STATISTICS:
case OID_X500_RESET_STATS: {
if (!cmdAwaken(card, TRUE)) {
*ReturnCode = -1000;
break;
}
*BytesCopied = MIN(sizeof(STSTATISTICS), InfBuffLen);
STSTATISTICS stats;
if (cmdStatisticsClear(card, &stats)) {
NdisMoveMemory(InfBuff, &stats, *BytesCopied);
}
else {
*BytesCopied = (ULONG)-1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -