Date: Mon, 23 Dec 2013 16:32:06 +0000 (UTC) From: Michael Landin Hostbaek <mich@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r337259 - in head/games/0verkill: . files Message-ID: <201312231632.rBNGW6BX044497@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: mich Date: Mon Dec 23 16:32:05 2013 New Revision: 337259 URL: http://svnweb.freebsd.org/changeset/ports/337259 Log: 1. Merge fixes for long known bugs from hackndev[1] version 3507529 64bit fix ... now works on amd64 as well ;-) 95d2af2 Replaced all those insecure sprintf's with snprintf's (partial) 33a1a8d Fix sigsegv on hero reaching topmost or leftmost border of the game area 436bbfc Push back network stack underflow bugfix 160e4d6 Prevent buffer overflow ee911ba make the server invulnerable to long names 2. Add patch from gentoo linux[2] to use unmodified game data. 3. Support staging 4. Use options framework [1] https://github.com/hackndev/0verkill [2] http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/games-action/0verkill/files/0verkill-0.16-gentoo-paths.patch?revision=1.1&view=markup PR: ports/184252 Submitted by: Vladimir Kondratiev <wulf@cicgroup.ru> Added: head/games/0verkill/files/ head/games/0verkill/files/patch-client.c (contents, props changed) head/games/0verkill/files/patch-data.c (contents, props changed) head/games/0verkill/files/patch-net.c (contents, props changed) head/games/0verkill/files/patch-server.c (contents, props changed) head/games/0verkill/files/patch-sprite.c (contents, props changed) Modified: head/games/0verkill/Makefile head/games/0verkill/pkg-descr head/games/0verkill/pkg-plist Modified: head/games/0verkill/Makefile ============================================================================== --- head/games/0verkill/Makefile Mon Dec 23 16:24:11 2013 (r337258) +++ head/games/0verkill/Makefile Mon Dec 23 16:32:05 2013 (r337259) @@ -3,7 +3,7 @@ PORTNAME= 0verkill PORTVERSION= 0.16 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= games MASTER_SITES= http://artax.karlin.mff.cuni.cz/~brain/0verkill/release/ EXTRACT_SUFX= .tgz @@ -15,51 +15,39 @@ LICENSE= GPLv2 GNU_CONFIGURE= yes -.if defined(WITHOUT_X11) -PLIST_SUB= X11="@comment " -.else -USE_XORG= xpm -CONFIGURE_ARGS+= --with-x -PLIST_SUB= X11="" -.endif +OPTIONS_DEFINE= X11 DOCS +OPTIONS_DEFAULT=X11 DOCS -NO_STAGE= yes -pre-everything:: -.if !defined(WITHOUT_X11) - @${ECHO_MSG} - @${ECHO_MSG} "If you want to compile without X11 support," - @${ECHO_MSG} "hit Ctrl-C right now and use \"make WITHOUT_X11=yes\"" - @${ECHO_MSG} -.endif +OPTIONS_SUB= yes +X11_USE= XORG=xpm +X11_CONFIGURE_WITH= x + +.include <bsd.port.options.mk> post-patch: @${REINPLACE_CMD} -e 's|data/|${DATADIR}/data/|g' ${WRKSRC}/cfg.h - @${REINPLACE_CMD} -e 's|grx/|${DATADIR}/grx/|g' ${WRKSRC}/data/* @${REINPLACE_CMD} -e 's|-O3 ||g ; \ s|gcc |\$$\(CC\) |g' ${WRKSRC}/Makefile.in do-install: - ${INSTALL_PROGRAM} ${WRKSRC}/0verkill ${PREFIX}/bin + ${INSTALL_PROGRAM} ${WRKSRC}/0verkill ${STAGEDIR}${PREFIX}/bin .for file in avi bot editor server test_server - ${INSTALL_PROGRAM} ${WRKSRC}/${file} ${PREFIX}/bin/0verkill-${file} + ${INSTALL_PROGRAM} ${WRKSRC}/${file} \ + ${STAGEDIR}${PREFIX}/bin/0verkill-${file} .endfor -.if !defined(WITHOUT_X11) - ${INSTALL_PROGRAM} ${WRKSRC}/x0verkill ${PREFIX}/bin +.if ${PORT_OPTIONS:MX11} + ${INSTALL_PROGRAM} ${WRKSRC}/x0verkill ${STAGEDIR}${PREFIX}/bin .for file in avi editor - ${INSTALL_PROGRAM} ${WRKSRC}/x${file} ${PREFIX}/bin/x0verkill-${file} + ${INSTALL_PROGRAM} ${WRKSRC}/x${file} \ + ${STAGEDIR}${PREFIX}/bin/x0verkill-${file} .endfor .endif - @${MKDIR} ${DATADIR}/data -.for file in banner.dat level.dat sprites.dat *.sp *.dn *.st - ${INSTALL_DATA} ${WRKSRC}/data/${file} ${DATADIR}/data +.for dir in data grx + cd ${WRKSRC} && ${COPYTREE_SHARE} ${dir} ${STAGEDIR}${DATADIR} .endfor - @${MKDIR} ${DATADIR}/grx - ${INSTALL_DATA} ${WRKSRC}/grx/* ${DATADIR}/grx -.if !defined(NOPORTDOCS) - @${MKDIR} ${DOCSDIR} + @${MKDIR} ${STAGEDIR}${DOCSDIR} .for file in AUTHORS README.html avi.txt bot.txt doc.html - ${INSTALL_DATA} ${WRKSRC}/doc/${file} ${DOCSDIR} + ${INSTALL_DATA} ${WRKSRC}/doc/${file} ${STAGEDIR}${DOCSDIR} .endfor -.endif .include <bsd.port.mk> Added: head/games/0verkill/files/patch-client.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/games/0verkill/files/patch-client.c Mon Dec 23 16:32:05 2013 (r337259) @@ -0,0 +1,26 @@ +--- client.c.orig 2001-12-16 12:26:38.000000000 +0300 ++++ client.c 2013-11-17 11:40:44.755218781 +0400 +@@ -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; Added: head/games/0verkill/files/patch-data.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/games/0verkill/files/patch-data.c Mon Dec 23 16:32:05 2013 (r337259) @@ -0,0 +1,20 @@ +--- data.c.orig 2013-11-17 11:25:40.820307151 +0400 ++++ data.c 2013-11-17 11:27:32.743383408 +0400 +@@ -460,7 +460,7 @@ + my_double can_go_x(my_double old_x,my_double new_x,int yh, int yl,unsigned char *flag) + { + int x,y; +- ++ if (yh<0) yh=0; + if (old_x==new_x+.5) + { + if(flag)*flag=0; +@@ -494,7 +494,7 @@ + my_double can_go_y(my_double old_y, my_double new_y,int xl, int xr,unsigned char *flag,unsigned char down_ladder) + { + int x,y; +- ++ if (xl<0) xl=0; + if (old_y==new_y){if(flag)*flag=0;return new_y;} + if(flag)*flag=1; + if (old_y<new_y) Added: head/games/0verkill/files/patch-net.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/games/0verkill/files/patch-net.c Mon Dec 23 16:32:05 2013 (r337259) @@ -0,0 +1,20 @@ +--- net.c.orig 2001-12-15 20:51:50.000000000 +0300 ++++ net.c 2013-11-17 11:19:18.535476607 +0400 +@@ -78,12 +78,16 @@ + { + unsigned char *p; + int retval; +- unsigned long crc; ++ unsigned int crc; + int s,r; + + 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) { ++ mem_free(p); ++ return -1; ++ } + 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); Added: head/games/0verkill/files/patch-server.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/games/0verkill/files/patch-server.c Mon Dec 23 16:32:05 2013 (r337259) @@ -0,0 +1,33 @@ +--- server.c.orig 2001-12-16 18:18:45.000000000 +0300 ++++ server.c 2013-11-24 22:37:06.306435317 +0400 +@@ -907,6 +907,8 @@ + 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 (len > 255) ++ len = 255; + send_chunk_packet_to_player(packet,len,player); + } + +@@ -921,6 +923,8 @@ + packet[0]=P_MESSAGE; + 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;} ++ if (len > 255) ++ len = 255; + for (p=&players;p->next;p=p->next) + if ((!not1||(&(p->next->member))!=not1)&&(!not2||(&(p->next->member))!=not2)) + send_chunk_packet_to_player(packet,len,&(p->next->member)); +@@ -1228,6 +1232,12 @@ + send_packet(packet,2,(struct sockaddr*)(&client),0,last_player->member.id); + break; + } ++ if (strlen(packet+5) > MAX_NAME_LEN) ++ { ++ snprintf(txt,256,"Name too long, shortening it to %i characters\n",MAX_NAME_LEN); ++ message(txt,2); ++ packet[5+MAX_NAME_LEN]='\0'; ++ } + find_birthplace(&x,&y); + if (add_player(packet[4],packet+5,&client,x,y)) /* failed to add player */ + { Added: head/games/0verkill/files/patch-sprite.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/games/0verkill/files/patch-sprite.c Mon Dec 23 16:32:05 2013 (r337259) @@ -0,0 +1,25 @@ +--- sprite.c.orig 2001-12-15 20:51:53.000000000 +0300 ++++ sprite.c 2013-11-17 13:00:40.184048213 +0400 +@@ -2,6 +2,7 @@ + #include <ctype.h> + #include <stdlib.h> + #include <stdio.h> ++#include <unistd.h> + + #ifndef WIN32 + #include "config.h" +@@ -188,6 +189,14 @@ + + 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); Modified: head/games/0verkill/pkg-descr ============================================================================== --- head/games/0verkill/pkg-descr Mon Dec 23 16:24:11 2013 (r337258) +++ head/games/0verkill/pkg-descr Mon Dec 23 16:32:05 2013 (r337259) @@ -8,4 +8,4 @@ of network-game action in such a massive No one ever connected gushing blood with those innocent ASCII letters that were so utterly boring until recently, when 0verkill was released. -WWW: http://artax.karlin.mff.cuni.cz/~brain/0verkill/ +WWW: http://artax.karlin.mff.cuni.cz/~brain/0verkill/ Modified: head/games/0verkill/pkg-plist ============================================================================== --- head/games/0verkill/pkg-plist Mon Dec 23 16:24:11 2013 (r337258) +++ head/games/0verkill/pkg-plist Mon Dec 23 16:32:05 2013 (r337259) @@ -7,250 +7,250 @@ bin/0verkill-test_server %%X11%%bin/x0verkill %%X11%%bin/x0verkill-avi %%X11%%bin/x0verkill-editor -share/0verkill/data/banner.dat -share/0verkill/data/level.dat -share/0verkill/data/sprites.dat -share/0verkill/data/level1.dn -share/0verkill/data/level1.sp -share/0verkill/data/level1.st -share/0verkill/data/level2.dn -share/0verkill/data/level2.sp -share/0verkill/data/level2.st -share/0verkill/grx/0verkill.avi -share/0verkill/grx/ackermann.avi -share/0verkill/grx/altar.avi -share/0verkill/grx/ammo.avi -share/0verkill/grx/anthrax.avi -share/0verkill/grx/armor.avi -share/0verkill/grx/barrel.avi -share/0verkill/grx/barrel_fire.avi -share/0verkill/grx/bedna.avi -share/0verkill/grx/bedna_v.avi -share/0verkill/grx/bednarek.avi -share/0verkill/grx/beer.avi -share/0verkill/grx/beran.avi -share/0verkill/grx/bici.avi -share/0verkill/grx/biohazard.avi -share/0verkill/grx/blood.avi -share/0verkill/grx/bulge.avi -share/0verkill/grx/bullet.avi -share/0verkill/grx/bus.avi -share/0verkill/grx/camel.avi -share/0verkill/grx/cartridge.avi -share/0verkill/grx/chain1.avi -share/0verkill/grx/chain2.avi -share/0verkill/grx/chain3.avi -share/0verkill/grx/closed.avi -share/0verkill/grx/cloud.avi -share/0verkill/grx/corpse1.avi -share/0verkill/grx/corpse2.avi -share/0verkill/grx/corpse3.avi -share/0verkill/grx/corpse4.avi -share/0verkill/grx/corpse5.avi -share/0verkill/grx/corpse6.avi -share/0verkill/grx/corpse7.avi -share/0verkill/grx/corpse8.avi -share/0verkill/grx/corpse9.avi -share/0verkill/grx/corpseA.avi -share/0verkill/grx/corpseB.avi -share/0verkill/grx/corpseC.avi -share/0verkill/grx/corpseD.avi -share/0verkill/grx/corpseE.avi -share/0verkill/grx/corpseF.avi -share/0verkill/grx/corpse_girl_1.avi -share/0verkill/grx/corpse_girl_2.avi -share/0verkill/grx/corpse_girl_3.avi -share/0verkill/grx/corpse_girl_4.avi -share/0verkill/grx/corpse_girl_5.avi -share/0verkill/grx/corpse_girl_6.avi -share/0verkill/grx/corpse_girl_7.avi -share/0verkill/grx/corpse_girl_8.avi -share/0verkill/grx/corpse_girl_9.avi -share/0verkill/grx/corpse_girl_A.avi -share/0verkill/grx/corpse_girl_B.avi -share/0verkill/grx/corpse_girl_C.avi -share/0verkill/grx/corpse_girl_D.avi -share/0verkill/grx/corpse_girl_E.avi -share/0verkill/grx/corpse_girl_F.avi -share/0verkill/grx/corpse_girl_univ.avi -share/0verkill/grx/corpse_univ.avi -share/0verkill/grx/cowboys.avi -share/0verkill/grx/dekl.avi -share/0verkill/grx/domecek.avi -share/0verkill/grx/door.avi -share/0verkill/grx/dope.avi -share/0verkill/grx/dvirka.avi -share/0verkill/grx/erectus.avi -share/0verkill/grx/fan.avi -share/0verkill/grx/favo.avi -share/0verkill/grx/footboard.avi -share/0verkill/grx/forum.avi -share/0verkill/grx/gentlemen.avi -share/0verkill/grx/girl1.avi -share/0verkill/grx/girl2.avi -share/0verkill/grx/girl3.avi -share/0verkill/grx/girl4.avi -share/0verkill/grx/girl5.avi -share/0verkill/grx/girl6.avi -share/0verkill/grx/girl7.avi -share/0verkill/grx/girl8.avi -share/0verkill/grx/girl9.avi -share/0verkill/grx/girlA.avi -share/0verkill/grx/girlB.avi -share/0verkill/grx/girlC.avi -share/0verkill/grx/girlD.avi -share/0verkill/grx/girlE.avi -share/0verkill/grx/girlF.avi -share/0verkill/grx/girl_univ.avi -share/0verkill/grx/grave1.avi -share/0verkill/grx/grave2.avi -share/0verkill/grx/grave3.avi -share/0verkill/grx/grenade.avi -share/0verkill/grx/grenades.avi -share/0verkill/grx/guitarist1.avi -share/0verkill/grx/guitarist2.avi -share/0verkill/grx/guitarist3.avi -share/0verkill/grx/gun.avi -share/0verkill/grx/hajzl.avi -share/0verkill/grx/hajzlik.avi -share/0verkill/grx/hellslime.avi -share/0verkill/grx/hero1.avi -share/0verkill/grx/hero2.avi -share/0verkill/grx/hero3.avi -share/0verkill/grx/hero4.avi -share/0verkill/grx/hero5.avi -share/0verkill/grx/hero6.avi -share/0verkill/grx/hero7.avi -share/0verkill/grx/hero8.avi -share/0verkill/grx/hero9.avi -share/0verkill/grx/heroA.avi -share/0verkill/grx/heroB.avi -share/0verkill/grx/heroC.avi -share/0verkill/grx/heroD.avi -share/0verkill/grx/heroE.avi -share/0verkill/grx/heroF.avi -share/0verkill/grx/hero_univ.avi -share/0verkill/grx/heute.avi -share/0verkill/grx/hit.avi -share/0verkill/grx/hlina.avi -share/0verkill/grx/hook.avi -share/0verkill/grx/humpolec.avi -share/0verkill/grx/kamelky.avi -share/0verkill/grx/kanal.avi -share/0verkill/grx/klesani.avi -share/0verkill/grx/koleje.avi -share/0verkill/grx/kotel.avi -share/0verkill/grx/kotelna.avi -share/0verkill/grx/kotelnik.avi -share/0verkill/grx/koubek.avi -share/0verkill/grx/krovi.avi -share/0verkill/grx/ladder.avi -share/0verkill/grx/ladies.avi -share/0verkill/grx/lamp1.avi -share/0verkill/grx/lamp2.avi -share/0verkill/grx/lamp3.avi -share/0verkill/grx/lava.avi -share/0verkill/grx/lava1.avi -share/0verkill/grx/lava2.avi -share/0verkill/grx/lebzhnaty.avi -share/0verkill/grx/links.avi -share/0verkill/grx/liqory.avi -share/0verkill/grx/make_hero -share/0verkill/grx/mar.avi -share/0verkill/grx/medikit.avi -share/0verkill/grx/melasa.avi -share/0verkill/grx/mess.avi -share/0verkill/grx/mess1.avi -share/0verkill/grx/mess2.avi -share/0verkill/grx/mess3.avi -share/0verkill/grx/mess4.avi -share/0verkill/grx/metro.avi -share/0verkill/grx/noise.avi -share/0verkill/grx/nosmoking.avi -share/0verkill/grx/ohrada.avi -share/0verkill/grx/okno.avi -share/0verkill/grx/para.avi -share/0verkill/grx/perm.avi -share/0verkill/grx/petice.avi -share/0verkill/grx/pi.avi -share/0verkill/grx/pillar.avi -share/0verkill/grx/pipe.avi -share/0verkill/grx/pipe1.avi -share/0verkill/grx/pipe2.avi -share/0verkill/grx/pipe3.avi -share/0verkill/grx/pipe4.avi -share/0verkill/grx/pivrnec.avi -share/0verkill/grx/podium.avi -share/0verkill/grx/podlaha.avi -share/0verkill/grx/prkno.avi -share/0verkill/grx/pruhonice.avi -share/0verkill/grx/pub.avi -share/0verkill/grx/pumping.avi -share/0verkill/grx/pytlak.avi -share/0verkill/grx/radioactive.avi -share/0verkill/grx/raid.avi -share/0verkill/grx/raidrekl.avi -share/0verkill/grx/rampa.avi -share/0verkill/grx/reklama.avi -share/0verkill/grx/rg6.avi -share/0verkill/grx/rifle.avi -share/0verkill/grx/rocket.avi -share/0verkill/grx/rough.avi -share/0verkill/grx/schody1l.avi -share/0verkill/grx/schody1r.avi -share/0verkill/grx/schodyl.avi -share/0verkill/grx/schodyr.avi -share/0verkill/grx/shell.avi -share/0verkill/grx/shells.avi -share/0verkill/grx/shotgun.avi -share/0verkill/grx/shrapnel1.avi -share/0verkill/grx/shrapnel10.avi -share/0verkill/grx/shrapnel2.avi -share/0verkill/grx/shrapnel3.avi -share/0verkill/grx/shrapnel4.avi -share/0verkill/grx/shrapnel5.avi -share/0verkill/grx/shrapnel6.avi -share/0verkill/grx/shrapnel7.avi -share/0verkill/grx/shrapnel8.avi -share/0verkill/grx/shrapnel9.avi -share/0verkill/grx/skull.avi -share/0verkill/grx/slug.avi -share/0verkill/grx/smoker.avi -share/0verkill/grx/sshell.avi -share/0verkill/grx/stone.avi -share/0verkill/grx/stone1.avi -share/0verkill/grx/stone2.avi -share/0verkill/grx/stone3.avi -share/0verkill/grx/stone_steps_l.avi -share/0verkill/grx/stone_steps_r.avi -share/0verkill/grx/sugar.avi -share/0verkill/grx/svab.avi -share/0verkill/grx/swing_lamp.avi -share/0verkill/grx/tabule.avi -share/0verkill/grx/tnt.avi -share/0verkill/grx/toadstool.avi -share/0verkill/grx/traverza.avi -share/0verkill/grx/traverza1.avi -share/0verkill/grx/traverza2.avi -share/0verkill/grx/u_kuceru.avi -share/0verkill/grx/uhli.avi -share/0verkill/grx/uzi.avi -share/0verkill/grx/vetrak.avi -share/0verkill/grx/waltr.avi -share/0verkill/grx/water.avi -share/0verkill/grx/zabradli.avi -share/0verkill/grx/zarivka.avi -share/0verkill/grx/zebrik2.avi -share/0verkill/grx/zed.avi -share/0verkill/grx/zed2.avi -share/0verkill/grx/zed3.avi -share/0verkill/grx/zpevak.avi -%%PORTDOCS%%share/doc/0verkill/AUTHORS -%%PORTDOCS%%share/doc/0verkill/README.html -%%PORTDOCS%%share/doc/0verkill/avi.txt -%%PORTDOCS%%share/doc/0verkill/bot.txt -%%PORTDOCS%%share/doc/0verkill/doc.html -%%PORTDOCS%%@dirrm share/doc/0verkill -@dirrm share/0verkill/grx -@dirrm share/0verkill/data -@dirrm share/0verkill +%%DATADIR%%/data/banner.dat +%%DATADIR%%/data/level.dat +%%DATADIR%%/data/sprites.dat +%%DATADIR%%/data/level1.dn +%%DATADIR%%/data/level1.sp +%%DATADIR%%/data/level1.st +%%DATADIR%%/data/level2.dn +%%DATADIR%%/data/level2.sp +%%DATADIR%%/data/level2.st +%%DATADIR%%/grx/0verkill.avi +%%DATADIR%%/grx/ackermann.avi +%%DATADIR%%/grx/altar.avi +%%DATADIR%%/grx/ammo.avi +%%DATADIR%%/grx/anthrax.avi +%%DATADIR%%/grx/armor.avi +%%DATADIR%%/grx/barrel.avi +%%DATADIR%%/grx/barrel_fire.avi +%%DATADIR%%/grx/bedna.avi +%%DATADIR%%/grx/bedna_v.avi +%%DATADIR%%/grx/bednarek.avi +%%DATADIR%%/grx/beer.avi +%%DATADIR%%/grx/beran.avi +%%DATADIR%%/grx/bici.avi +%%DATADIR%%/grx/biohazard.avi +%%DATADIR%%/grx/blood.avi +%%DATADIR%%/grx/bulge.avi +%%DATADIR%%/grx/bullet.avi +%%DATADIR%%/grx/bus.avi +%%DATADIR%%/grx/camel.avi +%%DATADIR%%/grx/cartridge.avi +%%DATADIR%%/grx/chain1.avi +%%DATADIR%%/grx/chain2.avi +%%DATADIR%%/grx/chain3.avi +%%DATADIR%%/grx/closed.avi +%%DATADIR%%/grx/cloud.avi +%%DATADIR%%/grx/corpse1.avi +%%DATADIR%%/grx/corpse2.avi +%%DATADIR%%/grx/corpse3.avi +%%DATADIR%%/grx/corpse4.avi +%%DATADIR%%/grx/corpse5.avi +%%DATADIR%%/grx/corpse6.avi +%%DATADIR%%/grx/corpse7.avi +%%DATADIR%%/grx/corpse8.avi +%%DATADIR%%/grx/corpse9.avi +%%DATADIR%%/grx/corpseA.avi +%%DATADIR%%/grx/corpseB.avi +%%DATADIR%%/grx/corpseC.avi +%%DATADIR%%/grx/corpseD.avi +%%DATADIR%%/grx/corpseE.avi +%%DATADIR%%/grx/corpseF.avi +%%DATADIR%%/grx/corpse_girl_1.avi +%%DATADIR%%/grx/corpse_girl_2.avi +%%DATADIR%%/grx/corpse_girl_3.avi +%%DATADIR%%/grx/corpse_girl_4.avi +%%DATADIR%%/grx/corpse_girl_5.avi +%%DATADIR%%/grx/corpse_girl_6.avi +%%DATADIR%%/grx/corpse_girl_7.avi +%%DATADIR%%/grx/corpse_girl_8.avi +%%DATADIR%%/grx/corpse_girl_9.avi +%%DATADIR%%/grx/corpse_girl_A.avi +%%DATADIR%%/grx/corpse_girl_B.avi +%%DATADIR%%/grx/corpse_girl_C.avi +%%DATADIR%%/grx/corpse_girl_D.avi +%%DATADIR%%/grx/corpse_girl_E.avi +%%DATADIR%%/grx/corpse_girl_F.avi +%%DATADIR%%/grx/corpse_girl_univ.avi +%%DATADIR%%/grx/corpse_univ.avi +%%DATADIR%%/grx/cowboys.avi +%%DATADIR%%/grx/dekl.avi +%%DATADIR%%/grx/domecek.avi +%%DATADIR%%/grx/door.avi +%%DATADIR%%/grx/dope.avi +%%DATADIR%%/grx/dvirka.avi +%%DATADIR%%/grx/erectus.avi +%%DATADIR%%/grx/fan.avi +%%DATADIR%%/grx/favo.avi +%%DATADIR%%/grx/footboard.avi +%%DATADIR%%/grx/forum.avi +%%DATADIR%%/grx/gentlemen.avi +%%DATADIR%%/grx/girl1.avi +%%DATADIR%%/grx/girl2.avi +%%DATADIR%%/grx/girl3.avi +%%DATADIR%%/grx/girl4.avi +%%DATADIR%%/grx/girl5.avi +%%DATADIR%%/grx/girl6.avi +%%DATADIR%%/grx/girl7.avi +%%DATADIR%%/grx/girl8.avi +%%DATADIR%%/grx/girl9.avi +%%DATADIR%%/grx/girlA.avi +%%DATADIR%%/grx/girlB.avi +%%DATADIR%%/grx/girlC.avi +%%DATADIR%%/grx/girlD.avi +%%DATADIR%%/grx/girlE.avi +%%DATADIR%%/grx/girlF.avi +%%DATADIR%%/grx/girl_univ.avi +%%DATADIR%%/grx/grave1.avi +%%DATADIR%%/grx/grave2.avi +%%DATADIR%%/grx/grave3.avi +%%DATADIR%%/grx/grenade.avi +%%DATADIR%%/grx/grenades.avi +%%DATADIR%%/grx/guitarist1.avi +%%DATADIR%%/grx/guitarist2.avi +%%DATADIR%%/grx/guitarist3.avi +%%DATADIR%%/grx/gun.avi +%%DATADIR%%/grx/hajzl.avi +%%DATADIR%%/grx/hajzlik.avi +%%DATADIR%%/grx/hellslime.avi +%%DATADIR%%/grx/hero1.avi +%%DATADIR%%/grx/hero2.avi +%%DATADIR%%/grx/hero3.avi +%%DATADIR%%/grx/hero4.avi +%%DATADIR%%/grx/hero5.avi +%%DATADIR%%/grx/hero6.avi +%%DATADIR%%/grx/hero7.avi +%%DATADIR%%/grx/hero8.avi +%%DATADIR%%/grx/hero9.avi +%%DATADIR%%/grx/heroA.avi +%%DATADIR%%/grx/heroB.avi +%%DATADIR%%/grx/heroC.avi +%%DATADIR%%/grx/heroD.avi +%%DATADIR%%/grx/heroE.avi +%%DATADIR%%/grx/heroF.avi +%%DATADIR%%/grx/hero_univ.avi +%%DATADIR%%/grx/heute.avi +%%DATADIR%%/grx/hit.avi +%%DATADIR%%/grx/hlina.avi +%%DATADIR%%/grx/hook.avi +%%DATADIR%%/grx/humpolec.avi +%%DATADIR%%/grx/kamelky.avi +%%DATADIR%%/grx/kanal.avi +%%DATADIR%%/grx/klesani.avi +%%DATADIR%%/grx/koleje.avi +%%DATADIR%%/grx/kotel.avi +%%DATADIR%%/grx/kotelna.avi +%%DATADIR%%/grx/kotelnik.avi +%%DATADIR%%/grx/koubek.avi +%%DATADIR%%/grx/krovi.avi +%%DATADIR%%/grx/ladder.avi +%%DATADIR%%/grx/ladies.avi +%%DATADIR%%/grx/lamp1.avi +%%DATADIR%%/grx/lamp2.avi +%%DATADIR%%/grx/lamp3.avi +%%DATADIR%%/grx/lava.avi +%%DATADIR%%/grx/lava1.avi +%%DATADIR%%/grx/lava2.avi +%%DATADIR%%/grx/lebzhnaty.avi +%%DATADIR%%/grx/links.avi +%%DATADIR%%/grx/liqory.avi +%%DATADIR%%/grx/make_hero +%%DATADIR%%/grx/mar.avi +%%DATADIR%%/grx/medikit.avi +%%DATADIR%%/grx/melasa.avi +%%DATADIR%%/grx/mess.avi +%%DATADIR%%/grx/mess1.avi +%%DATADIR%%/grx/mess2.avi +%%DATADIR%%/grx/mess3.avi +%%DATADIR%%/grx/mess4.avi +%%DATADIR%%/grx/metro.avi +%%DATADIR%%/grx/noise.avi +%%DATADIR%%/grx/nosmoking.avi +%%DATADIR%%/grx/ohrada.avi +%%DATADIR%%/grx/okno.avi +%%DATADIR%%/grx/para.avi +%%DATADIR%%/grx/perm.avi +%%DATADIR%%/grx/petice.avi +%%DATADIR%%/grx/pi.avi +%%DATADIR%%/grx/pillar.avi +%%DATADIR%%/grx/pipe.avi +%%DATADIR%%/grx/pipe1.avi +%%DATADIR%%/grx/pipe2.avi +%%DATADIR%%/grx/pipe3.avi +%%DATADIR%%/grx/pipe4.avi +%%DATADIR%%/grx/pivrnec.avi +%%DATADIR%%/grx/podium.avi +%%DATADIR%%/grx/podlaha.avi +%%DATADIR%%/grx/prkno.avi +%%DATADIR%%/grx/pruhonice.avi +%%DATADIR%%/grx/pub.avi +%%DATADIR%%/grx/pumping.avi +%%DATADIR%%/grx/pytlak.avi +%%DATADIR%%/grx/radioactive.avi +%%DATADIR%%/grx/raid.avi +%%DATADIR%%/grx/raidrekl.avi +%%DATADIR%%/grx/rampa.avi +%%DATADIR%%/grx/reklama.avi +%%DATADIR%%/grx/rg6.avi +%%DATADIR%%/grx/rifle.avi +%%DATADIR%%/grx/rocket.avi +%%DATADIR%%/grx/rough.avi +%%DATADIR%%/grx/schody1l.avi +%%DATADIR%%/grx/schody1r.avi +%%DATADIR%%/grx/schodyl.avi +%%DATADIR%%/grx/schodyr.avi +%%DATADIR%%/grx/shell.avi +%%DATADIR%%/grx/shells.avi +%%DATADIR%%/grx/shotgun.avi +%%DATADIR%%/grx/shrapnel1.avi +%%DATADIR%%/grx/shrapnel10.avi +%%DATADIR%%/grx/shrapnel2.avi +%%DATADIR%%/grx/shrapnel3.avi +%%DATADIR%%/grx/shrapnel4.avi +%%DATADIR%%/grx/shrapnel5.avi +%%DATADIR%%/grx/shrapnel6.avi +%%DATADIR%%/grx/shrapnel7.avi +%%DATADIR%%/grx/shrapnel8.avi +%%DATADIR%%/grx/shrapnel9.avi +%%DATADIR%%/grx/skull.avi +%%DATADIR%%/grx/slug.avi +%%DATADIR%%/grx/smoker.avi +%%DATADIR%%/grx/sshell.avi +%%DATADIR%%/grx/stone.avi +%%DATADIR%%/grx/stone1.avi +%%DATADIR%%/grx/stone2.avi +%%DATADIR%%/grx/stone3.avi +%%DATADIR%%/grx/stone_steps_l.avi +%%DATADIR%%/grx/stone_steps_r.avi +%%DATADIR%%/grx/sugar.avi +%%DATADIR%%/grx/svab.avi +%%DATADIR%%/grx/swing_lamp.avi +%%DATADIR%%/grx/tabule.avi +%%DATADIR%%/grx/tnt.avi +%%DATADIR%%/grx/toadstool.avi +%%DATADIR%%/grx/traverza.avi +%%DATADIR%%/grx/traverza1.avi +%%DATADIR%%/grx/traverza2.avi +%%DATADIR%%/grx/u_kuceru.avi +%%DATADIR%%/grx/uhli.avi +%%DATADIR%%/grx/uzi.avi +%%DATADIR%%/grx/vetrak.avi +%%DATADIR%%/grx/waltr.avi +%%DATADIR%%/grx/water.avi +%%DATADIR%%/grx/zabradli.avi +%%DATADIR%%/grx/zarivka.avi +%%DATADIR%%/grx/zebrik2.avi +%%DATADIR%%/grx/zed.avi +%%DATADIR%%/grx/zed2.avi +%%DATADIR%%/grx/zed3.avi +%%DATADIR%%/grx/zpevak.avi +%%PORTDOCS%%%%DOCSDIR%%/AUTHORS +%%PORTDOCS%%%%DOCSDIR%%/README.html +%%PORTDOCS%%%%DOCSDIR%%/avi.txt +%%PORTDOCS%%%%DOCSDIR%%/bot.txt +%%PORTDOCS%%%%DOCSDIR%%/doc.html +%%PORTDOCS%%@dirrm %%DOCSDIR%% +@dirrm %%DATADIR%%/grx +@dirrm %%DATADIR%%/data +@dirrm %%DATADIR%%
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201312231632.rBNGW6BX044497>