head 1.2; access; symbols pkgsrc-2013Q2:1.2.0.4 pkgsrc-2013Q2-base:1.2 pkgsrc-2012Q4:1.2.0.2 pkgsrc-2012Q4-base:1.2 pkgsrc-2012Q2:1.1.0.60 pkgsrc-2012Q2-base:1.1 pkgsrc-2012Q1:1.1.0.58 pkgsrc-2012Q1-base:1.1 pkgsrc-2011Q4:1.1.0.56 pkgsrc-2011Q4-base:1.1 pkgsrc-2011Q3:1.1.0.54 pkgsrc-2011Q3-base:1.1 pkgsrc-2011Q2:1.1.0.52 pkgsrc-2011Q2-base:1.1 pkgsrc-2011Q1:1.1.0.50 pkgsrc-2011Q1-base:1.1 pkgsrc-2010Q4:1.1.0.48 pkgsrc-2010Q4-base:1.1 pkgsrc-2010Q3:1.1.0.46 pkgsrc-2010Q3-base:1.1 pkgsrc-2010Q2:1.1.0.44 pkgsrc-2010Q2-base:1.1 pkgsrc-2010Q1:1.1.0.42 pkgsrc-2010Q1-base:1.1 pkgsrc-2009Q4:1.1.0.40 pkgsrc-2009Q4-base:1.1 pkgsrc-2009Q3:1.1.0.38 pkgsrc-2009Q3-base:1.1 pkgsrc-2009Q2:1.1.0.36 pkgsrc-2009Q2-base:1.1 pkgsrc-2009Q1:1.1.0.34 pkgsrc-2009Q1-base:1.1 pkgsrc-2008Q4:1.1.0.32 pkgsrc-2008Q4-base:1.1 pkgsrc-2008Q3:1.1.0.30 pkgsrc-2008Q3-base:1.1 cube-native-xorg:1.1.0.28 cube-native-xorg-base:1.1 pkgsrc-2008Q2:1.1.0.26 pkgsrc-2008Q2-base:1.1 cwrapper:1.1.0.24 pkgsrc-2008Q1:1.1.0.22 pkgsrc-2008Q1-base:1.1 pkgsrc-2007Q4:1.1.0.20 pkgsrc-2007Q4-base:1.1 pkgsrc-2007Q3:1.1.0.18 pkgsrc-2007Q3-base:1.1 pkgsrc-2007Q2:1.1.0.16 pkgsrc-2007Q2-base:1.1 pkgsrc-2007Q1:1.1.0.14 pkgsrc-2007Q1-base:1.1 pkgsrc-2006Q4:1.1.0.12 pkgsrc-2006Q4-base:1.1 pkgsrc-2006Q3:1.1.0.10 pkgsrc-2006Q3-base:1.1 pkgsrc-2006Q2:1.1.0.8 pkgsrc-2006Q2-base:1.1 pkgsrc-2006Q1:1.1.0.6 pkgsrc-2006Q1-base:1.1 pkgsrc-2005Q4:1.1.0.4 pkgsrc-2005Q4-base:1.1 pkgsrc-2005Q3:1.1.0.2 pkgsrc-2005Q3-base:1.1; locks; strict; comment @# @; 1.2 date 2012.07.14.22.12.42; author dholland; state dead; branches; next 1.1; 1.1 date 2005.09.19.19.42.11; author adrianp; state Exp; branches; next ; desc @@ 1.2 log @Remove chat/centericq as promised. This has not been buildable for years due to C++ standards drift and has been superseded by centerim. @ text @$NetBSD: patch-af,v 1.1 2005/09/19 19:42:11 adrianp Exp $ --- libgadu-0.1/common.c.orig 2004-07-31 11:47:20.000000000 +0100 +++ libgadu-0.1/common.c @@@@ -284,6 +284,8 @@@@ char *gg_read_line(int sock, char *buf, { int ret; + if (!buf || length < 0) + return NULL; for (; length > 1; buf++, length--) { do { if ((ret = read(sock, buf, 1)) == -1 && errno != EINTR) { @@@@ -340,7 +342,7 @@@@ char *gg_urlencode(const char *str) { char *q, *buf, hex[] = "0123456789abcdef"; const char *p; - int size = 0; + unsigned int size = 0; if (!str && !(str = strdup(""))) return NULL; @@@@ -392,18 +394,18 @@@@ int gg_http_hash(const char *format, ... va_start(ap, format); for (j = 0; j < strlen(format); j++) { - unsigned char *arg, buf[16]; + char *arg, buf[16]; if (format[j] == 'u') { snprintf(buf, sizeof(buf), "%d", va_arg(ap, uin_t)); arg = buf; } else { - if (!(arg = va_arg(ap, unsigned char*))) + if (!(arg = va_arg(ap, char*))) arg = ""; } i = 0; - while ((c = (int) arg[i++]) != 0) { + while ((c = (unsigned char) arg[i++]) != 0) { a = (c ^ b) + (c << 8); b = (a >> 24) | (a << 8); } @@@@ -532,7 +534,7 @@@@ static char gg_base64_charset[] = char *gg_base64_encode(const char *buf) { char *out, *res; - int i = 0, j = 0, k = 0, len = strlen(buf); + unsigned int i = 0, j = 0, k = 0, len = strlen(buf); res = out = malloc((len / 3 + 1) * 4 + 2); @@@@ -590,7 +592,7 @@@@ char *gg_base64_decode(const char *buf) { char *res, *save, *foo, val; const char *end; - int index = 0; + unsigned int index = 0; if (!buf) return NULL; @@@@ -684,7 +686,7 @@@@ static int gg_crc32_initialized = 0; static void gg_crc32_make_table() { uint32_t h = 0; - int i, j; + unsigned int i, j; memset(gg_crc32_table, 0, sizeof(gg_crc32_table)); @@@@ -713,6 +715,8 @@@@ uint32_t gg_crc32(uint32_t crc, const un { if (!gg_crc32_initialized) gg_crc32_make_table(); + if (!buf || len < 0) + return crc; crc ^= 0xffffffffL; @ 1.1 log @Security fix for centericq via Debian http://secunia.com/advisories/16240/ @ text @d1 1 a1 1 $NetBSD$ @