X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=ircd%2Fsprintf_irc.c;h=59e5218d534fda98622153de302c35720cf6df70;hb=ae91ef6320f611af74e70a0db2620c338fbaa7d5;hp=ab85492ca18c10d0322299a7334327b241ff0a17;hpb=eeff5dd006459c6c56f025f13852fdafb2961339;p=ircu2.10.12-pk.git diff --git a/ircd/sprintf_irc.c b/ircd/sprintf_irc.c index ab85492..59e5218 100644 --- a/ircd/sprintf_irc.c +++ b/ircd/sprintf_irc.c @@ -1,5 +1,5 @@ /* - * IRC - Internet Relay Chat, ircd/s_ping.c + * IRC - Internet Relay Chat, ircd/sprintf_irc.c * * (C) Copyright 1997 * @@ -23,14 +23,13 @@ * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + * $Id$ */ - +#include "sprintf_irc.h" #include "sys.h" #include -#include "h.h" -#include "sprintf_irc.h" -RCSTAG_CC("$Id$"); /* *INDENT-OFF* */ @@ -270,134 +269,133 @@ static char scratch_buffer[32]; * * --Run */ -char *vsprintf_irc(register char *str, - register const char *format, register va_list vl) +char *vsprintf_irc(char *str, const char *format, va_list vl) { - register char c; + char c; while ((c = *format++)) { if (c == '%') { - c = *format++; /* May never be '\0' ! */ + c = *format++; /* May never be '\0' ! */ if (c == 'c') { - *str++ = (char)va_arg(vl, int); - continue; + *str++ = (char)va_arg(vl, int); + continue; } if (c == 's') { - register const char *p1 = va_arg(vl, const char *); - if ((*str = *p1)) - while ((*++str = *++p1)); - continue; + const char *p1 = va_arg(vl, const char *); + if ((*str = *p1)) + while ((*++str = *++p1)); + continue; } - if (c == 'l' && *format == 'u') /* Prints time_t value in interval - [ 100000000 , 4294967295 ] - Actually prints like "%09lu" */ + if (c == 'l' && *format == 'u') /* Prints time_t value in interval + [ 100000000 , 4294967295 ] + Actually prints like "%09lu" */ { - register unsigned long v1, v2; - register const char *ap; - ++format; - v1 = va_arg(vl, unsigned long); - if (v1 > 999999999L) - { - v2 = v1 / 1000000000; - v1 -= v2 * 1000000000; - *str++ = '0' + v2; - } - v2 = v1 / 1000000; - v1 -= v2 * 1000000; - ap = atoi_tab + (v2 << 2); - *str++ = *ap++; - *str++ = *ap++; - *str++ = *ap; - v2 = v1 / 1000; - v1 -= v2 * 1000; - ap = atoi_tab + (v2 << 2); - *str++ = *ap++; - *str++ = *ap++; - *str++ = *ap; - ap = atoi_tab + (v1 << 2); - *str++ = *ap++; - *str++ = *ap++; - *str++ = *ap; - continue; + unsigned long v1, v2; + const char *ap; + ++format; + v1 = va_arg(vl, unsigned long); + if (v1 > 999999999L) + { + v2 = v1 / 1000000000; + v1 -= v2 * 1000000000; + *str++ = '0' + v2; + } + v2 = v1 / 1000000; + v1 -= v2 * 1000000; + ap = atoi_tab + (v2 << 2); + *str++ = *ap++; + *str++ = *ap++; + *str++ = *ap; + v2 = v1 / 1000; + v1 -= v2 * 1000; + ap = atoi_tab + (v2 << 2); + *str++ = *ap++; + *str++ = *ap++; + *str++ = *ap; + ap = atoi_tab + (v1 << 2); + *str++ = *ap++; + *str++ = *ap++; + *str++ = *ap; + continue; } -#if 0 /* Not used */ - if (c == 'N') /* Prints "%03u" a numeric value in the - range [ 0, 999 ], padded with zero's */ +#if 0 /* Not used */ + if (c == 'N') /* Prints "%03u" a numeric value in the + range [ 0, 999 ], padded with zero's */ { - register unsigned int v1; - register const char *ap; - v1 = va_arg(vl, unsigned int); - ap = atoi_tab + (v1 << 2); - *str++ = *ap++; - *str++ = *ap++; - *str++ = *ap; - continue; + unsigned int v1; + const char *ap; + v1 = va_arg(vl, unsigned int); + ap = atoi_tab + (v1 << 2); + *str++ = *ap++; + *str++ = *ap++; + *str++ = *ap; + continue; } #endif if (c == 'd') { - register unsigned int v1, v2; - register const char *ap; - register char *s = &scratch_buffer[sizeof(scratch_buffer) - 2]; - v1 = va_arg(vl, int); - if ((int)v1 <= 0) - { - if (v1 == 0) - { - *str++ = '0'; - continue; - } - *str++ = '-'; - v1 = -v1; - } - do - { - v2 = v1 / 1000; - ap = atoi_tab + 2 + ((v1 - 1000 * v2) << 2); - *s-- = *ap--; - *s-- = *ap--; - *s-- = *ap; - } - while ((v1 = v2) > 0); - while ('0' == *++s); - *str = *s; - while ((*++str = *++s)); - continue; + unsigned int v1, v2; + const char *ap; + char *s = &scratch_buffer[sizeof(scratch_buffer) - 2]; + v1 = va_arg(vl, int); + if ((int)v1 <= 0) + { + if (v1 == 0) + { + *str++ = '0'; + continue; + } + *str++ = '-'; + v1 = -v1; + } + do + { + v2 = v1 / 1000; + ap = atoi_tab + 2 + ((v1 - 1000 * v2) << 2); + *s-- = *ap--; + *s-- = *ap--; + *s-- = *ap; + } + while ((v1 = v2) > 0); + while ('0' == *++s); + *str = *s; + while ((*++str = *++s)); + continue; } if (c == 'u') { - register unsigned int v1, v2; - register const char *ap; - register char *s = &scratch_buffer[sizeof(scratch_buffer) - 2]; - v1 = va_arg(vl, unsigned int); - if (v1 == 0) - { - *str++ = '0'; - continue; - } - do - { - v2 = v1 / 1000; - ap = atoi_tab + 2 + ((v1 - 1000 * v2) << 2); - *s-- = *ap--; - *s-- = *ap--; - *s-- = *ap; - } - while ((v1 = v2) > 0); - while ('0' == *++s); - *str = *s; - while ((*++str = *++s)); - continue; + unsigned int v1, v2; + const char *ap; + char *s = &scratch_buffer[sizeof(scratch_buffer) - 2]; + v1 = va_arg(vl, unsigned int); + if (v1 == 0) + { + *str++ = '0'; + continue; + } + do + { + v2 = v1 / 1000; + ap = atoi_tab + 2 + ((v1 - 1000 * v2) << 2); + *s-- = *ap--; + *s-- = *ap--; + *s-- = *ap; + } + while ((v1 = v2) > 0); + while ('0' == *++s); + *str = *s; + while ((*++str = *++s)); + continue; } if (c != '%') { - format -= 2; - str += vsprintf(str, format, vl); - break; + format -= 2; + str += vsprintf(str, format, vl); + break; } } *str++ = c; @@ -406,10 +404,10 @@ char *vsprintf_irc(register char *str, return str; } -char *sprintf_irc(register char *str, const char *format, ...) +char *sprintf_irc(char *str, const char *format, ...) { - register va_list vl; - register char *ret; + va_list vl; + char *ret; va_start(vl, format); ret = vsprintf_irc(str, format, vl); va_end(vl);