252-disable_ctrl_iface_mib.patch 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243
  1. From: Felix Fietkau <[email protected]>
  2. Date: Fri, 18 Mar 2011 02:15:52 +0000
  3. Subject: [PATCH] Remove some unnecessary control interface functionality
  4. --- a/hostapd/Makefile
  5. +++ b/hostapd/Makefile
  6. @@ -221,6 +221,9 @@ endif
  7. ifdef CONFIG_NO_CTRL_IFACE
  8. CFLAGS += -DCONFIG_NO_CTRL_IFACE
  9. else
  10. +ifdef CONFIG_CTRL_IFACE_MIB
  11. +CFLAGS += -DCONFIG_CTRL_IFACE_MIB
  12. +endif
  13. ifeq ($(CONFIG_CTRL_IFACE), udp)
  14. CFLAGS += -DCONFIG_CTRL_IFACE_UDP
  15. else
  16. --- a/hostapd/ctrl_iface.c
  17. +++ b/hostapd/ctrl_iface.c
  18. @@ -3897,6 +3897,7 @@ static int hostapd_ctrl_iface_receive_pr
  19. reply_size);
  20. } else if (os_strcmp(buf, "STATUS-DRIVER") == 0) {
  21. reply_len = hostapd_drv_status(hapd, reply, reply_size);
  22. +#ifdef CONFIG_CTRL_IFACE_MIB
  23. } else if (os_strcmp(buf, "MIB") == 0) {
  24. reply_len = ieee802_11_get_mib(hapd, reply, reply_size);
  25. if (reply_len >= 0) {
  26. @@ -3938,6 +3939,7 @@ static int hostapd_ctrl_iface_receive_pr
  27. } else if (os_strncmp(buf, "STA-NEXT ", 9) == 0) {
  28. reply_len = hostapd_ctrl_iface_sta_next(hapd, buf + 9, reply,
  29. reply_size);
  30. +#endif
  31. } else if (os_strcmp(buf, "ATTACH") == 0) {
  32. if (hostapd_ctrl_iface_attach(hapd, from, fromlen, NULL))
  33. reply_len = -1;
  34. --- a/src/ap/ctrl_iface_ap.c
  35. +++ b/src/ap/ctrl_iface_ap.c
  36. @@ -26,6 +26,26 @@
  37. #include "taxonomy.h"
  38. #include "wnm_ap.h"
  39. +static const char * hw_mode_str(enum hostapd_hw_mode mode)
  40. +{
  41. + switch (mode) {
  42. + case HOSTAPD_MODE_IEEE80211B:
  43. + return "b";
  44. + case HOSTAPD_MODE_IEEE80211G:
  45. + return "g";
  46. + case HOSTAPD_MODE_IEEE80211A:
  47. + return "a";
  48. + case HOSTAPD_MODE_IEEE80211AD:
  49. + return "ad";
  50. + case HOSTAPD_MODE_IEEE80211ANY:
  51. + return "any";
  52. + case NUM_HOSTAPD_MODES:
  53. + return "invalid";
  54. + }
  55. + return "unknown";
  56. +}
  57. +
  58. +#ifdef CONFIG_CTRL_IFACE_MIB
  59. static size_t hostapd_write_ht_mcs_bitmask(char *buf, size_t buflen,
  60. size_t curr_len, const u8 *mcs_set)
  61. @@ -212,26 +232,6 @@ static const char * timeout_next_str(int
  62. }
  63. -static const char * hw_mode_str(enum hostapd_hw_mode mode)
  64. -{
  65. - switch (mode) {
  66. - case HOSTAPD_MODE_IEEE80211B:
  67. - return "b";
  68. - case HOSTAPD_MODE_IEEE80211G:
  69. - return "g";
  70. - case HOSTAPD_MODE_IEEE80211A:
  71. - return "a";
  72. - case HOSTAPD_MODE_IEEE80211AD:
  73. - return "ad";
  74. - case HOSTAPD_MODE_IEEE80211ANY:
  75. - return "any";
  76. - case NUM_HOSTAPD_MODES:
  77. - return "invalid";
  78. - }
  79. - return "unknown";
  80. -}
  81. -
  82. -
  83. static int hostapd_ctrl_iface_sta_mib(struct hostapd_data *hapd,
  84. struct sta_info *sta,
  85. char *buf, size_t buflen)
  86. @@ -539,6 +539,7 @@ int hostapd_ctrl_iface_sta_next(struct h
  87. return hostapd_ctrl_iface_sta_mib(hapd, sta->next, buf, buflen);
  88. }
  89. +#endif
  90. #ifdef CONFIG_P2P_MANAGER
  91. static int p2p_manager_disconnect(struct hostapd_data *hapd, u16 stype,
  92. @@ -951,12 +952,12 @@ int hostapd_ctrl_iface_status(struct hos
  93. return len;
  94. len += ret;
  95. }
  96. -
  97. +#ifdef CONFIG_CTRL_IFACE_MIB
  98. if (iface->conf->ieee80211n && !hapd->conf->disable_11n && mode) {
  99. len = hostapd_write_ht_mcs_bitmask(buf, buflen, len,
  100. mode->mcs_set);
  101. }
  102. -
  103. +#endif /* CONFIG_CTRL_IFACE_MIB */
  104. if (iface->current_rates && iface->num_rates) {
  105. ret = os_snprintf(buf + len, buflen - len, "supported_rates=");
  106. if (os_snprintf_error(buflen - len, ret))
  107. --- a/src/ap/ieee802_1x.c
  108. +++ b/src/ap/ieee802_1x.c
  109. @@ -2837,6 +2837,7 @@ static const char * bool_txt(bool val)
  110. return val ? "TRUE" : "FALSE";
  111. }
  112. +#ifdef CONFIG_CTRL_IFACE_MIB
  113. int ieee802_1x_get_mib(struct hostapd_data *hapd, char *buf, size_t buflen)
  114. {
  115. @@ -3023,6 +3024,7 @@ int ieee802_1x_get_mib_sta(struct hostap
  116. return len;
  117. }
  118. +#endif
  119. #ifdef CONFIG_HS20
  120. static void ieee802_1x_wnm_notif_send(void *eloop_ctx, void *timeout_ctx)
  121. --- a/src/ap/wpa_auth.c
  122. +++ b/src/ap/wpa_auth.c
  123. @@ -5583,6 +5583,7 @@ static const char * wpa_bool_txt(int val
  124. return val ? "TRUE" : "FALSE";
  125. }
  126. +#ifdef CONFIG_CTRL_IFACE_MIB
  127. #define RSN_SUITE "%02x-%02x-%02x-%d"
  128. #define RSN_SUITE_ARG(s) \
  129. @@ -5735,7 +5736,7 @@ int wpa_get_mib_sta(struct wpa_state_mac
  130. return len;
  131. }
  132. -
  133. +#endif
  134. void wpa_auth_countermeasures_start(struct wpa_authenticator *wpa_auth)
  135. {
  136. --- a/src/rsn_supp/wpa.c
  137. +++ b/src/rsn_supp/wpa.c
  138. @@ -3943,6 +3943,8 @@ static u32 wpa_key_mgmt_suite(struct wpa
  139. }
  140. +#ifdef CONFIG_CTRL_IFACE_MIB
  141. +
  142. #define RSN_SUITE "%02x-%02x-%02x-%d"
  143. #define RSN_SUITE_ARG(s) \
  144. ((s) >> 24) & 0xff, ((s) >> 16) & 0xff, ((s) >> 8) & 0xff, (s) & 0xff
  145. @@ -4024,6 +4026,7 @@ int wpa_sm_get_mib(struct wpa_sm *sm, ch
  146. return (int) len;
  147. }
  148. +#endif
  149. #endif /* CONFIG_CTRL_IFACE */
  150. --- a/wpa_supplicant/Makefile
  151. +++ b/wpa_supplicant/Makefile
  152. @@ -1038,6 +1038,9 @@ ifdef CONFIG_FILS
  153. OBJS += ../src/ap/fils_hlp.o
  154. endif
  155. ifdef CONFIG_CTRL_IFACE
  156. +ifdef CONFIG_CTRL_IFACE_MIB
  157. +CFLAGS += -DCONFIG_CTRL_IFACE_MIB
  158. +endif
  159. OBJS += ../src/ap/ctrl_iface_ap.o
  160. endif
  161. --- a/wpa_supplicant/ap.c
  162. +++ b/wpa_supplicant/ap.c
  163. @@ -1520,7 +1520,7 @@ int wpas_ap_wps_nfc_report_handover(stru
  164. #endif /* CONFIG_WPS */
  165. -#ifdef CONFIG_CTRL_IFACE
  166. +#if defined(CONFIG_CTRL_IFACE) && defined(CONFIG_CTRL_IFACE_MIB)
  167. int ap_ctrl_iface_sta_first(struct wpa_supplicant *wpa_s,
  168. char *buf, size_t buflen)
  169. --- a/wpa_supplicant/ctrl_iface.c
  170. +++ b/wpa_supplicant/ctrl_iface.c
  171. @@ -2355,7 +2355,7 @@ static int wpa_supplicant_ctrl_iface_sta
  172. pos += ret;
  173. }
  174. -#ifdef CONFIG_AP
  175. +#if defined(CONFIG_AP) && defined(CONFIG_CTRL_IFACE_MIB)
  176. if (wpa_s->ap_iface) {
  177. pos += ap_ctrl_iface_wpa_get_status(wpa_s, pos,
  178. end - pos,
  179. @@ -12542,6 +12542,7 @@ char * wpa_supplicant_ctrl_iface_process
  180. reply_len = -1;
  181. } else if (os_strncmp(buf, "NOTE ", 5) == 0) {
  182. wpa_printf(MSG_INFO, "NOTE: %s", buf + 5);
  183. +#ifdef CONFIG_CTRL_IFACE_MIB
  184. } else if (os_strcmp(buf, "MIB") == 0) {
  185. reply_len = wpa_sm_get_mib(wpa_s->wpa, reply, reply_size);
  186. if (reply_len >= 0) {
  187. @@ -12554,6 +12555,7 @@ char * wpa_supplicant_ctrl_iface_process
  188. reply_size - reply_len);
  189. #endif /* CONFIG_MACSEC */
  190. }
  191. +#endif
  192. } else if (os_strncmp(buf, "STATUS", 6) == 0) {
  193. reply_len = wpa_supplicant_ctrl_iface_status(
  194. wpa_s, buf + 6, reply, reply_size);
  195. @@ -13042,6 +13044,7 @@ char * wpa_supplicant_ctrl_iface_process
  196. reply_len = wpa_supplicant_ctrl_iface_bss(
  197. wpa_s, buf + 4, reply, reply_size);
  198. #ifdef CONFIG_AP
  199. +#ifdef CONFIG_CTRL_IFACE_MIB
  200. } else if (os_strcmp(buf, "STA-FIRST") == 0) {
  201. reply_len = ap_ctrl_iface_sta_first(wpa_s, reply, reply_size);
  202. } else if (os_strncmp(buf, "STA ", 4) == 0) {
  203. @@ -13050,12 +13053,15 @@ char * wpa_supplicant_ctrl_iface_process
  204. } else if (os_strncmp(buf, "STA-NEXT ", 9) == 0) {
  205. reply_len = ap_ctrl_iface_sta_next(wpa_s, buf + 9, reply,
  206. reply_size);
  207. +#endif
  208. +#ifdef CONFIG_CTRL_IFACE_MIB
  209. } else if (os_strncmp(buf, "DEAUTHENTICATE ", 15) == 0) {
  210. if (ap_ctrl_iface_sta_deauthenticate(wpa_s, buf + 15))
  211. reply_len = -1;
  212. } else if (os_strncmp(buf, "DISASSOCIATE ", 13) == 0) {
  213. if (ap_ctrl_iface_sta_disassociate(wpa_s, buf + 13))
  214. reply_len = -1;
  215. +#endif
  216. } else if (os_strncmp(buf, "CHAN_SWITCH ", 12) == 0) {
  217. if (ap_ctrl_iface_chanswitch(wpa_s, buf + 12))
  218. reply_len = -1;