Lines Matching refs:buf
253 unsigned char *buf, size_t *buf_len,
257 unsigned char *buf, size_t *buf_len);
266 static int scard_parse_fsp_templ(unsigned char *buf, size_t buf_len, in scard_parse_fsp_templ() argument
276 pos = buf; in scard_parse_fsp_templ()
413 unsigned char buf[127], *aid_pos; in scard_get_aid() local
417 efdir = (struct efdir *) buf; in scard_get_aid()
418 aid_pos = &buf[4]; in scard_get_aid()
419 blen = sizeof(buf); in scard_get_aid()
420 if (scard_select_file(scard, SCARD_FILE_EF_DIR, buf, &blen)) { in scard_get_aid()
424 wpa_hexdump(MSG_DEBUG, "SCARD: EF_DIR select", buf, blen); in scard_get_aid()
434 blen = sizeof(buf); in scard_get_aid()
439 if (scard_read_record(scard, buf, rlen, rec, in scard_get_aid()
445 wpa_hexdump(MSG_DEBUG, "SCARD: EF_DIR record", buf, rlen); in scard_get_aid()
527 unsigned char buf[100]; in scard_init() local
632 blen = sizeof(buf); in scard_init()
635 if (_scard_select_file(scard, SCARD_FILE_MF, buf, &blen, in scard_init()
645 blen = sizeof(buf); in scard_init()
646 if (scard_select_file(scard, SCARD_FILE_MF, buf, &blen)) { in scard_init()
651 blen = sizeof(buf); in scard_init()
652 if (scard_select_file(scard, SCARD_FILE_GSM_DF, buf, &blen)) { in scard_init()
671 blen = sizeof(buf); in scard_init()
672 if (_scard_select_file(scard, 0, buf, &blen, scard->sim_type, in scard_init()
683 pin_needed = scard_pin_needed(scard, buf, blen); in scard_init()
807 unsigned char *buf, size_t *buf_len, in _scard_select_file() argument
876 ret = scard_transmit(scard, get_resp, sizeof(get_resp), buf, &rlen); in _scard_select_file()
888 unsigned char *buf, size_t *buf_len) in scard_select_file() argument
890 return _scard_select_file(scard, file_id, buf, buf_len, in scard_select_file()
898 unsigned char buf[255]; in scard_get_record_len() local
907 cmd[4] = sizeof(buf); in scard_get_record_len()
909 blen = sizeof(buf); in scard_get_record_len()
910 ret = scard_transmit(scard, cmd, sizeof(cmd), buf, &blen); in scard_get_record_len()
918 buf, blen); in scard_get_record_len()
920 if (blen < 2 || (buf[0] != 0x6c && buf[0] != 0x67)) { in scard_get_record_len()
926 return buf[1]; in scard_get_record_len()
936 unsigned char *buf; in scard_read_record() local
945 buf = os_malloc(blen); in scard_read_record()
946 if (buf == NULL) in scard_read_record()
949 ret = scard_transmit(scard, cmd, sizeof(cmd), buf, &blen); in scard_read_record()
951 os_free(buf); in scard_read_record()
958 os_free(buf); in scard_read_record()
962 if (buf[len] != 0x90 || buf[len + 1] != 0x00) { in scard_read_record()
965 buf[len], buf[len + 1]); in scard_read_record()
966 os_free(buf); in scard_read_record()
970 os_memcpy(data, buf, len); in scard_read_record()
971 os_free(buf); in scard_read_record()
982 unsigned char *buf; in scard_read_file() local
987 buf = os_malloc(blen); in scard_read_file()
988 if (buf == NULL) in scard_read_file()
993 ret = scard_transmit(scard, cmd, sizeof(cmd), buf, &blen); in scard_read_file()
995 os_free(buf); in scard_read_file()
1002 os_free(buf); in scard_read_file()
1006 if (buf[len] != 0x90 || buf[len + 1] != 0x00) { in scard_read_file()
1009 buf[len], buf[len + 1]); in scard_read_file()
1010 os_free(buf); in scard_read_file()
1014 os_memcpy(data, buf, len); in scard_read_file()
1015 os_free(buf); in scard_read_file()
1109 unsigned char buf[100]; in scard_get_imsi() local
1114 blen = sizeof(buf); in scard_get_imsi()
1115 if (scard_select_file(scard, SCARD_FILE_GSM_EF_IMSI, buf, &blen)) in scard_get_imsi()
1124 blen = WPA_GET_BE16(&buf[2]); in scard_get_imsi()
1127 if (scard_parse_fsp_templ(buf, blen, NULL, &file_size)) in scard_get_imsi()
1131 if (blen < 2 || blen > sizeof(buf)) { in scard_get_imsi()
1145 if (scard_read_file(scard, buf, blen)) in scard_get_imsi()
1149 *pos++ = '0' + (buf[1] >> 4 & 0x0f); in scard_get_imsi()
1153 digit = buf[i] & 0x0f; in scard_get_imsi()
1159 digit = buf[i] >> 4 & 0x0f; in scard_get_imsi()
1183 unsigned char buf[100]; in scard_get_mnc_len() local
1188 blen = sizeof(buf); in scard_get_mnc_len()
1189 if (scard_select_file(scard, SCARD_FILE_GSM_EF_AD, buf, &blen)) in scard_get_mnc_len()
1198 file_size = WPA_GET_BE16(&buf[2]); in scard_get_mnc_len()
1200 if (scard_parse_fsp_templ(buf, blen, NULL, &file_size)) in scard_get_mnc_len()
1207 if (file_size < 4 || file_size > (int) sizeof(buf)) { in scard_get_mnc_len()
1213 if (scard_read_file(scard, buf, file_size)) in scard_get_mnc_len()
1215 buf[3] = buf[3] & 0x0f; /* upper nibble reserved for future use */ in scard_get_mnc_len()
1216 if (buf[3] < 2 || buf[3] > 3) { in scard_get_mnc_len()
1218 (long) buf[3]); in scard_get_mnc_len()
1221 wpa_printf(MSG_DEBUG, "SCARD: MNC length=%ld", (long) buf[3]); in scard_get_mnc_len()
1222 return buf[3]; in scard_get_mnc_len()
1247 unsigned char resp[3], buf[12 + 3 + 2]; in scard_gsm_auth() local
1283 len = sizeof(buf); in scard_gsm_auth()
1284 ret = scard_transmit(scard, get_resp, sizeof(get_resp), buf, &len); in scard_gsm_auth()
1295 os_memcpy(sres, buf, 4); in scard_gsm_auth()
1296 os_memcpy(kc, buf + 4, 8); in scard_gsm_auth()
1304 if (buf[0] != 4 || buf[5] != 8) { in scard_gsm_auth()
1307 buf[0], buf[5]); in scard_gsm_auth()
1309 os_memcpy(sres, buf + 1, 4); in scard_gsm_auth()
1310 os_memcpy(kc, buf + 6, 8); in scard_gsm_auth()
1348 unsigned char resp[3], buf[64], *pos, *end; in scard_umts_auth() local
1388 len = sizeof(buf); in scard_umts_auth()
1389 ret = scard_transmit(scard, get_resp, sizeof(get_resp), buf, &len); in scard_umts_auth()
1390 if (ret != SCARD_S_SUCCESS || len > sizeof(buf)) in scard_umts_auth()
1393 wpa_hexdump(MSG_DEBUG, "SCARD: UMTS get response result", buf, len); in scard_umts_auth()
1394 if (len >= 2 + AKA_AUTS_LEN && buf[0] == 0xdc && in scard_umts_auth()
1395 buf[1] == AKA_AUTS_LEN) { in scard_umts_auth()
1397 os_memcpy(auts, buf + 2, AKA_AUTS_LEN); in scard_umts_auth()
1400 } else if (len >= 6 + IK_LEN + CK_LEN && buf[0] == 0xdb) { in scard_umts_auth()
1401 pos = buf + 1; in scard_umts_auth()
1402 end = buf + len; in scard_umts_auth()