Blame view

RIOT/sys/net/crosslayer/netopt/netopt.c 4.44 KB
a752c7ab   elopes   add first test an...
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
96
97
98
99
100
101
102
103
104
105
106
  /*
   * Copyright (C) 2015 Kaspar Schleiser <kaspar@schleiser.de>
   *
   * This file is subject to the terms and conditions of the GNU Lesser
   * General Public License v2.1. See the file LICENSE in the top level
   * directory for more details.
   */
  
  /**
   * @{
   * @ingroup     net_netopt
   * @file
   * @brief       This file contains functionality to map netopt option
   *              numbers to strings
   *
   * @author      Kaspar Schleiser <kaspar@schleiser.de>
   * @}
   */
  
  #include "net/netopt.h"
  
  #ifdef __cplusplus
  extern "C" {
  #endif
  
  static const char *_netopt_strmap[] = {
      [NETOPT_CHANNEL]               = "NETOPT_CHANNEL",
      [NETOPT_IS_CHANNEL_CLR]        = "NETOPT_IS_CHANNEL_CLR",
      [NETOPT_ADDRESS]               = "NETOPT_ADDRESS",
      [NETOPT_ADDRESS_LONG]          = "NETOPT_ADDRESS_LONG",
      [NETOPT_ADDR_LEN]              = "NETOPT_ADDR_LEN",
      [NETOPT_SRC_LEN]               = "NETOPT_SRC_LEN",
      [NETOPT_NID]                   = "NETOPT_NID",
      [NETOPT_HOP_LIMIT]             = "NETOPT_HOP_LIMIT",
      [NETOPT_IPV6_IID]              = "NETOPT_IPV6_IID",
      [NETOPT_IPV6_ADDR]             = "NETOPT_IPV6_ADDR",
      [NETOPT_IPV6_ADDR_REMOVE]      = "NETOPT_IPV6_ADDR_REMOVE",
      [NETOPT_IPV6_ADDR_FLAGS]       = "NETOPT_IPV6_ADDR_FLAGS",
      [NETOPT_IPV6_GROUP]            = "NETOPT_IPV6_GROUP",
      [NETOPT_IPV6_GROUP_LEAVE]      = "NETOPT_IPV6_GROUP_LEAVE",
      [NETOPT_IPV6_FORWARDING]       = "NETOPT_IPV6_FORWARDING",
      [NETOPT_IPV6_SND_RTR_ADV]      = "NETOPT_IPV6_SND_RTR_ADV",
      [NETOPT_TX_POWER]              = "NETOPT_TX_POWER",
      [NETOPT_MAX_PACKET_SIZE]       = "NETOPT_MAX_PACKET_SIZE",
      [NETOPT_PRELOADING]            = "NETOPT_PRELOADING",
      [NETOPT_PROMISCUOUSMODE]       = "NETOPT_PROMISCUOUSMODE",
      [NETOPT_AUTOACK]               = "NETOPT_AUTOACK",
      [NETOPT_ACK_REQ]               = "NETOPT_ACK_REQ",
      [NETOPT_RETRANS]               = "NETOPT_RETRANS",
      [NETOPT_PROTO]                 = "NETOPT_PROTO",
      [NETOPT_STATE]                 = "NETOPT_STATE",
      [NETOPT_RAWMODE]               = "NETOPT_RAWMODE",
      [NETOPT_RX_START_IRQ]          = "NETOPT_RX_START_IRQ",
      [NETOPT_RX_END_IRQ]            = "NETOPT_RX_END_IRQ",
      [NETOPT_TX_START_IRQ]          = "NETOPT_TX_START_IRQ",
      [NETOPT_TX_END_IRQ]            = "NETOPT_TX_END_IRQ",
      [NETOPT_AUTOCCA]               = "NETOPT_AUTOCCA",
      [NETOPT_CSMA]                  = "NETOPT_CSMA",
      [NETOPT_CSMA_RETRIES]          = "NETOPT_CSMA_RETRIES",
      [NETOPT_CSMA_MAXBE]            = "NETOPT_CSMA_MAXBE",
      [NETOPT_CSMA_MINBE]            = "NETOPT_CSMA_MINBE",
      [NETOPT_MAC_NO_SLEEP]          = "NETOPT_MAC_NO_SLEEP",
      [NETOPT_IS_WIRED]              = "NETOPT_IS_WIRED",
      [NETOPT_DEVICE_TYPE]           = "NETOPT_DEVICE_TYPE",
      [NETOPT_CHANNEL_PAGE]          = "NETOPT_CHANNEL_PAGE",
      [NETOPT_CCA_THRESHOLD]         = "NETOPT_CCA_THRESHOLD",
      [NETOPT_CCA_MODE]              = "NETOPT_CCA_MODE",
      [NETOPT_STATS]                 = "NETOPT_STATS",
      [NETOPT_ENCRYPTION]            = "NETOPT_ENCRYPTION",
      [NETOPT_ENCRYPTION_KEY]        = "NETOPT_ENCRYPTION_KEY",
      [NETOPT_RF_TESTMODE]           = "NETOPT_RF_TESTMODE",
      [NETOPT_L2FILTER]              = "NETOPT_L2FILTER",
      [NETOPT_L2FILTER_RM]           = "NETOPT_L2FILTER_RM",
      [NETOPT_LAST_ED_LEVEL]         = "NETOPT_LAST_ED_LEVEL",
      [NETOPT_DEVICE_MODE]           = "NETOPT_DEVICE_MODE",
      [NETOPT_BANDWIDTH]             = "NETOPT_BANDWIDTH",
      [NETOPT_SPREADING_FACTOR]      = "NETOPT_SPREADING_FACTOR",
      [NETOPT_CODING_RATE]           = "NETOPT_CODING_RATE",
      [NETOPT_SINGLE_RECEIVE]        = "NETOPT_SINGLE_RECEIVE",
      [NETOPT_RX_TIMEOUT]            = "NETOPT_RX_TIMEOUT",
      [NETOPT_TX_TIMEOUT]            = "NETOPT_TX_TIMEOUT",
      [NETOPT_PREAMBLE_LENGTH]       = "NETOPT_PREAMBLE_LENGTH",
      [NETOPT_INTEGRITY_CHECK]       = "NETOPT_INTEGRITY_CHECK",
      [NETOPT_CHANNEL_HOP]           = "NETOPT_CHANNEL_HOP",
      [NETOPT_CHANNEL_HOP_PERIOD]    = "NETOPT_CHANNEL_HOP_PERIOD",
      [NETOPT_FIXED_HEADER]          = "NETOPT_FIXED_HEADER",
      [NETOPT_IQ_INVERT]             = "NETOPT_IQ_INVERT",
      [NETOPT_TX_RETRIES_NEEDED]     = "NETOPT_TX_RETRIES_NEEDED",
      [NETOPT_6LO_IPHC]              = "NETOPT_6LO_IPHC",
      [NETOPT_NUMOF]                 = "NETOPT_NUMOF",
  };
  
  const char *netopt2str(netopt_t opt)
  {
      if (opt >= NETOPT_NUMOF) {
          return "unknown";
      }
      else {
          const char *tmp = _netopt_strmap[opt];
          return tmp ? tmp : "unknown";
      }
  }
  
  #ifdef __cplusplus
  }
  #endif