netrek-client-cow 3.2.9 was released, adding an identity blinding
feature so that the user can choose not to know who they are playing
with, removing the safe-idle galactic status message during clue games,
ensuring that a binary distribution includes a copy of the public key,
and clarifying the license of the dashboard work by Lars Bernhardsson,
under his direction.  My thanks to Andrew Bressen for assistance with
that.

http://quozl.linux.org.au/netrek/
fc88442fa81dc40c6cb65a6ebf0b994b  netrek-client-cow-3.2.9.tar.gz


diff -ur netrek-client-cow-3.2.8/COPYING netrek-client-cow-3.2.9/COPYING
--- netrek-client-cow-3.2.8/COPYING	2008-09-29 14:31:13.000000000 +1000
+++ netrek-client-cow-3.2.9/COPYING	2009-01-05 19:17:43.000000000 +1100
@@ -1,4 +1,4 @@
-Copyright review of netrek-client-cow-3.2.8 by James Cameron on 2008-09-27
+Copyright review of netrek-client-cow-3.2.9 by James Cameron on 2009-01-05.
 
 1.  copyright.h, 1986 Chris Guthrie, 1989 Kevin P. Smith, Scott
     Silvey, 1993 Kevin Powell, Nick Trown, Jeff Nelson, Kurt Siegl,
@@ -8,7 +8,7 @@
 
 3.  cowapi.h, 1996 Kurt Siegl,
 
-4.  dashboard.c, dashboard3.c, 1993 Lars Bernhardsson,
+4.  dashboard.c, dashboard3.c, 1993 1996 Lars Bernhardsson,
 
 5.  helpwin.c, defwin.c (derived), 1991 Eric Mehlhaff,
 
diff -ur netrek-client-cow-3.2.8/ChangeLog netrek-client-cow-3.2.9/ChangeLog
--- netrek-client-cow-3.2.8/ChangeLog	2008-09-29 14:31:13.000000000 +1000
+++ netrek-client-cow-3.2.9/ChangeLog	2009-01-05 19:17:43.000000000 +1100
@@ -1,3 +1,15 @@
+Mon Jan  5 19:14:26 2009  James Cameron  <quozl at us.netrek.org>
+
+	* netrek-client-cow-3.2.9: released
+
+	- add identity blinding feature, which removes names, ranks, versions,
+
+	- remove safe-idle from clue games,
+
+	- include key file in binary distribution,
+
+	- clarify license on work contributed by Lars Bernhardsson.
+
 Mon Sep 29 14:28:07 2008  James Cameron  <quozl at us.netrek.org>
 
 	* netrek-client-cow-3.2.8: released
diff -ur netrek-client-cow-3.2.8/Makefile netrek-client-cow-3.2.9/Makefile
--- netrek-client-cow-3.2.8/Makefile	2008-09-29 14:31:13.000000000 +1000
+++ netrek-client-cow-3.2.9/Makefile	2009-01-05 19:17:43.000000000 +1100
@@ -122,8 +122,9 @@
 to_dos: system.mk
 	$(MAKE) -f system.mk KEYDEF=$(KEYDEF) to_dos
 
-install: netrek-client-cow
+install: netrek-client-cow $(KEYFILE)
 	install netrek-client-cow $(DESTDIR)$(BINDIR)
+	install $(KEYFILE) $(DESTDIR)$(LIBDIR)
 
 package:
 	fakeroot dpkg-buildpackage -Igtk -Ipygtk -Ipyqt
diff -ur netrek-client-cow-3.2.8/README.releasing netrek-client-cow-3.2.9/README.releasing
--- netrek-client-cow-3.2.8/README.releasing	2008-09-29 14:31:13.000000000 +1000
+++ netrek-client-cow-3.2.9/README.releasing	2009-01-05 19:17:43.000000000 +1100
@@ -4,7 +4,7 @@
 # resolve any differences between working directory and repository
 
 # decide on version number
-export VERSION=3.2.8
+export VERSION=3.2.9
 
 # update version.h patchlevel.h cow.spec
 
@@ -27,7 +27,6 @@
 
 cd /tmp
 md5sum netrek-client-cow-${VERSION}.tar.gz
-878a7f85e8d7f4c619f69192d36ad564  netrek-client-cow-3.2.7.tar.gz
 
 # test build the .tar.gz
 cd /tmp
@@ -35,9 +34,10 @@
 cd netrek-client-cow-${VERSION}
 ./configure
 make
-./netrek
+./netrek-client-cow
 
 # release
+cd /tmp
 cp netrek-client-cow-${VERSION}.tar.gz ~/public_html/external/mine/netrek/
 cd ~/public_html/external/
 . to-au
diff -ur netrek-client-cow-3.2.8/cow.spec netrek-client-cow-3.2.9/cow.spec
--- netrek-client-cow-3.2.8/cow.spec	2008-09-29 14:31:13.000000000 +1000
+++ netrek-client-cow-3.2.9/cow.spec	2009-01-05 19:17:43.000000000 +1100
@@ -16,7 +16,7 @@
 
 Summary: Netrek Client
 Name: cow
-Version: 3.2.8
+Version: 3.2.9
 Release: realtime.1
 Copyright: BSD
 URL: http://cow.netrek.org/
diff -ur netrek-client-cow-3.2.8/cowmain.c netrek-client-cow-3.2.9/cowmain.c
--- netrek-client-cow-3.2.8/cowmain.c	2008-09-29 14:31:13.000000000 +1000
+++ netrek-client-cow-3.2.9/cowmain.c	2009-01-05 19:17:43.000000000 +1100
@@ -644,6 +644,8 @@
   SRANDOM(time(0));
 
   initDefaults(deffile);
+  identityBlind = booleanDefault("identityBlind", identityBlind);
+  versionHide = booleanDefault("versionHide", versionHide);
 
   xtrekPort = port;
   if (server)
diff -ur netrek-client-cow-3.2.8/dashboard.c netrek-client-cow-3.2.9/dashboard.c
--- netrek-client-cow-3.2.8/dashboard.c	2008-09-29 14:31:08.000000000 +1000
+++ netrek-client-cow-3.2.9/dashboard.c	2009-01-05 19:17:43.000000000 +1100
@@ -1,15 +1,32 @@
-
 /* dashboard.c - graphic tstatw - 6/2/93
  * 
- * copyright 1993 Lars Bernhardsson (lab at mtek.chalmers.se) Free to use as long
- * as this notice is left here.
- * 
+ * Copyright (C) 1993, Lars Bernhardsson (lab at mtek.chalmers.se)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
  * Color by Nick Trown.
  *
- * $Log: dashboard.c,v $
- * Revision 1.1.1.1  1998/11/01 17:24:09  siegl
- * COW 3.0 initial revision
- * */
+ */
 
 #include "config.h"
 #include "copyright.h"
diff -ur netrek-client-cow-3.2.8/dashboard3.c netrek-client-cow-3.2.9/dashboard3.c
--- netrek-client-cow-3.2.8/dashboard3.c	2008-09-29 14:31:08.000000000 +1000
+++ netrek-client-cow-3.2.9/dashboard3.c	2009-01-05 19:17:43.000000000 +1100
@@ -2,14 +2,31 @@
 /*
  * dashboard.c - graphic tstatw - 6/2/93
  * lab2-dashboard.c - 2nd graphic tstatw - 7/29/96
- * 
- * copyright 1993,1996 Lars Bernhardsson (lab at mtek.chalmers.se)
- * Free to use as long as this notice is left here.
  *
- * $Log: dashboard3.c,v $
- * Revision 1.1.1.1  1998/11/01 17:24:09  siegl
- * COW 3.0 initial revision
- * */
+ * Copyright (C) 1993 1996, Lars Bernhardsson (lab at mtek.chalmers.se)
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
+ * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+ * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+ * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
 
 #include "config.h"
 #include "copyright.h"
diff -ur netrek-client-cow-3.2.8/data.c netrek-client-cow-3.2.9/data.c
--- netrek-client-cow-3.2.8/data.c	2008-09-29 14:31:13.000000000 +1000
+++ netrek-client-cow-3.2.9/data.c	2009-01-05 19:17:43.000000000 +1100
@@ -749,3 +749,5 @@
 
 int F_show_all_tractors = 1;
 int fastGuest = 0;
+int identityBlind = 0;
+int versionHide = 0;
diff -ur netrek-client-cow-3.2.8/data.h netrek-client-cow-3.2.9/data.h
--- netrek-client-cow-3.2.8/data.h	2008-09-29 14:31:13.000000000 +1000
+++ netrek-client-cow-3.2.9/data.h	2009-01-05 19:17:43.000000000 +1100
@@ -585,4 +585,6 @@
 
 extern int F_show_all_tractors;
 extern int fastGuest;
+extern int identityBlind;
+extern int versionHide;
 #endif /* _h_data */
diff -ur netrek-client-cow-3.2.8/dmessage.c netrek-client-cow-3.2.9/dmessage.c
--- netrek-client-cow-3.2.8/dmessage.c	2008-09-29 14:31:08.000000000 +1000
+++ netrek-client-cow-3.2.9/dmessage.c	2009-01-05 19:17:43.000000000 +1100
@@ -120,7 +120,7 @@
 	      !strncmp(message + 10, "     ", 5) && (message[15] == 0))
 	    {
 	      printf("dmessage:flags==team PIG call from=%d\n", from);
-	      pmessage(cowid, from, MINDIV);
+	      if (!versionHide) pmessage(cowid, from, MINDIV);
 	    }
 	}
 
@@ -138,7 +138,7 @@
 	  if (!strncmp(message + 10, "     ", 5) && (message[15] == 0))
 	    {
 	      printf("dmessage:MINDIV PIG call from=%d\n", from);
-	      pmessage(cowid, from, MINDIV);
+	      if (!versionHide) pmessage(cowid, from, MINDIV);
 	    }
 	}
       else
@@ -149,7 +149,7 @@
 	  W_WriteText(messwa, 0, 0, color, message, len, 0);
 	  if (!strncmp(message + 10, "     ", 5) && (message[15] == 0))
 	    {
-	      pmessage(cowid, from, MINDIV);
+	      if (!versionHide) pmessage(cowid, from, MINDIV);
 	    }
 	}
       W_WriteText(reviewWin, 0, 0, color, message, len, 0);
@@ -192,7 +192,7 @@
 	  W_WriteText(messwt, 0, 0, color, message, len, 0);
 	  if (!strncmp(message + 10, "     ", 5) && (message[15] == 0))
 	    {
-	      pmessage(cowid, from, MINDIV);
+	      if (!versionHide) pmessage(cowid, from, MINDIV);
 	    }
 	  if (logmess)
 	    {
@@ -214,7 +214,7 @@
 	    W_WriteText(messwi, 0, 0, color, message, len, 0);
 	  if (!strncmp(message + 10, "     ", 5) && (message[15] == 0))
 	    {
-	      pmessage(cowid, from, MINDIV);
+	      if (!versionHide) pmessage(cowid, from, MINDIV);
 	    }
 	  if (logmess)
 	    {
@@ -235,7 +235,7 @@
 	  W_WriteText(messwa, 0, 0, color, message, len, 0);
 	  if (!strncmp(message + 10, "     ", 5) && (message[15] == 0))
 	    {
-	      pmessage(cowid, from, MINDIV);
+	      if (!versionHide) pmessage(cowid, from, MINDIV);
 	    }
 	  if (logmess)
 	    {
diff -ur netrek-client-cow-3.2.8/enter.c netrek-client-cow-3.2.9/enter.c
--- netrek-client-cow-3.2.8/enter.c	2008-09-29 14:31:13.000000000 +1000
+++ netrek-client-cow-3.2.9/enter.c	2009-01-05 19:17:43.000000000 +1100
@@ -47,6 +47,7 @@
   mctl = universe.mctl;
   messages = universe.messages;
   context = universe.context;
+  context->gameup = GU_UNSAFE;
   for (i = 0; i < MAXPLAYER; i++)
     {
       players[i].p_status = PFREE;
diff -ur netrek-client-cow-3.2.8/mkcflags.c netrek-client-cow-3.2.9/mkcflags.c
--- netrek-client-cow-3.2.8/mkcflags.c	2008-09-29 14:31:13.000000000 +1000
+++ netrek-client-cow-3.2.9/mkcflags.c	2009-01-05 19:17:43.000000000 +1100
@@ -135,13 +135,6 @@
   strcat (pigcall, "-STABLE");
 #endif
 
-#ifdef ALPHACODER
-  strcat (pigcall, ", Alpha ver. ");
-  strcat (pigcall, ALPHACODER);
-  strcat (pigcall, "-");
-  strcat (pigcall, ALPHAREF);
-#endif
-
   return (pigcall);
 }
 
diff -ur netrek-client-cow-3.2.8/name.c netrek-client-cow-3.2.9/name.c
--- netrek-client-cow-3.2.8/name.c	2008-09-29 14:31:13.000000000 +1000
+++ netrek-client-cow-3.2.9/name.c	2009-01-05 19:17:43.000000000 +1100
@@ -26,10 +26,6 @@
 
   printf ("%s.%d", mvers, PATCHLEVEL);
 
-#ifdef ALPHACODER
-  printf (".%s(%s)", ALPHACODER, ALPHAREF);
-#endif
-
   printf ("\n");
   exit(0);
 }
diff -ur netrek-client-cow-3.2.8/newwin.c netrek-client-cow-3.2.9/newwin.c
--- netrek-client-cow-3.2.8/newwin.c	2008-09-29 14:31:13.000000000 +1000
+++ netrek-client-cow-3.2.9/newwin.c	2009-01-05 19:17:43.000000000 +1100
@@ -384,13 +384,13 @@
     W_MapWindow(rankw);
   if (checkMapped("help"))
     W_MapWindow(helpWin);
-  if (checkMapped("review_all"))
+  if (checkMapped("review_all") && !identityBlind)
     W_MapWindow(messwa);
-  if (checkMapped("review_team"))
+  if (checkMapped("review_team") && !identityBlind)
     W_MapWindow(messwt);
-  if (checkMapped("review_your"))
+  if (checkMapped("review_your") && !identityBlind)
     W_MapWindow(messwi);
-  if (checkMapped("review_kill"))
+  if (checkMapped("review_kill") && !identityBlind)
     W_MapWindow(messwk);
   if (checkMapped("netstat"))
     nswindow(netstatWin);
@@ -405,7 +405,7 @@
     }
   if (checkMappedPref("player", 1))
     W_MapWindow(playerw);
-  if (checkMappedPref("review", 1))
+  if (checkMappedPref("review", 1) && !identityBlind)
     W_MapWindow(reviewWin);
   if (checkMapped("UDP"))
     udpwindow();
diff -ur netrek-client-cow-3.2.8/patchlevel.h netrek-client-cow-3.2.9/patchlevel.h
--- netrek-client-cow-3.2.8/patchlevel.h	2008-09-29 14:31:13.000000000 +1000
+++ netrek-client-cow-3.2.9/patchlevel.h	2009-01-05 19:17:43.000000000 +1100
@@ -1,2 +1,2 @@
 #include "config.h"
-#define PATCHLEVEL 8 /* last digit of version number */
+#define PATCHLEVEL 9 /* last digit of version number */
diff -ur netrek-client-cow-3.2.8/sample_key.def netrek-client-cow-3.2.9/sample_key.def
--- netrek-client-cow-3.2.8/sample_key.def	2008-09-29 14:31:12.000000000 +1000
+++ netrek-client-cow-3.2.9/sample_key.def	2009-01-05 19:17:43.000000000 +1100
@@ -4,7 +4,7 @@
 # Store this file along with you secret key file for further use.          #
 ############################################################################
 
-ARCH 		= unix
+ARCH 		= linux
 
 #
 # NOTE: If you have to make a key from keys.h then after you have changed
@@ -14,9 +14,9 @@
 
 KEYSH 		= keys.h
 KEYNAME 	= $(ARCH)
-DESC 		= "$(ARCH) / Sample key"
-MAKER 		= "007 at netrek.org"
-COMMENT 	= "reserved.c blessed. Located via http at cow.netrek.org"
+DESC 		= "automatic packaged key"
+MAKER 		= "quozl at us.netrek.org"
+COMMENT 	= "netrek.org/files/COW/"
 
 # If you have already an valid RSA key change the name of the file below.
 # Otherwise make will automaticaly generate one for you.
diff -ur netrek-client-cow-3.2.8/socket.c netrek-client-cow-3.2.9/socket.c
--- netrek-client-cow-3.2.8/socket.c	2008-09-29 14:31:13.000000000 +1000
+++ netrek-client-cow-3.2.9/socket.c	2009-01-05 19:17:43.000000000 +1100
@@ -2511,10 +2511,17 @@
 
   pl = &players[p_no];
 
-  strcpy(pl->p_name, packet->name);
-  strcpyp_return(pl->p_monitor, packet->monitor, sizeof(pl->p_monitor));
-  strcpy(pl->p_login, packet->login);
-  pl->p_stats.st_rank = packet->rank;
+  if (identityBlind) {
+    strcpy(pl->p_name, "");
+    strcpy(pl->p_monitor, "");
+    strcpy(pl->p_login, "");
+    pl->p_stats.st_rank = 0;
+  } else {
+    strcpy(pl->p_name, packet->name);
+    strcpyp_return(pl->p_monitor, packet->monitor, sizeof(pl->p_monitor));
+    strcpy(pl->p_login, packet->login);
+    pl->p_stats.st_rank = packet->rank;
+  }
 
   if (p_no == me->p_no)
     {
diff -ur netrek-client-cow-3.2.8/struct.h netrek-client-cow-3.2.9/struct.h
--- netrek-client-cow-3.2.8/struct.h	2008-09-29 14:31:13.000000000 +1000
+++ netrek-client-cow-3.2.9/struct.h	2009-01-05 19:17:43.000000000 +1100
@@ -1,26 +1,8 @@
-
-
-
 /* struct.h for the client of an xtrek socket protocol.
  * 
  * Most of the unneeded stuff in the structures has been thrown away.
  *
- * $Log: struct.h,v $
- * Revision 1.5  2006/09/19 10:20:39  quozl
- * ut06 full screen, det circle, quit on motd, add icon, add desktop file
- *
- * Revision 1.4  2006/05/16 06:20:18  quozl
- * add PLCORE
- *
- * Revision 1.3  2002/06/21 00:26:03  quozl
- * fix description of PFOBSERV
- *
- * Revision 1.2  1999/08/05 16:46:32  siegl
- * remove several defines (BRMH, RABBITEARS, NEWDASHBOARD2)
- *
- * Revision 1.1.1.1  1998/11/01 17:24:11  siegl
- * COW 3.0 initial revision
- * */
+ */
 #include "copyright.h"
 
 #ifndef _h_struct
diff -ur netrek-client-cow-3.2.8/system.mk.in netrek-client-cow-3.2.9/system.mk.in
--- netrek-client-cow-3.2.8/system.mk.in	2008-09-29 14:31:13.000000000 +1000
+++ netrek-client-cow-3.2.9/system.mk.in	2009-01-05 19:17:43.000000000 +1100
@@ -108,7 +108,7 @@
 # full screen support
 XXF86VM_LIBS    = -lXxf86vm
 # camera snapshot support
-IMLIB2_LIBS     = -lImlib2
+IMLIB2_LIBS     = $(shell imlib2-config --libs)
 
 SHARED 	= $(SL_CFLAGS)
 INCDIRS = $(MPINC) $(INCS)
@@ -138,9 +138,7 @@
 	@echo "int sock = -1;" >>rsa_box_1.c
 
 $(SECKEYFILE):
-	@echo WARNING: No keyfile found, generating a new key.
-	@echo "         You have 5 seconds time to abort"
-	sleep 5
+	@echo generating a new client key
 	$(MAKE) newkey
 
 mkkey: mkkey.c $(RANDOMOBJ) defs.h
diff -ur netrek-client-cow-3.2.8/version.h netrek-client-cow-3.2.9/version.h
--- netrek-client-cow-3.2.8/version.h	2008-09-29 14:31:13.000000000 +1000
+++ netrek-client-cow-3.2.9/version.h	2009-01-05 19:17:43.000000000 +1100
@@ -5,19 +5,11 @@
 #ifdef STABLE
 #define mvers "2.02"
 #define version "COW 2.02"
-
 #define LIBMAJOR 2
 #define LIBMINOR 2
-
 #else
 #define mvers "3.2"
 #define version "COW 3.2"
-
 #define LIBMAJOR 3
 #define LIBMINOR 1
-
-#if 0
-#define ALPHACODER "007"
-#define ALPHAREF "2"
-#endif
 #endif

-- 
James Cameron    mailto:quozl at us.netrek.org     http://quozl.netrek.org/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://mailman.us.netrek.org/pipermail/netrek-dev/attachments/20090105/b2acc379/attachment.pgp