#include "ConfigParser.h"
#include "bots.h"
+#ifdef WIN32
+typedef uint32_t socklen_t;
+#endif
+
#define QSERVER_TIMEOUT 30
#define QSERVER_MAXCLIENTS 100
if (server_sockfd < 0)
return;
struct sockaddr_in serv_addr;
- bzero((char *) &serv_addr, sizeof(serv_addr));
+ memset(&serv_addr, 0, sizeof(serv_addr));
int portno = get_int_field("QServer.port");
if(!portno)
portno = 7499;
}
void qserver_loop() {
+ if(!get_int_field("QServer.enabled"))
+ return;
struct timeval tv;
struct QServerClient *client, *next, *prev = NULL;
int ret;
//new connection
struct sockaddr_in cli_addr;
socklen_t clilen;
+ client = malloc(sizeof(*client));
+ clilen = sizeof(cli_addr);
+ client->sock = accept(server_sockfd, (struct sockaddr *) &cli_addr, &clilen);
+ client->flags = 0;
if(qserver_clientcount >= QSERVER_MAXCLIENTS) {
qserver_put(client, "E :Maximum QServer Connections reached");
close(client->sock);
+ free(client);
} else {
- client = malloc(sizeof(*client));
- clilen = sizeof(cli_addr);
- client->sock = accept(server_sockfd, (struct sockaddr *) &cli_addr, &clilen);
- client->flags = 0;
client->lastmsg = now;
client->bufferpos = 0;
client->references = 0;