Complete.Org: Mailing Lists: Archives: freeciv-dev: September 2004:
[Freeciv-Dev] (PR#8570) no auth for gtk2 client
Home

[Freeciv-Dev] (PR#8570) no auth for gtk2 client

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: undisclosed-recipients: ;
Subject: [Freeciv-Dev] (PR#8570) no auth for gtk2 client
From: "Jason Short" <jdorje@xxxxxxxxxxxxxxxxxxxxx>
Date: Thu, 2 Sep 2004 13:59:28 -0700
Reply-to: rt@xxxxxxxxxxx

<URL: http://rt.freeciv.org/Ticket/Display.html?id=8570 >

> [jdorje - Thu Sep 02 20:37:14 2004]:
> 
> > [jdorje - Thu Sep 02 20:34:48 2004]:
> 
> > This patch is a little better.

And this one is better still.  Mateusz pointed out that we should be
using --with not --enable.  And this one's even simpler.

Note that if the user does --without-auth things will break.  Of course
the same problem would exist with --enable as well.

jason

Index: m4/auth.m4
===================================================================
RCS file: /home/freeciv/CVS/freeciv/m4/auth.m4,v
retrieving revision 1.3
diff -u -r1.3 auth.m4
--- m4/auth.m4  27 Apr 2004 05:00:25 -0000      1.3
+++ m4/auth.m4  2 Sep 2004 20:58:48 -0000
@@ -1,27 +1,20 @@
-AC_DEFUN([FC_CHECK_AUTH], [
-USER_DB_LIB=""
-USER_DB_DEP=""
-AC_ARG_ENABLE(auth,
-[  --enable-auth[[=lib]]     enable authentication 
-                                 [[default userdb 
lib=server/userdb/libuserdb.a]]],
+# Do checks for Freeciv authentication support
+#
+# Called without any parameters.
+
+AC_DEFUN([FC_CHECK_AUTH],
 [
-  auth=true
-  user_db_lib=${enableval}
-  if test "x$user_db_lib" = "" || test "x$user_db_lib" = "xyes" ; then
-     user_db_lib="userdb/libuserdb.a"
-  fi
-], [
-  auth=false
-  user_db_lib=""
-])
-if test "x$auth" = "xtrue" ; then
-  AC_DEFINE(AUTHENTICATION_ENABLED, 1, [authentication support])
-  USER_DB_LIB=$user_db_lib
+  # If the user calls --without-auth this will fail.
+  AC_ARG_WITH([auth],
+             AC_HELP_STRING([--with-auth=lib],
+                             [Specify authentication database library]),
+             [USER_DB_LIB="$withval"])
 
-  if test "x$user_db_lib" = "xuserdb/libuserdb.a" ; then
-    USER_DB_DEP=$user_db_lib
+  if test "$USER_DB_LIB" = "" || test "$USER_DB_LIB" = "yes"; then
+    USER_DB_LIB="userdb/libuserdb.a"
   fi
-fi
-AC_SUBST(USER_DB_LIB)
-AC_SUBST(USER_DB_DEP)
+  USER_DB_DEP="$USER_DB_LIB"
+
+  AC_SUBST(USER_DB_LIB)
+  AC_SUBST(USER_DB_DEP)
 ])
Index: server/civserver.c
===================================================================
RCS file: /home/freeciv/CVS/freeciv/server/civserver.c,v
retrieving revision 1.220
diff -u -r1.220 civserver.c
--- server/civserver.c  21 Aug 2004 18:32:37 -0000      1.220
+++ server/civserver.c  2 Sep 2004 20:58:48 -0000
@@ -109,14 +109,12 @@
        showhelp = TRUE;
        break;
       }
-#ifdef AUTHENTICATION_ENABLED 
     } else if (is_option("--auth", argv[inx])) {
       srvarg.auth_enabled = TRUE;
     } else if (is_option("--Guests", argv[inx])) {
       srvarg.auth_allow_guests = TRUE;
     } else if (is_option("--Newusers", argv[inx])) {
       srvarg.auth_allow_newusers = TRUE;
-#endif
     } else if (is_option("--version", argv[inx]))
       showvers = TRUE;
     else {
@@ -137,11 +135,9 @@
 
   if (showhelp) {
     fprintf(stderr, _("Usage: %s [option ...]\nValid options are:\n"), 
argv[0]);
-#ifdef AUTHENTICATION_ENABLED 
     fprintf(stderr, _("  -a  --auth\t\tEnable server authentication.\n"));
     fprintf(stderr, _("  -G  --Guests\t\tAllow guests to login if auth is 
enabled.\n"));
     fprintf(stderr, _("  -N  --Newusers\tAllow new users to login if auth is 
enabled.\n"));
-#endif
     fprintf(stderr, _("  -b  --bind ADDR\tListen for clients on ADDR\n"));
 #ifdef DEBUG
     fprintf(stderr, _("  -d, --debug NUM\tSet debug log level (0 to 4,"
Index: server/connecthand.c
===================================================================
RCS file: /home/freeciv/CVS/freeciv/server/connecthand.c,v
retrieving revision 1.22
diff -u -r1.22 connecthand.c
--- server/connecthand.c        21 Aug 2004 18:32:37 -0000      1.22
+++ server/connecthand.c        2 Sep 2004 20:58:48 -0000
@@ -49,20 +49,16 @@
 
 #define MAX_AUTHENTICATION_TRIES 3
 
-#ifdef AUTHENTICATION_ENABLED 
 /* after each wrong guess for a password, the server waits this
  * many seconds to reply to the client */
 static const int auth_fail_period[] = { 1, 1, 2, 3 };
-#endif
 
 static void establish_new_connection(struct connection *pconn);
 static void reject_new_connection(const char *msg, struct connection *pconn);
 
-#ifdef AUTHENTICATION_ENABLED
 static bool is_guest_name(const char *name);
 static void get_unique_guest_name(char *name);
 static bool is_good_password(const char *password, char *msg);
-#endif
 
 /**************************************************************************
   This is used when a new player joins a server, before the game
@@ -277,7 +273,6 @@
     }
   } conn_list_iterate_end;
 
-#ifdef AUTHENTICATION_ENABLED 
   if (srvarg.auth_enabled) {
     /* assign the client a unique guest name/reject if guests aren't allowed */
     if (is_guest_name(req->username)) {
@@ -350,7 +345,6 @@
       return TRUE;
     }
   }
-#endif /* AUTHENTICATION_ENABLED */
 
   sz_strlcpy(pconn->username, req->username);
   establish_new_connection(pconn);
@@ -384,7 +378,6 @@
 **************************************************************************/
 bool handle_authentication_reply(struct connection *pconn, char *password)
 {
-#ifdef AUTHENTICATION_ENABLED 
   char msg[MAX_LEN_MSG];
 
   if (pconn->server.status == AS_REQUESTING_NEW_PASS) {
@@ -433,12 +426,8 @@
   }
 
   return TRUE;
-#else
-  return FALSE;
-#endif /* AUTHENTICATION_ENABLED */
 }
 
-#ifdef AUTHENTICATION_ENABLED
 /**************************************************************************
   see if the name qualifies as a guest login name
 **************************************************************************/
@@ -527,7 +516,6 @@
 
   return TRUE;
 }
-#endif /* AUTHENTICATION_ENABLED */
 
 /**************************************************************************
   High-level server stuff when connection to client is closed or lost.

[Prev in Thread] Current Thread [Next in Thread]