Lines Matching refs:lg_crcv
294 LL_FOREACH(session->lg_crcv, cq) { in coap_cancel_observe()
740 LL_FOREACH_SAFE(session->lg_crcv, p, q) { in coap_block_check_lg_crcv_timeouts()
744 LL_DELETE(session->lg_crcv, p); in coap_block_check_lg_crcv_timeouts()
811 coap_lg_crcv_t *lg_crcv; in coap_block_new_lg_crcv() local
813 lg_crcv = coap_malloc_type(COAP_LG_CRCV, sizeof(coap_lg_crcv_t)); in coap_block_new_lg_crcv()
815 if (lg_crcv == NULL) in coap_block_new_lg_crcv()
819 coap_session_str(session), (void*)lg_crcv); in coap_block_new_lg_crcv()
820 memset(lg_crcv, 0, sizeof(coap_lg_crcv_t)); in coap_block_new_lg_crcv()
821 lg_crcv->initial = 1; in coap_block_new_lg_crcv()
823 memcpy(&lg_crcv->pdu, pdu, sizeof(lg_crcv->pdu)); in coap_block_new_lg_crcv()
824 lg_crcv->pdu.token = coap_malloc_type(COAP_PDU_BUF, in coap_block_new_lg_crcv()
825 lg_crcv->pdu.alloc_size + lg_crcv->pdu.hdr_size); in coap_block_new_lg_crcv()
826 if (!lg_crcv->pdu.token) { in coap_block_new_lg_crcv()
827 coap_block_delete_lg_crcv(session, lg_crcv); in coap_block_new_lg_crcv()
830 lg_crcv->pdu.token += lg_crcv->pdu.hdr_size; in coap_block_new_lg_crcv()
831 memcpy(lg_crcv->pdu.token, pdu->token, lg_crcv->pdu.used_size); in coap_block_new_lg_crcv()
832 if (lg_crcv->pdu.data) in coap_block_new_lg_crcv()
833 lg_crcv->pdu.data = lg_crcv->pdu.token + (pdu->data - pdu->token); in coap_block_new_lg_crcv()
835 if (lg_crcv->pdu.max_size < lg_crcv->pdu.used_size + 9) in coap_block_new_lg_crcv()
836 lg_crcv->pdu.max_size = lg_crcv->pdu.used_size + 9; in coap_block_new_lg_crcv()
839 lg_crcv->token_length = min(pdu->token_length, 8); in coap_block_new_lg_crcv()
840 memset(lg_crcv->token, 0, sizeof(lg_crcv->token)); in coap_block_new_lg_crcv()
841 memcpy(lg_crcv->token, pdu->token, lg_crcv->token_length); in coap_block_new_lg_crcv()
844 memset(lg_crcv->base_token, 0, sizeof(lg_crcv->base_token)); in coap_block_new_lg_crcv()
845 memcpy(lg_crcv->base_token, pdu->token, lg_crcv->token_length); in coap_block_new_lg_crcv()
846 lg_crcv->base_token_length = lg_crcv->token_length; in coap_block_new_lg_crcv()
849 lg_crcv->app_token = coap_new_binary(lg_crcv->token_length); in coap_block_new_lg_crcv()
850 if (!lg_crcv->app_token) { in coap_block_new_lg_crcv()
851 coap_block_delete_lg_crcv(session, lg_crcv); in coap_block_new_lg_crcv()
854 memcpy(lg_crcv->app_token->s, pdu->token, lg_crcv->token_length); in coap_block_new_lg_crcv()
856 coap_remove_option(&lg_crcv->pdu, COAP_OPTION_BLOCK1); in coap_block_new_lg_crcv()
858 return lg_crcv; in coap_block_new_lg_crcv()
863 coap_lg_crcv_t *lg_crcv) { in coap_block_delete_lg_crcv() argument
864 if (lg_crcv == NULL) in coap_block_delete_lg_crcv()
867 if (lg_crcv->pdu.token) in coap_block_delete_lg_crcv()
868 coap_free_type(COAP_PDU_BUF, lg_crcv->pdu.token - lg_crcv->pdu.hdr_size); in coap_block_delete_lg_crcv()
869 coap_free_type(COAP_STRING, lg_crcv->body_data); in coap_block_delete_lg_crcv()
871 coap_session_str(session), (void*)lg_crcv); in coap_block_delete_lg_crcv()
872 coap_delete_binary(lg_crcv->app_token); in coap_block_delete_lg_crcv()
873 coap_free_type(COAP_LG_CRCV, lg_crcv); in coap_block_delete_lg_crcv()
1623 LL_FOREACH(session->lg_crcv, p) { in coap_handle_response_get_block()
1927 coap_lg_crcv_t *lg_crcv = coap_block_new_lg_crcv(session, sent); in coap_handle_response_get_block() local
1929 if (lg_crcv) { in coap_handle_response_get_block()
1930 LL_PREPEND(session->lg_crcv, lg_crcv); in coap_handle_response_get_block()