Lines Matching refs:state

275 /* Set readback state. */
276 static void mimesetstate(struct mime_state *state,
279 state->state = tok;
280 state->ptr = ptr;
281 state->offset = 0;
371 /* Initialize data encoder state. */
663 size_t sz = curlx_sotouz(part->datasize - part->state.offset);
673 memcpy(buffer, part->data + curlx_sotouz(part->state.offset), sz);
684 offset += part->state.offset;
694 part->state.offset = offset;
760 static size_t readback_bytes(struct mime_state *state,
766 size_t offset = curlx_sotouz(state->offset);
784 state->offset += sz;
806 part->state.offset >= part->datasize) {
845 part->state.offset += sz;
923 struct curl_slist *hdr = (struct curl_slist *) part->state.ptr;
924 switch(part->state.state) {
926 mimesetstate(&part->state,
933 mimesetstate(&part->state, MIMESTATE_EOH, NULL);
937 mimesetstate(&part->state, MIMESTATE_USERHEADERS, hdr->next);
943 mimesetstate(&part->state, MIMESTATE_USERHEADERS, part->userheaders);
945 sz = readback_bytes(&part->state, buffer, bufsize,
948 mimesetstate(&part->state, part->state.state, hdr->next);
952 sz = readback_bytes(&part->state, buffer, bufsize, STRCONST("\r\n"),
955 mimesetstate(&part->state, MIMESTATE_BODY, NULL);
959 mimesetstate(&part->state, MIMESTATE_CONTENT, NULL);
968 mimesetstate(&part->state, MIMESTATE_END, NULL);
985 break; /* Other values not in part state. */
1007 curl_mimepart *part = mime->state.ptr;
1008 switch(mime->state.state) {
1011 mimesetstate(&mime->state, MIMESTATE_BOUNDARY1, mime->firstpart);
1015 mime->state.offset += 2;
1018 sz = readback_bytes(&mime->state, buffer, nitems, STRCONST("\r\n--"),
1021 mimesetstate(&mime->state, MIMESTATE_BOUNDARY2, part);
1025 sz = readback_bytes(&mime->state, buffer, nitems, mime->boundary,
1028 sz = readback_bytes(&mime->state, buffer, nitems, mime->boundary,
1031 mimesetstate(&mime->state, MIMESTATE_CONTENT, part);
1036 mimesetstate(&mime->state, MIMESTATE_END, NULL);
1047 mimesetstate(&mime->state, MIMESTATE_BOUNDARY1, part->nextpart);
1054 break; /* other values not used in mime state. */
1074 if(part->state.state > targetstate) {
1094 mimesetstate(&part->state, targetstate, NULL);
1109 if(mime->state.state == MIMESTATE_BEGIN)
1119 mimesetstate(&mime->state, MIMESTATE_BEGIN, NULL);
1141 part->state.state = MIMESTATE_BEGIN;
1300 mimesetstate(&mime->state, MIMESTATE_BEGIN, NULL);
1311 mimesetstate(&part->state, MIMESTATE_BEGIN, NULL);
1774 if(part->state.state == MIMESTATE_CURLHEADERS)
1775 mimesetstate(&part->state, MIMESTATE_CURLHEADERS, NULL);
1878 if(part->state.state == MIMESTATE_CURLHEADERS)
1879 mimesetstate(&part->state, MIMESTATE_CURLHEADERS, part->curlheaders);