From 822fbc8eceec64a17c31fd2d771b9e6f71d03f6c Mon Sep 17 00:00:00 2001 From: adrianp Date: Sat, 2 Sep 2006 12:38:23 +0000 Subject: Fix for CVE-2006-3125 via Debian. Bump to nb8 --- games/gtetrinet/Makefile | 4 +- games/gtetrinet/distinfo | 3 +- games/gtetrinet/patches/patch-ac | 120 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 124 insertions(+), 3 deletions(-) create mode 100644 games/gtetrinet/patches/patch-ac (limited to 'games') diff --git a/games/gtetrinet/Makefile b/games/gtetrinet/Makefile index a5b8868d1f5..d7225fb4798 100644 --- a/games/gtetrinet/Makefile +++ b/games/gtetrinet/Makefile @@ -1,8 +1,8 @@ -# $NetBSD: Makefile,v 1.33 2006/07/05 05:37:41 jlam Exp $ +# $NetBSD: Makefile,v 1.34 2006/09/02 12:38:23 adrianp Exp $ # DISTNAME= gtetrinet-0.7.7 -PKGREVISION= 7 +PKGREVISION= 8 CATEGORIES= games gnome MASTER_SITES= ${MASTER_SITE_GNOME:=sources/gtetrinet/0.7/} diff --git a/games/gtetrinet/distinfo b/games/gtetrinet/distinfo index 051b26be2c9..bca3d2bff22 100644 --- a/games/gtetrinet/distinfo +++ b/games/gtetrinet/distinfo @@ -1,7 +1,8 @@ -$NetBSD: distinfo,v 1.4 2005/02/23 23:11:59 agc Exp $ +$NetBSD: distinfo,v 1.5 2006/09/02 12:38:23 adrianp Exp $ SHA1 (gtetrinet-0.7.7.tar.gz) = 4223617048386b58e2654b2cbe987ea1f7591011 RMD160 (gtetrinet-0.7.7.tar.gz) = b2e107538e68af9aa403f4d286ad6bf5691a299a Size (gtetrinet-0.7.7.tar.gz) = 476896 bytes SHA1 (patch-aa) = d6496e30634be397cabe574ce2b0595f354f00e4 SHA1 (patch-ab) = 3b7fbcaf1989bda98c445b34e278d7a9d76751f4 +SHA1 (patch-ac) = ece45fdb6e91f77b09425eb00ef7f796c8059c89 diff --git a/games/gtetrinet/patches/patch-ac b/games/gtetrinet/patches/patch-ac new file mode 100644 index 00000000000..07312a783d9 --- /dev/null +++ b/games/gtetrinet/patches/patch-ac @@ -0,0 +1,120 @@ +$NetBSD: patch-ac,v 1.1 2006/09/02 12:38:23 adrianp Exp $ + +--- src/tetrinet.c.orig 2003-06-17 00:18:58.000000000 +0100 ++++ src/tetrinet.c +@@ -238,7 +238,7 @@ void tetrinet_inmessage (enum inmsg_type + break; + case IN_PLAYERNUM: + tmp_pnum = atoi (data); +- if (tmp_pnum >= MAX_PLAYERS) ++ if (tmp_pnum >= MAX_PLAYERS || tmp_pnum < 0) + break; + bigfieldnum = playernum = tmp_pnum; + if (!connected) +@@ -296,7 +296,7 @@ void tetrinet_inmessage (enum inmsg_type + token = strtok (data, " "); + if (token == NULL) break; + pnum = atoi (token); +- if (pnum >= MAX_PLAYERS) ++ if (pnum >= MAX_PLAYERS || pnum < 0) + break; + token = strtok (NULL, ""); + if (token == NULL) break; +@@ -324,7 +324,7 @@ void tetrinet_inmessage (enum inmsg_type + token = strtok (data, " "); + if (token == NULL) break; + pnum = atoi (token); +- if (pnum >= MAX_PLAYERS) ++ if (pnum >= MAX_PLAYERS || pnum < 0) + break; + if (!playercount) + break; +@@ -353,7 +353,7 @@ void tetrinet_inmessage (enum inmsg_type + token = strtok (data, " "); + if (token == NULL) break; + pnum = atoi (token); +- if (pnum >= MAX_PLAYERS) ++ if (pnum >= MAX_PLAYERS || pnum < 0) + break; + if ((pnum == playernum) && !spectating) + g_snprintf (buf, sizeof(buf), +@@ -382,7 +382,7 @@ void tetrinet_inmessage (enum inmsg_type + token = strtok (data, " "); + if (token == NULL) break; + pnum = atoi (token); +- if (pnum >= MAX_PLAYERS) ++ if (pnum >= MAX_PLAYERS || pnum < 0) + break; + token = strtok (NULL, ""); + if (token == NULL) token = ""; +@@ -401,7 +401,7 @@ void tetrinet_inmessage (enum inmsg_type + token = strtok (data, " "); + if (token == NULL) break; + pnum = atoi (token); +- if (pnum >= MAX_PLAYERS) ++ if (pnum >= MAX_PLAYERS || pnum < 0) + break; + token = strtok (NULL, ""); + if (token == NULL) token = ""; +@@ -510,7 +510,7 @@ void tetrinet_inmessage (enum inmsg_type + token = strtok (data, " "); + if (token == NULL) break; + pnum = atoi (token); +- if (pnum >= MAX_PLAYERS) ++ if (pnum >= MAX_PLAYERS || pnum < 0) + break; + token = strtok (NULL, ""); + if (token == NULL) token = ""; +@@ -522,7 +522,7 @@ void tetrinet_inmessage (enum inmsg_type + { + int pnum; + pnum = atoi (data); +- if (pnum >= MAX_PLAYERS) ++ if (pnum >= MAX_PLAYERS || pnum < 0) + break; + /* player is out */ + playerplaying[pnum] = 0; +@@ -532,7 +532,7 @@ void tetrinet_inmessage (enum inmsg_type + { + int pnum; + pnum = atoi (data); +- if (pnum >= MAX_PLAYERS) ++ if (pnum >= MAX_PLAYERS || pnum < 0) + break; + if (teamnames[pnum][0]) + g_snprintf (buf, sizeof(buf), +@@ -671,7 +671,7 @@ void tetrinet_inmessage (enum inmsg_type + s = strtok (data, " "); + if (s == NULL) break; + pnum = atoi (s); +- if (pnum >= MAX_PLAYERS) ++ if (pnum >= MAX_PLAYERS || pnum < 0) + break; + s = strtok (NULL, ""); + if (s == NULL) break; +@@ -705,14 +705,14 @@ void tetrinet_inmessage (enum inmsg_type + token = strtok (data, " "); + if (token == NULL) break; + to = atoi (token); +- if (to >= MAX_PLAYERS) ++ if (to >= MAX_PLAYERS || to < 0) + break; + sbid = strtok (NULL, " "); + if (sbid == NULL) break; + token = strtok (NULL, ""); + if (token == NULL) break; + from = atoi(token); +- if (from >= MAX_PLAYERS) ++ if (from >= MAX_PLAYERS || from < 0) + break; + for (sbnum = 0; sbinfo[sbnum].id; sbnum ++) + if (strcmp (sbid, sbinfo[sbnum].id) == 0) break; +@@ -727,7 +727,7 @@ void tetrinet_inmessage (enum inmsg_type + token = strtok (data, " "); + if (token == NULL) break; + pnum = atoi (token); +- if (pnum >= MAX_PLAYERS) ++ if (pnum >= MAX_PLAYERS || pnum <= 0) + break; + token = strtok (NULL, ""); + if (token == NULL) break; -- cgit v1.2.3