aboutsummaryrefslogtreecommitdiff
path: root/server_network.c
diff options
context:
space:
mode:
authorTest_User <hax@andrewyu.org>2023-05-06 03:03:58 -0400
committerTest_User <hax@andrewyu.org>2023-05-06 03:03:58 -0400
commit32d75fadbf193218d0be42ca91b7688f1854f6e4 (patch)
treebacc1c35036a0b38fe63f6cffeb711be43cc7ae3 /server_network.c
parent329ca8e8f40efdd7838d40435b5f113d2877c13c (diff)
downloadcoupserv-32d75fadbf193218d0be42ca91b7688f1854f6e4.tar.gz
coupserv-32d75fadbf193218d0be42ca91b7688f1854f6e4.zip
Start adding client support
Diffstat (limited to '')
-rw-r--r--server_network.c (renamed from network.c)31
1 files changed, 14 insertions, 17 deletions
diff --git a/network.c b/server_network.c
index 70c58fe..0d7beb4 100644
--- a/network.c
+++ b/server_network.c
@@ -1,4 +1,4 @@
-// Network command handlers for HaxServ
+// Server network command handlers for HaxServ
//
// Written by: Test_User <hax@andrewyu.org>
//
@@ -28,11 +28,11 @@
#include <gnutls/gnutls.h>
#include <netdb.h>
-#include <string.h>
#include <arpa/inet.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <sys/socket.h>
+#include <string.h>
#include <stdlib.h>
#include <stdio.h>
@@ -63,7 +63,7 @@ int resolve(char *address, char *port, struct sockaddr *sockaddr) {
return success;
}
-struct table network_commands = {0};
+struct table server_network_commands = {0};
struct table server_list = {0};
struct table user_list = {0};
@@ -90,10 +90,7 @@ int ping_handler(struct string sender, uint64_t argc, struct string *argv) {
offset += sender.len;
msg[offset] = '\n';
- struct string m;
- m.data = msg;
- m.len = len;
- SEND(m);
+ SEND(((struct string){msg, len}));
return 0;
}
@@ -577,18 +574,18 @@ int privmsg_handler(struct string sender, uint64_t argc, struct string *argv) {
}
int initservernetwork(void) {
- network_commands.array = malloc(0);
+ server_network_commands.array = malloc(0);
server_list.array = malloc(0);
user_list.array = malloc(0);
- set_table_index(&network_commands, STRING("PING"), &ping_handler);
- set_table_index(&network_commands, STRING("SERVER"), &server_handler);
- set_table_index(&network_commands, STRING("UID"), &uid_handler);
- set_table_index(&network_commands, STRING("OPERTYPE"), &opertype_handler);
- set_table_index(&network_commands, STRING("PRIVMSG"), &privmsg_handler);
- set_table_index(&network_commands, STRING("QUIT"), &quit_handler);
- set_table_index(&network_commands, STRING("KILL"), &kill_handler);
- set_table_index(&network_commands, STRING("NICK"), &nick_handler);
+ set_table_index(&server_network_commands, STRING("PING"), &ping_handler);
+ set_table_index(&server_network_commands, STRING("SERVER"), &server_handler);
+ set_table_index(&server_network_commands, STRING("UID"), &uid_handler);
+ set_table_index(&server_network_commands, STRING("OPERTYPE"), &opertype_handler);
+ set_table_index(&server_network_commands, STRING("PRIVMSG"), &privmsg_handler);
+ set_table_index(&server_network_commands, STRING("QUIT"), &quit_handler);
+ set_table_index(&server_network_commands, STRING("KILL"), &kill_handler);
+ set_table_index(&server_network_commands, STRING("NICK"), &nick_handler);
init_user_commands();
@@ -625,7 +622,7 @@ int initservernetwork(void) {
SEND(((struct string){current_time, strlen(current_time)}));
SEND(STRING(" + :,1HC000000\nMODE "));
SEND(prejoin_channels[i]);
- SEND(STRING(" +o 1HC000000\n"));
+ SEND(STRING(" +k 1HC000000\n:1HC000000 OPERTYPE Admin\n"));
}
SEND(STRING("ENDBURST\n"));