Commit | Line | Data |
---|---|---|
9ec76716 | 1 | /* |
bfe08a87 | 2 | * IEEE 802.15.4 interface for userspace |
9ec76716 SL |
3 | * |
4 | * Copyright 2007, 2008 Siemens AG | |
5 | * | |
6 | * This program is free software; you can redistribute it and/or modify | |
7 | * it under the terms of the GNU General Public License version 2 | |
8 | * as published by the Free Software Foundation. | |
9 | * | |
10 | * This program is distributed in the hope that it will be useful, | |
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
13 | * GNU General Public License for more details. | |
14 | * | |
9ec76716 SL |
15 | * Written by: |
16 | * Sergey Lapin <slapin@ossfans.org> | |
17 | * Dmitry Eremin-Solenikov <dbaryshkov@gmail.com> | |
18 | */ | |
19 | ||
20 | #ifndef _AF_IEEE802154_H | |
21 | #define _AF_IEEE802154_H | |
22 | ||
23 | #include <linux/socket.h> /* for sa_family_t */ | |
24 | ||
25 | enum { | |
26 | IEEE802154_ADDR_NONE = 0x0, | |
27 | /* RESERVED = 0x01, */ | |
28 | IEEE802154_ADDR_SHORT = 0x2, /* 16-bit address + PANid */ | |
29 | IEEE802154_ADDR_LONG = 0x3, /* 64-bit address + PANid */ | |
30 | }; | |
31 | ||
32 | /* address length, octets */ | |
33 | #define IEEE802154_ADDR_LEN 8 | |
34 | ||
376b7bd3 | 35 | struct ieee802154_addr_sa { |
9ec76716 SL |
36 | int addr_type; |
37 | u16 pan_id; | |
38 | union { | |
39 | u8 hwaddr[IEEE802154_ADDR_LEN]; | |
40 | u16 short_addr; | |
41 | }; | |
42 | }; | |
43 | ||
44 | #define IEEE802154_PANID_BROADCAST 0xffff | |
45 | #define IEEE802154_ADDR_BROADCAST 0xffff | |
46 | #define IEEE802154_ADDR_UNDEF 0xfffe | |
47 | ||
48 | struct sockaddr_ieee802154 { | |
49 | sa_family_t family; /* AF_IEEE802154 */ | |
376b7bd3 | 50 | struct ieee802154_addr_sa addr; |
9ec76716 SL |
51 | }; |
52 | ||
99eb8558 DB |
53 | /* get/setsockopt */ |
54 | #define SOL_IEEE802154 0 | |
55 | ||
af9eed5b PB |
56 | #define WPAN_WANTACK 0 |
57 | #define WPAN_SECURITY 1 | |
58 | #define WPAN_SECURITY_LEVEL 2 | |
59 | ||
60 | #define WPAN_SECURITY_DEFAULT 0 | |
61 | #define WPAN_SECURITY_OFF 1 | |
62 | #define WPAN_SECURITY_ON 2 | |
63 | ||
64 | #define WPAN_SECURITY_LEVEL_DEFAULT (-1) | |
99eb8558 | 65 | |
9ec76716 | 66 | #endif |