Lines Matching defs:len
105 size_t len);
392 size_t num_elem, const u8 *addr[], const size_t *len,
396 return sha256_vector(num_elem, addr, len, mac);
398 return sha384_vector(num_elem, addr, len, mac);
400 return sha512_vector(num_elem, addr, len, mac);
426 const size_t *len, u8 *mac)
429 return hmac_sha256_vector(key, key_len, num_elem, addr, len,
432 return hmac_sha384_vector(key, key_len, num_elem, addr, len,
435 return hmac_sha512_vector(key, key_len, num_elem, addr, len,
454 static int dpp_bn2bin_pad(const BIGNUM *bn, u8 *pos, size_t len)
459 if ((size_t) num_bytes > len)
461 offset = len - num_bytes;
470 int len, res;
479 len = i2o_ECPublicKey(eckey, NULL);
480 if (len <= 0) {
487 buf = wpabuf_alloc(len);
493 pos = wpabuf_put(buf, len);
496 if (res != len) {
499 res, len);
507 os_memmove(pos, pos + 1, len - 1);
517 size_t len)
532 x = BN_bin2bn(buf_x, len, NULL);
533 y = BN_bin2bn(buf_y, len, NULL);
585 const u8 *buf, size_t len)
591 if (len & 1)
603 pkey = dpp_set_pubkey_point_group(group, buf, buf + len / 2,
604 len / 2);
705 size_t len)
709 msg = wpabuf_alloc(8 + len);
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)
751 end = buf + len;
759 wpa_printf(MSG_MSGDUMP, "DPP: Attribute ID %04x len %u",
1367 size_t len;
1392 len = EC_POINT_point2oct(group, point, POINT_CONVERSION_COMPRESSED,
1394 if (len == 0)
1397 der = OPENSSL_malloc(len);
1400 len = EC_POINT_point2oct(group, point, POINT_CONVERSION_COMPRESSED,
1401 der, len, ctx);
1406 bootstrap->pub_key->length = len;
1433 size_t len[1];
1442 len[0] = wpabuf_len(der);
1443 res = sha256_vector(1, addr, len, bi->pubkey_hash);
1459 size_t len;
1489 len = wpabuf_len(der);
1490 res = sha256_vector(1, addr, &len, bi->pubkey_hash);
1498 base64 = base64_encode(wpabuf_head(der), wpabuf_len(der), &len);
1504 end = pos + len;
1585 size_t len[3];
1601 len[num_elem] = auth->Mx_len;
1604 len[num_elem] = auth->Nx_len;
1613 len[num_elem] = auth->secret_len;
1617 num_elem, addr, len, prk);
1681 size_t len[2], siv_len, attr_len;
1803 len[0] = 3 + 1 + 1 + 1;
1804 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[0]", addr[0], len[0]);
1808 len[1] = attr_end - attr_start;
1809 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[1]", addr[1], len[1]);
1814 2, addr, len, wrapped_data) < 0) {
1858 size_t len[2], siv_len, attr_len;
1986 len[0] = 3 + 1 + 1 + 1;
1987 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[0]", addr[0], len[0]);
1991 len[1] = attr_end - attr_start;
1992 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[1]", addr[1], len[1]);
1997 2, addr, len, wrapped_data) < 0) {
2185 size_t len;
2198 len = 4; /* "DPP:" */
2199 len += 4 + os_strlen(pk);
2200 bi->uri = os_malloc(len + 1);
2203 os_snprintf(bi->uri, len + 1, "DPP:K:%s;;", pk);
2536 size_t len[7];
2566 len[num_elem] = nonce_len;
2570 len[num_elem] = nonce_len;
2574 len[num_elem] = wpabuf_len(pix) / 2;
2578 len[num_elem] = wpabuf_len(prx) / 2;
2583 len[num_elem] = wpabuf_len(bix) / 2;
2588 len[num_elem] = wpabuf_len(brx) / 2;
2592 len[num_elem] = 1;
2597 wpa_hexdump(MSG_DEBUG, "DPP: hash component", addr[i], len[i]);
2598 res = dpp_hash_vector(auth->curve, num_elem, addr, len, r_auth);
2615 size_t len[7];
2649 len[num_elem] = nonce_len;
2653 len[num_elem] = nonce_len;
2657 len[num_elem] = wpabuf_len(prx) / 2;
2661 len[num_elem] = wpabuf_len(pix) / 2;
2665 len[num_elem] = wpabuf_len(brx) / 2;
2670 len[num_elem] = wpabuf_len(bix) / 2;
2675 len[num_elem] = 1;
2680 wpa_hexdump(MSG_DEBUG, "DPP: hash component", addr[i], len[i]);
2681 res = dpp_hash_vector(auth->curve, num_elem, addr, len, i_auth);
3082 size_t len[2];
3198 len[0] = DPP_HDR_LEN;
3200 len[1] = attr_len;
3201 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[0]", addr[0], len[0]);
3202 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[1]", addr[1], len[1]);
3211 2, addr, len, unwrapped) < 0) {
3369 size_t len[2], attr_len;
3459 len[0] = 3 + 1 + 1 + 1;
3460 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[0]", addr[0], len[0]);
3464 len[1] = attr_end - attr_start;
3465 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[1]", addr[1], len[1]);
3494 2, addr, len, wrapped_i_auth) < 0)
3510 2, addr, len, wrapped_r_nonce) < 0)
3545 size_t len[2];
3566 len[0] = DPP_HDR_LEN;
3568 len[1] = attr_len;
3569 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[0]", addr[0], len[0]);
3570 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[1]", addr[1], len[1]);
3579 2, addr, len, unwrapped) < 0) {
3643 size_t len[2];
3807 len[0] = DPP_HDR_LEN;
3809 len[1] = attr_len;
3810 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[0]", addr[0], len[0]);
3811 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[1]", addr[1], len[1]);
3820 2, addr, len, unwrapped) < 0) {
3977 size_t len[2];
3987 len[0] = DPP_HDR_LEN;
3989 len[1] = attr_len;
3990 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[0]", addr[0], len[0]);
3991 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[1]", addr[1], len[1]);
4002 2, addr, len, unwrapped) < 0) {
4047 size_t len[2];
4146 len[0] = DPP_HDR_LEN;
4148 len[1] = attr_len;
4149 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[0]", addr[0], len[0]);
4150 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[1]", addr[1], len[1]);
4159 2, addr, len, unwrapped) < 0) {
4199 static int bin_str_eq(const char *val, size_t len, const char *cmp)
4201 return os_strlen(cmp) == len && os_memcmp(val, cmp, len) == 0;
4209 size_t len;
4217 len = end - type;
4219 len = os_strlen(type);
4221 if (bin_str_eq(type, len, "psk"))
4223 else if (bin_str_eq(type, len, "sae"))
4225 else if (bin_str_eq(type, len, "psk-sae") ||
4226 bin_str_eq(type, len, "psk+sae"))
4228 else if (bin_str_eq(type, len, "sae-dpp") ||
4229 bin_str_eq(type, len, "dpp+sae"))
4231 else if (bin_str_eq(type, len, "psk-sae-dpp") ||
4232 bin_str_eq(type, len, "dpp+psk+sae"))
4234 else if (bin_str_eq(type, len, "dpp"))
4853 size_t len[1];
4936 len[0] = wpabuf_len(msg);
4937 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD", addr[0], len[0]);
4946 1, addr, len, wrapped) < 0)
5191 size_t len = os_strlen(pass->string);
5194 pass->string, len);
5195 if (len < 8 || len > 63)
5487 size_t len[1];
5495 len[0] = wpabuf_len(uncomp);
5497 addr[0], len[0]);
5498 res = sha256_vector(1, addr, len, hash);
5918 size_t len[1];
5947 len[0] = wrapped_data - 4 - (const u8 *) wpabuf_head(resp);
5948 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD", addr[0], len[0]);
5952 1, addr, len, unwrapped) < 0) {
6020 size_t len[2];
6038 len[0] = DPP_HDR_LEN;
6040 len[1] = attr_len;
6041 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[0]", addr[0], len[0]);
6042 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[1]", addr[1], len[1]);
6051 2, addr, len, unwrapped) < 0) {
6102 size_t len[2];
6123 len[0] = 3 + 1 + 1 + 1;
6124 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[0]", addr[0], len[0]);
6128 len[1] = 0;
6129 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[1]", addr[1], len[1]);
6139 2, addr, len, wrapped) < 0)
6194 size_t len[1];
6228 len[0] = wpabuf_len(csign_pub);
6229 if (sha256_vector(1, addr, len, kid_hash) < 0) {
6410 size_t len[2];
6419 len[0] = wpabuf_len(nkx) / 2;
6421 len[1] = wpabuf_len(pkx) / 2;
6422 if (len[0] != len[1])
6424 if (os_memcmp(addr[0], addr[1], len[0]) > 0) {
6428 wpa_hexdump(MSG_DEBUG, "DPP: PMKID hash payload 1", addr[0], len[0]);
6429 wpa_hexdump(MSG_DEBUG, "DPP: PMKID hash payload 2", addr[1], len[1]);
6430 res = sha256_vector(2, addr, len, hash);
6618 size_t len = curve->prime_len;
6654 res = dpp_set_pubkey_point_group(group, x, y, len);
6667 size_t len[3];
6681 len[num_elem] = ETH_ALEN;
6687 len[num_elem] = os_strlen(identifier);
6692 len[num_elem] = os_strlen(code);
6694 if (dpp_hash_vector(curve, num_elem, addr, len, hash) < 0)
6751 size_t len[3];
6765 len[num_elem] = ETH_ALEN;
6771 len[num_elem] = os_strlen(identifier);
6776 len[num_elem] = os_strlen(code);
6778 if (dpp_hash_vector(curve, num_elem, addr, len, hash) < 0)
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,
7493 size_t len[2];
7557 len[0] = DPP_HDR_LEN;
7560 len[1] = sizeof(octet);
7561 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[0]", addr[0], len[0]);
7562 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[1]", addr[1], len[1]);
7571 2, addr, len, wrapped) < 0)
7611 size_t len[4];
7731 len[0] = ETH_ALEN;
7733 len[1] = wpabuf_len(A_pub) / 2;
7735 len[2] = wpabuf_len(Y_pub) / 2;
7737 len[3] = wpabuf_len(X_pub) / 2;
7738 if (dpp_hmac_vector(curve->hash_len, Jx, Jx_len, 4, addr, len, u) < 0)
7790 size_t len[2];
7858 len[0] = DPP_HDR_LEN;
7861 len[1] = sizeof(octet);
7862 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[0]", addr[0], len[0]);
7863 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[1]", addr[1], len[1]);
7872 2, addr, len, wrapped) < 0)
7907 size_t len[4];
7944 len[0] = DPP_HDR_LEN;
7947 len[1] = sizeof(octet);
7948 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[0]", addr[0], len[0]);
7949 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[1]", addr[1], len[1]);
7953 2, addr, len, unwrapped) < 0) {
7997 len[0] = ETH_ALEN;
7999 len[1] = wpabuf_len(A_pub) / 2;
8001 len[2] = wpabuf_len(Y_pub) / 2;
8003 len[3] = wpabuf_len(X_pub) / 2;
8004 if (dpp_hmac_vector(curve->hash_len, Jx, Jx_len, 4, addr, len, u) < 0)
8032 len[0] = ETH_ALEN;
8034 len[1] = wpabuf_len(B_pub) / 2;
8036 len[2] = wpabuf_len(X_pub) / 2;
8038 len[3] = wpabuf_len(Y_pub) / 2;
8039 if (dpp_hmac_vector(curve->hash_len, Lx, Lx_len, 4, addr, len, v) < 0)
8068 size_t len[4];
8107 len[0] = DPP_HDR_LEN;
8110 len[1] = sizeof(octet);
8111 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[0]", addr[0], len[0]);
8112 wpa_hexdump(MSG_DEBUG, "DDP: AES-SIV AD[1]", addr[1], len[1]);
8116 2, addr, len, unwrapped) < 0) {
8159 len[0] = ETH_ALEN;
8161 len[1] = wpabuf_len(B_pub) / 2;
8163 len[2] = wpabuf_len(X_pub) / 2;
8165 len[3] = wpabuf_len(Y_pub) / 2;
8166 if (dpp_hmac_vector(curve->hash_len, Lx, Lx_len, 4, addr, len, v) < 0)
8407 size_t len;
8443 len = 4; /* "DPP:" */
8447 len += 3 + os_strlen(chan); /* C:...; */
8452 len += 3 + os_strlen(mac); /* M:...; */
8457 len += 3 + os_strlen(info); /* I:...; */
8459 len += 4 + os_strlen(pk);
8460 bi->uri = os_malloc(len + 1);
8463 os_snprintf(bi->uri, len + 1, "DPP:%s%s%s%s%s%s%s%s%sK:%s;;",
9144 static struct wpabuf * dpp_tcp_encaps(const u8 *hdr, const u8 *buf, size_t len)
9148 msg = wpabuf_alloc(4 + 1 + DPP_HDR_LEN + len);
9151 wpabuf_put_be32(msg, 1 + DPP_HDR_LEN + 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) {
9457 size_t len)
9473 status = dpp_conf_result_rx(auth, hdr, buf, len);
9485 size_t len)
9492 end = msg + len;
9518 conn->freq, msg, len);
9541 size_t len)
9550 if (len < 1 + 2)
9562 end = msg + len;
9676 size_t len)
9683 if (len < 5 + 2)
9690 end = msg + len;