Lines Matching refs:pos

19 				   const u8 *pos)
23 switch (pos[0]) {
26 if (pos[1] != 2 + EAP_SAKE_RAND_LEN) {
28 "invalid length %d", pos[1]);
31 attr->rand_s = pos + 2;
35 if (pos[1] != 2 + EAP_SAKE_RAND_LEN) {
37 "invalid length %d", pos[1]);
40 attr->rand_p = pos + 2;
44 if (pos[1] != 2 + EAP_SAKE_MIC_LEN) {
46 "invalid length %d", pos[1]);
49 attr->mic_s = pos + 2;
53 if (pos[1] != 2 + EAP_SAKE_MIC_LEN) {
55 "invalid length %d", pos[1]);
58 attr->mic_p = pos + 2;
62 attr->serverid = pos + 2;
63 attr->serverid_len = pos[1] - 2;
67 attr->peerid = pos + 2;
68 attr->peerid_len = pos[1] - 2;
72 attr->spi_s = pos + 2;
73 attr->spi_s_len = pos[1] - 2;
77 attr->spi_p = pos + 2;
78 attr->spi_p_len = pos[1] - 2;
82 if (pos[1] != 4) {
84 " length %d", pos[1]);
87 attr->any_id_req = pos + 2;
91 if (pos[1] != 4) {
93 "AT_PERM_ID_REQ length %d", pos[1]);
96 attr->perm_id_req = pos + 2;
100 attr->encr_data = pos + 2;
101 attr->encr_data_len = pos[1] - 2;
105 attr->iv = pos + 2;
106 attr->iv_len = pos[1] - 2;
110 for (i = 2; i < pos[1]; i++) {
111 if (pos[i]) {
120 attr->next_tmpid = pos + 2;
121 attr->next_tmpid_len = pos[1] - 2;
125 if (pos[1] != 6) {
127 "AT_MSK_LIFE length %d", pos[1]);
130 attr->msk_life = pos + 2;
133 if (pos[0] < 128) {
135 " attribute %d", pos[0]);
139 "attribute %d", pos[0]);
163 const u8 *pos = buf, *end = buf + len;
166 while (pos < end) {
167 if (end - pos < 2) {
172 if (pos[1] < 2) {
174 "length (%d)", pos[1]);
178 if (pos + pos[1] > end) {
183 if (eap_sake_parse_add_attr(attr, pos))
186 pos += pos[1];
214 size_t pos, plen;
229 pos = 0;
230 while (pos < buf_len) {
231 plen = buf_len - pos;
234 &buf[pos]);
235 pos += SHA1_MAC_LEN;
239 os_memcpy(&buf[pos], hash, plen);
324 u8 *tmp, *pos;
331 pos = tmp;
334 os_memcpy(pos, peerid, peerid_len);
335 pos += peerid_len;
337 *pos++ = 0x00;
339 os_memcpy(pos, serverid, serverid_len);
340 pos += serverid_len;
342 *pos++ = 0x00;
349 os_memcpy(pos, serverid, serverid_len);
350 pos += serverid_len;
352 *pos++ = 0x00;
354 os_memcpy(pos, peerid, peerid_len);
355 pos += peerid_len;
357 *pos++ = 0x00;
364 os_memcpy(pos, eap, eap_len);
365 os_memset(pos + (mic_pos - eap), 0, EAP_SAKE_MIC_LEN);