@@ -13,14 +13,16 @@ static int join_ocb(struct nl80211_state *state,
unsigned long freq;
char *end;
unsigned int i;
- static const struct {
- const char *name;
- unsigned int width;
- } *chanmode_selected, chanmode[] = {
+ const struct chanmode *chanmode_selected = NULL;
+ static const struct chanmode chanmode[] = {
{ .name = "5MHz",
- .width = NL80211_CHAN_WIDTH_5 },
+ .width = NL80211_CHAN_WIDTH_5,
+ .freq1_diff = 0,
+ .chantype = -1 },
{ .name = "10MHz",
- .width = NL80211_CHAN_WIDTH_10 },
+ .width = NL80211_CHAN_WIDTH_10,
+ .freq1_diff = 0,
+ .chantype = -1 },
};
if (argc < 2)
@@ -45,7 +47,8 @@ static int join_ocb(struct nl80211_state *state,
if (chanmode_selected) {
NLA_PUT_U32(msg, NL80211_ATTR_CHANNEL_WIDTH,
chanmode_selected->width);
- NLA_PUT_U32(msg, NL80211_ATTR_CENTER_FREQ1, freq);
+ NLA_PUT_U32(msg, NL80211_ATTR_CENTER_FREQ1,
+ get_cf1(chanmode_selected, freq));
argv++;
argc--;
The struct chanmode and the function get_cf1 is already used by ibss and mesh. Also use it for ocb to make it consistent for for all join functions. Signed-off-by: Sven Eckelmann <sven@open-mesh.com> --- v3: * split patch into two different patches (0001/0002) as request by Julian Calaby <julian.calaby@gmail.com> * change join_ocb to also use get_cf1 * move NOHT to the last entry in the mesh/ibss join usage texts as requested by Julian Calaby <julian.calaby@gmail.com> v2: * rebase from v4.3-ish version to current master ocb.c | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-)