/* ipwps_config.c - IPWPS vxWorks specific configuration applet */ /* * Copyright (c) 2008 Wind River Systems, Inc. * * The right to copy, distribute, modify, or otherwise make use * of this software may be licensed only pursuant to the terms * of an applicable Wind River license agreement. * */ /* modification history -------------------- 01a,24Dec08,mry Created */ /* **************************************************************************** * 1 DESCRIPTION **************************************************************************** */ /* **************************************************************************** * 2 INCLUDE FILES **************************************************************************** */ #include #include #include #include #include #include "ipwps_sysvar.h" #include "ipwps_common.h" /* **************************************************************************** * 3 DEFINES **************************************************************************** */ /* **************************************************************************** * 4 TYPES **************************************************************************** */ /* **************************************************************************** * 5 EXTERN PROTOTYPES **************************************************************************** */ IP_GLOBAL void ipwps_cmd_init(void); /* **************************************************************************** * 6 LOCAL PROTOTYPES **************************************************************************** */ IP_PUBLIC Ip_err ipwps_configure(void); /* **************************************************************************** * 7 DATA **************************************************************************** */ IP_CONST Ipcom_sysvar ipwps_conf_sysvar[] = { #ifdef INCLUDE_IPWPS_MODEL_CUSTOM { IPWPS_SYSVAR_TEMPLATE, IPWPS_MODEL_DESC_CUST}, #elif defined(INCLUDE_IPWPS_MODEL_STANDALONE_AP) { IPWPS_SYSVAR_TEMPLATE, IPWPS_MODEL_DESC_ST_AP}, #elif defined(INCLUDE_IPWPS_MODEL_STANDALONE_AP_WITH_REGISTRAR) { IPWPS_SYSVAR_TEMPLATE, IPWPS_MODEL_DESC_ST_AP_REG}, #elif defined(INCLUDE_IPWPS_MODEL_ENROLLEE) { IPWPS_SYSVAR_TEMPLATE, IPWPS_MODEL_DESC_ENROLLEE}, #endif #ifdef INCLUDE_IPWPS { IPWPS_SYSVAR_ENABLE, IPWPS_ENABLE }, { IPWPS_SYSVAR_WLS_IF, IPWPS_WLS_IF }, #endif #ifdef INCLUDE_IPWPS_COMMONDEVINFO { IPWPS_SYSVAR_DEVINFO_MANUFACTURER,IPWPS_COMMONDEVINFO_MANUFACTURER }, { IPWPS_SYSVAR_DEVINFO_MODELNAME, IPWPS_COMMONDEVINFO_MODELNAM }, { IPWPS_SYSVAR_DEVINFO_MODELNO, IPWPS_COMMONDEVINFO_MODELNO }, { IPWPS_SYSVAR_DEVINFO_SERIALNO, IPWPS_COMMONDEVINFO_SERIALNO }, { IPWPS_SYSVAR_DEVINFO_DEVNAME, IPWPS_COMMONDEVINFO_DEVNAM }, { IPWPS_SYSVAR_DEVINFO_CATID, IPWPS_COMMONDEVINFO_CATID }, { IPWPS_SYSVAR_DEVINFO_OUI, IPWPS_COMMONDEVINFO_OUI }, { IPWPS_SYSVAR_DEVINFO_SUBCATID, IPWPS_COMMONDEVINFO_SUBCATID }, #endif #ifdef INCLUDE_IPWPS_CONFIG_PIN { IPWPS_SYSVAR_INCLUDE_CONFIGMEHTOD_PIN, "1" }, { IPWPS_SYSVAR_PIN_ENABLE, IPWPS_CONFIG_PIN_ENABLE }, #if defined(INCLUDE_IPWPS_CONFIG_PIN_AUTO) { IPWPS_SYSVAR_PIN_MODE, IPWPS_PINMODE_AUTO}, #elif defined(INCLUDE_IPWPS_CONFIG_PIN_HARDCODE) { IPWPS_SYSVAR_PIN_MODE, IPWPS_PINMODE_HARDCODE}, { IPWPS_SYSVAR_PIN_HARDCODED_VAL, IPWPS_PIN_HARDCODED_VALUE}, #elif defined (INCLUDE_IPWPS_CONFIG_PIN_INTERACTIVE_USER) { IPWPS_SYSVAR_PIN_MODE, IPWPS_PINMODE_INTERACT_USER}, #elif defined (INCLUDE_IPWPS_CONFIG_PIN_INTERACTIVE_REGS) { IPWPS_SYSVAR_PIN_MODE, IPWPS_PINMODE_INTERACT_REGS}, #endif #else { IPWPS_SYSVAR_INCLUDE_CONFIGMEHTOD_PIN, "0" }, #endif #ifdef INCLUDE_IPWPS_CONFIG_PBC { IPWPS_SYSVAR_INCLUDE_CONFIGMEHTOD_PBC, "1" }, { IPWPS_SYSVAR_PBC_ENABLE, IPWPS_CONFIG_PBC_ENABLE }, #else { IPWPS_SYSVAR_INCLUDE_CONFIGMEHTOD_PBC, "0" }, #endif #ifdef INCLUDE_IPWPS_DRV_IF { IPWPS_SYSVAR_DRVIF_ENABLE, "1" }, #endif #ifdef INCLUDE_IPWPS_ENROLLEE { IPWPS_SYSVAR_ENROLLEE_ENABLE, IPWPS_ENROLLEE_ENABLE }, { IPWPS_SYSVAR_ENROLLEE_UUID, IPWPS_ENROLLEE_UUID }, { IPWPS_SYSVAR_ENROLLEE_AUTO_REG_INIT, IPWPS_ENROLLEE_AUTO_REG_INIT }, { IPWPS_SYSVAR_ENROLLEE_NON_WPS_DRV, IPWPS_ENROLLEE_NON_WPS_DRIVER }, #ifdef INCLUDE_IPWPS_ENROLLEE_ADHOC { IPWPS_SYSVAR_ENROLLEE_ADHOC, "1" }, #else { IPWPS_SYSVAR_ENROLLEE_ADHOC, "0" }, #endif #endif #ifdef INCLUDE_IPWPS_AP { IPWPS_SYSVAR_AP_ENABLE, IPWPS_AP_ENABLE }, { IPWPS_SYSVAR_AP_UUID, IPWPS_AP_UUID }, #endif #ifdef INCLUDE_IPWPS_REGISTRAR { IPWPS_SYSVAR_REGISTRAR_ENABLE, IPWPS_REGISTRAR_ENABLE }, { IPWPS_SYSVAR_REGISTRAR_IPWPS_OFFER_ALL_CREDS, IPWPS_REGISTRAR_OFFER_ALL_CREDS}, { IPWPS_SYSVAR_REGISTRAR_REG_MODE, IPWPS_REGISTRAR_REG_MODE }, { IPWPS_SYSVAR_REGISTRAR_UUID, IPWPS_REGISTRAR_UUID }, #endif #ifdef INCLUDE_IPWPS_CRED_CONFIG_AUTO { IPWPS_SYSVAR_CREDENTIAL_METHOD, IPWPS_CRED_CONFIG_METHOD_AUTO}, { IPWPS_SYSVAR_CREDENTIAL_AUTO_KEYLEN, IPWPS_CRED_CONFIG_AUTO_KEYLEN}, { IPWPS_SYSVAR_CREDENTIAL_AUTO_NETINDEX,IPWPS_CRED_CONFIG_AUTO_NETINDEX}, { IPWPS_SYSVAR_CREDENTIAL_AUTO_SSID, IPWPS_CRED_CONFIG_AUTO_SSID}, #elif defined(INCLUDE_IPWPS_CRED_CONFIG_DEF) { IPWPS_SYSVAR_CREDENTIAL_METHOD, IPWPS_CRED_CONFIG_METHOD_DEFAULT}, { IPWPS_SYSVAR_CREDENTIAL_DEF_NETINDEX, IPWPS_CRED_CONFIG_NETINDEX}, { IPWPS_SYSVAR_CREDENTIAL_DEF_SSID, IPWPS_CRED_CONFIG_SSID}, { IPWPS_SYSVAR_CREDENTIAL_DEF_AUTH, IPWPS_CRED_CONFIG_AUTH}, { IPWPS_SYSVAR_CREDENTIAL_DEF_ENCR, IPWPS_CRED_CONFIG_ENCR}, { IPWPS_SYSVAR_CREDENTIAL_DEF_KEYINDEX, IPWPS_CRED_CONFIG_KEYINDEX}, { IPWPS_SYSVAR_CREDENTIAL_DEF_KEY, IPWPS_CRED_CONFIG_KEY}, { IPWPS_SYSVAR_CREDENTIAL_DEF_8021X, IPWPS_CRED_CONFIG_8021X}, { IPWPS_SYSVAR_CREDENTIAL_DEF_EAP_ID, IPWPS_CRED_CONFIG_EAP_ID}, { IPWPS_SYSVAR_CREDENTIAL_DEF_EAP_TYPE, IPWPS_CRED_CONFIG_EAP_TYPES}, #elif defined(INCLUDE_IPWPS_CRED_CONFIG_INTERACTIVE) { IPWPS_SYSVAR_CREDENTIAL_METHOD, IPWPS_CRED_CONFIG_METHOD_INTERACT}, #endif #ifdef INCLUDE_IPWPS_PROTO { IPWPS_SYSVAR_WPS_PROTO_ENABLE, IPWPS_PROTO_ENABLE }, #endif { IP_NULL, IP_NULL} }; /* **************************************************************************** * 8 STATIC FUNCTIONS **************************************************************************** */ /* **************************************************************************** * 9 GLOBAL FUNCTIONS **************************************************************************** */ /* **************************************************************************** * 10 PUBLIC FUNCTIONS **************************************************************************** */ /* *=========================================================================== * ipwps_configure *=========================================================================== * Description: * Parameters: * Returns: * */ IP_PUBLIC Ip_err ipwps_configure(void) { Ip_err rc = IPCOM_SUCCESS; (void)ipcom_sysvar_setv(ipwps_conf_sysvar, 0); ipcom_openlog(IP_NULL, 0, IPCOM_LOG_IPWPS); (void)ipcom_setlogmask_on(IPWPS_LOG_LEVEL, IPCOM_LOG_IPWPS); #ifdef INCLUDE_IPWPS_CMD ipwps_cmd_init(); #endif return rc; } /* **************************************************************************** * END OF FILE **************************************************************************** */