X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=src%2Fmod-qserver.c;h=cc91924490b03b735e831d9085717cce70af82db;hb=80d9ed728be4b02ac483f3339cbb184f6602d15b;hp=da9c941dfbbe6e6623d1d937ba762b995693cbed;hpb=a39ad168726ad1a4780e29f7986bb653f362ab06;p=srvx.git diff --git a/src/mod-qserver.c b/src/mod-qserver.c index da9c941..cc91924 100644 --- a/src/mod-qserver.c +++ b/src/mod-qserver.c @@ -89,7 +89,7 @@ qserver_readable(struct io_fd *fd) tmpline[--len] = '\0'; argc = split_line(tmpline, false, ArrayLength(argv), argv); if (argc < 3) { - ioset_printf(fd, "MISSING_ARGS"); + ioset_printf(fd, "MISSING_ARGS\n"); return; } if (!strcmp(argv[1], "PASS") @@ -134,7 +134,6 @@ qserver_accept(UNUSED_ARG(struct io_fd *listener), struct io_fd *fd) client = calloc(1, sizeof(*client)); fd->data = client; - fd->wants_reads = 1; fd->line_reads = 1; fd->readable_cb = qserver_readable; fd->destroy_cb = qserver_destroy_fd; @@ -161,7 +160,7 @@ qserver_accept(UNUSED_ARG(struct io_fd *listener), struct io_fd *fd) if (getnameinfo((struct sockaddr*)&ss, sa_len, host, sizeof(host), NULL, 0, 0) != 0) safestrncpy(host, ip, sizeof(host)); } - client->user = AddLocalUser(nick, nick+1, host, "qserver dummy user", "*+i"); + client->user = AddLocalUser(nick, nick+1, host, "qserver dummy user", "*+oi"); irc_pton(&client->user->ip, NULL, ip); dict_insert(qserver_dict, client->user->nick, client); @@ -184,7 +183,9 @@ qserver_conf_read(void) node = conf_get_data("modules/qserver", RECDB_OBJECT); if (!node) return; - str1 = database_get_data(node, "address", RECDB_QSTRING); + str1 = database_get_data(node, "bind_address", RECDB_QSTRING); + if (!str1) + str1 = database_get_data(node, "address", RECDB_QSTRING); str2 = database_get_data(node, "port", RECDB_QSTRING); if (!str2) return; @@ -206,6 +207,7 @@ qserver_cleanup(void) { unsigned int ii; + ioset_close(qserver_listener, 1); for (ii = 0; ii < qserver_nbots; ++ii) if (qserver_clients[ii]) DelUser(qserver_clients[ii]->user, NULL, 0, "module finalizing");