Lines Matching refs:pos

45 	u8 *pos, *rhdr, *hs_start, *hs_length;
49 pos = *msgpos;
52 rhdr = pos;
53 pos += TLS_RECORD_HEADER_LEN;
77 hs_start = pos;
79 *pos++ = TLS_HANDSHAKE_TYPE_SERVER_HELLO;
81 hs_length = pos;
82 pos += 3;
85 WPA_PUT_BE16(pos, conn->rl.tls_version);
86 pos += 2;
88 os_memcpy(pos, conn->server_random, TLS_RANDOM_LEN);
89 pos += TLS_RANDOM_LEN;
91 *pos++ = conn->session_id_len;
92 os_memcpy(pos, conn->session_id, conn->session_id_len);
93 pos += conn->session_id_len;
95 WPA_PUT_BE16(pos, conn->cipher_suite);
96 pos += 2;
98 *pos++ = TLS_COMPRESSION_NULL;
137 WPA_PUT_BE24(hs_length, pos - hs_length - 3);
138 tls_verify_hash_add(&conn->verify, hs_start, pos - hs_start);
141 rhdr, end - rhdr, hs_start, pos - hs_start,
148 pos = rhdr + rlen;
150 *msgpos = pos;
159 u8 *pos, *rhdr, *hs_start, *hs_length, *cert_start;
171 pos = *msgpos;
174 rhdr = pos;
175 pos += TLS_RECORD_HEADER_LEN;
180 hs_start = pos;
182 *pos++ = TLS_HANDSHAKE_TYPE_CERTIFICATE;
184 hs_length = pos;
185 pos += 3;
188 cert_start = pos;
189 pos += 3;
192 if (pos + 3 + cert->cert_len > end) {
196 (unsigned long) (end - pos));
201 WPA_PUT_BE24(pos, cert->cert_len);
202 pos += 3;
203 os_memcpy(pos, cert->cert_start, cert->cert_len);
204 pos += cert->cert_len;
221 WPA_PUT_BE24(cert_start, pos - cert_start - 3);
223 WPA_PUT_BE24(hs_length, pos - hs_length - 3);
226 rhdr, end - rhdr, hs_start, pos - hs_start,
233 pos = rhdr + rlen;
235 tls_verify_hash_add(&conn->verify, hs_start, pos - hs_start);
237 *msgpos = pos;
248 u8 *pos, *rhdr, *hs_start, *hs_length;
302 pos = conn->dh_secret;
303 while (pos + 1 < conn->dh_secret + conn->dh_secret_len && *pos == 0)
304 pos++;
305 if (pos != conn->dh_secret) {
306 os_memmove(conn->dh_secret, pos,
307 conn->dh_secret_len - (pos - conn->dh_secret));
308 conn->dh_secret_len -= pos - conn->dh_secret;
355 pos = *msgpos;
358 rhdr = pos;
359 pos += TLS_RECORD_HEADER_LEN;
364 hs_start = pos;
366 *pos++ = TLS_HANDSHAKE_TYPE_SERVER_KEY_EXCHANGE;
368 hs_length = pos;
369 pos += 3;
373 if (pos + 2 + conn->cred->dh_p_len > end) {
381 WPA_PUT_BE16(pos, conn->cred->dh_p_len);
382 pos += 2;
383 os_memcpy(pos, conn->cred->dh_p, conn->cred->dh_p_len);
384 pos += conn->cred->dh_p_len;
387 if (pos + 2 + conn->cred->dh_g_len > end) {
395 WPA_PUT_BE16(pos, conn->cred->dh_g_len);
396 pos += 2;
397 os_memcpy(pos, conn->cred->dh_g, conn->cred->dh_g_len);
398 pos += conn->cred->dh_g_len;
401 if (pos + 2 + dh_ys_len > end) {
409 WPA_PUT_BE16(pos, dh_ys_len);
410 pos += 2;
411 os_memcpy(pos, dh_ys, dh_ys_len);
412 pos += dh_ys_len;
415 WPA_PUT_BE24(hs_length, pos - hs_length - 3);
418 rhdr, end - rhdr, hs_start, pos - hs_start,
425 pos = rhdr + rlen;
427 tls_verify_hash_add(&conn->verify, hs_start, pos - hs_start);
429 *msgpos = pos;
438 u8 *pos, *rhdr, *hs_start, *hs_length;
446 pos = *msgpos;
449 rhdr = pos;
450 pos += TLS_RECORD_HEADER_LEN;
455 hs_start = pos;
457 *pos++ = TLS_HANDSHAKE_TYPE_CERTIFICATE_REQUEST;
459 hs_length = pos;
460 pos += 3;
470 *pos++ = 1;
471 *pos++ = 1; /* rsa_sign */
478 WPA_PUT_BE16(pos, 0);
479 pos += 2;
481 WPA_PUT_BE24(hs_length, pos - hs_length - 3);
484 rhdr, end - rhdr, hs_start, pos - hs_start,
491 pos = rhdr + rlen;
493 tls_verify_hash_add(&conn->verify, hs_start, pos - hs_start);
495 *msgpos = pos;
504 u8 *pos;
513 pos = payload;
515 *pos++ = TLS_HANDSHAKE_TYPE_SERVER_HELLO_DONE;
517 WPA_PUT_BE24(pos, 0);
518 pos += 3;
522 *msgpos, end - *msgpos, payload, pos - payload,
530 tls_verify_hash_add(&conn->verify, payload, pos - payload);
574 u8 *pos, *hs_start;
579 pos = *msgpos;
640 pos = hs_start = verify_data;
642 *pos++ = TLS_HANDSHAKE_TYPE_FINISHED;
644 WPA_PUT_BE24(pos, TLS_VERIFY_DATA_LEN);
645 pos += 3;
646 pos += TLS_VERIFY_DATA_LEN;
647 tls_verify_hash_add(&conn->verify, hs_start, pos - hs_start);
650 *msgpos, end - *msgpos, hs_start, pos - hs_start,
666 u8 *msg, *end, *pos;
677 pos = msg;
680 if (tls_write_server_hello(conn, &pos, end) < 0) {
687 if (tls_write_server_change_cipher_spec(conn, &pos, end) < 0 ||
688 tls_write_server_finished(conn, &pos, end) < 0) {
693 *out_len = pos - msg;
701 if (tls_write_server_certificate(conn, &pos, end) < 0 ||
702 tls_write_server_key_exchange(conn, &pos, end) < 0 ||
703 tls_write_server_certificate_request(conn, &pos, end) < 0 ||
704 tls_write_server_hello_done(conn, &pos, end) < 0) {
709 *out_len = pos - msg;
720 u8 *msg, *end, *pos;
728 pos = msg;
731 if (tls_write_server_change_cipher_spec(conn, &pos, end) < 0 ||
732 tls_write_server_finished(conn, &pos, end) < 0) {
737 *out_len = pos - msg;
768 u8 *alert, *pos, *length;
777 pos = alert;
781 *pos++ = TLS_CONTENT_TYPE_ALERT;
783 WPA_PUT_BE16(pos, conn->rl.tls_version ? conn->rl.tls_version :
785 pos += 2;
787 length = pos;
788 pos += 2;
793 *pos++ = level;
795 *pos++ = description;
797 WPA_PUT_BE16(length, pos - length - 2);
798 *out_len = pos - alert;