📄 wps_data_element.h
字号:
/*
* WPS_DATA_ELEMENT.H : WPS Data Element definition
*
* ver date author comment
* 0.0.1 06/08/28 Gao Hua First
* 0.0.2 07/09/05 D.W.Yan Refactor code
*/
#ifndef _WPS_DATA_ELEMENT_H
#define _WPS_DATA_ELEMENT_H
#include "wps_types.h"
#define WPS_BOOL_LENGTH 1
#define WPS_BOOL_TRUE 1
#define WPS_BOOL_FALSE 0
/* Definition for Simple Config Data Elements */
#define E_APChannel_ID 0x1001
#define E_APChannel_Length 2
#define E_AssociationState_ID 0x1002
#define E_AssociationState_Length 2
#define E_AuthenticationType_ID 0x1003
#define E_AuthenticationType_Length 2
#define E_AuthenticationTypeFlags_ID 0x1004
#define E_AuthenticationTypeFlags_Length 2
#define E_Authenticator_ID 0x1005
#define E_Authenticator_Length 8
#define E_ConfigMethods_ID 0x1008
#define E_ConfigMethods_Length 2
#define E_ConfigurationError_ID 0x1009
#define E_ConfigurationError_Length 2
#define E_ConfirmationURL4_ID 0x100A
#define E_ConfirmationURL4_MaxLength 64
#define E_ConfirmationURL6_ID 0x100B
#define E_ConfirmationURL6_MaxLength 76
#define E_ConnectionType_ID 0x100C
#define E_ConnectionType_Length 1
#define E_ConnectionTypeFlags_ID 0x100D
#define E_ConnectionTypeFlags_Length 1
#define E_Credential_ID 0x100E
/* #define E_Credential_Length ? */
#define E_DeviceName_ID 0x1011
#define E_DeviceName_MaxLength 32
#define E_DevicePasswordID_ID 0x1012
#define E_DevicePasswordID_Length 2
#define E_EHash1_ID 0x1014
#define E_EHash1_Length 32
#define E_EHash2_ID 0x1015
#define E_EHash2_Length 32
#define E_ESNonce1_ID 0x1016
#define E_ESNonce1_Length 16
#define E_ESNonce2_ID 0x1017
#define E_ESNonce2_Length 16
#define E_EncryptedSettings_ID 0x1018
/* #define E_EncryptedSettings_Length ? */
#define E_EncryptionType_ID 0x100F
#define E_EncryptionType_Length 2
#define E_EncryptionTypeFlags_ID 0x1010
#define E_EncryptionTypeFlags_Length 2
#define E_EnrolleeNonce_ID 0x101A
#define E_EnrolleeNonce_Length 16
#define E_FeatureID_ID 0x101B
#define E_FeatureID_Length 4
#define E_Identity_ID 0x101C
#define E_Identity_MaxLength 80
#define E_IdentityProof_ID 0x101D
/* #define E_IdentityProof_Length ? */
#define E_KeyWrapAuthenticator_ID 0x101E
#define E_KeyWrapAuthenticator_Length 8
#define E_KeyIdentifier_ID 0x101F
#define E_KeyIdentifier_Length 16
#define E_MACAddress_ID 0x1020
#define E_MACAddress_Length 6
#define E_Manufacturer_ID 0x1021
#define E_Manufacturer_MaxLength 64
#define E_MessageType_ID 0x1022
#define E_MessageType_Length 1
#define E_ModelName_ID 0x1023
#define E_ModelName_MaxLength 32
#define E_ModelNumber_ID 0x1024
#define E_ModelNumber_MaxLength 32
#define E_NetworkIndex_ID 0x1026
#define E_NetworkIndex_Length 1
#define E_NetworkKey_ID 0x1027
#define E_NetworkKey_MaxLength 64
#define E_NetworkKeyIndex_ID 0x1028
#define E_NetworkKeyIndex_Length 1
#define E_NewDeviceName_ID 0x1029
#define E_NewDeviceName_MaxLength 32
#define E_NewPassword_ID 0x102A
#define E_NewPassword_MaxLength 64
#define E_OOBDevicePassword_ID 0x102C
#define E_OOBDevicePassword_MaxLength 58
#define E_OSVersion_ID 0x102D
#define E_OSVersion_Length 4
#define E_PowerLevel_ID 0x102F
#define E_PowerLevel_Length 1
#define E_PSKCurrent_ID 0x1030
#define E_PSKCurrent_Length 1
#define E_PSKMax_ID 0x1031
#define E_PSKMax_Length 1
#define E_PublicKey_ID 0x1032
#define E_PublicKey_Length 192
#define E_RadioEnabled_ID 0x1033
#define E_RadioEnabled_Length WPS_BOOL_LENGTH
#define E_Reboot_ID 0x1034
#define E_Reboot_Length WPS_BOOL_LENGTH
#define E_RegistrarCurrent_ID 0x1035
#define E_RegistrarCurrent_Length 1
#define E_RegistrarEstablished_ID 0x1036
#define E_RegistrarEstablished_Length WPS_BOOL_LENGTH
#define E_RegistrarList_ID 0x1037
#define E_RegistrarList_MaxLength 512
#define E_RegistrarMax_ID 0x1038
#define E_RegistrarMax_Length 1
#define E_RegistrarNonce_ID 0x1039
#define E_RegistrarNonce_Length 16
#define E_RequestType_ID 0x103A
#define E_RequestType_Length 1
#define E_ResponseType_ID 0x103B
#define E_ResponseType_Length 1
#define E_RFBands_ID 0x103C
#define E_RFBands_Length 1
#define E_RHash1_ID 0x103D
#define E_RHash1_Length 32
#define E_RHash2_ID 0x103E
#define E_RHash2_Length 32
#define E_RSNonce1_ID 0x103F
#define E_RSNonce1_Length 16
#define E_RSNonce2_ID 0x1040
#define E_RSNonce2_Length 16
#define E_SelectedRegistrar_ID 0x1041
#define E_SelectedRegistrar_Length WPS_BOOL_LENGTH
#define E_SerialNumber_ID 0x1042
#define E_SerialNumber_MaxLength 32
#define E_SimpleConfigState_ID 0x1044
#define E_SimpleConfigState_Length 1
#define E_SSID_ID 0x1045
#define E_SSID_MaxLength 32
#define E_TotalNetworks_ID 0x1046
#define E_TotalNetworks_Length 1
#define E_UUID_E_ID 0x1047
#define E_UUID_E_Length 16
#define E_UUID_R_ID 0x1048
#define E_UUID_R_Length 16
#define E_VendorExtension_ID 0x1049
#define E_VendorExtension_MaxLength 1024
#define E_Version_ID 0x104A
#define E_Version_Length 1 // ??? (int)
#define E_X509CertificateRequest_ID 0x104B
/* #define E_X509CertificateRequest_Length ? */
#define E_X509Certificate_ID 0x104C
/* #define E_X509Certificate_Length ? */
#define E_EAPIdentity_ID 0x104D
#define E_EAPIdentity_MaxLength 64
#define E_MessageCounter_ID 0x104E
#define E_MessageCounter_Length 8
#define E_PublicKeyHash_ID 0x104F
#define E_PublicKeyHash_Length 20
#define E_RekeyKey_ID 0x1050
#define E_RekeyKey_Length 32
#define E_KeyLifetime_ID 0x1051
#define E_KeyLifetime_Length 4
#define E_PermittedConfigMethods_ID 0x1052
#define E_PermittedConfigMethods_Length 2
#define E_SelectedRegistrarConfigMethods_ID 0x1053
#define E_SelectedRegistrarConfigMethods_Length 2
#define E_PrimaryDeviceType_ID 0x1054
#define E_PrimaryDeviceType_Length 8
#define E_SecondaryDeviceTypeList_ID 0x1055
#define E_SecondaryDeviceTypeList_MaxLength 128
#define E_PortableDevice_ID 0x1056
#define E_PortableDevice_Length WPS_BOOL_LENGTH
#define E_APSetupLocked_ID 0x1057
#define E_APSetupLocked_Length WPS_BOOL_LENGTH
#define E_ApplicationList_ID 0x1058
#define E_ApplicationList_MaxLength 512
#define E_EAPType_ID 0x1059
#define E_EAPType_MaxLength 8
#define E_InitializationVector_ID 0x1060
#define E_InitializationVector_Length 32
#define E_KeyProvidedAutomatically_ID 0x1061
#define E_KeyProvidedAutomatically_Length WPS_BOOL_LENGTH
#define E_8021xEnabled_ID 0x1062
#define E_8021xEnabled_Length WPS_BOOL_LENGTH
/* Definition for Association State Values */
#define ACCOCIATION_NOT_ASSOCIATED 0
#define ACCOCIATION_CONNECTION_SUCCESS 1
#define ACCOCIATION_CONFIGURATION_FAILURE 2
#define ACCOCIATION_ASSOCIATION_FAILURE 3
#define ACCOCIATION_IP_FAILURE 4
/* Definition for Authentication Type Flags bits */
#define AUTHENTICATION_TYPE_OPEN 0x0001
#define AUTHENTICATION_TYPE_WPAPSK 0x0002
#define AUTHENTICATION_TYPE_SHARED 0x0004
#define AUTHENTICATION_TYPE_WPA 0x0008
#define AUTHENTICATION_TYPE_WPA2 0x0010
#define AUTHENTICATION_TYPE_WPA2PSK 0x0020
/* Definition for Config Methods bits */
#define CONFIG_METHOD_USBA 0x0001
#define CONFIG_METHOD_ETHERNET 0x0002
#define CONFIG_METHOD_LABEL 0x0004
#define CONFIG_METHOD_DISPLAY 0x0008
#define CONFIG_METHOD_EXTERNAL_NFC 0x0010
#define CONFIG_METHOD_INTEGRATED_NFC 0x0020
#define CONFIG_METHOD_NFC_INTERFACE 0x0040
#define CONFIG_METHOD_PUSHBUTTON 0x0080
#define CONFIG_METHOD_KEYPAD 0x0100
/* Definition for Simple Config State */
#define SIMPLE_CONFIG_STATE_NOTCONFIGURED 0x1
#define SIMPLE_CONFIG_STATE_CONFIGURED 0x2
/* Definition for RF Bands */
#define RF_BAND_2DOT4G 0x1
#define RF_BAND_5DOT0G 0x2
/* Definition for Connection Type Flags */
#define CONNECTION_TYPE_ESS 0x1
#define CONNECTION_TYPE_IBSS 0x2
/* Definition for Device Password ID */
#define DPID_DEFAULT 0x0000
#define DPID_USER_SPECIFIED 0x0001
#define DPID_MACHINE_SPECIFIED 0x0002
#define DPID_REKEY 0x0003
#define DPID_PUSHBUTTON 0x0004
#define DPID_REGISTRAR_SPECIFIED 0x0005
/* Definition for Encryption type flags bits */
#define ENCRYPTION_TYPE_NONE 0x0001
#define ENCRYPTION_TYPE_WEP 0x0002
#define ENCRYPTION_TYPE_TKIP 0x0004
#define ENCRYPTION_TYPE_AES 0x0008
/* Definition for Message Type values */
#define MESSAGE_TYPE_BEACON 0x01
#define MESSAGE_TYPE_PROBE_REQUEST 0x02
#define MESSAGE_TYPE_PROBE_RESPONSE 0x03
#define MESSAGE_TYPE_M1 0x04
#define MESSAGE_TYPE_M2 0x05
#define MESSAGE_TYPE_M2D 0x06
#define MESSAGE_TYPE_M3 0x07
#define MESSAGE_TYPE_M4 0x08
#define MESSAGE_TYPE_M5 0x09
#define MESSAGE_TYPE_M6 0x0a
#define MESSAGE_TYPE_M7 0x0b
#define MESSAGE_TYPE_M8 0x0c
#define MESSAGE_TYPE_WSC_ACK 0x0d
#define MESSAGE_TYPE_WSC_NACK 0x0e
#define MESSAGE_TYPE_WSC_DONE 0x0f
/* Definition for Configuration Error */
#define ERROR_NO_ERROR 0
#define ERROR_OOB_INTERFACE_READ_ERROR 1
#define ERROR_DECRYPTION_CRC_FAILURE 2
#define ERROR_2dot4_CHANNEL_NOT_SUPPORTED 3
#define ERROR_5dot0_CHANNEL_NOT_SUPPORTED 4
#define ERROR_SIGNAL_TOO_WEAK 5
#define ERROR_NETWORK_AUTH_FAILURE 6
#define ERROR_NETWORK_ASSOCIATION_FAILURE 7
#define ERROR_NO_DHCP_RESPONSE 8
#define ERROR_FAILED_DHCP_CONFIG 9
#define ERROR_IP_ADDRESS_CONFLICT 10
#define ERROR_COULDNOT_CONNECT_TO_REGISTRAR 11
#define ERROR_MULTIPLE_PBC_SESSIONS_DETECTED 12
#define ERROR_ROGUE_ACTIVITY_SUSPECTED 13
#define ERROR_DEVICE_BUSY 14
#define ERROR_SETUP_LOCKED 15
#define ERROR_MESSAGE_TIMEOUT 16
#define ERROR_REGISTRATION_SESSION_TIMEOUT 17
#define ERROR_DEVICE_PASSWORD_AUTH_FAILURE 18
#define ERROR_STATE_ERROR 101
#define ERROR_MESSAGE_FORMAT_ERROR 102
/* Definition for Request Type */
#define REQUEST_TYPE_ENROLLEE_INFO 0x00
#define REQUEST_TYPE_ENROLLEE 0x01
#define REQUEST_TYPE_REGISTRAR 0x02
#define REQUEST_TYPE_REGISTRAR_MANAGER 0x03
/* Definition for Response Type */
#define RESPONSE_TYPE_ENROLLEE_INFO 0x00
#define RESPONSE_TYPE_ENROLLEE 0x01
#define RESPONSE_TYPE_REGISTRAR 0x02
#define RESPONSE_TYPE_AP 0x03
#endif /*_WPS_DATA_ELEMENT_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -