summaryrefslogtreecommitdiff
path: root/games-action/0verkill
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /games-action/0verkill
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'games-action/0verkill')
-rw-r--r--games-action/0verkill/0verkill-0.16-r4.ebuild65
-rw-r--r--games-action/0verkill/Manifest10
-rw-r--r--games-action/0verkill/files/0verkill-0.16-CC.patch50
-rw-r--r--games-action/0verkill/files/0verkill-0.16-docs.patch32
-rw-r--r--games-action/0verkill/files/0verkill-0.16-gentoo-paths.patch23
-rw-r--r--games-action/0verkill/files/0verkill-0.16-home-overflow.patch26
-rw-r--r--games-action/0verkill/files/0verkill-0.16-ovflfix.patch24
-rw-r--r--games-action/0verkill/files/0verkill-0.16-segv.patch39
-rw-r--r--games-action/0verkill/files/0verkill-0.16-underflow-check.patch17
-rw-r--r--games-action/0verkill/metadata.xml8
10 files changed, 294 insertions, 0 deletions
diff --git a/games-action/0verkill/0verkill-0.16-r4.ebuild b/games-action/0verkill/0verkill-0.16-r4.ebuild
new file mode 100644
index 000000000000..478fcc1bbda7
--- /dev/null
+++ b/games-action/0verkill/0verkill-0.16-r4.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools
+
+DESCRIPTION="A bloody 2D action deathmatch-like game in ASCII-ART"
+HOMEPAGE="http://freecode.com/projects/0verkill"
+SRC_URI="http://artax.karlin.mff.cuni.cz/~brain/0verkill/release/${P}.tgz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="X"
+
+DEPEND="X? ( x11-libs/libXpm )"
+RDEPEND=${DEPEND}
+
+PATCHES=(
+ "${FILESDIR}"/${P}-docs.patch
+ "${FILESDIR}"/${P}-home-overflow.patch
+ "${FILESDIR}"/${P}-segv.patch
+ "${FILESDIR}"/${P}-gentoo-paths.patch
+ "${FILESDIR}"/${P}-ovflfix.patch
+ "${FILESDIR}"/${P}-CC.patch
+ "${FILESDIR}"/${P}-underflow-check.patch #136222
+)
+
+src_prepare() {
+ default
+ sed -i \
+ -e "s:data/:/usr/share/${PN}/data/:" cfg.h || die
+ sed -i \
+ -e "s:@CFLAGS@ -O3 :@CFLAGS@ :" Makefile.in || die
+ sed -i \
+ -e "/gettimeofday/s/getopt/getopt calloc/" configure.in || die
+
+ mv configure.{in,ac} || die
+ eautoreconf
+}
+
+src_configure() {
+ econf $(use_with X x)
+}
+
+src_install() {
+ dobin 0verkill
+ local x
+ for x in avi bot editor server test_server ; do
+ newbin ${x} 0verkill-${x}
+ done
+ if use X ; then
+ dobin x0verkill
+ for x in avi editor ; do
+ newbin ${x} 0verkill-${x}
+ done
+ fi
+
+ insinto /usr/share/${PN}
+ doins -r data grx
+
+ rm doc/{README.OS2,"Readme Win32.txt",COPYING} || die
+ dodoc -r doc/.
+}
diff --git a/games-action/0verkill/Manifest b/games-action/0verkill/Manifest
new file mode 100644
index 000000000000..642d42166de3
--- /dev/null
+++ b/games-action/0verkill/Manifest
@@ -0,0 +1,10 @@
+AUX 0verkill-0.16-CC.patch 3795 BLAKE2B b780eaaecad8d93e7b2bdba5b54038408b1b1fabe9eb1580524965110387400a8af42bac0ae07dbfddd39a63f6584316a2373f66bbcde8fa920291c540af0af1 SHA512 ea3c848d20e4a3ce197104dac2ff26948c7bdd77eb03a7492f6d62cf6cb316c12a38f3d4555bdac87582692ce4ff15794c2996a6015a2ea18398cb84b8dee022
+AUX 0verkill-0.16-docs.patch 1477 BLAKE2B 814d3974a5017bb3568f6ef9ea28aae51e8915d3028c4b5dc01e126853f46585ced6eb7624320510169b02cc18525f73657791b174fc2613a74e2985760466fb SHA512 a1ce9ca8083855b77747f0ea32587651d9e7bdf3f41406bed6e8f76debd7fe475681a1a59571b3244a65864700db18bc5fe48858113ea22ee00cd7feff13438d
+AUX 0verkill-0.16-gentoo-paths.patch 530 BLAKE2B a3d00af6fdf1cdefedc3c673e9defa8b2eae6756a42a11600f2a508d1f7d01190d228c1c7f34442dafd68f4ee4a1bee3476cdfe81b71913494fd718f02200981 SHA512 9419b990df205c93baf4d2e2391269f2543bc2b6ba9a3d0219983be518cce01d4a1384ce9cc0dfd8ffba743e8879658b70859e6f7a4df0b97a47186dd90b3337
+AUX 0verkill-0.16-home-overflow.patch 724 BLAKE2B 186df84d2fdfacfd576eb20db8f61228fd2bfe6e48c9e4e8674584376efe5bec22468c43f4b94e974e5ba2995f1784a0400495286599b1f1a0ddb77989fc14f4 SHA512 379edf4f8f9bd31d38bd39812bd0602429afb4254e040cb9f5677764bfe4e34fede5f6e0d07c27e691c9682e205c78fa53109b8c1e4ca6be509d06e752eb08b5
+AUX 0verkill-0.16-ovflfix.patch 805 BLAKE2B 206ca5dc584e09bdaab577e559bc45cd9f9be2c6256dc27b37eba6db5ad3edf3ac4c9c9778c0691cc812b839045b3c865635ff39cfbcf3716f74d98b72173c4e SHA512 ad4f57d6d44c663af4d7a2b75c680ad287f582a5c7b4038e392bdc6425c5819de719e0dadd38e45d784d077f22eb5d098fd0e65c7ecb8bd29824b4fb81032220
+AUX 0verkill-0.16-segv.patch 1560 BLAKE2B c7ab421261b7168d53c77b7baf800cdc4b4e3bb1c5756078729a17f82c391ce9276ab846b65428eae5f0513facc995b90f182ce810c81dee70eb23ded69d0f19 SHA512 05ce966d80cf199a9602cb7143a2d7e8479ccb4b03da2275dc8a93a9065d387fe15426c48559279acb73eb3c371306a02706de899d5c6a97c123319426b3f6bc
+AUX 0verkill-0.16-underflow-check.patch 675 BLAKE2B 12ebde16b9eb4e825a34259103fec200d174e9b9b3ee3d9b689a47f53406abb7c36e8c5cc9d444cd53d84553cc18658bdc7346c02bced87ed4279189af33dd87 SHA512 3b5bff2c18c1862fadbb3d932be23f35559ed9eb3ffb979cf11c50bbac9fff8928b5ead8349ddfc78c84d07a5d1afe4431af56263568b3b82fd7cb015f442e42
+DIST 0verkill-0.16.tgz 276579 BLAKE2B 125a441bfce8433f750180653323059409495c41ff318cec58c31840102739d7a911cd73c07e64ea459c8dd4062fd8bbdbd4a26b6b280b359fe7f61d52ef5ae2 SHA512 6ab273085f2be3a6d0a2b785a51a9bfd52add0212b3c8522b22255c4e3e48a9470f20d9d678158233da9c9465563279079c29ca5526d322247f2ef1d74107144
+EBUILD 0verkill-0.16-r4.ebuild 1371 BLAKE2B c077b1dddf99fd5d4b71f2ae90a09697ea0c312bac60443e341bbf5926a59ae23d83b0f68ea3de6b088f5673f5572497687654a54135fcfc697fcd48806ad396 SHA512 35c019c33ffbc2b9429770b697b58b15368fbc251a13e16a345409224e9fd1a1dac8a6c1b9ac5cee609cbb8d2ef1a7342596f2bc9c8b9ad5ee900a6634008795
+MISC metadata.xml 249 BLAKE2B 7113a758d7abc93accec998a8843d8ef51ca8b72d72e659e224d5cec2a1a6a63e6c0605958091532ac6e51fa0d501ca4fd9f3f4a9e55baeb31519a02971b465f SHA512 895577c3a805c40581da03057b94e3f28f05f23012bf350c1e3575847d1a0fe40bb044a46f909012a200d991a400f6389358a60e9c2b5bef0da01fb26f846118
diff --git a/games-action/0verkill/files/0verkill-0.16-CC.patch b/games-action/0verkill/files/0verkill-0.16-CC.patch
new file mode 100644
index 000000000000..568f8a4aa6f2
--- /dev/null
+++ b/games-action/0verkill/files/0verkill-0.16-CC.patch
@@ -0,0 +1,50 @@
+--- a/Makefile.in 2010-11-08 13:30:42.060916323 -0500
++++ b/Makefile.in 2010-11-08 13:31:03.199940471 -0500
+@@ -24,7 +24,7 @@
+ server.o: server.c server.h net.h data.h hash.h cfg.h time.h math.h config.h error.h
+ client.o: client.c data.h sprite.h cfg.h net.h hash.h time.h math.h console.h help.h blit.h config.h error.h
+ xclient.o: client.c data.h sprite.h cfg.h net.h hash.h time.h math.h console.h help.h config.h error.h
+- gcc -c $(CFLAGS) -DXWINDOW -o xclient.o client.c
++ $(CC) -c $(CFLAGS) -DXWINDOW -o xclient.o client.c
+ time.o: time.c time.h error.h
+ help.o: help.c blit.h error.h
+ avihelp.o: avihelp.c blit.h error.h
+@@ -38,29 +38,29 @@
+
+
+ avi: avi.o blit.o console.o kbd.o time.o avihelp.o error.o
+- gcc $(LDFLAGS) -o avi avi.o blit.o console.o kbd.o error.o time.o avihelp.o $(LIBS)
++ $(CC) $(LDFLAGS) -o avi avi.o blit.o console.o kbd.o error.o time.o avihelp.o $(LIBS)
+
+ xavi: avi.o blit.o xinterface.o xkbd.o time.o avihelp.o error.o
+- gcc $(LDFLAGS) -o xavi avi.o blit.o xinterface.o xkbd.o error.o time.o avihelp.o $(LIBS) $(XLIBS)
++ $(CC) $(LDFLAGS) -o xavi avi.o blit.o xinterface.o xkbd.o error.o time.o avihelp.o $(LIBS) $(XLIBS)
+
+ bot: bot.o data.o hash.o time.o net.o crc32.o md5.o md5hl.o error.o
+- gcc $(LDFLAGS) -o bot bot.o data.o hash.o time.o net.o error.o md5.o md5hl.o crc32.o sprite.o $(LIBS)
++ $(CC) $(LDFLAGS) -o bot bot.o data.o hash.o time.o net.o error.o md5.o md5hl.o crc32.o sprite.o $(LIBS)
+
+ 0verkill: client.o data.o sprite.o blit.o console.o hash.o time.o net.o error.o crc32.o md5.o md5hl.o kbd.o help.o
+- gcc $(LDFLAGS) -o 0verkill client.o data.o sprite.o blit.o console.o error.o hash.o time.o md5.o md5hl.o kbd.o net.o crc32.o help.o $(LIBS)
++ $(CC) $(LDFLAGS) -o 0verkill client.o data.o sprite.o blit.o console.o error.o hash.o time.o md5.o md5hl.o kbd.o net.o crc32.o help.o $(LIBS)
+ @OVERKILL_SPECIAL@
+
+ x0verkill: xclient.o data.o sprite.o blit.o xinterface.o hash.o time.o net.o crc32.o error.o xkbd.o help.o md5.o md5hl.o
+- gcc $(LDFLAGS) -o x0verkill xclient.o data.o blit.o sprite.o xinterface.o xkbd.o error.o md5.o md5hl.o hash.o time.o net.o crc32.o help.o $(LIBS) $(XLIBS)
++ $(CC) $(LDFLAGS) -o x0verkill xclient.o data.o blit.o sprite.o xinterface.o xkbd.o error.o md5.o md5hl.o hash.o time.o net.o crc32.o help.o $(LIBS) $(XLIBS)
+
+ server: server.o data.o sprite.o blit.o console.o hash.o time.o kbd.o net.o crc32.o md5.o md5hl.o error.o
+- gcc $(LDFLAGS) -o server server.o data.o sprite.o blit.o console.o hash.o time.o kbd.o md5.o md5hl.o error.o net.o crc32.o $(LIBS)
++ $(CC) $(LDFLAGS) -o server server.o data.o sprite.o blit.o console.o hash.o time.o kbd.o md5.o md5hl.o error.o net.o crc32.o $(LIBS)
+
+ editor: editor.o data.o blit.o sprite.o console.o hash.o time.o kbd.o md5.o md5hl.o error.o
+- gcc $(LDFLAGS) -o editor editor.o data.o blit.o sprite.o console.o hash.o md5.o md5hl.o error.o time.o kbd.o $(LIBS)
++ $(CC) $(LDFLAGS) -o editor editor.o data.o blit.o sprite.o console.o hash.o md5.o md5hl.o error.o time.o kbd.o $(LIBS)
+
+ xeditor: editor.o data.o blit.o sprite.o xinterface.o hash.o time.o xkbd.o md5.o md5hl.o error.o
+- gcc $(LDFLAGS) -o xeditor editor.o data.o blit.o sprite.o xinterface.o hash.o md5.o error.o md5hl.o time.o xkbd.o $(LIBS) $(XLIBS)
++ $(CC) $(LDFLAGS) -o xeditor editor.o data.o blit.o sprite.o xinterface.o hash.o md5.o error.o md5hl.o time.o xkbd.o $(LIBS) $(XLIBS)
+
+ test_server: test_server.o net.o data.o crc32.o blit.o sprite.o time.o hash.o console.o kbd.o md5.o md5hl.o error.o
+- gcc $(LDFLAGS) -o test_server test_server.o net.o data.o crc32.o blit.o sprite.o time.o hash.o md5.o md5hl.o error.o console.o kbd.o $(LIBS)
++ $(CC) $(LDFLAGS) -o test_server test_server.o net.o data.o crc32.o blit.o sprite.o time.o hash.o md5.o md5hl.o error.o console.o kbd.o $(LIBS)
diff --git a/games-action/0verkill/files/0verkill-0.16-docs.patch b/games-action/0verkill/files/0verkill-0.16-docs.patch
new file mode 100644
index 000000000000..90d049309f4d
--- /dev/null
+++ b/games-action/0verkill/files/0verkill-0.16-docs.patch
@@ -0,0 +1,32 @@
+--- 0verkill-0.16/doc/README.html
++++ 0verkill-0.16-gentoo/doc/README.html
+@@ -30,7 +30,7 @@
+ <center><h1><a name="running">RUNNING</a></h1></center>
+
+ <p><h2><a name="server">Running server</a></h2>
+-<p>First thing to start 0verkill is run the server - type <i>server</i>. Server
++<p>First thing to start 0verkill is run the server - type <i>0verkill-server</i>. Server
+ takes options <i>-p</i> and <i>-n</i>. As usual, option <i>-h</i> prints help.
+
+ <p> Option <i>-p</i> takes one argument: port number. Server needs UDP port
+@@ -84,9 +84,9 @@
+
+ <p><h2><a name="testserver">Testing Program</a></h2>
+
+-<p>There's <i>test_server</i> program in the distribution. It avoids testing
++<p>There's <i>0verkill-test_server</i> program in the distribution. It avoids testing
+ remote server if it's up and how many players there is. To use it simply type
+-<i>test_server -a &lt;server address&gt; -p &lt;port number &gt;</i>.
++<i>0verkill-test_server -a &lt;server address&gt; -p &lt;port number &gt;</i>.
+
+ <center><h1><a name="controls">GAME CONTROLS</a></h1></center>
+
+--- 0verkill-0.16/doc/adding_a_level.txt
++++ 0verkill-0.16-gentoo/doc/adding_a_level.txt
+@@ -19,5 +19,5 @@
+ 5) If you want to create some cool new graphics, run
+ "avi grx/graphics_file.avi". Then add it to the data/new_level.sp
+
+-6) When the level is done, run "server -lX", where X is again from (1). And
++6) When the level is done, run "0verkill-server -lX", where X is again from (1). And
+ play!
diff --git a/games-action/0verkill/files/0verkill-0.16-gentoo-paths.patch b/games-action/0verkill/files/0verkill-0.16-gentoo-paths.patch
new file mode 100644
index 000000000000..d48b758c9e53
--- /dev/null
+++ b/games-action/0verkill/files/0verkill-0.16-gentoo-paths.patch
@@ -0,0 +1,23 @@
+--- a/sprite.c 2007-11-15 18:26:30.000000000 -0500
++++ b/sprite.c 2007-11-15 18:26:57.000000000 -0500
+@@ -2,6 +2,7 @@
+ #include <ctype.h>
+ #include <stdlib.h>
+ #include <stdio.h>
++#include <unistd.h>
+
+ #ifndef WIN32
+ #include "config.h"
+@@ -188,6 +189,12 @@
+
+ if (!(f=fopen(filename,"rb")))
+ {
++ chdir(DATA_PATH);
++ }
++ if (!(f=fopen(filename,"rb"))) {
++ chdir(DATA_PATH "/../");
++ }
++ if (!(f=fopen(filename,"rb"))) {
+ unsigned char msg[256];
+ snprintf(msg,256,"Error opening file \"%s\"!\n",filename);
+ ERROR(msg);
diff --git a/games-action/0verkill/files/0verkill-0.16-home-overflow.patch b/games-action/0verkill/files/0verkill-0.16-home-overflow.patch
new file mode 100644
index 000000000000..63bfb5fa7a6a
--- /dev/null
+++ b/games-action/0verkill/files/0verkill-0.16-home-overflow.patch
@@ -0,0 +1,26 @@
+--- a/client.c 2001-12-16 04:26:38.000000000 -0500
++++ b/client.c 2003-11-17 15:12:52.850772508 -0500
+@@ -191,9 +191,9 @@
+ unsigned char txt[256];
+
+ #ifndef WIN32
+- sprintf(txt,"%s/%s",getenv("HOME"),CFG_FILE);
++ snprintf(txt,sizeof(txt),"%s/%s",getenv("HOME"),CFG_FILE);
+ #else
+- sprintf(txt,"./%s",CFG_FILE);
++ snprintf(txt,sizeof(txt),"./%s",CFG_FILE);
+ #endif
+ stream=fopen(txt,"r");
+ if (!stream)return;
+@@ -223,9 +223,9 @@
+ unsigned char txt[256];
+
+ #ifndef WIN32
+- sprintf(txt,"%s/%s",getenv("HOME"),CFG_FILE);
++ snprintf(txt,sizeof(txt),"%s/%s",getenv("HOME"),CFG_FILE);
+ #else
+- sprintf(txt,"./%s",CFG_FILE);
++ snprintf(txt,sizeof(txt),"./%s",CFG_FILE);
+ #endif
+ stream=fopen(txt,"w");
+ if (!stream)return;
diff --git a/games-action/0verkill/files/0verkill-0.16-ovflfix.patch b/games-action/0verkill/files/0verkill-0.16-ovflfix.patch
new file mode 100644
index 000000000000..a8a832e19619
--- /dev/null
+++ b/games-action/0verkill/files/0verkill-0.16-ovflfix.patch
@@ -0,0 +1,24 @@
+--- a/server.c 2010-11-08 11:53:18.000000000 +0100
++++ b/server.c 2010-11-08 11:53:43.000000000 +0100
+@@ -905,8 +905,8 @@
+ int len;
+
+ packet[0]=P_MESSAGE;
+- if (!name){snprintf(packet+1,256,"%s",msg);len=strlen(msg)+1+1;}
+- else {snprintf(packet+1,256,"%s> %s",name,msg);len=strlen(name)+strlen(msg)+1+3;}
++ if (!name){snprintf(packet+1,255,"%s",msg);len=strlen(msg)+1+1;}
++ else {snprintf(packet+1,255,"%s> %s",name,msg);len=strlen(name)+strlen(msg)+1+3;}
+ send_chunk_packet_to_player(packet,len,player);
+ }
+
+--- a/console.c 2010-11-08 11:53:26.000000000 +0100
++++ b/console.c 2010-11-08 11:54:44.000000000 +0100
+@@ -206,7 +206,7 @@
+ void c_setcolor_3b(unsigned char a)
+ {
+ char txt[8];
+- snprintf(txt,16,"\033[%dm",30+(a&7));
++ snprintf(txt,sizeof(txt),"\033[%dm",30+(a&7));
+ my_print(txt);
+ }
+
diff --git a/games-action/0verkill/files/0verkill-0.16-segv.patch b/games-action/0verkill/files/0verkill-0.16-segv.patch
new file mode 100644
index 000000000000..9f9656dfd9fa
--- /dev/null
+++ b/games-action/0verkill/files/0verkill-0.16-segv.patch
@@ -0,0 +1,39 @@
+diff -Naurp 0verkill-0.16.old/data.c 0verkill-0.16/data.c
+--- 0verkill-0.16.old/data.c 2007-10-30 19:49:59.000000000 +0100
++++ 0verkill-0.16/data.c 2007-10-30 20:25:08.000000000 +0100
+@@ -471,7 +471,7 @@ my_double can_go_x(my_double old_x,my_do
+ for (x=double2int(old_x)+1;x<=round_up(new_x);x++) /* go to the right */
+ {
+ if (x>AREA_X-1) return int2double(AREA_X-1);
+- for (y=yh;y<=yl;y++)
++ for (y=(yh>=0?yh:0);y<=yl;y++)
+ if ((area_a[x+y*AREA_X]&240)==TYPE_WALL)
+ return int2double(x-1);
+ }
+@@ -479,7 +479,7 @@ my_double can_go_x(my_double old_x,my_do
+ for (x=round_up(old_x)-1;x>=double2int(new_x);x--) /* go to the left */
+ {
+ if (x<0) return 0;
+- for (y=yh;y<=yl;y++)
++ for (y=(yh>=0?yh:0);y<=yl;y++)
+ if ((area_a[x+y*AREA_X]&240)==TYPE_WALL) return int2double(x+1);
+ }
+ if(flag)*flag=0;
+@@ -501,7 +501,7 @@ my_double can_go_y(my_double old_y, my_d
+ for (y=double2int(old_y)+1;y<=round_up(new_y);y++) /* go down */
+ {
+ if (y>AREA_Y-1) return int2double(AREA_Y-1);
+- for (x=xl;x<=xr;x++)
++ for (x=(xl>=0?xl:0);x<=xr;x++)
+ if ((area_a[x+y*AREA_X]&240)==TYPE_WALL||(!down_ladder&&((area_a[x+y*AREA_X]&240)==TYPE_JUMP||(area_a[x+y*AREA_X]&240)==TYPE_JUMP_FOREGROUND))) return int2double(y-1);
+ }
+ else
+@@ -510,7 +510,7 @@ my_double can_go_y(my_double old_y, my_d
+ for (y=round_up(old_y)-1;y>=double2int(new_y);y--) /* go up */
+ {
+ if (y<0) return 0;
+- for (x=xl;x<=xr;x++)
++ for (x=(xl>=0?xl:0);x<=xr;x++)
+ if ((area_a[x+y*AREA_X]&240)==TYPE_WALL) return int2double(y+1);
+ }
+ }
diff --git a/games-action/0verkill/files/0verkill-0.16-underflow-check.patch b/games-action/0verkill/files/0verkill-0.16-underflow-check.patch
new file mode 100644
index 000000000000..d0af396deafd
--- /dev/null
+++ b/games-action/0verkill/files/0verkill-0.16-underflow-check.patch
@@ -0,0 +1,17 @@
+The vulnerability is cause due to an integer underflow error in "recv_packet()"
+within the handling of a received UDP packet. This can be exploited to cause
+out-of-bounds memory access which crashes the server process via a UDP packet
+that is smaller than 12 bytes in size.
+
+http://bugs.gentoo.org/136222
+
+--- 0verkill-0.16/net.c
++++ 0verkill-0.16/net.c
+@@ -84,6 +84,7 @@
+ p=mem_alloc(max_len+12);
+ if (!p)return -1; /* not enough memory */
+ retval=recvfrom(fd,p,max_len+12,0,addr,addr_len);
++ if (retval<12)return -1; /* not enough data from network */
+ memcpy(packet,p+12,max_len);
+ crc=p[0]+(p[1]<<8)+(p[2]<<16)+(p[3]<<24);
+ s=p[4]+(p[5]<<8)+(p[6]<<16)+(p[7]<<24);
diff --git a/games-action/0verkill/metadata.xml b/games-action/0verkill/metadata.xml
new file mode 100644
index 000000000000..78274e0fa550
--- /dev/null
+++ b/games-action/0verkill/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>games@gentoo.org</email>
+ <name>Gentoo Games Project</name>
+</maintainer>
+</pkgmetadata>