static char *bta_hf_client_parse_binp(char *buffer) { /* HFP only supports phone number as BINP data */ /* phone number is 32 chars plus one for \0*/ char numstr[33]; int res; int offset; AT_CHECK_EVENT(buffer, "+BINP:"); res = sscanf(buffer, "\"%32[^\"]\"\r\n%n", numstr, &offset); if (res < 1) { return NULL; } buffer += offset; /* some phones might sent type as well, just skip it */ AT_SKIP_REST(buffer); AT_CHECK_RN(buffer); bta_hf_client_handle_binp(numstr); return buffer; }
static char *bta_hf_client_parse_binp(char *buffer) { /* HFP only supports phone number as BINP data */ /* phone number is 32 chars plus one for \0*/ char numstr[33]; int res; int offset = 0; AT_CHECK_EVENT(buffer, "+BINP:"); res = sscanf(buffer, "\"%32[^\"]\"\r\n%n", numstr, &offset); if(res < 1) { return NULL; } /* Abort in case offset not set because of format error */ if (offset == 0) { APPL_TRACE_ERROR1("bta_hf_client_parse_binp: Format Error %s", buffer); return NULL; } buffer += offset; /* some phones might sent type as well, just skip it */ AT_SKIP_REST(buffer); AT_CHECK_RN(buffer); bta_hf_client_handle_binp(numstr); return buffer; }