Date: Thu, 29 Sep 2005 20:00:45 -0300 From: "Alejandro Pulver" <alejandro@varnet.biz> To: "FreeBSD gnats submit" <FreeBSD-gnats-submit@FreeBSD.org> Subject: ports/86737: [NEW PORT] games/quake2-source - Quake II game source Message-ID: <1128034845.0@phobos.mars.bsd> Resent-Message-ID: <200509292310.j8TNAIKF023807@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 86737 >Category: ports >Synopsis: [NEW PORT] games/quake2-source - Quake II game source >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Thu Sep 29 23:10:18 GMT 2005 >Closed-Date: >Last-Modified: >Originator: Alejandro Pulver >Release: FreeBSD 5.4-RELEASE i386 >Organization: >Environment: >Description: >How-To-Repeat: >Fix: --- quake2-source.shar begins here --- # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # quake2-source # quake2-source/files # quake2-source/files/extra-patch-src_rogue_q__shared.c # quake2-source/files/Makefile.xatrix # quake2-source/files/Makefile.game # quake2-source/files/Makefile.ctf # quake2-source/files/Makefile.rogue # quake2-source/files/patch-src_game_g__phys.c # quake2-source/files/extra-patch-src_rogue_g__local.h # quake2-source/files/extra-patch-src_xatrix_q__shared.c # quake2-source/files/patch-security # quake2-source/Makefile # quake2-source/pkg-descr # quake2-source/distinfo # quake2-source/pkg-plist # echo c - quake2-source mkdir -p quake2-source > /dev/null 2>&1 echo c - quake2-source/files mkdir -p quake2-source/files > /dev/null 2>&1 echo x - quake2-source/files/extra-patch-src_rogue_q__shared.c sed 's/^X//' >quake2-source/files/extra-patch-src_rogue_q__shared.c << 'END-of-quake2-source/files/extra-patch-src_rogue_q__shared.c' X--- src/rogue/q_shared.c.orig Mon Nov 30 17:53:34 1998 X+++ src/rogue/q_shared.c Tue Sep 27 20:03:24 2005 X@@ -329,7 +329,7 @@ X Returns 1, 2, or 1 + 2 X ================== X */ X-#if !id386 || defined __linux__ X+#if !id386 || defined __linux__ || defined __FreeBSD__ X int BoxOnPlaneSide (vec3_t emins, vec3_t emaxs, struct cplane_s *p) X { X float dist1, dist2; END-of-quake2-source/files/extra-patch-src_rogue_q__shared.c echo x - quake2-source/files/Makefile.xatrix sed 's/^X//' >quake2-source/files/Makefile.xatrix << 'END-of-quake2-source/files/Makefile.xatrix' X# BSD Makefile for Quake II: The Reckoning (Xatrix) game source X XSHLIB_NAME= game${MACHINE_ARCH}.so X XSRCS= g_ai.c \ X g_chase.c \ X g_cmds.c \ X g_combat.c \ X g_func.c \ X g_items.c \ X g_main.c \ X g_misc.c \ X g_monster.c \ X g_phys.c \ X g_save.c \ X g_spawn.c \ X g_svcmds.c \ X g_target.c \ X g_trigger.c \ X g_turret.c \ X g_utils.c \ X g_weapon.c \ X m_actor.c \ X m_berserk.c \ X m_boss2.c \ X m_boss3.c \ X m_boss31.c \ X m_boss32.c \ X m_boss5.c \ X m_brain.c \ X m_chick.c \ X m_fixbot.c \ X m_flash.c \ X m_flipper.c \ X m_float.c \ X m_flyer.c \ X m_gekk.c \ X m_gladb.c \ X m_gladiator.c \ X m_gunner.c \ X m_hover.c \ X m_infantry.c \ X m_insane.c \ X m_medic.c \ X m_move.c \ X m_mutant.c \ X m_parasite.c \ X m_soldier.c \ X m_supertank.c \ X m_tank.c \ X p_client.c \ X p_hud.c \ X p_trail.c \ X p_view.c \ X p_weapon.c \ X q_shared.c X X.include <bsd.lib.mk> END-of-quake2-source/files/Makefile.xatrix echo x - quake2-source/files/Makefile.game sed 's/^X//' >quake2-source/files/Makefile.game << 'END-of-quake2-source/files/Makefile.game' X# BSD Makefile for Quake II game source X XSHLIB_NAME= game${MACHINE_ARCH}.so X XSRCS= g_ai.c \ X g_chase.c \ X g_cmds.c \ X g_combat.c \ X g_func.c \ X g_items.c \ X g_main.c \ X g_misc.c \ X g_monster.c \ X g_phys.c \ X g_save.c \ X g_spawn.c \ X g_svcmds.c \ X g_target.c \ X g_trigger.c \ X g_turret.c \ X g_utils.c \ X g_weapon.c \ X m_actor.c \ X m_berserk.c \ X m_boss2.c \ X m_boss3.c \ X m_boss31.c \ X m_boss32.c \ X m_brain.c \ X m_chick.c \ X m_flash.c \ X m_flipper.c \ X m_float.c \ X m_flyer.c \ X m_gladiator.c \ X m_gunner.c \ X m_hover.c \ X m_infantry.c \ X m_insane.c \ X m_medic.c \ X m_move.c \ X m_mutant.c \ X m_parasite.c \ X m_soldier.c \ X m_supertank.c \ X m_tank.c \ X p_client.c \ X p_hud.c \ X p_trail.c \ X p_view.c \ X p_weapon.c \ X q_shared.c X X.include <bsd.lib.mk> END-of-quake2-source/files/Makefile.game echo x - quake2-source/files/Makefile.ctf sed 's/^X//' >quake2-source/files/Makefile.ctf << 'END-of-quake2-source/files/Makefile.ctf' X# BSD Makefile for Quake II: Capture The Flag game source X XSHLIB_NAME= game${MACHINE_ARCH}.so X XSRCS= g_ai.c \ X g_chase.c \ X g_cmds.c \ X g_combat.c \ X g_ctf.c \ X g_func.c \ X g_items.c \ X g_main.c \ X g_misc.c \ X g_monster.c \ X g_phys.c \ X g_save.c \ X g_spawn.c \ X g_svcmds.c \ X g_target.c \ X g_trigger.c \ X g_utils.c \ X g_weapon.c \ X m_move.c \ X p_client.c \ X p_hud.c \ X p_menu.c \ X p_trail.c \ X p_view.c \ X p_weapon.c \ X q_shared.c X X.include <bsd.lib.mk> END-of-quake2-source/files/Makefile.ctf echo x - quake2-source/files/Makefile.rogue sed 's/^X//' >quake2-source/files/Makefile.rogue << 'END-of-quake2-source/files/Makefile.rogue' X# BSD Makefile for Quake II: Ground Zero (Rogue) game source X XSHLIB_NAME= game${MACHINE_ARCH}.so X XSRCS= dm_ball.c \ X dm_tag.c \ X g_ai.c \ X g_chase.c \ X g_cmds.c \ X g_combat.c \ X g_func.c \ X g_items.c \ X g_main.c \ X g_misc.c \ X g_monster.c \ X g_newai.c \ X g_newdm.c \ X g_newfnc.c \ X g_newtarg.c \ X g_newtrig.c \ X g_newweap.c \ X g_phys.c \ X g_save.c \ X g_spawn.c \ X g_sphere.c \ X g_svcmds.c \ X g_target.c \ X g_trigger.c \ X g_turret.c \ X g_utils.c \ X g_weapon.c \ X m_actor.c \ X m_berserk.c \ X m_boss2.c \ X m_boss3.c \ X m_boss31.c \ X m_boss32.c \ X m_brain.c \ X m_carrier.c \ X m_chick.c \ X m_flash.c \ X m_flipper.c \ X m_float.c \ X m_flyer.c \ X m_gladiator.c \ X m_gunner.c \ X m_hover.c \ X m_infantry.c \ X m_insane.c \ X m_medic.c \ X m_move.c \ X m_mutant.c \ X m_parasite.c \ X m_soldier.c \ X m_stalker.c \ X m_supertank.c \ X m_tank.c \ X m_turret.c \ X m_widow.c \ X m_widow2.c \ X p_client.c \ X p_hud.c \ X p_trail.c \ X p_view.c \ X p_weapon.c \ X q_shared.c X X.include <bsd.lib.mk> END-of-quake2-source/files/Makefile.rogue echo x - quake2-source/files/patch-src_game_g__phys.c sed 's/^X//' >quake2-source/files/patch-src_game_g__phys.c << 'END-of-quake2-source/files/patch-src_game_g__phys.c' X--- src/game/g_phys.c.orig Tue Mar 15 22:15:11 2005 X+++ src/game/g_phys.c Tue Mar 15 22:16:41 2005 X@@ -356,7 +356,13 @@ X mask = MASK_SOLID; X X trace = gi.trace (start, ent->mins, ent->maxs, end, ent, mask); X- X+ X+ if (trace.startsolid || trace.allsolid) X+ { X+ mask ^= CONTENTS_DEADMONSTER; X+ trace = gi.trace (start, ent->mins, ent->maxs, end, ent, mask); X+ } X+ X VectorCopy (trace.endpos, ent->s.origin); X gi.linkentity (ent); X END-of-quake2-source/files/patch-src_game_g__phys.c echo x - quake2-source/files/extra-patch-src_rogue_g__local.h sed 's/^X//' >quake2-source/files/extra-patch-src_rogue_g__local.h << 'END-of-quake2-source/files/extra-patch-src_rogue_g__local.h' X--- src/rogue/g_local.h.orig Mon Nov 30 17:53:20 1998 X+++ src/rogue/g_local.h Tue Sep 27 20:20:27 2005 X@@ -22,7 +22,6 @@ X //================================================================== X X #ifndef _WIN32 X-#include <nan.h> X #define min(a,b) ((a) < (b) ? (a) : (b)) X #define max(a,b) ((a) > (b) ? (a) : (b)) X #ifdef __sun__ END-of-quake2-source/files/extra-patch-src_rogue_g__local.h echo x - quake2-source/files/extra-patch-src_xatrix_q__shared.c sed 's/^X//' >quake2-source/files/extra-patch-src_xatrix_q__shared.c << 'END-of-quake2-source/files/extra-patch-src_xatrix_q__shared.c' X--- src/xatrix/q_shared.c.orig Mon Nov 30 17:55:36 1998 X+++ src/xatrix/q_shared.c Tue Sep 27 20:04:53 2005 X@@ -326,7 +326,7 @@ X Returns 1, 2, or 1 + 2 X ================== X */ X-#if !id386 || defined __linux__ X+#if !id386 || defined __linux__ || defined __FreeBSD__ X int BoxOnPlaneSide (vec3_t emins, vec3_t emaxs, struct cplane_s *p) X { X float dist1, dist2; END-of-quake2-source/files/extra-patch-src_xatrix_q__shared.c echo x - quake2-source/files/patch-security sed 's/^X//' >quake2-source/files/patch-security << 'END-of-quake2-source/files/patch-security' XIndex: client/cl_parse.c X=================================================================== XRCS file: /cvs/cvsroot/quake2/src/client/cl_parse.c,v Xretrieving revision 1.3 Xdiff -u -r1.3 cl_parse.c X--- src/client/cl_parse.c 24 Sep 2004 22:06:52 -0000 1.3 X+++ src/client/cl_parse.c 29 Jan 2005 20:57:01 -0000 X@@ -397,6 +397,9 @@ X strncpy(ci->cinfo, s, sizeof(ci->cinfo)); X ci->cinfo[sizeof(ci->cinfo)-1] = 0; X X+ // sku - avoid potentional buffer overflow vulnerability X+ s = ci->cinfo; X+ X // isolate the player's name X strncpy(ci->name, s, sizeof(ci->name)); X ci->name[sizeof(ci->name)-1] = 0; X@@ -528,6 +531,7 @@ X int i; X char *s; X char olds[MAX_QPATH]; X+ int length; X X i = MSG_ReadShort (&net_message); X if (i < 0 || i >= MAX_CONFIGSTRINGS) X@@ -537,6 +541,12 @@ X strncpy (olds, cl.configstrings[i], sizeof(olds)); X olds[sizeof(olds) - 1] = 0; X X+ // sku - avoid potentional buffer overflow vulnerability X+ length = strlen( s ); X+ if( length > sizeof( cl.configstrings ) - sizeof( cl.configstrings[0] ) * i - 1 ) { X+ Com_Error( ERR_DROP, "CL_ParseConfigString: oversize configstring" ); X+ } X+ X strcpy (cl.configstrings[i], s); X X // do something apropriate XIndex: qcommon/cmd.c X=================================================================== XRCS file: /cvs/cvsroot/quake2/src/qcommon/cmd.c,v Xretrieving revision 1.2 Xdiff -u -r1.2 cmd.c X--- src/qcommon/cmd.c 3 Jan 2002 05:10:14 -0000 1.2 X+++ src/qcommon/cmd.c 29 Jan 2005 20:57:01 -0000 X@@ -215,8 +215,11 @@ X if (text[i] == '\n') X break; X } X- X- X+ X+ // sku - removed potentional buffer overflow vulnerability X+ if( i > sizeof( line ) - 1 ) { X+ i = sizeof( line ) - 1; X+ } X memcpy (line, text, i); X line[i] = 0; X X@@ -657,7 +660,8 @@ X { X int l; X X- strcpy (cmd_args, text); X+ // sku - removed potentional buffer overflow vulnerability X+ strncpy( cmd_args, text, sizeof( cmd_args ) ); X X // strip off any trailing whitespace X l = strlen(cmd_args) - 1; XIndex: qcommon/common.c X=================================================================== XRCS file: /cvs/cvsroot/quake2/src/qcommon/common.c,v Xretrieving revision 1.4 Xdiff -u -r1.4 common.c X--- src/qcommon/common.c 30 Mar 2002 22:48:36 -0000 1.4 X+++ src/qcommon/common.c 29 Jan 2005 20:57:02 -0000 X@@ -797,7 +797,9 @@ X l = 0; X do X { X- c = MSG_ReadChar (msg_read); X+ // sku - replaced MSG_ReadChar with MSG_ReadByte to avoid X+ // potentional vulnerability X+ c = MSG_ReadByte (msg_read); X if (c == -1 || c == 0) X break; X string[l] = c; X@@ -817,7 +819,9 @@ X l = 0; X do X { X- c = MSG_ReadChar (msg_read); X+ // sku - replaced MSG_ReadChar with MSG_ReadByte to avoid X+ // potentional vulnerability X+ c = MSG_ReadByte (msg_read); X if (c == -1 || c == 0 || c == '\n') X break; X string[l] = c; XIndex: server/sv_main.c X=================================================================== XRCS file: /cvs/cvsroot/quake2/src/server/sv_main.c,v Xretrieving revision 1.2 Xdiff -u -r1.2 sv_main.c X--- src/server/sv_main.c 22 Mar 2002 00:24:37 -0000 1.2 X+++ src/server/sv_main.c 29 Jan 2005 20:57:03 -0000 X@@ -293,8 +293,9 @@ X X challenge = atoi(Cmd_Argv(3)); X X- strncpy (userinfo, Cmd_Argv(4), sizeof(userinfo)-1); X- userinfo[sizeof(userinfo) - 1] = 0; X+ // sku - reserve 32 bytes for the IP address X+ strncpy (userinfo, Cmd_Argv(4), sizeof(userinfo)-32); X+ userinfo[sizeof(userinfo) - 32] = 0; X X // force the IP key/value pair so the game can filter based on ip X Info_SetValueForKey (userinfo, "ip", NET_AdrToString(net_from)); X@@ -317,8 +318,11 @@ X { X if (NET_CompareBaseAdr (net_from, svs.challenges[i].adr)) X { X- if (challenge == svs.challenges[i].challenge) X+ // sku - ignore zero challenges X+ if( svs.challenges[i].challenge && challenge == svs.challenges[i].challenge ) { X+ svs.challenges[i].challenge = 0; X break; // good X+ } X Netchan_OutOfBandPrint (NS_SERVER, adr, "print\nBad challenge.\n"); X return; X } X@@ -342,6 +346,11 @@ X && ( cl->netchan.qport == qport X || adr.port == cl->netchan.remote_address.port ) ) X { X+ // sku - avoid reusing slot of the client already connected X+ if( cl->state != cs_zombie ) { X+ Netchan_OutOfBandPrint( NS_SERVER, adr, "print\nConnected client from this IP is already present.\n" ); X+ return; X+ } X if (!NET_IsLocalAddress (adr) && (svs.realtime - cl->lastconnect) < ((int)sv_reconnect_limit->value * 1000)) X { X Com_DPrintf ("%s:reconnect rejected : too soon\n", NET_AdrToString (adr)); XIndex: server/sv_user.c X=================================================================== XRCS file: /cvs/cvsroot/quake2/src/server/sv_user.c,v Xretrieving revision 1.2 Xdiff -u -r1.2 sv_user.c X--- src/server/sv_user.c 21 Mar 2002 04:44:46 -0000 1.2 X+++ src/server/sv_user.c 29 Jan 2005 20:57:04 -0000 X@@ -142,6 +142,9 @@ X } X X start = atoi(Cmd_Argv(2)); X+ if( start < 0 ) { X+ start = 0; // sku - catch negative offsets X+ } X X // write a packet full of data X X@@ -150,9 +153,18 @@ X { X if (sv.configstrings[start][0]) X { X+ int length; X+ X+ // sku - write configstrings that exceed MAX_QPATH in proper-sized chunks X+ length = strlen( sv.configstrings[start] ); X+ if( length > MAX_QPATH ) { X+ length = MAX_QPATH; X+ } X+ X MSG_WriteByte (&sv_client->netchan.message, svc_configstring); X MSG_WriteShort (&sv_client->netchan.message, start); X- MSG_WriteString (&sv_client->netchan.message, sv.configstrings[start]); X+ SZ_Write (&sv_client->netchan.message, sv.configstrings[start], length); X+ MSG_WriteByte (&sv_client->netchan.message, 0); X } X start++; X } X@@ -199,6 +211,9 @@ X } X X start = atoi(Cmd_Argv(2)); X+ if( start < 0 ) { X+ start = 0; X+ } X X memset (&nullstate, 0, sizeof(nullstate)); X X@@ -398,7 +413,7 @@ X */ X void SV_ShowServerinfo_f (void) X { X- Info_Print (Cvar_Serverinfo()); X+// Info_Print (Cvar_Serverinfo()); X } X X X X X END-of-quake2-source/files/patch-security echo x - quake2-source/Makefile sed 's/^X//' >quake2-source/Makefile << 'END-of-quake2-source/Makefile' X# New ports collection makefile for: quake2-source X# Date created: 29 Sep 2005 X# Whom: Alejandro Pulver <alejandro@varnet.biz> X# X# $FreeBSD$ X# X XPORTNAME= source XPORTVERSION= 3.21 XCATEGORIES= games XMASTER_SITES= http://www.icculus.org/quake2/files/:icc \ X ftp://ftp.idsoftware.com/idstuff/quake2/source/:id XPKGNAMEPREFIX= quake2- XDISTNAME= quake2-r0.16.2 XDISTFILES= ${DISTNAME}${EXTRACT_SUFX}:icc XDIST_SUBDIR= quake2lnx XEXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} X XMAINTAINER= alejandro@varnet.biz XCOMMENT= Quake II game source X XNO_BUILD= yes X XOPTIONS= CTF "Install Capture The Flag mod source" off \ X ROGUE "Install Ground Zero (Rogue) mission pack source" off \ X XATRIX "Install The Reckoning (Xatrix) mission pack source" off X XLATEST_LINK= ${PKGNAMEPREFIX}${PORTNAME} X XDATADIR= ${PREFIX}/share/${PKGNAMEPREFIX}${PORTNAME} X X.include <bsd.port.pre.mk> X X.if defined(WITH_CTF) XPLIST_SUB+= CTF="" X.else XPLIST_SUB+= CTF="@comment " X.endif X X.if defined(WITH_ROGUE) XDISTFILES+= roguesrc320.shar.Z:id XEXTRA_PATCHES+= ${FILESDIR}/extra-patch-src_rogue_g__local.h \ X ${FILESDIR}/extra-patch-src_rogue_q__shared.c XROGUE_OFF= 454 XPLIST_SUB+= ROGUE="" X.else XPLIST_SUB+= ROGUE="@comment " X.endif X X.if defined(WITH_XATRIX) XDISTFILES+= xatrixsrc320.shar.Z:id XEXTRA_PATCHES+= ${FILESDIR}/extra-patch-src_xatrix_q__shared.c XXATRIX_OFF= 441 XPLIST_SUB+= XATRIX="" X.else XPLIST_SUB+= XATRIX="@comment " X.endif X Xpost-extract: X.for f in rogue xatrix X. if defined(WITH_${f:U}) X @${MKDIR} ${WRKSRC}/src/${f} X @(cd ${WRKSRC}/src/${f} && ${GUNZIP_CMD} -c \ X ${DISTDIR}/${DIST_SUBDIR}/${f}src320.shar.Z > \ X ${f}src320.shar && \ X ${TAIL} +${${f:U}_OFF} ${f}src320.shar | ${SH}) X. endif X.endfor X Xpre-install: X @${FIND} -E ${WRKSRC} -type f \ X -iregex "(Makefile|.*\.(def|dsp|orig|shar))" -print0 | \ X ${XARGS} -0 ${RM} X Xdo-install: X @${MKDIR} ${DATADIR} X @${CP} -R ${WRKSRC}/src/game ${DATADIR} X @${INSTALL_DATA} ${FILESDIR}/Makefile.game ${DATADIR}/game/Makefile X.for f in ctf rogue xatrix X. if defined(WITH_${f:U}) X @${CP} -R ${WRKSRC}/src/${f} ${DATADIR} X @${INSTALL_DATA} ${FILESDIR}/Makefile.${f} ${DATADIR}/${f}/Makefile X. endif X.endfor X X.include <bsd.port.post.mk> END-of-quake2-source/Makefile echo x - quake2-source/pkg-descr sed 's/^X//' >quake2-source/pkg-descr << 'END-of-quake2-source/pkg-descr' XQuake II game source. X XThis port installs the Quake II game source, together with BSD Makefiles, for Xbuilding modifications. It can also install the Capture the Flag mod, Rogue Xand Xatrix game source. END-of-quake2-source/pkg-descr echo x - quake2-source/distinfo sed 's/^X//' >quake2-source/distinfo << 'END-of-quake2-source/distinfo' XMD5 (quake2lnx/quake2-r0.16.2.tar.gz) = 872fee27fb13a2a4c8876d5973c3c691 XSIZE (quake2lnx/quake2-r0.16.2.tar.gz) = 1496377 XMD5 (quake2lnx/maxpak.pak) = 04d3f1fb7fb4dada7175a41f4595c7eb XSIZE (quake2lnx/maxpak.pak) = 3282742 XMD5 (quake2lnx/pak10.pak) = fc2de3c33c23cca5f0e6fcec068ce616 XSIZE (quake2lnx/pak10.pak) = 16315845 XMD5 (quake2lnx/pak11.pak) = 221019679613a13c6d7e5f9e21701d85 XSIZE (quake2lnx/pak11.pak) = 1702702 XMD5 (quake2lnx/pak12.pak) = 0c8b49c303014e535394168aed9b668a XSIZE (quake2lnx/pak12.pak) = 3629554 XMD5 (quake2lnx/pak13.pak) = 9628c82566535e48c59caaee5281b963 XSIZE (quake2lnx/pak13.pak) = 2198193 XMD5 (quake2lnx/pak14.pak) = 5d47605de09c458c7f1c69d8e6fea6a7 XSIZE (quake2lnx/pak14.pak) = 2397651 XMD5 (quake2lnx/pak16.pak) = 94b18e1f2d76fb7e7d0c5bd0ae8d7c69 XSIZE (quake2lnx/pak16.pak) = 2675893 XMD5 (quake2lnx/pak17.pak) = e24d79286ba3c1f3da1f9642a78c49af XSIZE (quake2lnx/pak17.pak) = 1431798 XMD5 (quake2lnx/pak19.pak) = 070a4d00b93a2a427ca92adee2736000 XSIZE (quake2lnx/pak19.pak) = 648896 XMD5 (quake2lnx/roguesrc320.shar.Z) = 7d5e052839c9e629bad0a6570aa70554 XSIZE (quake2lnx/roguesrc320.shar.Z) = 626769 XMD5 (quake2lnx/xatrixsrc320.shar.Z) = 41fc4ecc4f25c068e7d1f488bd4a1e1a XSIZE (quake2lnx/xatrixsrc320.shar.Z) = 455917 END-of-quake2-source/distinfo echo x - quake2-source/pkg-plist sed 's/^X//' >quake2-source/pkg-plist << 'END-of-quake2-source/pkg-plist' X%%CTF%%%%DATADIR%%/ctf/docs/admin.gif X%%CTF%%%%DATADIR%%/ctf/docs/adminset.gif X%%CTF%%%%DATADIR%%/ctf/docs/automac.gif X%%CTF%%%%DATADIR%%/ctf/docs/ghost.jpg X%%CTF%%%%DATADIR%%/ctf/docs/grapple.jpg X%%CTF%%%%DATADIR%%/ctf/docs/layout.jpg X%%CTF%%%%DATADIR%%/ctf/docs/mainctf_back.jpg X%%CTF%%%%DATADIR%%/ctf/docs/menu.gif X%%CTF%%%%DATADIR%%/ctf/docs/q2ctf.html X%%CTF%%%%DATADIR%%/ctf/docs/say_team.gif X%%CTF%%%%DATADIR%%/ctf/docs/stats.jpg X%%CTF%%%%DATADIR%%/ctf/docs/tech1.gif X%%CTF%%%%DATADIR%%/ctf/docs/tech2.gif X%%CTF%%%%DATADIR%%/ctf/docs/tech3.gif X%%CTF%%%%DATADIR%%/ctf/docs/tech4.gif X%%CTF%%%%DATADIR%%/ctf/Makefile X%%CTF%%%%DATADIR%%/ctf/g_ai.c X%%CTF%%%%DATADIR%%/ctf/g_chase.c X%%CTF%%%%DATADIR%%/ctf/g_cmds.c X%%CTF%%%%DATADIR%%/ctf/g_combat.c X%%CTF%%%%DATADIR%%/ctf/g_ctf.c X%%CTF%%%%DATADIR%%/ctf/g_ctf.h X%%CTF%%%%DATADIR%%/ctf/g_func.c X%%CTF%%%%DATADIR%%/ctf/g_items.c X%%CTF%%%%DATADIR%%/ctf/g_local.h X%%CTF%%%%DATADIR%%/ctf/g_main.c X%%CTF%%%%DATADIR%%/ctf/g_misc.c X%%CTF%%%%DATADIR%%/ctf/g_monster.c X%%CTF%%%%DATADIR%%/ctf/g_phys.c X%%CTF%%%%DATADIR%%/ctf/g_save.c X%%CTF%%%%DATADIR%%/ctf/g_spawn.c X%%CTF%%%%DATADIR%%/ctf/g_svcmds.c X%%CTF%%%%DATADIR%%/ctf/g_target.c X%%CTF%%%%DATADIR%%/ctf/g_trigger.c X%%CTF%%%%DATADIR%%/ctf/g_utils.c X%%CTF%%%%DATADIR%%/ctf/g_weapon.c X%%CTF%%%%DATADIR%%/ctf/game.h X%%CTF%%%%DATADIR%%/ctf/m_move.c X%%CTF%%%%DATADIR%%/ctf/m_player.h X%%CTF%%%%DATADIR%%/ctf/p_client.c X%%CTF%%%%DATADIR%%/ctf/p_hud.c X%%CTF%%%%DATADIR%%/ctf/p_menu.c X%%CTF%%%%DATADIR%%/ctf/p_menu.h X%%CTF%%%%DATADIR%%/ctf/p_trail.c X%%CTF%%%%DATADIR%%/ctf/p_view.c X%%CTF%%%%DATADIR%%/ctf/p_weapon.c X%%CTF%%%%DATADIR%%/ctf/q_shared.c X%%CTF%%%%DATADIR%%/ctf/q_shared.h X%%DATADIR%%/game/Makefile X%%DATADIR%%/game/g_ai.c X%%DATADIR%%/game/g_chase.c X%%DATADIR%%/game/g_cmds.c X%%DATADIR%%/game/g_combat.c X%%DATADIR%%/game/g_func.c X%%DATADIR%%/game/g_items.c X%%DATADIR%%/game/g_local.h X%%DATADIR%%/game/g_main.c X%%DATADIR%%/game/g_misc.c X%%DATADIR%%/game/g_monster.c X%%DATADIR%%/game/g_phys.c X%%DATADIR%%/game/g_save.c X%%DATADIR%%/game/g_spawn.c X%%DATADIR%%/game/g_svcmds.c X%%DATADIR%%/game/g_target.c X%%DATADIR%%/game/g_trigger.c X%%DATADIR%%/game/g_turret.c X%%DATADIR%%/game/g_utils.c X%%DATADIR%%/game/g_weapon.c X%%DATADIR%%/game/game.h X%%DATADIR%%/game/m_actor.c X%%DATADIR%%/game/m_actor.h X%%DATADIR%%/game/m_berserk.c X%%DATADIR%%/game/m_berserk.h X%%DATADIR%%/game/m_boss2.c X%%DATADIR%%/game/m_boss2.h X%%DATADIR%%/game/m_boss3.c X%%DATADIR%%/game/m_boss31.c X%%DATADIR%%/game/m_boss31.h X%%DATADIR%%/game/m_boss32.c X%%DATADIR%%/game/m_boss32.h X%%DATADIR%%/game/m_brain.c X%%DATADIR%%/game/m_brain.h X%%DATADIR%%/game/m_chick.c X%%DATADIR%%/game/m_chick.h X%%DATADIR%%/game/m_flash.c X%%DATADIR%%/game/m_flipper.c X%%DATADIR%%/game/m_flipper.h X%%DATADIR%%/game/m_float.c X%%DATADIR%%/game/m_float.h X%%DATADIR%%/game/m_flyer.c X%%DATADIR%%/game/m_flyer.h X%%DATADIR%%/game/m_gladiator.c X%%DATADIR%%/game/m_gladiator.h X%%DATADIR%%/game/m_gunner.c X%%DATADIR%%/game/m_gunner.h X%%DATADIR%%/game/m_hover.c X%%DATADIR%%/game/m_hover.h X%%DATADIR%%/game/m_infantry.c X%%DATADIR%%/game/m_infantry.h X%%DATADIR%%/game/m_insane.c X%%DATADIR%%/game/m_insane.h X%%DATADIR%%/game/m_medic.c X%%DATADIR%%/game/m_medic.h X%%DATADIR%%/game/m_move.c X%%DATADIR%%/game/m_mutant.c X%%DATADIR%%/game/m_mutant.h X%%DATADIR%%/game/m_parasite.c X%%DATADIR%%/game/m_parasite.h X%%DATADIR%%/game/m_player.h X%%DATADIR%%/game/m_rider.h X%%DATADIR%%/game/m_soldier.c X%%DATADIR%%/game/m_soldier.h X%%DATADIR%%/game/m_supertank.c X%%DATADIR%%/game/m_supertank.h X%%DATADIR%%/game/m_tank.c X%%DATADIR%%/game/m_tank.h X%%DATADIR%%/game/p_client.c X%%DATADIR%%/game/p_hud.c X%%DATADIR%%/game/p_trail.c X%%DATADIR%%/game/p_view.c X%%DATADIR%%/game/p_weapon.c X%%DATADIR%%/game/q_shared.c X%%DATADIR%%/game/q_shared.h X%%ROGUE%%%%DATADIR%%/rogue/Makefile X%%ROGUE%%%%DATADIR%%/rogue/dm_ball.c X%%ROGUE%%%%DATADIR%%/rogue/dm_tag.c X%%ROGUE%%%%DATADIR%%/rogue/g_ai.c X%%ROGUE%%%%DATADIR%%/rogue/g_chase.c X%%ROGUE%%%%DATADIR%%/rogue/g_cmds.c X%%ROGUE%%%%DATADIR%%/rogue/g_combat.c X%%ROGUE%%%%DATADIR%%/rogue/g_func.c X%%ROGUE%%%%DATADIR%%/rogue/g_items.c X%%ROGUE%%%%DATADIR%%/rogue/g_local.h X%%ROGUE%%%%DATADIR%%/rogue/g_main.c X%%ROGUE%%%%DATADIR%%/rogue/g_misc.c X%%ROGUE%%%%DATADIR%%/rogue/g_monster.c X%%ROGUE%%%%DATADIR%%/rogue/g_newai.c X%%ROGUE%%%%DATADIR%%/rogue/g_newdm.c X%%ROGUE%%%%DATADIR%%/rogue/g_newfnc.c X%%ROGUE%%%%DATADIR%%/rogue/g_newtarg.c X%%ROGUE%%%%DATADIR%%/rogue/g_newtrig.c X%%ROGUE%%%%DATADIR%%/rogue/g_newweap.c X%%ROGUE%%%%DATADIR%%/rogue/g_phys.c X%%ROGUE%%%%DATADIR%%/rogue/g_save.c X%%ROGUE%%%%DATADIR%%/rogue/g_spawn.c X%%ROGUE%%%%DATADIR%%/rogue/g_sphere.c X%%ROGUE%%%%DATADIR%%/rogue/g_svcmds.c X%%ROGUE%%%%DATADIR%%/rogue/g_target.c X%%ROGUE%%%%DATADIR%%/rogue/g_trigger.c X%%ROGUE%%%%DATADIR%%/rogue/g_turret.c X%%ROGUE%%%%DATADIR%%/rogue/g_utils.c X%%ROGUE%%%%DATADIR%%/rogue/g_weapon.c X%%ROGUE%%%%DATADIR%%/rogue/game.h X%%ROGUE%%%%DATADIR%%/rogue/m_actor.c X%%ROGUE%%%%DATADIR%%/rogue/m_actor.h X%%ROGUE%%%%DATADIR%%/rogue/m_berserk.c X%%ROGUE%%%%DATADIR%%/rogue/m_berserk.h X%%ROGUE%%%%DATADIR%%/rogue/m_boss2.c X%%ROGUE%%%%DATADIR%%/rogue/m_boss2.h X%%ROGUE%%%%DATADIR%%/rogue/m_boss3.c X%%ROGUE%%%%DATADIR%%/rogue/m_boss31.c X%%ROGUE%%%%DATADIR%%/rogue/m_boss31.h X%%ROGUE%%%%DATADIR%%/rogue/m_boss32.c X%%ROGUE%%%%DATADIR%%/rogue/m_boss32.h X%%ROGUE%%%%DATADIR%%/rogue/m_brain.c X%%ROGUE%%%%DATADIR%%/rogue/m_brain.h X%%ROGUE%%%%DATADIR%%/rogue/m_carrier.c X%%ROGUE%%%%DATADIR%%/rogue/m_carrier.h X%%ROGUE%%%%DATADIR%%/rogue/m_chick.c X%%ROGUE%%%%DATADIR%%/rogue/m_chick.h X%%ROGUE%%%%DATADIR%%/rogue/m_flash.c X%%ROGUE%%%%DATADIR%%/rogue/m_flipper.c X%%ROGUE%%%%DATADIR%%/rogue/m_flipper.h X%%ROGUE%%%%DATADIR%%/rogue/m_float.c X%%ROGUE%%%%DATADIR%%/rogue/m_float.h X%%ROGUE%%%%DATADIR%%/rogue/m_flyer.c X%%ROGUE%%%%DATADIR%%/rogue/m_flyer.h X%%ROGUE%%%%DATADIR%%/rogue/m_gladiator.c X%%ROGUE%%%%DATADIR%%/rogue/m_gladiator.h X%%ROGUE%%%%DATADIR%%/rogue/m_gunner.c X%%ROGUE%%%%DATADIR%%/rogue/m_gunner.h X%%ROGUE%%%%DATADIR%%/rogue/m_hover.c X%%ROGUE%%%%DATADIR%%/rogue/m_hover.h X%%ROGUE%%%%DATADIR%%/rogue/m_infantry.c X%%ROGUE%%%%DATADIR%%/rogue/m_infantry.h X%%ROGUE%%%%DATADIR%%/rogue/m_insane.c X%%ROGUE%%%%DATADIR%%/rogue/m_insane.h X%%ROGUE%%%%DATADIR%%/rogue/m_medic.c X%%ROGUE%%%%DATADIR%%/rogue/m_medic.h X%%ROGUE%%%%DATADIR%%/rogue/m_move.c X%%ROGUE%%%%DATADIR%%/rogue/m_move2.c X%%ROGUE%%%%DATADIR%%/rogue/m_mutant.c X%%ROGUE%%%%DATADIR%%/rogue/m_mutant.h X%%ROGUE%%%%DATADIR%%/rogue/m_parasite.c X%%ROGUE%%%%DATADIR%%/rogue/m_parasite.h X%%ROGUE%%%%DATADIR%%/rogue/m_player.h X%%ROGUE%%%%DATADIR%%/rogue/m_rider.h X%%ROGUE%%%%DATADIR%%/rogue/m_soldier.c X%%ROGUE%%%%DATADIR%%/rogue/m_soldier.h X%%ROGUE%%%%DATADIR%%/rogue/m_stalker.c X%%ROGUE%%%%DATADIR%%/rogue/m_stalker.h X%%ROGUE%%%%DATADIR%%/rogue/m_supertank.c X%%ROGUE%%%%DATADIR%%/rogue/m_supertank.h X%%ROGUE%%%%DATADIR%%/rogue/m_tank.c X%%ROGUE%%%%DATADIR%%/rogue/m_tank.h X%%ROGUE%%%%DATADIR%%/rogue/m_turret.c X%%ROGUE%%%%DATADIR%%/rogue/m_turret.h X%%ROGUE%%%%DATADIR%%/rogue/m_widow.c X%%ROGUE%%%%DATADIR%%/rogue/m_widow.h X%%ROGUE%%%%DATADIR%%/rogue/m_widow2.c X%%ROGUE%%%%DATADIR%%/rogue/m_widow2.h X%%ROGUE%%%%DATADIR%%/rogue/p_client.c X%%ROGUE%%%%DATADIR%%/rogue/p_hud.c X%%ROGUE%%%%DATADIR%%/rogue/p_trail.c X%%ROGUE%%%%DATADIR%%/rogue/p_view.c X%%ROGUE%%%%DATADIR%%/rogue/p_weapon.c X%%ROGUE%%%%DATADIR%%/rogue/q_shared.c X%%ROGUE%%%%DATADIR%%/rogue/q_shared.h X%%XATRIX%%%%DATADIR%%/xatrix/Makefile X%%XATRIX%%%%DATADIR%%/xatrix/g_ai.c X%%XATRIX%%%%DATADIR%%/xatrix/g_chase.c X%%XATRIX%%%%DATADIR%%/xatrix/g_cmds.c X%%XATRIX%%%%DATADIR%%/xatrix/g_combat.c X%%XATRIX%%%%DATADIR%%/xatrix/g_func.c X%%XATRIX%%%%DATADIR%%/xatrix/g_items.c X%%XATRIX%%%%DATADIR%%/xatrix/g_local.h X%%XATRIX%%%%DATADIR%%/xatrix/g_main.c X%%XATRIX%%%%DATADIR%%/xatrix/g_misc.c X%%XATRIX%%%%DATADIR%%/xatrix/g_monster.c X%%XATRIX%%%%DATADIR%%/xatrix/g_phys.c X%%XATRIX%%%%DATADIR%%/xatrix/g_save.c X%%XATRIX%%%%DATADIR%%/xatrix/g_spawn.c X%%XATRIX%%%%DATADIR%%/xatrix/g_svcmds.c X%%XATRIX%%%%DATADIR%%/xatrix/g_target.c X%%XATRIX%%%%DATADIR%%/xatrix/g_trigger.c X%%XATRIX%%%%DATADIR%%/xatrix/g_turret.c X%%XATRIX%%%%DATADIR%%/xatrix/g_utils.c X%%XATRIX%%%%DATADIR%%/xatrix/g_weapon.c X%%XATRIX%%%%DATADIR%%/xatrix/game.h X%%XATRIX%%%%DATADIR%%/xatrix/m_actor.c X%%XATRIX%%%%DATADIR%%/xatrix/m_actor.h X%%XATRIX%%%%DATADIR%%/xatrix/m_berserk.c X%%XATRIX%%%%DATADIR%%/xatrix/m_berserk.h X%%XATRIX%%%%DATADIR%%/xatrix/m_boss2.c X%%XATRIX%%%%DATADIR%%/xatrix/m_boss2.h X%%XATRIX%%%%DATADIR%%/xatrix/m_boss3.c X%%XATRIX%%%%DATADIR%%/xatrix/m_boss31.c X%%XATRIX%%%%DATADIR%%/xatrix/m_boss31.h X%%XATRIX%%%%DATADIR%%/xatrix/m_boss32.c X%%XATRIX%%%%DATADIR%%/xatrix/m_boss32.h X%%XATRIX%%%%DATADIR%%/xatrix/m_boss5.c X%%XATRIX%%%%DATADIR%%/xatrix/m_brain.c X%%XATRIX%%%%DATADIR%%/xatrix/m_brain.h X%%XATRIX%%%%DATADIR%%/xatrix/m_chick.c X%%XATRIX%%%%DATADIR%%/xatrix/m_chick.h X%%XATRIX%%%%DATADIR%%/xatrix/m_fixbot.c X%%XATRIX%%%%DATADIR%%/xatrix/m_fixbot.h X%%XATRIX%%%%DATADIR%%/xatrix/m_flash.c X%%XATRIX%%%%DATADIR%%/xatrix/m_flipper.c X%%XATRIX%%%%DATADIR%%/xatrix/m_flipper.h X%%XATRIX%%%%DATADIR%%/xatrix/m_float.c X%%XATRIX%%%%DATADIR%%/xatrix/m_float.h X%%XATRIX%%%%DATADIR%%/xatrix/m_flyer.c X%%XATRIX%%%%DATADIR%%/xatrix/m_flyer.h X%%XATRIX%%%%DATADIR%%/xatrix/m_gekk.c X%%XATRIX%%%%DATADIR%%/xatrix/m_gekk.h X%%XATRIX%%%%DATADIR%%/xatrix/m_gladb.c X%%XATRIX%%%%DATADIR%%/xatrix/m_gladiator.c X%%XATRIX%%%%DATADIR%%/xatrix/m_gladiator.h X%%XATRIX%%%%DATADIR%%/xatrix/m_gunner.c X%%XATRIX%%%%DATADIR%%/xatrix/m_gunner.h X%%XATRIX%%%%DATADIR%%/xatrix/m_hover.c X%%XATRIX%%%%DATADIR%%/xatrix/m_hover.h X%%XATRIX%%%%DATADIR%%/xatrix/m_infantry.c X%%XATRIX%%%%DATADIR%%/xatrix/m_infantry.h X%%XATRIX%%%%DATADIR%%/xatrix/m_insane.c X%%XATRIX%%%%DATADIR%%/xatrix/m_insane.h X%%XATRIX%%%%DATADIR%%/xatrix/m_medic.c X%%XATRIX%%%%DATADIR%%/xatrix/m_medic.h X%%XATRIX%%%%DATADIR%%/xatrix/m_move.c X%%XATRIX%%%%DATADIR%%/xatrix/m_mutant.c X%%XATRIX%%%%DATADIR%%/xatrix/m_mutant.h X%%XATRIX%%%%DATADIR%%/xatrix/m_parasite.c X%%XATRIX%%%%DATADIR%%/xatrix/m_parasite.h X%%XATRIX%%%%DATADIR%%/xatrix/m_player.h X%%XATRIX%%%%DATADIR%%/xatrix/m_rider.h X%%XATRIX%%%%DATADIR%%/xatrix/m_soldier.c X%%XATRIX%%%%DATADIR%%/xatrix/m_soldier.h X%%XATRIX%%%%DATADIR%%/xatrix/m_soldierh.h X%%XATRIX%%%%DATADIR%%/xatrix/m_supertank.c X%%XATRIX%%%%DATADIR%%/xatrix/m_supertank.h X%%XATRIX%%%%DATADIR%%/xatrix/m_tank.c X%%XATRIX%%%%DATADIR%%/xatrix/m_tank.h X%%XATRIX%%%%DATADIR%%/xatrix/p_client.c X%%XATRIX%%%%DATADIR%%/xatrix/p_hud.c X%%XATRIX%%%%DATADIR%%/xatrix/p_trail.c X%%XATRIX%%%%DATADIR%%/xatrix/p_view.c X%%XATRIX%%%%DATADIR%%/xatrix/p_weapon.c X%%XATRIX%%%%DATADIR%%/xatrix/q_shared.c X%%XATRIX%%%%DATADIR%%/xatrix/q_shared.h X%%XATRIX%%@dirrm %%DATADIR%%/xatrix X%%ROGUE%%@dirrm %%DATADIR%%/rogue X@dirrm %%DATADIR%%/game X%%CTF%%@dirrm %%DATADIR%%/ctf/docs X%%CTF%%@dirrm %%DATADIR%%/ctf X@dirrm %%DATADIR%% END-of-quake2-source/pkg-plist exit --- quake2-source.shar ends here --- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1128034845.0>