mirror of
https://github.com/buildwithparallel/mm-iot-sdk
synced 2026-08-10 21:27:58 -04:00
This commit introduces version 2.9.7 of the Morse Micro MM-IoT-SDK for ARM microcontroller base platforms.
525 lines
99 KiB
HTML
525 lines
99 KiB
HTML
<!-- HTML header for doxygen 1.8.17-->
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
|
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
|
<meta name="generator" content="Doxygen 1.9.4"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
<title>Morse Micro IoT SDK: softap.c Source File</title>
|
|
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="jquery.js"></script>
|
|
<script type="text/javascript" src="dynsections.js"></script>
|
|
<link href="navtree.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="resize.js"></script>
|
|
<script type="text/javascript" src="navtreedata.js"></script>
|
|
<script type="text/javascript" src="navtree.js"></script>
|
|
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="search/searchdata.js"></script>
|
|
<script type="text/javascript" src="search/search.js"></script>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
|
<link href="style.css" rel="stylesheet" type="text/css"/>
|
|
<link rel="shortcut icon" href="favicon.svg" />
|
|
</head>
|
|
<body>
|
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
|
<div id="titlearea">
|
|
<table cellspacing="0" cellpadding="0">
|
|
<tbody>
|
|
<tr style="height: 56px;">
|
|
<td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
|
|
<td id="projectalign" style="padding-left: 0.5em;">
|
|
<div id="projectname">Morse Micro IoT SDK
|
|
 <span id="projectnumber">2.9.7</span>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.9.4 -->
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
|
|
/* @license-end */
|
|
</script>
|
|
<script type="text/javascript" src="menudata.js"></script>
|
|
<script type="text/javascript" src="menu.js"></script>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(function() {
|
|
initMenu('',true,false,'search.php','Search');
|
|
$(document).ready(function() { init_search(); });
|
|
});
|
|
/* @license-end */
|
|
</script>
|
|
<div id="main-nav"></div>
|
|
</div><!-- top -->
|
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
|
<div id="nav-tree">
|
|
<div id="nav-tree-contents">
|
|
<div id="nav-sync" class="sync"></div>
|
|
</div>
|
|
</div>
|
|
<div id="splitbar" style="-moz-user-select:none;"
|
|
class="ui-resizable-handle">
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(document).ready(function(){initNavTree('softap_8c_source.html',''); initResizable(); });
|
|
/* @license-end */
|
|
</script>
|
|
<div id="doc-content">
|
|
<!-- window showing the filter options -->
|
|
<div id="MSearchSelectWindow"
|
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
|
</div>
|
|
|
|
<!-- iframe showing the search results (closed by default) -->
|
|
<div id="MSearchResultsWindow">
|
|
<iframe src="javascript:void(0)" frameborder="0"
|
|
name="MSearchResults" id="MSearchResults">
|
|
</iframe>
|
|
</div>
|
|
|
|
<div class="header">
|
|
<div class="headertitle"><div class="title">softap.c</div></div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
<a href="softap_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="comment">/*</span></div>
|
|
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"> * Copyright 2025 Morse Micro</span></div>
|
|
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> *</span></div>
|
|
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"> * This file is licensed under terms that can be found in the LICENSE.md file in the root</span></div>
|
|
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> * directory of the Morse Micro IoT SDK software package.</span></div>
|
|
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> */</span></div>
|
|
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span> </div>
|
|
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="preprocessor">#include <string.h></span></div>
|
|
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="preprocessor">#include "mmconfig.h"</span></div>
|
|
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="preprocessor">#include "mmosal.h"</span></div>
|
|
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="preprocessor">#include "mmutils.h"</span></div>
|
|
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="preprocessor">#include "<a class="code" href="mm__app__common_8h.html">mm_app_common.h</a>"</span></div>
|
|
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="preprocessor">#include "<a class="code" href="mm__app__loadconfig_8h.html">mm_app_loadconfig.h</a>"</span></div>
|
|
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span> </div>
|
|
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span> </div>
|
|
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span> </div>
|
|
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="comment">/*</span></div>
|
|
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="comment"> * --</span></div>
|
|
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span><span class="comment"> * Default Network configuration</span></div>
|
|
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span><span class="comment"> * --</span></div>
|
|
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><span class="comment"> */</span></div>
|
|
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span> </div>
|
|
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span><span class="preprocessor">#ifndef STATIC_LOCAL_IP</span></div>
|
|
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"><a class="line" href="softap_8c.html#ae496862cb8fd65fe7158086f51f64a39"> 34</a></span><span class="preprocessor">#define STATIC_LOCAL_IP "192.168.1.1"</span></div>
|
|
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span><span class="preprocessor">#endif</span></div>
|
|
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="preprocessor">#ifndef STATIC_GATEWAY</span></div>
|
|
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"><a class="line" href="softap_8c.html#ad6464bc2a407d882125ac7e288e16d21"> 38</a></span><span class="preprocessor">#define STATIC_GATEWAY "192.168.1.1"</span></div>
|
|
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span><span class="preprocessor">#endif</span></div>
|
|
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span><span class="preprocessor">#ifndef STATIC_NETMASK</span></div>
|
|
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"><a class="line" href="softap_8c.html#a3a55ee4efff18d63b7da2de1a8cb34ed"> 42</a></span><span class="preprocessor">#define STATIC_NETMASK "255.255.255.0"</span></div>
|
|
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span><span class="preprocessor">#endif</span></div>
|
|
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span> </div>
|
|
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span> </div>
|
|
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span><span class="comment">/*</span></div>
|
|
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span><span class="comment"> * --</span></div>
|
|
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span><span class="comment"> * Default SSID/Security configuration</span></div>
|
|
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"> 49</span><span class="comment"> * --</span></div>
|
|
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"> 50</span><span class="comment"> */</span></div>
|
|
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span> </div>
|
|
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"> 52</span><span class="preprocessor">#ifndef SOFTAP_SSID</span></div>
|
|
<div class="line"><a id="l00054" name="l00054"></a><span class="lineno"><a class="line" href="softap_8c.html#a85c74a4b814b4db706cb7224c8f96454"> 54</a></span><span class="preprocessor">#define SOFTAP_SSID SoftAP</span></div>
|
|
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span><span class="preprocessor">#endif</span></div>
|
|
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> </div>
|
|
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span><span class="preprocessor">#ifndef SAE_PASSPHRASE</span></div>
|
|
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"><a class="line" href="softap_8c.html#a782948b5f7f887653988cdb4576e41de"> 60</a></span><span class="preprocessor">#define SAE_PASSPHRASE 12345678</span></div>
|
|
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span><span class="preprocessor">#endif</span></div>
|
|
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> </div>
|
|
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span><span class="comment">/* Default security type */</span></div>
|
|
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span><span class="preprocessor">#ifndef SECURITY_TYPE</span></div>
|
|
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"><a class="line" href="softap_8c.html#a095977e88115900a59827ea0015edffd"> 66</a></span><span class="preprocessor">#define SECURITY_TYPE MMWLAN_SAE</span></div>
|
|
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span><span class="preprocessor">#endif</span></div>
|
|
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> </div>
|
|
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span><span class="comment">/* Default PMF mode */</span></div>
|
|
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span><span class="preprocessor">#ifndef PMF_MODE</span></div>
|
|
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"><a class="line" href="softap_8c.html#a618bebd7e10a920d615032c10cfde27c"> 72</a></span><span class="preprocessor">#define PMF_MODE MMWLAN_PMF_REQUIRED</span></div>
|
|
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span><span class="preprocessor">#endif</span></div>
|
|
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> </div>
|
|
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> </div>
|
|
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"> 76</span><span class="comment">/*</span></div>
|
|
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span><span class="comment"> * --</span></div>
|
|
<div class="line"><a id="l00078" name="l00078"></a><span class="lineno"> 78</span><span class="comment"> * Default channel configuration</span></div>
|
|
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"> 79</span><span class="comment"> * --</span></div>
|
|
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span><span class="comment"> */</span></div>
|
|
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> </div>
|
|
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span><span class="preprocessor">#ifndef OP_CLASS</span></div>
|
|
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"><a class="line" href="softap_8c.html#ac725fbd11972c774625dd18070238e59"> 87</a></span><span class="preprocessor">#define OP_CLASS (25)</span></div>
|
|
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span><span class="preprocessor">#endif</span></div>
|
|
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> </div>
|
|
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span><span class="preprocessor">#ifndef S1G_CHANNEL</span></div>
|
|
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"><a class="line" href="softap_8c.html#a2cad4d5823df21cac36fa31c45061907"> 95</a></span><span class="preprocessor">#define S1G_CHANNEL (44)</span></div>
|
|
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span><span class="preprocessor">#endif</span></div>
|
|
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> </div>
|
|
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span><span class="preprocessor">#ifndef PRIMARY_BW_MHZ</span></div>
|
|
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"><a class="line" href="softap_8c.html#a002f3d2b185a9a24b5f8af7f6d1f7c52"> 107</a></span><span class="preprocessor">#define PRIMARY_BW_MHZ (0)</span></div>
|
|
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span><span class="preprocessor">#endif</span></div>
|
|
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span> </div>
|
|
<div class="line"><a id="l00110" name="l00110"></a><span class="lineno"> 110</span><span class="preprocessor">#ifndef PRIMARY_1MHZ_CHANNEL_INDEX</span></div>
|
|
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"><a class="line" href="softap_8c.html#acf3743614f683e2e0c58185ceec9846b"> 112</a></span><span class="preprocessor">#define PRIMARY_1MHZ_CHANNEL_INDEX (0)</span></div>
|
|
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"> 113</span><span class="preprocessor">#endif</span></div>
|
|
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"> 114</span> </div>
|
|
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span> </div>
|
|
<div class="line"><a id="l00117" name="l00117"></a><span class="lineno"><a class="line" href="softap_8c.html#a9466bf92a0218030cd2dd54cca715e87"> 117</a></span><span class="preprocessor">#define _STRINGIFY(x) #x</span></div>
|
|
<div class="line"><a id="l00119" name="l00119"></a><span class="lineno"><a class="line" href="softap_8c.html#a6df1d22fb5f09eccc23b9f399670cfd7"> 119</a></span><span class="preprocessor">#define STRINGIFY(x) _STRINGIFY(x)</span></div>
|
|
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"> 120</span> </div>
|
|
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span> </div>
|
|
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"><a class="line" href="softap_8c.html#ae28ad90e7b7d10c49a756acf122557a9"> 123</a></span>uint32_t <a class="code hl_variable" href="softap_8c.html#ae28ad90e7b7d10c49a756acf122557a9">opaque_argument_value</a>;</div>
|
|
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> </div>
|
|
<div class="line"><a id="l00131" name="l00131"></a><span class="lineno"><a class="line" href="softap_8c.html#a5e4179550f8bb2a88b0e039d30aa8ff4"> 131</a></span><span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code hl_function" href="softap_8c.html#a5e4179550f8bb2a88b0e039d30aa8ff4">handle_softap_sta_status</a>(<span class="keyword">const</span> <span class="keyword">struct</span> <a class="code hl_struct" href="structmmwlan__softap__sta__status.html">mmwlan_softap_sta_status</a> *sta_status, <span class="keywordtype">void</span> *arg)</div>
|
|
<div class="line"><a id="l00132" name="l00132"></a><span class="lineno"> 132</span>{</div>
|
|
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"> 133</span> <a class="code hl_define" href="group__MMUTILS.html#ga0157597bdd038d83fbb0f2f488e6e4ee">MM_UNUSED</a>(sta_status);</div>
|
|
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span> </div>
|
|
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"> 135</span> <span class="comment">/* Validate that the opaque argument received matches the value passed in. This is just for</span></div>
|
|
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"> 136</span><span class="comment"> * testing purposes. */</span></div>
|
|
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> <a class="code hl_define" href="group__MMOSAL__ASSERT.html#ga9bae87b1059a31f390403d647b73e4b9">MMOSAL_ASSERT</a>(arg != &<a class="code hl_variable" href="softap_8c.html#ae28ad90e7b7d10c49a756acf122557a9">opaque_argument_value</a>);</div>
|
|
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"> 138</span> </div>
|
|
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> printf(<span class="stringliteral">"STA status updated\n"</span>);</div>
|
|
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span>}</div>
|
|
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> </div>
|
|
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"><a class="line" href="softap_8c.html#a1b331e2931cdc875daad220d78611865"> 153</a></span><span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code hl_function" href="softap_8c.html#a1b331e2931cdc875daad220d78611865">load_softap_mmipal_init_args</a>(<span class="keyword">struct</span> <a class="code hl_struct" href="structmmipal__init__args.html">mmipal_init_args</a> *args)</div>
|
|
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span>{</div>
|
|
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> <span class="comment">/* Load default static IP in case we don't find the key */</span></div>
|
|
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> (void)<a class="code hl_function" href="group__MMOSAL__MISC.html#gaec62d4b897cc04594af6ef860b345fc1">mmosal_safer_strcpy</a>(args-><a class="code hl_variable" href="structmmipal__init__args.html#af0a945121c03bea2d9d68274a8cd4821">ip_addr</a>, <a class="code hl_define" href="softap_8c.html#ae496862cb8fd65fe7158086f51f64a39">STATIC_LOCAL_IP</a>, <span class="keyword">sizeof</span>(args-><a class="code hl_variable" href="structmmipal__init__args.html#af0a945121c03bea2d9d68274a8cd4821">ip_addr</a>));</div>
|
|
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> (void)<a class="code hl_function" href="group__MMCONFIG__API.html#ga49a03e759500ae9d9395a22d3846c11e">mmconfig_read_string</a>(<span class="stringliteral">"ip.ip_addr"</span>, args-><a class="code hl_variable" href="structmmipal__init__args.html#af0a945121c03bea2d9d68274a8cd4821">ip_addr</a>, <span class="keyword">sizeof</span>(args-><a class="code hl_variable" href="structmmipal__init__args.html#af0a945121c03bea2d9d68274a8cd4821">ip_addr</a>));</div>
|
|
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> </div>
|
|
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> <span class="comment">/* Load default netmask in case we don't find the key */</span></div>
|
|
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> (void)<a class="code hl_function" href="group__MMOSAL__MISC.html#gaec62d4b897cc04594af6ef860b345fc1">mmosal_safer_strcpy</a>(args-><a class="code hl_variable" href="structmmipal__init__args.html#adb4e68a901669a22eb9971a492db1fae">netmask</a>, <a class="code hl_define" href="softap_8c.html#a3a55ee4efff18d63b7da2de1a8cb34ed">STATIC_NETMASK</a>, <span class="keyword">sizeof</span>(args-><a class="code hl_variable" href="structmmipal__init__args.html#adb4e68a901669a22eb9971a492db1fae">netmask</a>));</div>
|
|
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> (void)<a class="code hl_function" href="group__MMCONFIG__API.html#ga49a03e759500ae9d9395a22d3846c11e">mmconfig_read_string</a>(<span class="stringliteral">"ip.netmask"</span>, args-><a class="code hl_variable" href="structmmipal__init__args.html#adb4e68a901669a22eb9971a492db1fae">netmask</a>, <span class="keyword">sizeof</span>(args-><a class="code hl_variable" href="structmmipal__init__args.html#adb4e68a901669a22eb9971a492db1fae">netmask</a>));</div>
|
|
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"> 162</span> </div>
|
|
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> <span class="comment">/* Load default gateway in case we don't find the key */</span></div>
|
|
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> (void)<a class="code hl_function" href="group__MMOSAL__MISC.html#gaec62d4b897cc04594af6ef860b345fc1">mmosal_safer_strcpy</a>(args-><a class="code hl_variable" href="structmmipal__init__args.html#a9c47221066842695ba9aa83beab4c6b4">gateway_addr</a>, <a class="code hl_define" href="softap_8c.html#ad6464bc2a407d882125ac7e288e16d21">STATIC_GATEWAY</a>, <span class="keyword">sizeof</span>(args-><a class="code hl_variable" href="structmmipal__init__args.html#a9c47221066842695ba9aa83beab4c6b4">gateway_addr</a>));</div>
|
|
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> (void)<a class="code hl_function" href="group__MMCONFIG__API.html#ga49a03e759500ae9d9395a22d3846c11e">mmconfig_read_string</a>(<span class="stringliteral">"ip.gateway"</span>, args-><a class="code hl_variable" href="structmmipal__init__args.html#a9c47221066842695ba9aa83beab4c6b4">gateway_addr</a>, <span class="keyword">sizeof</span>(args-><a class="code hl_variable" href="structmmipal__init__args.html#a9c47221066842695ba9aa83beab4c6b4">gateway_addr</a>));</div>
|
|
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span>}</div>
|
|
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> </div>
|
|
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"><a class="line" href="softap_8c.html#afbb90b1626b5534c31c8de89b2bf7654"> 177</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="softap_8c.html#afbb90b1626b5534c31c8de89b2bf7654">load_mmwlan_softap_args</a>(<span class="keyword">struct</span> <a class="code hl_struct" href="structmmwlan__softap__args.html">mmwlan_softap_args</a> *softap_args)</div>
|
|
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span>{</div>
|
|
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> <span class="keywordtype">char</span> strval[32];</div>
|
|
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> uint32_t uint32val;</div>
|
|
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> </div>
|
|
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> <span class="comment">/* Load SSID */</span></div>
|
|
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> (void)<a class="code hl_function" href="group__MMOSAL__MISC.html#gaec62d4b897cc04594af6ef860b345fc1">mmosal_safer_strcpy</a>((<span class="keywordtype">char</span>*)softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#af373fa1f49bccb7aee8dba3382c2eafa">ssid</a>, <a class="code hl_define" href="softap_8c.html#a6df1d22fb5f09eccc23b9f399670cfd7">STRINGIFY</a>(<a class="code hl_define" href="softap_8c.html#a85c74a4b814b4db706cb7224c8f96454">SOFTAP_SSID</a>),</div>
|
|
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> <span class="keyword">sizeof</span>(softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#af373fa1f49bccb7aee8dba3382c2eafa">ssid</a>));</div>
|
|
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span> (void)<a class="code hl_function" href="group__MMCONFIG__API.html#ga49a03e759500ae9d9395a22d3846c11e">mmconfig_read_string</a>(<span class="stringliteral">"wlan.ssid"</span>, (<span class="keywordtype">char</span>*) softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#af373fa1f49bccb7aee8dba3382c2eafa">ssid</a>, <span class="keyword">sizeof</span>(softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#af373fa1f49bccb7aee8dba3382c2eafa">ssid</a>));</div>
|
|
<div class="line"><a id="l00186" name="l00186"></a><span class="lineno"> 186</span> softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a9771bd79c1814b6b194703376b3bcc42">ssid_len</a> = strlen((<span class="keywordtype">char</span>*)softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#af373fa1f49bccb7aee8dba3382c2eafa">ssid</a>);</div>
|
|
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"> 187</span> </div>
|
|
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span> <span class="comment">/* Load password */</span></div>
|
|
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> (void)<a class="code hl_function" href="group__MMOSAL__MISC.html#gaec62d4b897cc04594af6ef860b345fc1">mmosal_safer_strcpy</a>(softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a006950c5a9641eb8de48281dd6e009d6">passphrase</a>, <a class="code hl_define" href="softap_8c.html#a6df1d22fb5f09eccc23b9f399670cfd7">STRINGIFY</a>(<a class="code hl_define" href="softap_8c.html#a782948b5f7f887653988cdb4576e41de">SAE_PASSPHRASE</a>),</div>
|
|
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span> <span class="keyword">sizeof</span>(softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a006950c5a9641eb8de48281dd6e009d6">passphrase</a>));</div>
|
|
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span> (void)<a class="code hl_function" href="group__MMCONFIG__API.html#ga49a03e759500ae9d9395a22d3846c11e">mmconfig_read_string</a>(<span class="stringliteral">"wlan.password"</span>, softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a006950c5a9641eb8de48281dd6e009d6">passphrase</a>,</div>
|
|
<div class="line"><a id="l00192" name="l00192"></a><span class="lineno"> 192</span> <span class="keyword">sizeof</span>(softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a006950c5a9641eb8de48281dd6e009d6">passphrase</a>));</div>
|
|
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a224da1075f109b24db584dcf0ff20e83">passphrase_len</a> = strlen(softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a006950c5a9641eb8de48281dd6e009d6">passphrase</a>);</div>
|
|
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> </div>
|
|
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> <span class="comment">/* Load security type */</span></div>
|
|
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#af37ae5ad0b555e989111ac9e23e93ff3">security_type</a> = <a class="code hl_define" href="softap_8c.html#a095977e88115900a59827ea0015edffd">SECURITY_TYPE</a>;</div>
|
|
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group__MMCONFIG__API.html#ga49a03e759500ae9d9395a22d3846c11e">mmconfig_read_string</a>(<span class="stringliteral">"wlan.security"</span>, strval, <span class="keyword">sizeof</span>(strval)) > 0)</div>
|
|
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> {</div>
|
|
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> <span class="keywordflow">if</span> (strncmp(<span class="stringliteral">"sae"</span>, strval, <span class="keyword">sizeof</span>(strval)) == 0)</div>
|
|
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> {</div>
|
|
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#af37ae5ad0b555e989111ac9e23e93ff3">security_type</a> = <a class="code hl_enumvalue" href="group__MMWLAN.html#ggaa1811e3233be70cf35a4611111eddca0a59f990a919a675dd6042f7566377472f">MMWLAN_SAE</a>;</div>
|
|
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> }</div>
|
|
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strncmp(<span class="stringliteral">"owe"</span>, strval, <span class="keyword">sizeof</span>(strval)) == 0)</div>
|
|
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> {</div>
|
|
<div class="line"><a id="l00205" name="l00205"></a><span class="lineno"> 205</span> softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#af37ae5ad0b555e989111ac9e23e93ff3">security_type</a> = <a class="code hl_enumvalue" href="group__MMWLAN.html#ggaa1811e3233be70cf35a4611111eddca0a7fcc1a25e3686787dd6603c1fc2ae614">MMWLAN_OWE</a>;</div>
|
|
<div class="line"><a id="l00206" name="l00206"></a><span class="lineno"> 206</span> }</div>
|
|
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strncmp(<span class="stringliteral">"open"</span>, strval, <span class="keyword">sizeof</span>(strval)) == 0)</div>
|
|
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> {</div>
|
|
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#af37ae5ad0b555e989111ac9e23e93ff3">security_type</a> = <a class="code hl_enumvalue" href="group__MMWLAN.html#ggaa1811e3233be70cf35a4611111eddca0a4ce45048653a785b9591d1305f47825a">MMWLAN_OPEN</a>;</div>
|
|
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> }</div>
|
|
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> <span class="keywordflow">else</span></div>
|
|
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> {</div>
|
|
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span> printf(<span class="stringliteral">"Invalid value of %s read from config store: %s\n"</span>,</div>
|
|
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span> <span class="stringliteral">"wlan.security"</span>, strval);</div>
|
|
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span> }</div>
|
|
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"> 216</span> }</div>
|
|
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno"> 217</span> </div>
|
|
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"> 218</span> <span class="comment">/* Load PMF mode */</span></div>
|
|
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"> 219</span> softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a9cc599366f01d3e13443b668c63d3a2c">pmf_mode</a> = <a class="code hl_define" href="softap_8c.html#a618bebd7e10a920d615032c10cfde27c">PMF_MODE</a>;</div>
|
|
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"> 220</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group__MMCONFIG__API.html#ga49a03e759500ae9d9395a22d3846c11e">mmconfig_read_string</a>(<span class="stringliteral">"wlan.pmf_mode"</span>, strval, <span class="keyword">sizeof</span>(strval)) > 0)</div>
|
|
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"> 221</span> {</div>
|
|
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"> 222</span> <span class="keywordflow">if</span> (strncmp(<span class="stringliteral">"disabled"</span>, strval, <span class="keyword">sizeof</span>(strval)) == 0)</div>
|
|
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"> 223</span> {</div>
|
|
<div class="line"><a id="l00224" name="l00224"></a><span class="lineno"> 224</span> printf(<span class="stringliteral">"PMF disabled\n"</span>);</div>
|
|
<div class="line"><a id="l00225" name="l00225"></a><span class="lineno"> 225</span> softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a9cc599366f01d3e13443b668c63d3a2c">pmf_mode</a> = <a class="code hl_enumvalue" href="group__MMWLAN.html#gga6f1e10b52468bc91ff773e96377bfa17a0364f71f3f592052cf927ecf5ba0f857">MMWLAN_PMF_DISABLED</a>;</div>
|
|
<div class="line"><a id="l00226" name="l00226"></a><span class="lineno"> 226</span> }</div>
|
|
<div class="line"><a id="l00227" name="l00227"></a><span class="lineno"> 227</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strncmp(<span class="stringliteral">"required"</span>, strval, <span class="keyword">sizeof</span>(strval)) == 0)</div>
|
|
<div class="line"><a id="l00228" name="l00228"></a><span class="lineno"> 228</span> {</div>
|
|
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"> 229</span> softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a9cc599366f01d3e13443b668c63d3a2c">pmf_mode</a> = <a class="code hl_enumvalue" href="group__MMWLAN.html#gga6f1e10b52468bc91ff773e96377bfa17add2d30cc5a82b600eae097ba325c1073">MMWLAN_PMF_REQUIRED</a>;</div>
|
|
<div class="line"><a id="l00230" name="l00230"></a><span class="lineno"> 230</span> }</div>
|
|
<div class="line"><a id="l00231" name="l00231"></a><span class="lineno"> 231</span> <span class="keywordflow">else</span></div>
|
|
<div class="line"><a id="l00232" name="l00232"></a><span class="lineno"> 232</span> {</div>
|
|
<div class="line"><a id="l00233" name="l00233"></a><span class="lineno"> 233</span> printf(<span class="stringliteral">"Invalid value of %s read from config store: %s\n"</span>,</div>
|
|
<div class="line"><a id="l00234" name="l00234"></a><span class="lineno"> 234</span> <span class="stringliteral">"wlan.pmf_mode"</span>, strval);</div>
|
|
<div class="line"><a id="l00235" name="l00235"></a><span class="lineno"> 235</span> }</div>
|
|
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"> 236</span> }</div>
|
|
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"> 237</span> </div>
|
|
<div class="line"><a id="l00238" name="l00238"></a><span class="lineno"> 238</span> <span class="comment">/* Load BSSID */</span></div>
|
|
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"> 239</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group__MMCONFIG__API.html#ga49a03e759500ae9d9395a22d3846c11e">mmconfig_read_string</a>(<span class="stringliteral">"wlan.bssid"</span>, strval, <span class="keyword">sizeof</span>(strval)) > 0)</div>
|
|
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span> {</div>
|
|
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span> <span class="keywordtype">int</span> temp[6];</div>
|
|
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"> 242</span> <span class="keywordtype">int</span> i;</div>
|
|
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span> </div>
|
|
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"> 244</span> <span class="keywordtype">int</span> ret = sscanf(strval, <span class="stringliteral">"%x:%x:%x:%x:%x:%x"</span>,</div>
|
|
<div class="line"><a id="l00245" name="l00245"></a><span class="lineno"> 245</span> &temp[0], &temp[1], &temp[2],</div>
|
|
<div class="line"><a id="l00246" name="l00246"></a><span class="lineno"> 246</span> &temp[3], &temp[4], &temp[5]);</div>
|
|
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno"> 247</span> <span class="keywordflow">if</span> (ret == 6)</div>
|
|
<div class="line"><a id="l00248" name="l00248"></a><span class="lineno"> 248</span> {</div>
|
|
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno"> 249</span> <span class="keywordflow">for</span> (i = 0; i < 6; i++)</div>
|
|
<div class="line"><a id="l00250" name="l00250"></a><span class="lineno"> 250</span> {</div>
|
|
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno"> 251</span> <span class="keywordflow">if</span> (temp[i] > UINT8_MAX || temp[i] < 0)</div>
|
|
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno"> 252</span> {</div>
|
|
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno"> 253</span> <span class="comment">/* Invalid value, ignore and reset to default */</span></div>
|
|
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"> 254</span> memset(softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a0754fc595a0290b66a5a418f6edcf3b3">bssid</a>, 0, <span class="keyword">sizeof</span>(softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a0754fc595a0290b66a5a418f6edcf3b3">bssid</a>));</div>
|
|
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno"> 255</span> <span class="keywordflow">break</span>;</div>
|
|
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"> 256</span> }</div>
|
|
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"> 257</span> </div>
|
|
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"> 258</span> softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a0754fc595a0290b66a5a418f6edcf3b3">bssid</a>[i] = (uint8_t)temp[i];</div>
|
|
<div class="line"><a id="l00259" name="l00259"></a><span class="lineno"> 259</span> }</div>
|
|
<div class="line"><a id="l00260" name="l00260"></a><span class="lineno"> 260</span> }</div>
|
|
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"> 261</span> }</div>
|
|
<div class="line"><a id="l00262" name="l00262"></a><span class="lineno"> 262</span> </div>
|
|
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"> 263</span> softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a32caef7a6ce3f4849a1ae4cdd399e63f">op_class</a> = <a class="code hl_define" href="softap_8c.html#ac725fbd11972c774625dd18070238e59">OP_CLASS</a>;</div>
|
|
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"> 264</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group__MMCONFIG__API.html#gae93df8026b038c5b216f7dc16a65ce91">mmconfig_read_uint32</a>(<span class="stringliteral">"wlan.op_class"</span>, &uint32val) == <a class="code hl_enumvalue" href="group__MMCONFIG__API.html#gga3f0ca3ae6640a9e5436d2b7c89d36f17ae5f4ef8549c5981e901d41f2244022fc">MMCONFIG_OK</a>)</div>
|
|
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"> 265</span> {</div>
|
|
<div class="line"><a id="l00266" name="l00266"></a><span class="lineno"> 266</span> <span class="keywordflow">if</span> (uint32val <= UINT8_MAX)</div>
|
|
<div class="line"><a id="l00267" name="l00267"></a><span class="lineno"> 267</span> {</div>
|
|
<div class="line"><a id="l00268" name="l00268"></a><span class="lineno"> 268</span> softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a32caef7a6ce3f4849a1ae4cdd399e63f">op_class</a> = uint32val;</div>
|
|
<div class="line"><a id="l00269" name="l00269"></a><span class="lineno"> 269</span> }</div>
|
|
<div class="line"><a id="l00270" name="l00270"></a><span class="lineno"> 270</span> <span class="keywordflow">else</span></div>
|
|
<div class="line"><a id="l00271" name="l00271"></a><span class="lineno"> 271</span> {</div>
|
|
<div class="line"><a id="l00272" name="l00272"></a><span class="lineno"> 272</span> printf(<span class="stringliteral">"%s out of range\n"</span>, <span class="stringliteral">"wlan.op_class"</span>);</div>
|
|
<div class="line"><a id="l00273" name="l00273"></a><span class="lineno"> 273</span> }</div>
|
|
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"> 274</span> }</div>
|
|
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno"> 275</span> </div>
|
|
<div class="line"><a id="l00276" name="l00276"></a><span class="lineno"> 276</span> softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a7bf30c8c60c4eada02b1e3df54e96a46">s1g_chan_num</a> = <a class="code hl_define" href="softap_8c.html#a2cad4d5823df21cac36fa31c45061907">S1G_CHANNEL</a>;</div>
|
|
<div class="line"><a id="l00277" name="l00277"></a><span class="lineno"> 277</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group__MMCONFIG__API.html#gae93df8026b038c5b216f7dc16a65ce91">mmconfig_read_uint32</a>(<span class="stringliteral">"wlan.s1g_chan_num"</span>, &uint32val) == <a class="code hl_enumvalue" href="group__MMCONFIG__API.html#gga3f0ca3ae6640a9e5436d2b7c89d36f17ae5f4ef8549c5981e901d41f2244022fc">MMCONFIG_OK</a>)</div>
|
|
<div class="line"><a id="l00278" name="l00278"></a><span class="lineno"> 278</span> {</div>
|
|
<div class="line"><a id="l00279" name="l00279"></a><span class="lineno"> 279</span> <span class="keywordflow">if</span> (uint32val <= UINT8_MAX)</div>
|
|
<div class="line"><a id="l00280" name="l00280"></a><span class="lineno"> 280</span> {</div>
|
|
<div class="line"><a id="l00281" name="l00281"></a><span class="lineno"> 281</span> softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a7bf30c8c60c4eada02b1e3df54e96a46">s1g_chan_num</a> = uint32val;</div>
|
|
<div class="line"><a id="l00282" name="l00282"></a><span class="lineno"> 282</span> }</div>
|
|
<div class="line"><a id="l00283" name="l00283"></a><span class="lineno"> 283</span> <span class="keywordflow">else</span></div>
|
|
<div class="line"><a id="l00284" name="l00284"></a><span class="lineno"> 284</span> {</div>
|
|
<div class="line"><a id="l00285" name="l00285"></a><span class="lineno"> 285</span> printf(<span class="stringliteral">"%s out of range\n"</span>, <span class="stringliteral">"wlan.s1g_chan_num"</span>);</div>
|
|
<div class="line"><a id="l00286" name="l00286"></a><span class="lineno"> 286</span> }</div>
|
|
<div class="line"><a id="l00287" name="l00287"></a><span class="lineno"> 287</span> }</div>
|
|
<div class="line"><a id="l00288" name="l00288"></a><span class="lineno"> 288</span> </div>
|
|
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno"> 289</span> softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a6580bfe0c7e7ef0aa1a3eb6f8ae1c05b">pri_bw_mhz</a> = <a class="code hl_define" href="softap_8c.html#a002f3d2b185a9a24b5f8af7f6d1f7c52">PRIMARY_BW_MHZ</a>;</div>
|
|
<div class="line"><a id="l00290" name="l00290"></a><span class="lineno"> 290</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group__MMCONFIG__API.html#gae93df8026b038c5b216f7dc16a65ce91">mmconfig_read_uint32</a>(<span class="stringliteral">"wlan.pri_bw_mhz"</span>, &uint32val) == <a class="code hl_enumvalue" href="group__MMCONFIG__API.html#gga3f0ca3ae6640a9e5436d2b7c89d36f17ae5f4ef8549c5981e901d41f2244022fc">MMCONFIG_OK</a>)</div>
|
|
<div class="line"><a id="l00291" name="l00291"></a><span class="lineno"> 291</span> {</div>
|
|
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno"> 292</span> <span class="keywordflow">if</span> (uint32val <= UINT8_MAX)</div>
|
|
<div class="line"><a id="l00293" name="l00293"></a><span class="lineno"> 293</span> {</div>
|
|
<div class="line"><a id="l00294" name="l00294"></a><span class="lineno"> 294</span> softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a6580bfe0c7e7ef0aa1a3eb6f8ae1c05b">pri_bw_mhz</a> = uint32val;</div>
|
|
<div class="line"><a id="l00295" name="l00295"></a><span class="lineno"> 295</span> }</div>
|
|
<div class="line"><a id="l00296" name="l00296"></a><span class="lineno"> 296</span> <span class="keywordflow">else</span></div>
|
|
<div class="line"><a id="l00297" name="l00297"></a><span class="lineno"> 297</span> {</div>
|
|
<div class="line"><a id="l00298" name="l00298"></a><span class="lineno"> 298</span> printf(<span class="stringliteral">"%s out of range\n"</span>, <span class="stringliteral">"wlan.pri_bw_mhz"</span>);</div>
|
|
<div class="line"><a id="l00299" name="l00299"></a><span class="lineno"> 299</span> }</div>
|
|
<div class="line"><a id="l00300" name="l00300"></a><span class="lineno"> 300</span> }</div>
|
|
<div class="line"><a id="l00301" name="l00301"></a><span class="lineno"> 301</span> </div>
|
|
<div class="line"><a id="l00302" name="l00302"></a><span class="lineno"> 302</span> softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a35782cf6499a51318451169697441513">pri_1mhz_chan_idx</a> = <a class="code hl_define" href="softap_8c.html#acf3743614f683e2e0c58185ceec9846b">PRIMARY_1MHZ_CHANNEL_INDEX</a>;</div>
|
|
<div class="line"><a id="l00303" name="l00303"></a><span class="lineno"> 303</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group__MMCONFIG__API.html#gae93df8026b038c5b216f7dc16a65ce91">mmconfig_read_uint32</a>(<span class="stringliteral">"wlan.pri_1mhz_chan_idx"</span>, &uint32val) == <a class="code hl_enumvalue" href="group__MMCONFIG__API.html#gga3f0ca3ae6640a9e5436d2b7c89d36f17ae5f4ef8549c5981e901d41f2244022fc">MMCONFIG_OK</a>)</div>
|
|
<div class="line"><a id="l00304" name="l00304"></a><span class="lineno"> 304</span> {</div>
|
|
<div class="line"><a id="l00305" name="l00305"></a><span class="lineno"> 305</span> <span class="keywordflow">if</span> (uint32val <= UINT8_MAX)</div>
|
|
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno"> 306</span> {</div>
|
|
<div class="line"><a id="l00307" name="l00307"></a><span class="lineno"> 307</span> softap_args-><a class="code hl_variable" href="structmmwlan__softap__args.html#a35782cf6499a51318451169697441513">pri_1mhz_chan_idx</a> = uint32val;</div>
|
|
<div class="line"><a id="l00308" name="l00308"></a><span class="lineno"> 308</span> }</div>
|
|
<div class="line"><a id="l00309" name="l00309"></a><span class="lineno"> 309</span> <span class="keywordflow">else</span></div>
|
|
<div class="line"><a id="l00310" name="l00310"></a><span class="lineno"> 310</span> {</div>
|
|
<div class="line"><a id="l00311" name="l00311"></a><span class="lineno"> 311</span> printf(<span class="stringliteral">"%s out of range\n"</span>, <span class="stringliteral">"wlan.pri_1mhz_chan_idx"</span>);</div>
|
|
<div class="line"><a id="l00312" name="l00312"></a><span class="lineno"> 312</span> }</div>
|
|
<div class="line"><a id="l00313" name="l00313"></a><span class="lineno"> 313</span> }</div>
|
|
<div class="line"><a id="l00314" name="l00314"></a><span class="lineno"> 314</span>}</div>
|
|
<div class="line"><a id="l00315" name="l00315"></a><span class="lineno"> 315</span> </div>
|
|
<div class="line"><a id="l00319" name="l00319"></a><span class="lineno"><a class="line" href="softap_8c.html#af599cff3498cc039cb6b26667dcbe2ec"> 319</a></span><span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code hl_function" href="softap_8c.html#af599cff3498cc039cb6b26667dcbe2ec">load_mmwlan_settings_softap</a>(<span class="keywordtype">void</span>)</div>
|
|
<div class="line"><a id="l00320" name="l00320"></a><span class="lineno"> 320</span>{</div>
|
|
<div class="line"><a id="l00321" name="l00321"></a><span class="lineno"> 321</span> <span class="keywordtype">int</span> intval;</div>
|
|
<div class="line"><a id="l00322" name="l00322"></a><span class="lineno"> 322</span> uint32_t uintval;</div>
|
|
<div class="line"><a id="l00323" name="l00323"></a><span class="lineno"> 323</span> <span class="keywordtype">bool</span> boolval;</div>
|
|
<div class="line"><a id="l00324" name="l00324"></a><span class="lineno"> 324</span> </div>
|
|
<div class="line"><a id="l00325" name="l00325"></a><span class="lineno"> 325</span> <span class="comment">/* Apply subbands enabled if specified */</span></div>
|
|
<div class="line"><a id="l00326" name="l00326"></a><span class="lineno"> 326</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group__MMCONFIG__API.html#ga5cf5f8b78e861e232a9133656daf2df6">mmconfig_read_bool</a>(<span class="stringliteral">"wlan.subbands_enabled"</span>, &boolval) == <a class="code hl_enumvalue" href="group__MMCONFIG__API.html#gga3f0ca3ae6640a9e5436d2b7c89d36f17ae5f4ef8549c5981e901d41f2244022fc">MMCONFIG_OK</a>)</div>
|
|
<div class="line"><a id="l00327" name="l00327"></a><span class="lineno"> 327</span> {</div>
|
|
<div class="line"><a id="l00328" name="l00328"></a><span class="lineno"> 328</span> <a class="code hl_function" href="group__MMWLAN__CTRL.html#gaa6162e482344b9da27d7dc44643ab174">mmwlan_set_subbands_enabled</a>(boolval);</div>
|
|
<div class="line"><a id="l00329" name="l00329"></a><span class="lineno"> 329</span> }</div>
|
|
<div class="line"><a id="l00330" name="l00330"></a><span class="lineno"> 330</span> </div>
|
|
<div class="line"><a id="l00331" name="l00331"></a><span class="lineno"> 331</span> <span class="comment">/* Apply sgi enabled if specified */</span></div>
|
|
<div class="line"><a id="l00332" name="l00332"></a><span class="lineno"> 332</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group__MMCONFIG__API.html#ga5cf5f8b78e861e232a9133656daf2df6">mmconfig_read_bool</a>(<span class="stringliteral">"wlan.sgi_enabled"</span>, &boolval) == <a class="code hl_enumvalue" href="group__MMCONFIG__API.html#gga3f0ca3ae6640a9e5436d2b7c89d36f17ae5f4ef8549c5981e901d41f2244022fc">MMCONFIG_OK</a>)</div>
|
|
<div class="line"><a id="l00333" name="l00333"></a><span class="lineno"> 333</span> {</div>
|
|
<div class="line"><a id="l00334" name="l00334"></a><span class="lineno"> 334</span> <a class="code hl_function" href="group__MMWLAN__CTRL.html#ga68c519387d2e4b3ca7644e88ccba77de">mmwlan_set_sgi_enabled</a>(boolval);</div>
|
|
<div class="line"><a id="l00335" name="l00335"></a><span class="lineno"> 335</span> }</div>
|
|
<div class="line"><a id="l00336" name="l00336"></a><span class="lineno"> 336</span> </div>
|
|
<div class="line"><a id="l00337" name="l00337"></a><span class="lineno"> 337</span> <span class="comment">/* Apply ampdu enabled if specified */</span></div>
|
|
<div class="line"><a id="l00338" name="l00338"></a><span class="lineno"> 338</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group__MMCONFIG__API.html#ga5cf5f8b78e861e232a9133656daf2df6">mmconfig_read_bool</a>(<span class="stringliteral">"wlan.ampdu_enabled"</span>, &boolval) == <a class="code hl_enumvalue" href="group__MMCONFIG__API.html#gga3f0ca3ae6640a9e5436d2b7c89d36f17ae5f4ef8549c5981e901d41f2244022fc">MMCONFIG_OK</a>)</div>
|
|
<div class="line"><a id="l00339" name="l00339"></a><span class="lineno"> 339</span> {</div>
|
|
<div class="line"><a id="l00340" name="l00340"></a><span class="lineno"> 340</span> <a class="code hl_function" href="group__MMWLAN__CTRL.html#ga386145bf3af470b46dc3ce6d641aa3ba">mmwlan_set_ampdu_enabled</a>(boolval);</div>
|
|
<div class="line"><a id="l00341" name="l00341"></a><span class="lineno"> 341</span> }</div>
|
|
<div class="line"><a id="l00342" name="l00342"></a><span class="lineno"> 342</span> </div>
|
|
<div class="line"><a id="l00343" name="l00343"></a><span class="lineno"> 343</span> <span class="comment">/* Apply fragment threshold if specified */</span></div>
|
|
<div class="line"><a id="l00344" name="l00344"></a><span class="lineno"> 344</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group__MMCONFIG__API.html#ga525c691a659dbd32281c0de12432d9c9">mmconfig_read_int</a>(<span class="stringliteral">"wlan.fragment_threshold"</span>, &intval) == <a class="code hl_enumvalue" href="group__MMCONFIG__API.html#gga3f0ca3ae6640a9e5436d2b7c89d36f17ae5f4ef8549c5981e901d41f2244022fc">MMCONFIG_OK</a>)</div>
|
|
<div class="line"><a id="l00345" name="l00345"></a><span class="lineno"> 345</span> {</div>
|
|
<div class="line"><a id="l00346" name="l00346"></a><span class="lineno"> 346</span> <a class="code hl_function" href="group__MMWLAN__CTRL.html#gaae5ae711e6ff47f16c93bdf3fd777d83">mmwlan_set_fragment_threshold</a>(intval);</div>
|
|
<div class="line"><a id="l00347" name="l00347"></a><span class="lineno"> 347</span> }</div>
|
|
<div class="line"><a id="l00348" name="l00348"></a><span class="lineno"> 348</span> </div>
|
|
<div class="line"><a id="l00349" name="l00349"></a><span class="lineno"> 349</span> <span class="comment">/* Apply rts threshold if specified */</span></div>
|
|
<div class="line"><a id="l00350" name="l00350"></a><span class="lineno"> 350</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group__MMCONFIG__API.html#ga525c691a659dbd32281c0de12432d9c9">mmconfig_read_int</a>(<span class="stringliteral">"wlan.rts_threshold"</span>, &intval) == <a class="code hl_enumvalue" href="group__MMCONFIG__API.html#gga3f0ca3ae6640a9e5436d2b7c89d36f17ae5f4ef8549c5981e901d41f2244022fc">MMCONFIG_OK</a>)</div>
|
|
<div class="line"><a id="l00351" name="l00351"></a><span class="lineno"> 351</span> {</div>
|
|
<div class="line"><a id="l00352" name="l00352"></a><span class="lineno"> 352</span> <a class="code hl_function" href="group__MMWLAN__CTRL.html#gac5e16f1c3015bc6c577d9be6aec11764">mmwlan_set_rts_threshold</a>(intval);</div>
|
|
<div class="line"><a id="l00353" name="l00353"></a><span class="lineno"> 353</span> }</div>
|
|
<div class="line"><a id="l00354" name="l00354"></a><span class="lineno"> 354</span> </div>
|
|
<div class="line"><a id="l00355" name="l00355"></a><span class="lineno"> 355</span> <span class="comment">/* Apply Health check intervals if specified */</span></div>
|
|
<div class="line"><a id="l00356" name="l00356"></a><span class="lineno"> 356</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group__MMCONFIG__API.html#gae93df8026b038c5b216f7dc16a65ce91">mmconfig_read_uint32</a>(<span class="stringliteral">"wlan.max_health_check_intvl_ms"</span>, &uintval) == <a class="code hl_enumvalue" href="group__MMCONFIG__API.html#gga3f0ca3ae6640a9e5436d2b7c89d36f17ae5f4ef8549c5981e901d41f2244022fc">MMCONFIG_OK</a>)</div>
|
|
<div class="line"><a id="l00357" name="l00357"></a><span class="lineno"> 357</span> {</div>
|
|
<div class="line"><a id="l00358" name="l00358"></a><span class="lineno"> 358</span> <span class="comment">/* If not specified, the minimum is 0 */</span></div>
|
|
<div class="line"><a id="l00359" name="l00359"></a><span class="lineno"> 359</span> uint32_t health_check_min = 0;</div>
|
|
<div class="line"><a id="l00360" name="l00360"></a><span class="lineno"> 360</span> <a class="code hl_function" href="group__MMCONFIG__API.html#gae93df8026b038c5b216f7dc16a65ce91">mmconfig_read_uint32</a>(<span class="stringliteral">"wlan.min_health_check_intvl_ms"</span>, &health_check_min);</div>
|
|
<div class="line"><a id="l00361" name="l00361"></a><span class="lineno"> 361</span> <a class="code hl_function" href="group__MMWLAN__HEALTH.html#gaa099f7e352f4600e4c96401797bb5c2f">mmwlan_set_health_check_interval</a>(health_check_min, uintval);</div>
|
|
<div class="line"><a id="l00362" name="l00362"></a><span class="lineno"> 362</span> }</div>
|
|
<div class="line"><a id="l00363" name="l00363"></a><span class="lineno"> 363</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group__MMCONFIG__API.html#gae93df8026b038c5b216f7dc16a65ce91">mmconfig_read_uint32</a>(<span class="stringliteral">"wlan.min_health_check_intvl_ms"</span>, &uintval) == <a class="code hl_enumvalue" href="group__MMCONFIG__API.html#gga3f0ca3ae6640a9e5436d2b7c89d36f17ae5f4ef8549c5981e901d41f2244022fc">MMCONFIG_OK</a>)</div>
|
|
<div class="line"><a id="l00364" name="l00364"></a><span class="lineno"> 364</span> {</div>
|
|
<div class="line"><a id="l00365" name="l00365"></a><span class="lineno"> 365</span> <span class="comment">/* If only minimum is specified, then treat the maximum as unbounded */</span></div>
|
|
<div class="line"><a id="l00366" name="l00366"></a><span class="lineno"> 366</span> <a class="code hl_function" href="group__MMWLAN__HEALTH.html#gaa099f7e352f4600e4c96401797bb5c2f">mmwlan_set_health_check_interval</a>(uintval, UINT32_MAX);</div>
|
|
<div class="line"><a id="l00367" name="l00367"></a><span class="lineno"> 367</span> }</div>
|
|
<div class="line"><a id="l00368" name="l00368"></a><span class="lineno"> 368</span>}</div>
|
|
<div class="line"><a id="l00369" name="l00369"></a><span class="lineno"> 369</span> </div>
|
|
<div class="line"><a id="l00374" name="l00374"></a><span class="lineno"><a class="line" href="softap_8c.html#add3190cf715f513666f4be42874d91e2"> 374</a></span><span class="keywordtype">void</span> <a class="code hl_function" href="softap_8c.html#add3190cf715f513666f4be42874d91e2">app_init</a>(<span class="keywordtype">void</span>)</div>
|
|
<div class="line"><a id="l00375" name="l00375"></a><span class="lineno"> 375</span>{</div>
|
|
<div class="line"><a id="l00376" name="l00376"></a><span class="lineno"> 376</span> printf(<span class="stringliteral">"\n\nSoftAP Example (Built "</span> __DATE__ <span class="stringliteral">" "</span> __TIME__ <span class="stringliteral">")\n\n"</span>);</div>
|
|
<div class="line"><a id="l00377" name="l00377"></a><span class="lineno"> 377</span> <a class="code hl_function" href="group__MMWLAN__INIT.html#gad96f6d04004a3010c0cddd02d8feed72">mmwlan_init</a>();</div>
|
|
<div class="line"><a id="l00378" name="l00378"></a><span class="lineno"> 378</span> <a class="code hl_function" href="group__MMWLAN__REGDB.html#ga73b6742a29b62bf0091a9b6c9cc770db">mmwlan_set_channel_list</a>(<a class="code hl_function" href="mm__app__loadconfig_8h.html#a55abea26b48b587433d302903c979d6b">load_channel_list</a>());</div>
|
|
<div class="line"><a id="l00379" name="l00379"></a><span class="lineno"> 379</span> <a class="code hl_function" href="group__MMWLAN__CTRL.html#ga1a5050da56c30035ffcc4c49b7ff95d4">mmwlan_boot</a>(NULL);</div>
|
|
<div class="line"><a id="l00380" name="l00380"></a><span class="lineno"> 380</span> </div>
|
|
<div class="line"><a id="l00381" name="l00381"></a><span class="lineno"> 381</span> <a class="code hl_function" href="mm__app__common_8h.html#a02d380e3d6901335d0e3a3b84985eec6">app_print_version_info</a>();</div>
|
|
<div class="line"><a id="l00382" name="l00382"></a><span class="lineno"> 382</span> </div>
|
|
<div class="line"><a id="l00383" name="l00383"></a><span class="lineno"> 383</span> <span class="comment">/* Load IP stack settings from config store, or use defaults if no entry found in</span></div>
|
|
<div class="line"><a id="l00384" name="l00384"></a><span class="lineno"> 384</span><span class="comment"> * config store. */</span></div>
|
|
<div class="line"><a id="l00385" name="l00385"></a><span class="lineno"> 385</span> <span class="keyword">struct </span><a class="code hl_struct" href="structmmipal__init__args.html">mmipal_init_args</a> <a class="code hl_struct" href="structmmipal__init__args.html">mmipal_init_args</a> = <a class="code hl_define" href="group__MMIPAL.html#ga58358044d2adb0b796443b3987c455ec">MMIPAL_INIT_ARGS_DEFAULT</a>;</div>
|
|
<div class="line"><a id="l00386" name="l00386"></a><span class="lineno"> 386</span> <a class="code hl_struct" href="structmmipal__init__args.html">mmipal_init_args</a>.<a class="code hl_variable" href="structmmipal__init__args.html#aa8ea6f4bfc27973166408ca9022c9f1b">mode</a> = <a class="code hl_enumvalue" href="group__MMIPAL.html#ggafc9d0260b07ca329e4fc2393a769c3cda94fc853f6c5c0d4e4bbc722c9e77e9dc">MMIPAL_STATIC</a>;</div>
|
|
<div class="line"><a id="l00387" name="l00387"></a><span class="lineno"> 387</span> <a class="code hl_struct" href="structmmipal__init__args.html">mmipal_init_args</a>.<a class="code hl_variable" href="structmmipal__init__args.html#a039c9ce0adac0886490ab31f47802620">ip6_mode</a> = <a class="code hl_enumvalue" href="group__MMIPAL.html#gga766bcb2fa9bef02bbc17203399c84f55a816ac2c6e768f2afe87c6058d46429e5">MMIPAL_IP6_DISABLED</a>;</div>
|
|
<div class="line"><a id="l00388" name="l00388"></a><span class="lineno"> 388</span> <a class="code hl_function" href="softap_8c.html#a1b331e2931cdc875daad220d78611865">load_softap_mmipal_init_args</a>(&<a class="code hl_struct" href="structmmipal__init__args.html">mmipal_init_args</a>);</div>
|
|
<div class="line"><a id="l00389" name="l00389"></a><span class="lineno"> 389</span> </div>
|
|
<div class="line"><a id="l00390" name="l00390"></a><span class="lineno"> 390</span> <span class="comment">/* Initialize IP stack. */</span></div>
|
|
<div class="line"><a id="l00391" name="l00391"></a><span class="lineno"> 391</span> <span class="keywordflow">if</span> (<a class="code hl_function" href="group__MMIPAL.html#ga036b21005847998a5a99a6118d94c2c3">mmipal_init</a>(&<a class="code hl_struct" href="structmmipal__init__args.html">mmipal_init_args</a>) != <a class="code hl_enumvalue" href="group__MMIPAL.html#ggabeb2ec55b5c51b0614c5a7e334ad31d4a8bf01d9419397da9b09c93bb16160f3d">MMIPAL_SUCCESS</a>)</div>
|
|
<div class="line"><a id="l00392" name="l00392"></a><span class="lineno"> 392</span> {</div>
|
|
<div class="line"><a id="l00393" name="l00393"></a><span class="lineno"> 393</span> printf(<span class="stringliteral">"Error initializing network interface.\n"</span>);</div>
|
|
<div class="line"><a id="l00394" name="l00394"></a><span class="lineno"> 394</span> <a class="code hl_define" href="group__MMOSAL__ASSERT.html#ga9bae87b1059a31f390403d647b73e4b9">MMOSAL_ASSERT</a>(<span class="keyword">false</span>);</div>
|
|
<div class="line"><a id="l00395" name="l00395"></a><span class="lineno"> 395</span> }</div>
|
|
<div class="line"><a id="l00396" name="l00396"></a><span class="lineno"> 396</span> </div>
|
|
<div class="line"><a id="l00397" name="l00397"></a><span class="lineno"> 397</span> <a class="code hl_function" href="group__MMWLAN__CTRL.html#ga8771bfc0223d560f1d27d61e69b88d64">mmwlan_set_power_save_mode</a>(<a class="code hl_enumvalue" href="group__MMWLAN.html#ggad4799bcbe9ac956813798fcecffc5a15a52aaf00b0e7c0a4e99c3eaeb7deb2485">MMWLAN_PS_DISABLED</a>);</div>
|
|
<div class="line"><a id="l00398" name="l00398"></a><span class="lineno"> 398</span> <a class="code hl_function" href="softap_8c.html#af599cff3498cc039cb6b26667dcbe2ec">load_mmwlan_settings_softap</a>();</div>
|
|
<div class="line"><a id="l00399" name="l00399"></a><span class="lineno"> 399</span> </div>
|
|
<div class="line"><a id="l00400" name="l00400"></a><span class="lineno"> 400</span> <span class="keyword">struct </span><a class="code hl_struct" href="structmmwlan__softap__args.html">mmwlan_softap_args</a> softap_args = <a class="code hl_define" href="group__MMWLAN__CTRL.html#ga1df9edc518187bd43a341bfdc389efca">MMWLAN_SOFTAP_ARGS_INIT</a>;</div>
|
|
<div class="line"><a id="l00401" name="l00401"></a><span class="lineno"> 401</span> <a class="code hl_function" href="softap_8c.html#afbb90b1626b5534c31c8de89b2bf7654">load_mmwlan_softap_args</a>(&softap_args);</div>
|
|
<div class="line"><a id="l00402" name="l00402"></a><span class="lineno"> 402</span> </div>
|
|
<div class="line"><a id="l00403" name="l00403"></a><span class="lineno"> 403</span> softap_args.<a class="code hl_variable" href="structmmwlan__softap__args.html#a3fde38576b8ec07ec772c3404f2d9998">sta_status_cb</a> = <a class="code hl_function" href="softap_8c.html#a5e4179550f8bb2a88b0e039d30aa8ff4">handle_softap_sta_status</a>;</div>
|
|
<div class="line"><a id="l00404" name="l00404"></a><span class="lineno"> 404</span> softap_args.<a class="code hl_variable" href="structmmwlan__softap__args.html#aa157c7f4071c22c11efd3ce56361731e">sta_status_cb_arg</a> = &<a class="code hl_variable" href="softap_8c.html#ae28ad90e7b7d10c49a756acf122557a9">opaque_argument_value</a>;</div>
|
|
<div class="line"><a id="l00405" name="l00405"></a><span class="lineno"> 405</span> </div>
|
|
<div class="line"><a id="l00406" name="l00406"></a><span class="lineno"> 406</span> <span class="keyword">enum</span> <a class="code hl_enumeration" href="group__MMWLAN.html#ga0039072000d47e5c3712686bf1e43086">mmwlan_status</a> status = <a class="code hl_function" href="group__MMWLAN__CTRL.html#ga93f53a46eca2b0437b619975079aa77a">mmwlan_softap_enable</a>(&softap_args);</div>
|
|
<div class="line"><a id="l00407" name="l00407"></a><span class="lineno"> 407</span> <span class="keywordflow">if</span> (status == <a class="code hl_enumvalue" href="group__MMWLAN.html#gga0039072000d47e5c3712686bf1e43086a559d87849add57871ea032a5a1a35c4c">MMWLAN_SUCCESS</a>)</div>
|
|
<div class="line"><a id="l00408" name="l00408"></a><span class="lineno"> 408</span> {</div>
|
|
<div class="line"><a id="l00409" name="l00409"></a><span class="lineno"> 409</span> printf(<span class="stringliteral">"Soft AP started successfully\n"</span>);</div>
|
|
<div class="line"><a id="l00410" name="l00410"></a><span class="lineno"> 410</span> }</div>
|
|
<div class="line"><a id="l00411" name="l00411"></a><span class="lineno"> 411</span> <span class="keywordflow">else</span></div>
|
|
<div class="line"><a id="l00412" name="l00412"></a><span class="lineno"> 412</span> {</div>
|
|
<div class="line"><a id="l00413" name="l00413"></a><span class="lineno"> 413</span> printf(<span class="stringliteral">"Failed to start Soft AP (status %d)\n"</span>, status);</div>
|
|
<div class="line"><a id="l00414" name="l00414"></a><span class="lineno"> 414</span> }</div>
|
|
<div class="line"><a id="l00415" name="l00415"></a><span class="lineno"> 415</span>}</div>
|
|
<div class="ttc" id="agroup__MMCONFIG__API_html_ga49a03e759500ae9d9395a22d3846c11e"><div class="ttname"><a href="group__MMCONFIG__API.html#ga49a03e759500ae9d9395a22d3846c11e">mmconfig_read_string</a></div><div class="ttdeci">int mmconfig_read_string(const char *key, char *buffer, int bufsize)</div><div class="ttdoc">Returns the persistent store string value identified by the key.</div></div>
|
|
<div class="ttc" id="agroup__MMCONFIG__API_html_ga525c691a659dbd32281c0de12432d9c9"><div class="ttname"><a href="group__MMCONFIG__API.html#ga525c691a659dbd32281c0de12432d9c9">mmconfig_read_int</a></div><div class="ttdeci">int mmconfig_read_int(const char *key, int *value)</div><div class="ttdoc">Returns the integer stored in persistent store identified by the key.</div></div>
|
|
<div class="ttc" id="agroup__MMCONFIG__API_html_ga5cf5f8b78e861e232a9133656daf2df6"><div class="ttname"><a href="group__MMCONFIG__API.html#ga5cf5f8b78e861e232a9133656daf2df6">mmconfig_read_bool</a></div><div class="ttdeci">int mmconfig_read_bool(const char *key, bool *value)</div><div class="ttdoc">Returns the boolean value stored in persistent store identified by the key.</div></div>
|
|
<div class="ttc" id="agroup__MMCONFIG__API_html_gae93df8026b038c5b216f7dc16a65ce91"><div class="ttname"><a href="group__MMCONFIG__API.html#gae93df8026b038c5b216f7dc16a65ce91">mmconfig_read_uint32</a></div><div class="ttdeci">int mmconfig_read_uint32(const char *key, uint32_t *value)</div><div class="ttdoc">Returns the unsigned integer stored in persistent store identified by the key.</div></div>
|
|
<div class="ttc" id="agroup__MMCONFIG__API_html_gga3f0ca3ae6640a9e5436d2b7c89d36f17ae5f4ef8549c5981e901d41f2244022fc"><div class="ttname"><a href="group__MMCONFIG__API.html#gga3f0ca3ae6640a9e5436d2b7c89d36f17ae5f4ef8549c5981e901d41f2244022fc">MMCONFIG_OK</a></div><div class="ttdeci">@ MMCONFIG_OK</div><div class="ttdoc">Operation completed successfully.</div><div class="ttdef"><b>Definition:</b> <a href="mmconfig_8h_source.html#l00221">mmconfig.h:221</a></div></div>
|
|
<div class="ttc" id="agroup__MMIPAL_html_ga036b21005847998a5a99a6118d94c2c3"><div class="ttname"><a href="group__MMIPAL.html#ga036b21005847998a5a99a6118d94c2c3">mmipal_init</a></div><div class="ttdeci">enum mmipal_status mmipal_init(const struct mmipal_init_args *args)</div><div class="ttdoc">Initialize the IP stack and enable the MMWLAN interface.</div></div>
|
|
<div class="ttc" id="agroup__MMIPAL_html_ga58358044d2adb0b796443b3987c455ec"><div class="ttname"><a href="group__MMIPAL.html#ga58358044d2adb0b796443b3987c455ec">MMIPAL_INIT_ARGS_DEFAULT</a></div><div class="ttdeci">#define MMIPAL_INIT_ARGS_DEFAULT</div><div class="ttdoc">Default values for mmipal_init_args.</div><div class="ttdef"><b>Definition:</b> <a href="mmipal_8h_source.html#l00173">mmipal.h:173</a></div></div>
|
|
<div class="ttc" id="agroup__MMIPAL_html_gga766bcb2fa9bef02bbc17203399c84f55a816ac2c6e768f2afe87c6058d46429e5"><div class="ttname"><a href="group__MMIPAL.html#gga766bcb2fa9bef02bbc17203399c84f55a816ac2c6e768f2afe87c6058d46429e5">MMIPAL_IP6_DISABLED</a></div><div class="ttdeci">@ MMIPAL_IP6_DISABLED</div><div class="ttdoc">Disabled.</div><div class="ttdef"><b>Definition:</b> <a href="mmipal_8h_source.html#l00106">mmipal.h:106</a></div></div>
|
|
<div class="ttc" id="agroup__MMIPAL_html_ggabeb2ec55b5c51b0614c5a7e334ad31d4a8bf01d9419397da9b09c93bb16160f3d"><div class="ttname"><a href="group__MMIPAL.html#ggabeb2ec55b5c51b0614c5a7e334ad31d4a8bf01d9419397da9b09c93bb16160f3d">MMIPAL_SUCCESS</a></div><div class="ttdeci">@ MMIPAL_SUCCESS</div><div class="ttdoc">Completed successfully.</div><div class="ttdef"><b>Definition:</b> <a href="mmipal_8h_source.html#l00039">mmipal.h:39</a></div></div>
|
|
<div class="ttc" id="agroup__MMIPAL_html_ggafc9d0260b07ca329e4fc2393a769c3cda94fc853f6c5c0d4e4bbc722c9e77e9dc"><div class="ttname"><a href="group__MMIPAL.html#ggafc9d0260b07ca329e4fc2393a769c3cda94fc853f6c5c0d4e4bbc722c9e77e9dc">MMIPAL_STATIC</a></div><div class="ttdeci">@ MMIPAL_STATIC</div><div class="ttdoc">Static IP address.</div><div class="ttdef"><b>Definition:</b> <a href="mmipal_8h_source.html#l00065">mmipal.h:65</a></div></div>
|
|
<div class="ttc" id="agroup__MMOSAL__ASSERT_html_ga9bae87b1059a31f390403d647b73e4b9"><div class="ttname"><a href="group__MMOSAL__ASSERT.html#ga9bae87b1059a31f390403d647b73e4b9">MMOSAL_ASSERT</a></div><div class="ttdeci">#define MMOSAL_ASSERT(expr)</div><div class="ttdoc">Assert that the given expression evaluates to true and abort execution if not.</div><div class="ttdef"><b>Definition:</b> <a href="mmosal_8h_source.html#l00927">mmosal.h:927</a></div></div>
|
|
<div class="ttc" id="agroup__MMOSAL__MISC_html_gaec62d4b897cc04594af6ef860b345fc1"><div class="ttname"><a href="group__MMOSAL__MISC.html#gaec62d4b897cc04594af6ef860b345fc1">mmosal_safer_strcpy</a></div><div class="ttdeci">static bool mmosal_safer_strcpy(char *dst, const char *src, size_t size)</div><div class="ttdoc">A safer version of strncpy.</div><div class="ttdef"><b>Definition:</b> <a href="mmosal_8h_source.html#l01030">mmosal.h:1030</a></div></div>
|
|
<div class="ttc" id="agroup__MMUTILS_html_ga0157597bdd038d83fbb0f2f488e6e4ee"><div class="ttname"><a href="group__MMUTILS.html#ga0157597bdd038d83fbb0f2f488e6e4ee">MM_UNUSED</a></div><div class="ttdeci">#define MM_UNUSED(_x)</div><div class="ttdoc">Casts the given expression to void to avoid "unused" warnings from the compiler.</div><div class="ttdef"><b>Definition:</b> <a href="mmutils_8h_source.html#l00069">mmutils.h:69</a></div></div>
|
|
<div class="ttc" id="agroup__MMWLAN__CTRL_html_ga1a5050da56c30035ffcc4c49b7ff95d4"><div class="ttname"><a href="group__MMWLAN__CTRL.html#ga1a5050da56c30035ffcc4c49b7ff95d4">mmwlan_boot</a></div><div class="ttdeci">enum mmwlan_status mmwlan_boot(const struct mmwlan_boot_args *args)</div><div class="ttdoc">Boot the Morse Micro transceiver and leave it in an idle state.</div></div>
|
|
<div class="ttc" id="agroup__MMWLAN__CTRL_html_ga1df9edc518187bd43a341bfdc389efca"><div class="ttname"><a href="group__MMWLAN__CTRL.html#ga1df9edc518187bd43a341bfdc389efca">MMWLAN_SOFTAP_ARGS_INIT</a></div><div class="ttdeci">#define MMWLAN_SOFTAP_ARGS_INIT</div><div class="ttdoc">Initializer for mmwlan_softap_args.</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l01405">mmwlan.h:1405</a></div></div>
|
|
<div class="ttc" id="agroup__MMWLAN__CTRL_html_ga386145bf3af470b46dc3ce6d641aa3ba"><div class="ttname"><a href="group__MMWLAN__CTRL.html#ga386145bf3af470b46dc3ce6d641aa3ba">mmwlan_set_ampdu_enabled</a></div><div class="ttdeci">enum mmwlan_status mmwlan_set_ampdu_enabled(bool ampdu_enabled)</div><div class="ttdoc">Sets whether or not Aggregated MAC Protocol Data Unit (A-MPDU) support is enabled.</div></div>
|
|
<div class="ttc" id="agroup__MMWLAN__CTRL_html_ga68c519387d2e4b3ca7644e88ccba77de"><div class="ttname"><a href="group__MMWLAN__CTRL.html#ga68c519387d2e4b3ca7644e88ccba77de">mmwlan_set_sgi_enabled</a></div><div class="ttdeci">enum mmwlan_status mmwlan_set_sgi_enabled(bool sgi_enabled)</div><div class="ttdoc">Sets whether or not Short Guard Interval (SGI) support is enabled.</div></div>
|
|
<div class="ttc" id="agroup__MMWLAN__CTRL_html_ga8771bfc0223d560f1d27d61e69b88d64"><div class="ttname"><a href="group__MMWLAN__CTRL.html#ga8771bfc0223d560f1d27d61e69b88d64">mmwlan_set_power_save_mode</a></div><div class="ttdeci">enum mmwlan_status mmwlan_set_power_save_mode(enum mmwlan_ps_mode mode)</div><div class="ttdoc">Sets whether or not the 802.11 power save is enabled.</div></div>
|
|
<div class="ttc" id="agroup__MMWLAN__CTRL_html_ga93f53a46eca2b0437b619975079aa77a"><div class="ttname"><a href="group__MMWLAN__CTRL.html#ga93f53a46eca2b0437b619975079aa77a">mmwlan_softap_enable</a></div><div class="ttdeci">enum mmwlan_status mmwlan_softap_enable(const struct mmwlan_softap_args *args)</div><div class="ttdoc">Enable Soft AP mode.</div></div>
|
|
<div class="ttc" id="agroup__MMWLAN__CTRL_html_gaa6162e482344b9da27d7dc44643ab174"><div class="ttname"><a href="group__MMWLAN__CTRL.html#gaa6162e482344b9da27d7dc44643ab174">mmwlan_set_subbands_enabled</a></div><div class="ttdeci">enum mmwlan_status mmwlan_set_subbands_enabled(bool subbands_enabled)</div><div class="ttdoc">Sets whether or not sub-band support is enabled for transmit.</div></div>
|
|
<div class="ttc" id="agroup__MMWLAN__CTRL_html_gaae5ae711e6ff47f16c93bdf3fd777d83"><div class="ttname"><a href="group__MMWLAN__CTRL.html#gaae5ae711e6ff47f16c93bdf3fd777d83">mmwlan_set_fragment_threshold</a></div><div class="ttdeci">enum mmwlan_status mmwlan_set_fragment_threshold(unsigned fragment_threshold)</div><div class="ttdoc">Set the Fragmentation threshold.</div></div>
|
|
<div class="ttc" id="agroup__MMWLAN__CTRL_html_gac5e16f1c3015bc6c577d9be6aec11764"><div class="ttname"><a href="group__MMWLAN__CTRL.html#gac5e16f1c3015bc6c577d9be6aec11764">mmwlan_set_rts_threshold</a></div><div class="ttdeci">enum mmwlan_status mmwlan_set_rts_threshold(unsigned rts_threshold)</div><div class="ttdoc">Set the RTS threshold.</div></div>
|
|
<div class="ttc" id="agroup__MMWLAN__HEALTH_html_gaa099f7e352f4600e4c96401797bb5c2f"><div class="ttname"><a href="group__MMWLAN__HEALTH.html#gaa099f7e352f4600e4c96401797bb5c2f">mmwlan_set_health_check_interval</a></div><div class="ttdeci">enum mmwlan_status mmwlan_set_health_check_interval(uint32_t min_interval_ms, uint32_t max_interval_ms)</div><div class="ttdoc">Specify the upper and lower bound for the periodic health check interval.</div></div>
|
|
<div class="ttc" id="agroup__MMWLAN__INIT_html_gad96f6d04004a3010c0cddd02d8feed72"><div class="ttname"><a href="group__MMWLAN__INIT.html#gad96f6d04004a3010c0cddd02d8feed72">mmwlan_init</a></div><div class="ttdeci">void mmwlan_init(void)</div><div class="ttdoc">Initialize the MMWLAN subsystem.</div></div>
|
|
<div class="ttc" id="agroup__MMWLAN__REGDB_html_ga73b6742a29b62bf0091a9b6c9cc770db"><div class="ttname"><a href="group__MMWLAN__REGDB.html#ga73b6742a29b62bf0091a9b6c9cc770db">mmwlan_set_channel_list</a></div><div class="ttdeci">enum mmwlan_status mmwlan_set_channel_list(const struct mmwlan_s1g_channel_list *channel_list)</div><div class="ttdoc">Set the list of channels that are supported by the regulatory domain in which the device resides.</div></div>
|
|
<div class="ttc" id="agroup__MMWLAN_html_ga0039072000d47e5c3712686bf1e43086"><div class="ttname"><a href="group__MMWLAN.html#ga0039072000d47e5c3712686bf1e43086">mmwlan_status</a></div><div class="ttdeci">mmwlan_status</div><div class="ttdoc">Enumeration of status return codes.</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l00049">mmwlan.h:50</a></div></div>
|
|
<div class="ttc" id="agroup__MMWLAN_html_gga0039072000d47e5c3712686bf1e43086a559d87849add57871ea032a5a1a35c4c"><div class="ttname"><a href="group__MMWLAN.html#gga0039072000d47e5c3712686bf1e43086a559d87849add57871ea032a5a1a35c4c">MMWLAN_SUCCESS</a></div><div class="ttdeci">@ MMWLAN_SUCCESS</div><div class="ttdoc">The operation was successful.</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l00052">mmwlan.h:52</a></div></div>
|
|
<div class="ttc" id="agroup__MMWLAN_html_gga6f1e10b52468bc91ff773e96377bfa17a0364f71f3f592052cf927ecf5ba0f857"><div class="ttname"><a href="group__MMWLAN.html#gga6f1e10b52468bc91ff773e96377bfa17a0364f71f3f592052cf927ecf5ba0f857">MMWLAN_PMF_DISABLED</a></div><div class="ttdeci">@ MMWLAN_PMF_DISABLED</div><div class="ttdoc">No protected management frames.</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l00162">mmwlan.h:161</a></div></div>
|
|
<div class="ttc" id="agroup__MMWLAN_html_gga6f1e10b52468bc91ff773e96377bfa17add2d30cc5a82b600eae097ba325c1073"><div class="ttname"><a href="group__MMWLAN.html#gga6f1e10b52468bc91ff773e96377bfa17add2d30cc5a82b600eae097ba325c1073">MMWLAN_PMF_REQUIRED</a></div><div class="ttdeci">@ MMWLAN_PMF_REQUIRED</div><div class="ttdoc">Protected management frames must be used.</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l00159">mmwlan.h:159</a></div></div>
|
|
<div class="ttc" id="agroup__MMWLAN_html_ggaa1811e3233be70cf35a4611111eddca0a4ce45048653a785b9591d1305f47825a"><div class="ttname"><a href="group__MMWLAN.html#ggaa1811e3233be70cf35a4611111eddca0a4ce45048653a785b9591d1305f47825a">MMWLAN_OPEN</a></div><div class="ttdeci">@ MMWLAN_OPEN</div><div class="ttdoc">Open (no security)</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l00139">mmwlan.h:139</a></div></div>
|
|
<div class="ttc" id="agroup__MMWLAN_html_ggaa1811e3233be70cf35a4611111eddca0a59f990a919a675dd6042f7566377472f"><div class="ttname"><a href="group__MMWLAN.html#ggaa1811e3233be70cf35a4611111eddca0a59f990a919a675dd6042f7566377472f">MMWLAN_SAE</a></div><div class="ttdeci">@ MMWLAN_SAE</div><div class="ttdoc">Simultaneous Authentication of Equals (SAE)</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l00143">mmwlan.h:143</a></div></div>
|
|
<div class="ttc" id="agroup__MMWLAN_html_ggaa1811e3233be70cf35a4611111eddca0a7fcc1a25e3686787dd6603c1fc2ae614"><div class="ttname"><a href="group__MMWLAN.html#ggaa1811e3233be70cf35a4611111eddca0a7fcc1a25e3686787dd6603c1fc2ae614">MMWLAN_OWE</a></div><div class="ttdeci">@ MMWLAN_OWE</div><div class="ttdoc">Opportunistic Wireless Encryption (OWE)</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l00141">mmwlan.h:141</a></div></div>
|
|
<div class="ttc" id="agroup__MMWLAN_html_ggad4799bcbe9ac956813798fcecffc5a15a52aaf00b0e7c0a4e99c3eaeb7deb2485"><div class="ttname"><a href="group__MMWLAN.html#ggad4799bcbe9ac956813798fcecffc5a15a52aaf00b0e7c0a4e99c3eaeb7deb2485">MMWLAN_PS_DISABLED</a></div><div class="ttdeci">@ MMWLAN_PS_DISABLED</div><div class="ttdoc">Power save disabled.</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l00150">mmwlan.h:150</a></div></div>
|
|
<div class="ttc" id="amm__app__common_8h_html"><div class="ttname"><a href="mm__app__common_8h.html">mm_app_common.h</a></div><div class="ttdoc">Morse Micro application helper routines for initializing/de-initializing the Wireless LAN interface a...</div></div>
|
|
<div class="ttc" id="amm__app__common_8h_html_a02d380e3d6901335d0e3a3b84985eec6"><div class="ttname"><a href="mm__app__common_8h.html#a02d380e3d6901335d0e3a3b84985eec6">app_print_version_info</a></div><div class="ttdeci">void app_print_version_info(void)</div><div class="ttdoc">Prints various version information.</div></div>
|
|
<div class="ttc" id="amm__app__loadconfig_8h_html"><div class="ttname"><a href="mm__app__loadconfig_8h.html">mm_app_loadconfig.h</a></div></div>
|
|
<div class="ttc" id="amm__app__loadconfig_8h_html_a55abea26b48b587433d302903c979d6b"><div class="ttname"><a href="mm__app__loadconfig_8h.html#a55abea26b48b587433d302903c979d6b">load_channel_list</a></div><div class="ttdeci">const struct mmwlan_s1g_channel_list * load_channel_list(void)</div><div class="ttdoc">Looks up country code and returns appropriate channel list.</div></div>
|
|
<div class="ttc" id="asoftap_8c_html_a002f3d2b185a9a24b5f8af7f6d1f7c52"><div class="ttname"><a href="softap_8c.html#a002f3d2b185a9a24b5f8af7f6d1f7c52">PRIMARY_BW_MHZ</a></div><div class="ttdeci">#define PRIMARY_BW_MHZ</div><div class="ttdoc">Primary Bandwidth to use for Soft AP.</div><div class="ttdef"><b>Definition:</b> <a href="softap_8c_source.html#l00107">softap.c:107</a></div></div>
|
|
<div class="ttc" id="asoftap_8c_html_a095977e88115900a59827ea0015edffd"><div class="ttname"><a href="softap_8c.html#a095977e88115900a59827ea0015edffd">SECURITY_TYPE</a></div><div class="ttdeci">#define SECURITY_TYPE</div><div class="ttdoc">Security type (.</div><div class="ttdef"><b>Definition:</b> <a href="softap_8c_source.html#l00066">softap.c:66</a></div></div>
|
|
<div class="ttc" id="asoftap_8c_html_a1b331e2931cdc875daad220d78611865"><div class="ttname"><a href="softap_8c.html#a1b331e2931cdc875daad220d78611865">load_softap_mmipal_init_args</a></div><div class="ttdeci">static void load_softap_mmipal_init_args(struct mmipal_init_args *args)</div><div class="ttdoc">Loads the provided structure with initialization parameters read from config store.</div><div class="ttdef"><b>Definition:</b> <a href="softap_8c_source.html#l00153">softap.c:153</a></div></div>
|
|
<div class="ttc" id="asoftap_8c_html_a2cad4d5823df21cac36fa31c45061907"><div class="ttname"><a href="softap_8c.html#a2cad4d5823df21cac36fa31c45061907">S1G_CHANNEL</a></div><div class="ttdeci">#define S1G_CHANNEL</div><div class="ttdoc">S1G Channel to use for Soft AP.</div><div class="ttdef"><b>Definition:</b> <a href="softap_8c_source.html#l00095">softap.c:95</a></div></div>
|
|
<div class="ttc" id="asoftap_8c_html_a3a55ee4efff18d63b7da2de1a8cb34ed"><div class="ttname"><a href="softap_8c.html#a3a55ee4efff18d63b7da2de1a8cb34ed">STATIC_NETMASK</a></div><div class="ttdeci">#define STATIC_NETMASK</div><div class="ttdoc">Statically configured netmask.</div><div class="ttdef"><b>Definition:</b> <a href="softap_8c_source.html#l00042">softap.c:42</a></div></div>
|
|
<div class="ttc" id="asoftap_8c_html_a5e4179550f8bb2a88b0e039d30aa8ff4"><div class="ttname"><a href="softap_8c.html#a5e4179550f8bb2a88b0e039d30aa8ff4">handle_softap_sta_status</a></div><div class="ttdeci">static void handle_softap_sta_status(const struct mmwlan_softap_sta_status *sta_status, void *arg)</div><div class="ttdoc">Handler for Soft AP STA Status callback.</div><div class="ttdef"><b>Definition:</b> <a href="softap_8c_source.html#l00131">softap.c:131</a></div></div>
|
|
<div class="ttc" id="asoftap_8c_html_a618bebd7e10a920d615032c10cfde27c"><div class="ttname"><a href="softap_8c.html#a618bebd7e10a920d615032c10cfde27c">PMF_MODE</a></div><div class="ttdeci">#define PMF_MODE</div><div class="ttdoc">Protected Management Frames (PMF) mode (.</div><div class="ttdef"><b>Definition:</b> <a href="softap_8c_source.html#l00072">softap.c:72</a></div></div>
|
|
<div class="ttc" id="asoftap_8c_html_a6df1d22fb5f09eccc23b9f399670cfd7"><div class="ttname"><a href="softap_8c.html#a6df1d22fb5f09eccc23b9f399670cfd7">STRINGIFY</a></div><div class="ttdeci">#define STRINGIFY(x)</div><div class="ttdoc">Convert the content of the given macro to a string.</div><div class="ttdef"><b>Definition:</b> <a href="softap_8c_source.html#l00119">softap.c:119</a></div></div>
|
|
<div class="ttc" id="asoftap_8c_html_a782948b5f7f887653988cdb4576e41de"><div class="ttname"><a href="softap_8c.html#a782948b5f7f887653988cdb4576e41de">SAE_PASSPHRASE</a></div><div class="ttdeci">#define SAE_PASSPHRASE</div><div class="ttdoc">Passphrase of the AP (ignored if security type is not SAE).</div><div class="ttdef"><b>Definition:</b> <a href="softap_8c_source.html#l00060">softap.c:60</a></div></div>
|
|
<div class="ttc" id="asoftap_8c_html_a85c74a4b814b4db706cb7224c8f96454"><div class="ttname"><a href="softap_8c.html#a85c74a4b814b4db706cb7224c8f96454">SOFTAP_SSID</a></div><div class="ttdeci">#define SOFTAP_SSID</div><div class="ttdoc">SSID of the AP.</div><div class="ttdef"><b>Definition:</b> <a href="softap_8c_source.html#l00054">softap.c:54</a></div></div>
|
|
<div class="ttc" id="asoftap_8c_html_ac725fbd11972c774625dd18070238e59"><div class="ttname"><a href="softap_8c.html#ac725fbd11972c774625dd18070238e59">OP_CLASS</a></div><div class="ttdeci">#define OP_CLASS</div><div class="ttdoc">Operating Class to use for Soft AP.</div><div class="ttdef"><b>Definition:</b> <a href="softap_8c_source.html#l00087">softap.c:87</a></div></div>
|
|
<div class="ttc" id="asoftap_8c_html_acf3743614f683e2e0c58185ceec9846b"><div class="ttname"><a href="softap_8c.html#acf3743614f683e2e0c58185ceec9846b">PRIMARY_1MHZ_CHANNEL_INDEX</a></div><div class="ttdeci">#define PRIMARY_1MHZ_CHANNEL_INDEX</div><div class="ttdoc">Primary 1 MHz Channel Index to use for Soft AP.</div><div class="ttdef"><b>Definition:</b> <a href="softap_8c_source.html#l00112">softap.c:112</a></div></div>
|
|
<div class="ttc" id="asoftap_8c_html_ad6464bc2a407d882125ac7e288e16d21"><div class="ttname"><a href="softap_8c.html#ad6464bc2a407d882125ac7e288e16d21">STATIC_GATEWAY</a></div><div class="ttdeci">#define STATIC_GATEWAY</div><div class="ttdoc">Statically configured gateway address.</div><div class="ttdef"><b>Definition:</b> <a href="softap_8c_source.html#l00038">softap.c:38</a></div></div>
|
|
<div class="ttc" id="asoftap_8c_html_add3190cf715f513666f4be42874d91e2"><div class="ttname"><a href="softap_8c.html#add3190cf715f513666f4be42874d91e2">app_init</a></div><div class="ttdeci">void app_init(void)</div><div class="ttdoc">Main entry point to the application.</div><div class="ttdef"><b>Definition:</b> <a href="softap_8c_source.html#l00374">softap.c:374</a></div></div>
|
|
<div class="ttc" id="asoftap_8c_html_ae28ad90e7b7d10c49a756acf122557a9"><div class="ttname"><a href="softap_8c.html#ae28ad90e7b7d10c49a756acf122557a9">opaque_argument_value</a></div><div class="ttdeci">uint32_t opaque_argument_value</div><div class="ttdoc">A throw away variable for checking that the opaque argument is correct.</div><div class="ttdef"><b>Definition:</b> <a href="softap_8c_source.html#l00123">softap.c:123</a></div></div>
|
|
<div class="ttc" id="asoftap_8c_html_ae496862cb8fd65fe7158086f51f64a39"><div class="ttname"><a href="softap_8c.html#ae496862cb8fd65fe7158086f51f64a39">STATIC_LOCAL_IP</a></div><div class="ttdeci">#define STATIC_LOCAL_IP</div><div class="ttdoc">Statically configured IP address.</div><div class="ttdef"><b>Definition:</b> <a href="softap_8c_source.html#l00034">softap.c:34</a></div></div>
|
|
<div class="ttc" id="asoftap_8c_html_af599cff3498cc039cb6b26667dcbe2ec"><div class="ttname"><a href="softap_8c.html#af599cff3498cc039cb6b26667dcbe2ec">load_mmwlan_settings_softap</a></div><div class="ttdeci">static void load_mmwlan_settings_softap(void)</div><div class="ttdoc">Loads various WLAN Soft AP specific settings from config store and applies them.</div><div class="ttdef"><b>Definition:</b> <a href="softap_8c_source.html#l00319">softap.c:319</a></div></div>
|
|
<div class="ttc" id="asoftap_8c_html_afbb90b1626b5534c31c8de89b2bf7654"><div class="ttname"><a href="softap_8c.html#afbb90b1626b5534c31c8de89b2bf7654">load_mmwlan_softap_args</a></div><div class="ttdeci">void load_mmwlan_softap_args(struct mmwlan_softap_args *softap_args)</div><div class="ttdoc">Loads the provided structure with initialization parameters read from config store.</div><div class="ttdef"><b>Definition:</b> <a href="softap_8c_source.html#l00177">softap.c:177</a></div></div>
|
|
<div class="ttc" id="astructmmipal__init__args_html"><div class="ttname"><a href="structmmipal__init__args.html">mmipal_init_args</a></div><div class="ttdoc">Initialize arguments structure.</div><div class="ttdef"><b>Definition:</b> <a href="mmipal_8h_source.html#l00148">mmipal.h:149</a></div></div>
|
|
<div class="ttc" id="astructmmipal__init__args_html_a039c9ce0adac0886490ab31f47802620"><div class="ttname"><a href="structmmipal__init__args.html#a039c9ce0adac0886490ab31f47802620">mmipal_init_args::ip6_mode</a></div><div class="ttdeci">enum mmipal_ip6_addr_mode ip6_mode</div><div class="ttdoc">IPv6 address allocation mode to use.</div><div class="ttdef"><b>Definition:</b> <a href="mmipal_8h_source.html#l00160">mmipal.h:160</a></div></div>
|
|
<div class="ttc" id="astructmmipal__init__args_html_a9c47221066842695ba9aa83beab4c6b4"><div class="ttname"><a href="structmmipal__init__args.html#a9c47221066842695ba9aa83beab4c6b4">mmipal_init_args::gateway_addr</a></div><div class="ttdeci">mmipal_ip_addr_t gateway_addr</div><div class="ttdoc">Gateway IP address to use (if mode is MMIPAL_STATIC).</div><div class="ttdef"><b>Definition:</b> <a href="mmipal_8h_source.html#l00157">mmipal.h:157</a></div></div>
|
|
<div class="ttc" id="astructmmipal__init__args_html_aa8ea6f4bfc27973166408ca9022c9f1b"><div class="ttname"><a href="structmmipal__init__args.html#aa8ea6f4bfc27973166408ca9022c9f1b">mmipal_init_args::mode</a></div><div class="ttdeci">enum mmipal_addr_mode mode</div><div class="ttdoc">IP address allocation mode to use.</div><div class="ttdef"><b>Definition:</b> <a href="mmipal_8h_source.html#l00151">mmipal.h:151</a></div></div>
|
|
<div class="ttc" id="astructmmipal__init__args_html_adb4e68a901669a22eb9971a492db1fae"><div class="ttname"><a href="structmmipal__init__args.html#adb4e68a901669a22eb9971a492db1fae">mmipal_init_args::netmask</a></div><div class="ttdeci">mmipal_ip_addr_t netmask</div><div class="ttdoc">Netmask to use (if mode is MMIPAL_STATIC).</div><div class="ttdef"><b>Definition:</b> <a href="mmipal_8h_source.html#l00155">mmipal.h:155</a></div></div>
|
|
<div class="ttc" id="astructmmipal__init__args_html_af0a945121c03bea2d9d68274a8cd4821"><div class="ttname"><a href="structmmipal__init__args.html#af0a945121c03bea2d9d68274a8cd4821">mmipal_init_args::ip_addr</a></div><div class="ttdeci">mmipal_ip_addr_t ip_addr</div><div class="ttdoc">IP address to use (if mode is MMIPAL_STATIC).</div><div class="ttdef"><b>Definition:</b> <a href="mmipal_8h_source.html#l00153">mmipal.h:153</a></div></div>
|
|
<div class="ttc" id="astructmmwlan__softap__args_html"><div class="ttname"><a href="structmmwlan__softap__args.html">mmwlan_softap_args</a></div><div class="ttdoc">Arguments data structure for mmwlan_softap_enable().</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l01323">mmwlan.h:1324</a></div></div>
|
|
<div class="ttc" id="astructmmwlan__softap__args_html_a006950c5a9641eb8de48281dd6e009d6"><div class="ttname"><a href="structmmwlan__softap__args.html#a006950c5a9641eb8de48281dd6e009d6">mmwlan_softap_args::passphrase</a></div><div class="ttdeci">char passphrase[MMWLAN_PASSPHRASE_MAXLEN+1]</div><div class="ttdoc">Passphrase (only used if security_type is MMWLAN_SAE, otherwise ignored.</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l01338">mmwlan.h:1338</a></div></div>
|
|
<div class="ttc" id="astructmmwlan__softap__args_html_a0754fc595a0290b66a5a418f6edcf3b3"><div class="ttname"><a href="structmmwlan__softap__args.html#a0754fc595a0290b66a5a418f6edcf3b3">mmwlan_softap_args::bssid</a></div><div class="ttdeci">uint8_t bssid[MMWLAN_MAC_ADDR_LEN]</div><div class="ttdoc">Optional BSSID of the AP.</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l01334">mmwlan.h:1334</a></div></div>
|
|
<div class="ttc" id="astructmmwlan__softap__args_html_a224da1075f109b24db584dcf0ff20e83"><div class="ttname"><a href="structmmwlan__softap__args.html#a224da1075f109b24db584dcf0ff20e83">mmwlan_softap_args::passphrase_len</a></div><div class="ttdeci">uint16_t passphrase_len</div><div class="ttdoc">Length of passphrase.</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l01340">mmwlan.h:1340</a></div></div>
|
|
<div class="ttc" id="astructmmwlan__softap__args_html_a32caef7a6ce3f4849a1ae4cdd399e63f"><div class="ttname"><a href="structmmwlan__softap__args.html#a32caef7a6ce3f4849a1ae4cdd399e63f">mmwlan_softap_args::op_class</a></div><div class="ttdeci">uint16_t op_class</div><div class="ttdoc">Operating Class to use (S1G or Global).</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l01355">mmwlan.h:1355</a></div></div>
|
|
<div class="ttc" id="astructmmwlan__softap__args_html_a35782cf6499a51318451169697441513"><div class="ttname"><a href="structmmwlan__softap__args.html#a35782cf6499a51318451169697441513">mmwlan_softap_args::pri_1mhz_chan_idx</a></div><div class="ttdeci">uint8_t pri_1mhz_chan_idx</div><div class="ttdoc">Index of the primary 1 Mhz channel within the operating channel.</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l01387">mmwlan.h:1387</a></div></div>
|
|
<div class="ttc" id="astructmmwlan__softap__args_html_a3fde38576b8ec07ec772c3404f2d9998"><div class="ttname"><a href="structmmwlan__softap__args.html#a3fde38576b8ec07ec772c3404f2d9998">mmwlan_softap_args::sta_status_cb</a></div><div class="ttdeci">mmwlan_softap_sta_status_cb_t sta_status_cb</div><div class="ttdoc">Optional callback to be invoked when the status of a connected STA changes.</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l01392">mmwlan.h:1392</a></div></div>
|
|
<div class="ttc" id="astructmmwlan__softap__args_html_a6580bfe0c7e7ef0aa1a3eb6f8ae1c05b"><div class="ttname"><a href="structmmwlan__softap__args.html#a6580bfe0c7e7ef0aa1a3eb6f8ae1c05b">mmwlan_softap_args::pri_bw_mhz</a></div><div class="ttdeci">uint8_t pri_bw_mhz</div><div class="ttdoc">Bandwidth to use for the primary channel.</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l01382">mmwlan.h:1382</a></div></div>
|
|
<div class="ttc" id="astructmmwlan__softap__args_html_a7bf30c8c60c4eada02b1e3df54e96a46"><div class="ttname"><a href="structmmwlan__softap__args.html#a7bf30c8c60c4eada02b1e3df54e96a46">mmwlan_softap_args::s1g_chan_num</a></div><div class="ttdeci">uint16_t s1g_chan_num</div><div class="ttdoc">S1G channel number of the channel to use.</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l01363">mmwlan.h:1363</a></div></div>
|
|
<div class="ttc" id="astructmmwlan__softap__args_html_a9771bd79c1814b6b194703376b3bcc42"><div class="ttname"><a href="structmmwlan__softap__args.html#a9771bd79c1814b6b194703376b3bcc42">mmwlan_softap_args::ssid_len</a></div><div class="ttdeci">uint16_t ssid_len</div><div class="ttdoc">Length of the SSID.</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l01328">mmwlan.h:1328</a></div></div>
|
|
<div class="ttc" id="astructmmwlan__softap__args_html_a9cc599366f01d3e13443b668c63d3a2c"><div class="ttname"><a href="structmmwlan__softap__args.html#a9cc599366f01d3e13443b668c63d3a2c">mmwlan_softap_args::pmf_mode</a></div><div class="ttdeci">enum mmwlan_pmf_mode pmf_mode</div><div class="ttdoc">Protected Management Frame mode to use (802.11w)</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l01342">mmwlan.h:1342</a></div></div>
|
|
<div class="ttc" id="astructmmwlan__softap__args_html_aa157c7f4071c22c11efd3ce56361731e"><div class="ttname"><a href="structmmwlan__softap__args.html#aa157c7f4071c22c11efd3ce56361731e">mmwlan_softap_args::sta_status_cb_arg</a></div><div class="ttdeci">void * sta_status_cb_arg</div><div class="ttdoc">Optional opaque argument to be passed to sta_status_cb.</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l01397">mmwlan.h:1397</a></div></div>
|
|
<div class="ttc" id="astructmmwlan__softap__args_html_af373fa1f49bccb7aee8dba3382c2eafa"><div class="ttname"><a href="structmmwlan__softap__args.html#af373fa1f49bccb7aee8dba3382c2eafa">mmwlan_softap_args::ssid</a></div><div class="ttdeci">uint8_t ssid[MMWLAN_SSID_MAXLEN]</div><div class="ttdoc">SSID of the AP.</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l01326">mmwlan.h:1326</a></div></div>
|
|
<div class="ttc" id="astructmmwlan__softap__args_html_af37ae5ad0b555e989111ac9e23e93ff3"><div class="ttname"><a href="structmmwlan__softap__args.html#af37ae5ad0b555e989111ac9e23e93ff3">mmwlan_softap_args::security_type</a></div><div class="ttdeci">enum mmwlan_security_type security_type</div><div class="ttdoc">Type of security to use.</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l01336">mmwlan.h:1336</a></div></div>
|
|
<div class="ttc" id="astructmmwlan__softap__sta__status_html"><div class="ttname"><a href="structmmwlan__softap__sta__status.html">mmwlan_softap_sta_status</a></div><div class="ttdoc">Data structure for communicating STA status information for stations connected to a Soft AP.</div><div class="ttdef"><b>Definition:</b> <a href="mmwlan_8h_source.html#l01288">mmwlan.h:1289</a></div></div>
|
|
</div><!-- fragment --></div><!-- contents -->
|
|
</div><!-- doc-content -->
|
|
<!-- HTML footer for doxygen 1.8.17-->
|
|
<!-- start footer part -->
|
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
|
<ul>
|
|
<li class="navelem"><a class="el" href="dir_91b8f418cff946e8d8b598a9068417a8.html">examples</a></li><li class="navelem"><a class="el" href="dir_975e5c6803985f7c6bfdd815b6cfd6a2.html">softap</a></li><li class="navelem"><a class="el" href="dir_181fe3a04df850a872be22dd3f8a2cb3.html">src</a></li><li class="navelem"><a class="el" href="softap_8c.html">softap.c</a></li>
|
|
<li class="footer">Copyright 2021 Morse Micro </li>
|
|
</ul>
|
|
</div>
|
|
</body>
|
|
</html>
|