Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/include/net/af_ieee802154.h
26278 views
1
/* SPDX-License-Identifier: GPL-2.0-only */
2
/*
3
* IEEE 802.15.4 interface for userspace
4
*
5
* Copyright 2007, 2008 Siemens AG
6
*
7
* Written by:
8
* Sergey Lapin <[email protected]>
9
* Dmitry Eremin-Solenikov <[email protected]>
10
*/
11
12
#ifndef _AF_IEEE802154_H
13
#define _AF_IEEE802154_H
14
15
#include <linux/socket.h> /* for sa_family_t */
16
17
enum {
18
IEEE802154_ADDR_NONE = 0x0,
19
/* RESERVED = 0x01, */
20
IEEE802154_ADDR_SHORT = 0x2, /* 16-bit address + PANid */
21
IEEE802154_ADDR_LONG = 0x3, /* 64-bit address + PANid */
22
};
23
24
/* address length, octets */
25
#define IEEE802154_ADDR_LEN 8
26
27
struct ieee802154_addr_sa {
28
int addr_type;
29
u16 pan_id;
30
union {
31
u8 hwaddr[IEEE802154_ADDR_LEN];
32
u16 short_addr;
33
};
34
};
35
36
#define IEEE802154_PANID_BROADCAST 0xffff
37
#define IEEE802154_ADDR_BROADCAST 0xffff
38
#define IEEE802154_ADDR_UNDEF 0xfffe
39
40
struct sockaddr_ieee802154 {
41
sa_family_t family; /* AF_IEEE802154 */
42
struct ieee802154_addr_sa addr;
43
};
44
45
/* get/setsockopt */
46
#define SOL_IEEE802154 0
47
48
#define WPAN_WANTACK 0
49
#define WPAN_SECURITY 1
50
#define WPAN_SECURITY_LEVEL 2
51
#define WPAN_WANTLQI 3
52
53
#define WPAN_SECURITY_DEFAULT 0
54
#define WPAN_SECURITY_OFF 1
55
#define WPAN_SECURITY_ON 2
56
57
#define WPAN_SECURITY_LEVEL_DEFAULT (-1)
58
59
#endif
60
61