1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>ieee80211_iterate_active_interfaces_atomic</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="The 802.11 subsystems &#8211; for kernel developers"><link rel="up" href="multi-iface.html" title="Chapter&#160;13.&#160;Supporting multiple virtual interfaces"><link rel="prev" href="API-ieee80211-iterate-active-interfaces.html" title="ieee80211_iterate_active_interfaces"><link rel="next" href="station-handling.html" title="Chapter&#160;14.&#160;Station handling"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center"><span class="phrase">ieee80211_iterate_active_interfaces_atomic</span></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="API-ieee80211-iterate-active-interfaces.html">Prev</a>&#160;</td><th width="60%" align="center">Chapter&#160;13.&#160;Supporting multiple virtual interfaces</th><td width="20%" align="right">&#160;<a accesskey="n" href="station-handling.html">Next</a></td></tr></table><hr></div><div class="refentry"><a name="API-ieee80211-iterate-active-interfaces-atomic"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>ieee80211_iterate_active_interfaces_atomic &#8212; 
2  iterate active interfaces
3 </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">ieee80211_iterate_active_interfaces_atomic </b>(</code></td><td>struct ieee80211_hw * <var class="pdparam">hw</var>, </td></tr><tr><td>&#160;</td><td>u32 <var class="pdparam">iter_flags</var>, </td></tr><tr><td>&#160;</td><td>void (*<var class="pdparam">iterator</var>)
4     <code>(</code>void *data, 						    u8 *mac, 						    struct ieee80211_vif *vif<code>)</code>, </td></tr><tr><td>&#160;</td><td>void * <var class="pdparam">data</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">&#160;</div></div></div><div class="refsect1"><a name="idp1114225684"></a><h2>Arguments</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term"><em class="parameter"><code>hw</code></em></span></dt><dd><p>
5     the hardware struct of which the interfaces should be iterated over
6    </p></dd><dt><span class="term"><em class="parameter"><code>iter_flags</code></em></span></dt><dd><p>
7     iteration flags, see <span class="structname">enum</span> ieee80211_interface_iteration_flags
8    </p></dd><dt><span class="term"><em class="parameter"><code>iterator</code></em></span></dt><dd><p>
9     the iterator function to call, cannot sleep
10    </p></dd><dt><span class="term"><em class="parameter"><code>data</code></em></span></dt><dd><p>
11     first argument of the iterator function
12    </p></dd></dl></div></div><div class="refsect1"><a name="idp1114230692"></a><h2>Description</h2><p>
13   </p><p>
14
15   This function iterates over the interfaces associated with a given
16   hardware that are currently active and calls the callback for them.
17   This function requires the iterator callback function to be atomic,
18   if that is not desired, use <em class="parameter"><code>ieee80211_iterate_active_interfaces</code></em> instead.
19   Does not iterate over a new interface during <code class="function">add_interface</code>.
20</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="API-ieee80211-iterate-active-interfaces.html">Prev</a>&#160;</td><td width="20%" align="center"><a accesskey="u" href="multi-iface.html">Up</a></td><td width="40%" align="right">&#160;<a accesskey="n" href="station-handling.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"><span class="phrase">ieee80211_iterate_active_interfaces</span>&#160;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">&#160;Chapter&#160;14.&#160;Station handling</td></tr></table></div></body></html>
21