From: Torsten Bögershausen Date: Fri, 01 Apr 2016 11:44:28 GMT Subject: Re: [PATCH 1/2] imap-send.c: implements the GIT_CURL_DEBUG environment variable Message-ID: <56FE5F1C.2040103@web.de> In-Reply-To: <1459507482-36678-1-git-send-email-gitter.spiros@gmail.com> On 01.04.16 12:44, Elia Pinto wrote: > Implements the GIT_CURL_DEBUG environment variable to allow a greater > degree of detail of GIT_CURL_VERBOSE, in particular the complete > transport header and all the data payload exchanged. > It might be useful if a particular situation could require a more > thorough debugging analysis. > > Signed-off-by: Elia Pinto > --- > imap-send.c | 99 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- > 1 file changed, 97 insertions(+), 2 deletions(-) > > diff --git a/imap-send.c b/imap-send.c > index 4d3b773..cf79e7f 100644 > --- a/imap-send.c > +++ b/imap-send.c > @@ -1395,6 +1395,96 @@ static int append_msgs_to_imap(struct imap_server_conf *server, > } > > #ifdef USE_CURL_FOR_IMAP_SEND > + > +static > +void curl_dump(const char *text, > + FILE * stream, unsigned char *ptr, size_t size, char nohex) Style: FILE *stream > +{ > + size_t i; > + size_t c; c is typically a character. 'j' may be better, unless you find a longer, and more descriptive name. > + > + unsigned int width = 0x10; > + > + if (nohex) > + /* without the hex output, we can fit more on screen */ > + width = 0x40; > + > + fprintf(stream, "%s, %10.10ld bytes (0x%8.8lx)\n", > + text, (long)size, (long)size); > + > + for (i = 0; i < size; i += width) { > + > + fprintf(stream, "%4.4lx: ", (long)i); > + > + if (!nohex) { > + /* hex not disabled, show it */ > + for (c = 0; c < width; c++) > + if (i + c < size) > + fprintf(stream, "%02x ", ptr[i + c]); > + else > + fputs(" ", stream); > + } > + > + for (c = 0; (c < width) && (i + c < size); c++) { > + /* check for 0D0A; if found, skip past and start a new line of output */ Should we write '\r' and '\n' instead for hex codes ? and CRLF instead of 0D0A ? (Yes the RFC use hexcodes, but we write readable C-code)