-
Notifications
You must be signed in to change notification settings - Fork 28
/
common.h
95 lines (89 loc) · 3.08 KB
/
common.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
/*
* Copyright (c) Dan Harkins, 2008, 2009, 2010
*
* Copyright holder grants permission for redistribution and use in source
* and binary forms, with or without modification, provided that the
* following conditions are met:
* 1. Redistribution of source code must retain the above copyright
* notice, this list of conditions, and the following disclaimer
* in all source files.
* 2. Redistribution in binary form must retain the above copyright
* notice, this list of conditions, and the following disclaimer
* in the documentation and/or other materials provided with the
* distribution.
* 3. All advertising materials and documentation mentioning features
* or use of this software must display the following acknowledgement:
*
* "This product includes software written by
* Dan Harkins (dharkins at lounge dot org)"
*
* "DISCLAIMER OF LIABILITY
*
* THIS SOFTWARE IS PROVIDED BY DAN HARKINS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE INDUSTRIAL LOUNGE BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE."
*
* This license and distribution terms cannot be changed. In other words,
* this code cannot simply be copied and put under a different distribution
* license (including the GNU public license).
*/
#ifndef _SAE_COMMON_H_
#define _SAE_COMMON_H_
#define MESHD_STA 0
#define MESHD_ADHOC 1
#define MESHD_HOSTAP 2
#define MESHD_MONITOR 3
#define MESHD_IBSS 4
#define MESHD_11a 1
#define MESHD_11b 2
#define MESHD_11g 3
#define MESHD_MAX_SSID_LEN 32
int parse_buffer(char *, char **);
#define SAE_DEBUG_ERR 0x01
#define SAE_DEBUG_PROTOCOL_MSG 0x02
#define SAE_DEBUG_STATE_MACHINE 0x04
#define SAE_DEBUG_CRYPTO 0x08
#define SAE_DEBUG_CRYPTO_VERB 0x10
#define AMPE_DEBUG_PEERS 0x20
#define MESHD_DEBUG 0x40
#define AMPE_DEBUG_FSM 0x80
#define AMPE_DEBUG_KEYS 0x100
#define AMPE_DEBUG_ERR 0x200
#define SAE_DEBUG_REKEY 0x400
extern unsigned int sae_debug_mask;
void sae_debug(int level, const char *fmt, ...)
__attribute__((format(printf, 2, 3)));
void sae_hexdump(
int level,
const char *label,
const unsigned char *start,
int len);
#ifndef le16
#define le16 unsigned short
#endif
#ifndef u16
#define u16 unsigned short
#endif
#ifndef le32
#define le32 unsigned int
#endif
#ifndef LIBCONFIG_SETTING_INT_AS_LONG
typedef int config_int_t;
#else
typedef long int config_int_t;
#endif
#ifndef MIN
#define MIN(x,y) (((x) < (y)) ? (x) : (y))
#endif
#ifndef MAX
#define MAX(x,y) (((x) > (y)) ? (x) : (y))
#endif
#endif /* _SAE_COMMON_H_ */