Lines Matching defs:buf
107 int prot, struct wpabuf *buf);
472 struct wpabuf *buf;
487 buf = wpabuf_alloc(len);
488 if (!buf) {
493 pos = wpabuf_put(buf, len);
500 wpabuf_free(buf);
506 pos = wpabuf_mhead(buf);
508 buf->used--;
511 return buf;
585 const u8 *buf, size_t len)
603 pkey = dpp_set_pubkey_point_group(group, buf, buf + len / 2,
649 u8 buf[200];
665 if (EVP_PKEY_derive(ctx, buf, secret_len) != 1) {
677 buf, *secret_len);
678 os_memcpy(secret, buf, *secret_len);
679 forced_memzero(buf, sizeof(buf));
722 const u8 * dpp_get_attr(const u8 *buf, size_t len, u16 req_id, u16 *ret_len)
725 const u8 *pos = buf, *end = buf + len;
745 int dpp_check_attrs(const u8 *buf, size_t len)
750 pos = buf;
751 end = buf + len;
976 char buf[100];
1046 res = OBJ_obj2txt(buf, sizeof(buf), ppkalg, 0);
1047 if (res < 0 || (size_t) res >= sizeof(buf)) {
1052 wpa_printf(MSG_DEBUG, "DPP: URI subjectPublicKey algorithm: %s", buf);
1053 if (os_strcmp(buf, "id-ecPublicKey") != 0) {
1066 res = OBJ_obj2txt(buf, sizeof(buf), poid, 0);
1067 if (res < 0 || (size_t) res >= sizeof(buf)) {
1072 wpa_printf(MSG_DEBUG, "DPP: URI subjectPublicKey parameters: %s", buf);
1077 buf);
2466 static void dpp_write_adv_proto(struct wpabuf *buf)
2469 wpabuf_put_u8(buf, WLAN_EID_ADV_PROTO);
2470 wpabuf_put_u8(buf, 8); /* Length */
2471 wpabuf_put_u8(buf, 0x7f);
2472 wpabuf_put_u8(buf, WLAN_EID_VENDOR_SPECIFIC);
2473 wpabuf_put_u8(buf, 5);
2474 wpabuf_put_be24(buf, OUI_WFA);
2475 wpabuf_put_u8(buf, DPP_OUI_TYPE);
2476 wpabuf_put_u8(buf, 0x01);
2480 static void dpp_write_gas_query(struct wpabuf *buf, struct wpabuf *query)
2483 wpabuf_put_le16(buf, wpabuf_len(query));
2484 wpabuf_put_buf(buf, query);
2491 struct wpabuf *buf, *conf_req;
2500 buf = gas_build_initial_req(0, 10 + 2 + wpabuf_len(conf_req));
2501 if (!buf) {
2506 dpp_write_adv_proto(buf);
2507 dpp_write_gas_query(buf, conf_req);
2509 wpa_hexdump_buf(MSG_MSGDUMP, "DPP: GAS Config Request", buf);
2511 return buf;
4486 struct wpabuf *buf;
4494 buf = wpabuf_alloc(200 + tailroom);
4495 if (!buf)
4497 wpabuf_put_str(buf, "{\"wi-fi_tech\":\"infra\",\"discovery\":");
4502 wpabuf_put_str(buf, auth->discovery_override);
4503 wpabuf_put_u8(buf, ',');
4504 return buf;
4507 wpabuf_put_str(buf, "{\"ssid\":\"");
4510 wpabuf_put_str(buf, ssid);
4511 wpabuf_put_str(buf, "\"},");
4513 return buf;
4517 static int dpp_build_jwk(struct wpabuf *buf, const char *name, EVP_PKEY *key,
4535 wpabuf_put_str(buf, "\"");
4536 wpabuf_put_str(buf, name);
4537 wpabuf_put_str(buf, "\":{\"kty\":\"EC\",\"crv\":\"");
4538 wpabuf_put_str(buf, curve->jwk_crv);
4539 wpabuf_put_str(buf, "\",\"x\":\"");
4540 wpabuf_put_str(buf, x);
4541 wpabuf_put_str(buf, "\",\"y\":\"");
4542 wpabuf_put_str(buf, y);
4544 wpabuf_put_str(buf, "\",\"kid\":\"");
4545 wpabuf_put_str(buf, kid);
4547 wpabuf_put_str(buf, "\"}");
4557 static void dpp_build_legacy_cred_params(struct wpabuf *buf,
4565 wpabuf_put_str(buf, "\"pass\":\"");
4566 wpabuf_put_str(buf, pass);
4567 wpabuf_put_str(buf, "\"");
4574 wpabuf_put_str(buf, "\"psk_hex\":\"");
4575 wpabuf_put_str(buf, psk);
4576 wpabuf_put_str(buf, "\"");
4586 struct wpabuf *buf = NULL;
4752 buf = dpp_build_conf_start(auth, conf, tailroom);
4753 if (!buf)
4756 wpabuf_printf(buf, "\"cred\":{\"akm\":\"%s\",", dpp_akm_str(akm));
4758 dpp_build_legacy_cred_params(buf, conf);
4759 wpabuf_put_str(buf, ",");
4761 wpabuf_put_str(buf, "\"signedConnector\":\"");
4762 wpabuf_put_str(buf, signed1);
4763 wpabuf_put_u8(buf, '.');
4764 wpabuf_put_str(buf, signed2);
4765 wpabuf_put_u8(buf, '.');
4766 wpabuf_put_str(buf, signed3);
4767 wpabuf_put_str(buf, "\",");
4768 if (dpp_build_jwk(buf, "csign", auth->conf->csign, auth->conf->kid,
4774 wpabuf_put_str(buf, "}}");
4777 wpabuf_head(buf), wpabuf_len(buf));
4787 return buf;
4790 wpabuf_free(buf);
4791 buf = NULL;
4800 struct wpabuf *buf;
4802 buf = dpp_build_conf_start(auth, conf, 1000);
4803 if (!buf)
4806 wpabuf_printf(buf, "\"cred\":{\"akm\":\"%s\",", dpp_akm_str(conf->akm));
4807 dpp_build_legacy_cred_params(buf, conf);
4808 wpabuf_put_str(buf, "}}");
4811 wpabuf_head(buf), wpabuf_len(buf));
4813 return buf;
6162 int dpp_configurator_get_key(const struct dpp_configurator *conf, char *buf,
6178 ret = wpa_snprintf_hex(buf, buflen, key, key_len);
7258 const u8 *buf, size_t len)
7296 attr_id = dpp_get_attr(buf, len, DPP_ATTR_CODE_IDENTIFIER,
7301 attr_group = dpp_get_attr(buf, len, DPP_ATTR_FINITE_CYCLIC_GROUP,
7326 attr_key = dpp_get_attr(buf, len, DPP_ATTR_ENCRYPTED_KEY,
7597 const u8 *buf, size_t buflen)
7635 attr_status = dpp_get_attr(buf, buflen, DPP_ATTR_STATUS,
7644 attr_group = dpp_get_attr(buf, buflen,
7661 attr_id = dpp_get_attr(buf, buflen, DPP_ATTR_CODE_IDENTIFIER,
7670 attr_key = dpp_get_attr(buf, buflen, DPP_ATTR_ENCRYPTED_KEY,
7898 const u8 *buf, size_t buflen)
7928 wrapped_data = dpp_get_attr(buf, buflen, DPP_ATTR_WRAPPED_DATA,
8062 const u8 *buf, size_t buflen)
8091 wrapped_data = dpp_get_attr(buf, buflen, DPP_ATTR_WRAPPED_DATA,
8708 char *buf, size_t buflen)
8716 return dpp_configurator_get_key(conf, buf, buflen);
8953 struct wpabuf *buf;
8970 buf = dpp_build_conf_req(auth, json);
8971 if (!buf) {
8979 conn->msg_out = wpabuf_alloc(4 + wpabuf_len(buf) - 1);
8981 wpabuf_free(buf);
8984 wpabuf_put_be32(conn->msg_out, wpabuf_len(buf) - 1);
8985 wpabuf_put_data(conn->msg_out, wpabuf_head_u8(buf) + 1,
8986 wpabuf_len(buf) - 1);
8987 wpabuf_free(buf);
9144 static struct wpabuf * dpp_tcp_encaps(const u8 *hdr, const u8 *buf, size_t len)
9154 wpabuf_put_data(msg, buf, len);
9161 const u8 *buf, size_t len)
9169 conn->msg_out = dpp_tcp_encaps(hdr, buf, len);
9185 const u8 *buf, size_t len, unsigned int freq,
9203 return dpp_relay_tx(conn, hdr, buf, len);
9221 conn->msg_out = dpp_tcp_encaps(hdr, buf, len);
9296 const u8 *hdr, const u8 *buf, size_t len)
9307 r_bootstrap = dpp_get_attr(buf, len, DPP_ATTR_R_BOOTSTRAP_KEY_HASH,
9317 i_bootstrap = dpp_get_attr(buf, len, DPP_ATTR_I_BOOTSTRAP_KEY_HASH,
9346 peer_bi, own_bi, -1, hdr, buf, len);
9383 const u8 *hdr, const u8 *buf, size_t len)
9393 msg = dpp_auth_resp_rx(auth, hdr, buf, len);
9433 const u8 *hdr, const u8 *buf, size_t len)
9445 if (dpp_auth_conf_rx(auth, hdr, buf, len) < 0) {
9456 const u8 *hdr, const u8 *buf,
9473 status = dpp_conf_result_rx(auth, hdr, buf, len);
9547 struct wpabuf *resp, *buf;
9592 buf = wpabuf_alloc(4 + 18 + wpabuf_len(resp));
9593 if (!buf) {
9598 wpabuf_put_be32(buf, 18 + wpabuf_len(resp));
9600 wpabuf_put_u8(buf, WLAN_PA_GAS_INITIAL_RESP);
9601 wpabuf_put_u8(buf, dialog_token);
9602 wpabuf_put_le16(buf, WLAN_STATUS_SUCCESS);
9603 wpabuf_put_le16(buf, 0); /* GAS Comeback Delay */
9605 dpp_write_adv_proto(buf);
9606 dpp_write_gas_query(buf, resp);
9611 wpa_hexdump_buf(MSG_MSGDUMP, "DPP: Outgoing TCP message", buf);
9614 conn->msg_out = buf;
9678 struct wpabuf *buf;
9724 buf = wpabuf_alloc(slen);
9725 if (!buf)
9727 wpabuf_put_data(buf, pos, slen);
9730 return dpp_tcp_rx_gas_resp(conn, buf);
9734 wpabuf_free(buf);
9739 dialog_token, 0, buf);