| --- a/phy.c |
| +++ b/phy.c |
| @@ -855,3 +855,30 @@ static int handle_get_txq(struct nl80211 |
| COMMAND(get, txq, "", |
| NL80211_CMD_GET_WIPHY, 0, CIB_PHY, handle_get_txq, |
| "Get TXQ parameters."); |
| + |
| +static int handle_antenna_gain(struct nl80211_state *state, |
| + struct nl_msg *msg, |
| + int argc, char **argv, |
| + enum id_input id) |
| +{ |
| + char *endptr; |
| + int dbm; |
| + |
| + /* get the required args */ |
| + if (argc != 1) |
| + return 1; |
| + |
| + dbm = strtol(argv[0], &endptr, 10); |
| + if (*endptr) |
| + return 2; |
| + |
| + NLA_PUT_U32(msg, NL80211_ATTR_WIPHY_ANTENNA_GAIN, dbm); |
| + |
| + return 0; |
| + |
| + nla_put_failure: |
| + return -ENOBUFS; |
| +} |
| +COMMAND(set, antenna_gain, "<antenna gain in dBm>", |
| + NL80211_CMD_SET_WIPHY, 0, CIB_PHY, handle_antenna_gain, |
| + "Specify antenna gain."); |