void curl_formget(struct curl_httppost *form, void *arg, curl_formget_callback append);
typedef size_t (*curl_formget_callback)(void *arg, const char *buf, size_t len);
The curl_formget_callback will be executed for each part of the HTTP POST chain. The void *arg pointer will be the one passed as second argument to curl_formget(). The character buffer passed to it must not be freed. The callback should return the buffer length passed to it on success.
size_t print_httppost_callback(void *arg, const char *buf, size_t len) { fwrite(buf, len, 1, stdout); (*(size_t *) arg) += len; return len; } size_t print_httppost(struct curl_httppost *post) { size_t total_size = 0; if(curl_formget(post, &total_size, print_httppost_callback)) { return (size_t) -1; } return total_size; }