struct fst_group *g;
struct fst_iface *iface = NULL;
struct wpabuf *mbies;
- int ret;
if (fst_read_next_text_param(params, ifname, sizeof(ifname), &endp) ||
!*ifname)
if (!mbies)
goto problem;
- ret = print_mb_ies(mbies, buf, buflen);
- if ((size_t) ret != wpabuf_len(mbies) * 2)
- fst_printf(MSG_WARNING, "MB IEs copied only partially");
-
- return ret;
+ return wpa_snprintf_hex(buf, buflen, wpabuf_head(mbies),
+ wpabuf_len(mbies));
problem:
return os_snprintf(buf, buflen, "FAIL\n");
}
-int print_mb_ies(struct wpabuf *mbies, char *buf, size_t buflen)
-{
- const u8 *p = wpabuf_head(mbies);
- size_t s = wpabuf_len(mbies);
- int ret = 0;
-
- while ((size_t) ret < buflen && s--) {
- int res;
-
- res = os_snprintf(buf + ret, buflen - ret, "%02x", *p++);
- if (os_snprintf_error(buflen - ret, res))
- break;
- ret += res;
- }
-
- return ret;
-}
-
-
static const char * band_freq(enum mb_band_id band)
{
static const char *band_names[] = {
if (wpabuf) {
ret += os_snprintf(buf + ret, buflen - ret, "band%u_mb_ies=",
num);
- ret += print_mb_ies(wpabuf, buf + ret, buflen - ret);
+ ret += wpa_snprintf_hex(buf + ret, buflen - ret,
+ wpabuf_head(wpabuf),
+ wpabuf_len(wpabuf));
ret += os_snprintf(buf + ret, buflen - ret, "\n");
}
ret += os_snprintf(buf + ret, buflen - ret, "band%u_fst_group_id=%s\n",
#endif /* CONFIG_FST */
-
-int print_mb_ies(struct wpabuf *mbies, char *buf, size_t buflen);
-
int fst_read_next_int_param(const char *params, Boolean *valid, char **endp);
int fst_read_next_text_param(const char *params, char *buf, size_t buflen,
char **endp);
char ifname[FST_MAX_COMMAND_WORD_NAME_LENGTH];
struct fst_group *g;
struct fst_iface *iface;
- int ret;
if (fst_read_next_text_param(request, ifname, sizeof(ifname), &endp) ||
!*ifname)
iface = fst_group_get_iface_by_name(g, ifname);
if (!iface || !iface->mb_ie)
goto problem;
- ret = print_mb_ies(iface->mb_ie, buf, buflen);
- if ((size_t) ret != wpabuf_len(iface->mb_ie) * 2)
- fst_printf(MSG_WARNING, "MB IEs copied only partially");
- return ret;
+ return wpa_snprintf_hex(buf, buflen, wpabuf_head(iface->mb_ie),
+ wpabuf_len(iface->mb_ie));
problem:
return os_snprintf(buf, buflen, "FAIL\n");