<URL: http://bugs.freeciv.org/Ticket/Display.html?id=40460 >

> [EMAIL PROTECTED] - Mon Aug 25 17:49:20 2008]:
> 
> Hello!
> 
> I get this compilation error when compiling Freeciv frmo trunk
> with auth enabled:
> 
> [...]

An unfortunate name clash between mysql's and freeciv's
my_connect. Attached patch renames freeciv's my_connect
to my_connectsocket and should fix the compilation
error (present only in S2_2 and trunk).

Alternative would be to reduce header interdependencies
so that the namespaces do not overlap, but then the
same problem might arise by mistake again in the future.

Or the prefix my_ could be changed, perhaps to fc_ or
similar (there are unfortunately many freeciv support
functions that start with my_ :().


----------------------------------------------------------------------
この牛乳を天の川で一番旨いだと保証します。
 client/clinet.c   |    4 ++--
 client/servers.c  |    2 +-
 server/meta.c     |    4 ++--
 utility/netintf.c |   11 +++++++----
 utility/netintf.h |    2 +-
 5 files changed, 13 insertions(+), 10 deletions(-)

diff --git a/client/clinet.c b/client/clinet.c
index 01c9e29..1fdf997 100644
--- a/client/clinet.c
+++ b/client/clinet.c
@@ -205,8 +205,8 @@ static int try_to_connect(const char *username, char *errbuf, int errbufsize)
     return -1;
   }
 
-  if (my_connect(client.conn.sock, &server_addr.saddr,
-                 sockaddr_size(&server_addr)) == -1) {
+  if (my_connectsocket(client.conn.sock, &server_addr.saddr,
+                       sockaddr_size(&server_addr)) == -1) {
     (void) mystrlcpy(errbuf, mystrerror(), errbufsize);
     my_closesocket(client.conn.sock);
     client.conn.sock = -1;
diff --git a/client/servers.c b/client/servers.c
index 6d4d505..c23524f 100644
--- a/client/servers.c
+++ b/client/servers.c
@@ -423,7 +423,7 @@ static bool begin_metaserver_scan(struct server_scan *scan)
 
   my_nonblock(s);
   
-  if (my_connect(s, &addr.saddr, sockaddr_size(&addr)) == -1) {
+  if (my_connectsocket(s, &addr.saddr, sockaddr_size(&addr)) == -1) {
     if (errno == EINPROGRESS) {
       /* With non-blocking sockets this is the expected result. */
       scan->meta.state = META_CONNECTING;
diff --git a/server/meta.c b/server/meta.c
index 31dd291..706b41e 100644
--- a/server/meta.c
+++ b/server/meta.c
@@ -221,8 +221,8 @@ static bool send_to_metaserver(enum meta_flag flag)
     return FALSE;
   }
 
-  if (my_connect(sock, &meta_addr.saddr,
-                 sockaddr_size(&meta_addr)) == -1) {
+  if (my_connectsocket(sock, &meta_addr.saddr,
+                       sockaddr_size(&meta_addr)) == -1) {
     freelog(LOG_ERROR, "Metaserver: connect failed: %s", mystrerror());
     metaserver_failed();
     my_closesocket(sock);
diff --git a/utility/netintf.c b/utility/netintf.c
index 5bf227a..7e167cc 100644
--- a/utility/netintf.c
+++ b/utility/netintf.c
@@ -87,10 +87,13 @@ static void set_socket_errno(void)
 }
 #endif /* HAVE_WINSOCK */
 
-/***************************************************************
-  Connect a socket to an address
-***************************************************************/
-int my_connect(int sockfd, const struct sockaddr *serv_addr, socklen_t addrlen)
+/*****************************************************************
+  Connect a socket to an address. This is named "my_connectsocket"
+  rather than just "my_connect" so that it does not conflict with
+  the mysql function of the same name.
+*****************************************************************/
+int my_connectsocket(int sockfd, const struct sockaddr *serv_addr,
+                     socklen_t addrlen)
 {
   int result;
   
diff --git a/utility/netintf.h b/utility/netintf.h
index f4c7530..7dabe31 100644
--- a/utility/netintf.h
+++ b/utility/netintf.h
@@ -84,7 +84,7 @@ enum announce_type {
 
 #define ANNOUNCE_DEFAULT ANNOUNCE_IPV4
 
-int my_connect(int sockfd, const struct sockaddr *serv_addr, socklen_t addrlen);
+int my_connectsocket(int sockfd, const struct sockaddr *serv_addr, socklen_t addrlen);
 int my_select(int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds,
               struct timeval *timeout);
 int my_readsocket(int sock, void *buf, size_t size);
_______________________________________________
Freeciv-dev mailing list
Freeciv-dev@gna.org
https://mail.gna.org/listinfo/freeciv-dev

Reply via email to