WPS: Add option for forcing Registrar to use PSK format in Credential
[libeap.git] / hostapd / config.h
index 0896749..5202645 100644 (file)
@@ -1,7 +1,6 @@
 /*
  * hostapd / Configuration file
- * Copyright (c) 2003-2007, Jouni Malinen <j@w1.fi>
- * Copyright (c) 2007-2008, Intel Corporation
+ * Copyright (c) 2003-2009, Jouni Malinen <j@w1.fi>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License version 2 as
 #ifndef CONFIG_H
 #define CONFIG_H
 
-#include "defs.h"
+#include "common/defs.h"
 #include "ip_addr.h"
-#include "wpa_common.h"
-
-#ifndef IFNAMSIZ
-#define IFNAMSIZ 16
-#endif
+#include "common/wpa_common.h"
 
 typedef u8 macaddr[ETH_ALEN];
 
@@ -135,11 +130,11 @@ struct hostapd_tx_queue_params {
        int configured;
 };
 
-struct hostapd_wme_ac_params {
+struct hostapd_wmm_ac_params {
        int cwmin;
        int cwmax;
        int aifs;
-       int txopLimit; /* in units of 32us */
+       int txop_limit; /* in units of 32us */
        int admission_control_mandatory;
 };
 
@@ -171,6 +166,7 @@ struct hostapd_bss_config {
        struct hostapd_ip_addr own_ip_addr;
        char *nas_identifier;
        struct hostapd_radius_servers *radius;
+       int acct_interim_interval;
 
        struct hostapd_ssid ssid;
 
@@ -205,11 +201,7 @@ struct hostapd_bss_config {
        int wpa; /* bitfield of WPA_PROTO_WPA, WPA_PROTO_RSN */
        int wpa_key_mgmt;
 #ifdef CONFIG_IEEE80211W
-       enum {
-               NO_IEEE80211W = 0,
-               IEEE80211W_OPTIONAL = 1,
-               IEEE80211W_REQUIRED = 2
-       } ieee80211w;
+       enum mfp_options ieee80211w;
        /* dot11AssociationSAQueryMaximumTimeout (in TUs) */
        unsigned int assoc_sa_query_max_timeout;
        /* dot11AssociationSAQueryRetryTimeout (in TUs) */
@@ -271,7 +263,7 @@ struct hostapd_bss_config {
        int ap_max_inactivity;
        int ignore_broadcast_ssid;
 
-       int wme_enabled;
+       int wmm_enabled;
 
        struct hostapd_vlan *vlan, *vlan_tail;
 
@@ -303,24 +295,24 @@ struct hostapd_bss_config {
        int skip_cred_build;
        u8 *extra_cred;
        size_t extra_cred_len;
+       int wps_cred_processing;
+       u8 *ap_settings;
+       size_t ap_settings_len;
+       char *upnp_iface;
+       char *friendly_name;
+       char *manufacturer_url;
+       char *model_description;
+       char *model_url;
+       char *upc;
 #endif /* CONFIG_WPS */
 };
 
 
-typedef enum {
-       HOSTAPD_MODE_IEEE80211B,
-       HOSTAPD_MODE_IEEE80211G,
-       HOSTAPD_MODE_IEEE80211A,
-       NUM_HOSTAPD_MODES
-} hostapd_hw_mode;
-
-
 /**
  * struct hostapd_config - Per-radio interface configuration
  */
 struct hostapd_config {
        struct hostapd_bss_config *bss, *last_bss;
-       struct hostapd_radius_servers *radius;
        size_t num_bss;
 
        u16 beacon_int;
@@ -345,9 +337,6 @@ struct hostapd_config {
 
        const struct wpa_driver_ops *driver;
 
-       int passive_scan_interval; /* seconds, 0 = disabled */
-       int passive_scan_listen; /* usec */
-       int passive_scan_mode;
        int ap_table_max_size;
        int ap_table_expiration_time;
 
@@ -363,24 +352,16 @@ struct hostapd_config {
        struct hostapd_tx_queue_params tx_queue[NUM_TX_QUEUES];
 
        /*
-        * WME AC parameters, in same order as 802.1D, i.e.
+        * WMM AC parameters, in same order as 802.1D, i.e.
         * 0 = BE (best effort)
         * 1 = BK (background)
         * 2 = VI (video)
         * 3 = VO (voice)
         */
-       struct hostapd_wme_ac_params wme_ac_params[4];
-
-       enum {
-               INTERNAL_BRIDGE_DO_NOT_CONTROL = -1,
-               INTERNAL_BRIDGE_DISABLED = 0,
-               INTERNAL_BRIDGE_ENABLED = 1
-       } bridge_packets;
+       struct hostapd_wmm_ac_params wmm_ac_params[4];
 
-#ifdef CONFIG_IEEE80211N
        int ht_op_mode_fixed;
        u16 ht_capab;
-#endif /* CONFIG_IEEE80211N */
        int ieee80211n;
        int secondary_channel;
 };
@@ -388,6 +369,7 @@ struct hostapd_config {
 
 int hostapd_mac_comp(const void *a, const void *b);
 int hostapd_mac_comp_empty(const void *a);
+struct hostapd_config * hostapd_config_defaults(void);
 struct hostapd_config * hostapd_config_read(const char *fname);
 void hostapd_config_free(struct hostapd_config *conf);
 int hostapd_maclist_found(struct mac_acl_entry *list, int num_entries,