Mercurial > masqmail
diff src/readsock.c @ 10:26e34ae9a3e3
changed indention and line wrapping to a more consistent style
author | meillo@marmaro.de |
---|---|
date | Mon, 27 Oct 2008 16:23:10 +0100 |
parents | 08114f7dcc23 |
children | f671821d8222 |
line wrap: on
line diff
--- a/src/readsock.c Mon Oct 27 16:21:27 2008 +0100 +++ b/src/readsock.c Mon Oct 27 16:23:10 2008 +0100 @@ -27,156 +27,160 @@ jmp_buf jmp_timeout; -static -void sig_timeout_handler(int sig) +static void +sig_timeout_handler(int sig) { - longjmp(jmp_timeout, 1); + longjmp(jmp_timeout, 1); } static struct sigaction old_sa_alrm; -static -void alarm_on(int timeout) +static void +alarm_on(int timeout) { - struct sigaction sa; + struct sigaction sa; - sa.sa_handler = sig_timeout_handler; - sigemptyset(&(sa.sa_mask)); - sa.sa_flags = 0; - sigaction(SIGALRM, &sa, &old_sa_alrm); + sa.sa_handler = sig_timeout_handler; + sigemptyset(&(sa.sa_mask)); + sa.sa_flags = 0; + sigaction(SIGALRM, &sa, &old_sa_alrm); - if(timeout > 0) - alarm(timeout); + if (timeout > 0) + alarm(timeout); } -static -void alarm_off() +static void +alarm_off() { - alarm(0); + alarm(0); - sigaction(SIGALRM, &old_sa_alrm, NULL); + sigaction(SIGALRM, &old_sa_alrm, NULL); } -static -void _read_chug(FILE *in) +static void +_read_chug(FILE * in) { - int c = 0; + int c = 0; - c = fgetc(in); - while(isspace(c) && (c != EOF)) c = fgetc(in); - ungetc(c, in); + c = fgetc(in); + while (isspace(c) && (c != EOF)) + c = fgetc(in); + ungetc(c, in); } -static -int _read_line(FILE *in, char *buf, int buf_len, int timeout) +static int +_read_line(FILE * in, char *buf, int buf_len, int timeout) { - int p = 0; - int c = 0; + int p = 0; + int c = 0; - c = fgetc(in); - while((c != '\n') && (c != EOF) && (p < buf_len-1)){ - buf[p++] = c; - c = fgetc(in); - } + c = fgetc(in); + while ((c != '\n') && (c != EOF) && (p < buf_len - 1)) { + buf[p++] = c; + c = fgetc(in); + } - buf[p] = 0; + buf[p] = 0; - if(c == EOF) - return -1; - else if(p >= buf_len){ - ungetc(c, in); - return -2; - } + if (c == EOF) + return -1; + else if (p >= buf_len) { + ungetc(c, in); + return -2; + } - buf[p++] = c; /* \n */ - buf[p] = 0; + buf[p++] = c; /* \n */ + buf[p] = 0; - return p; + return p; } -int read_sockline(FILE *in, char *buf, int buf_len, int timeout, unsigned int flags) +int +read_sockline(FILE * in, char *buf, int buf_len, int timeout, unsigned int flags) { - int p = 0; + int p = 0; - if(setjmp(jmp_timeout) != 0){ - alarm_off(); - return -3; - } + if (setjmp(jmp_timeout) != 0) { + alarm_off(); + return -3; + } - alarm_on(timeout); - - /* strip leading spaces */ - if(flags & READSOCKL_CHUG){ - _read_chug(in); - } + alarm_on(timeout); - p = _read_line(in, buf, buf_len, timeout); + /* strip leading spaces */ + if (flags & READSOCKL_CHUG) { + _read_chug(in); + } - alarm_off(); + p = _read_line(in, buf, buf_len, timeout); + + alarm_off(); - if(p > 1){ - /* here we are sure that buf[p-1] == '\n' */ - if(flags & READSOCKL_CVT_CRLF){ - if((buf[p-2] == '\r') && (buf[p-1] == '\n')){ - buf[p-2] = '\n'; - buf[p-1] = 0; - p--; - } - } - } - return p; + if (p > 1) { + /* here we are sure that buf[p-1] == '\n' */ + if (flags & READSOCKL_CVT_CRLF) { + if ((buf[p - 2] == '\r') && (buf[p - 1] == '\n')) { + buf[p - 2] = '\n'; + buf[p - 1] = 0; + p--; + } + } + } + return p; } -int read_sockline1(FILE *in, char **pbuf, int *buf_len, int timeout, unsigned int flags) +int +read_sockline1(FILE * in, char **pbuf, int *buf_len, int timeout, unsigned int flags) { - int p = 0, size = *buf_len; - char *buf; + int p = 0, size = *buf_len; + char *buf; - if(setjmp(jmp_timeout) != 0){ - alarm_off(); - return -3; - } + if (setjmp(jmp_timeout) != 0) { + alarm_off(); + return -3; + } - alarm_on(timeout); + alarm_on(timeout); + + /* strip leading spaces */ + if (flags & READSOCKL_CHUG) { + _read_chug(in); + } - /* strip leading spaces */ - if(flags & READSOCKL_CHUG){ - _read_chug(in); - } + if (!*pbuf) + *pbuf = malloc(size); + buf = *pbuf; - if(!*pbuf) *pbuf = malloc(size); - buf = *pbuf; - - while(1){ - int pp; + while (1) { + int pp; - pp = _read_line(in, buf, size, timeout); - if(pp == -2){ - *pbuf = realloc(*pbuf, *buf_len + size); - buf = *pbuf + *buf_len; - *buf_len += size; - p += size; - } - else{ - if(pp > 0) p += pp; - else p = pp; - break; - } - } + pp = _read_line(in, buf, size, timeout); + if (pp == -2) { + *pbuf = realloc(*pbuf, *buf_len + size); + buf = *pbuf + *buf_len; + *buf_len += size; + p += size; + } else { + if (pp > 0) + p += pp; + else + p = pp; + break; + } + } - alarm_off(); + alarm_off(); - if(p > 1){ - buf = *pbuf; - /* here we are sure that buf[p-1] == '\n' */ - if(flags & READSOCKL_CVT_CRLF){ - if((buf[p-2] == '\r') && (buf[p-1] == '\n')){ - buf[p-2] = '\n'; - buf[p-1] = 0; - p--; - } - } - } - return p; + if (p > 1) { + buf = *pbuf; + /* here we are sure that buf[p-1] == '\n' */ + if (flags & READSOCKL_CVT_CRLF) { + if ((buf[p - 2] == '\r') && (buf[p - 1] == '\n')) { + buf[p - 2] = '\n'; + buf[p - 1] = 0; + p--; + } + } + } + return p; } -