161d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt/*
261d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt * Hotspot 2.0 AP ANQP processing
361d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt * Copyright (c) 2009, Atheros Communications, Inc.
461d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt * Copyright (c) 2011-2012, Qualcomm Atheros, Inc.
561d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt *
661d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt * This software may be distributed under the terms of the BSD license.
761d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt * See README for more details.
861d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt */
961d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt
1061d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt#include "includes.h"
1161d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt
1261d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt#include "common.h"
1361d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt#include "common/ieee802_11_defs.h"
1461d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt#include "hostapd.h"
1561d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt#include "ap_config.h"
1661d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt#include "hs20.h"
1761d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt
1861d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt
1961d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidtu8 * hostapd_eid_hs20_indication(struct hostapd_data *hapd, u8 *eid)
2061d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt{
2161d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt	if (!hapd->conf->hs20)
2261d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt		return eid;
2361d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt	*eid++ = WLAN_EID_VENDOR_SPECIFIC;
2461d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt	*eid++ = 5;
2561d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt	WPA_PUT_BE24(eid, OUI_WFA);
2661d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt	eid += 3;
2761d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt	*eid++ = HS20_INDICATION_OUI_TYPE;
2861d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt	/* Hotspot Configuration: DGAF Enabled */
2961d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt	*eid++ = hapd->conf->disable_dgaf ? 0x01 : 0x00;
3061d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt	return eid;
3161d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt}
32