*push*
[NeonServV5.git] / IRCParser.c
index 22a9d956232c6be70e5eb02b06b2271a923e228b..4dc2da8a12b11957d03b9f22cdc8f399845facc8 100644 (file)
@@ -4,12 +4,16 @@
 
 struct irc_cmd *irc_commands = NULL;
 
+static void parse_line(struct ClientSocket *client, char *line);
+static void register_irc_function(char *command, irc_cmd_t *func);
+static void parse_raw(struct ClientSocket *client, char *from, char *cmd, char **argv, int argc);
+
 int parse_lines(struct ClientSocket *client, char *lines, int len) {
     int i, startpos = 0;
     for(i = 0; i < len; i++) {
-        if(lines[i] == "\r") //just zero it out :D
+        if(*lines[i] == "\r") //just zero it out :D
             lines[i] = 0;
-        if(lines[i] == "\n") {
+        if(*lines[i] == "\n") {
             lines[i] = 0;
             parse_line(client, lines);
             startpos = i+1;
@@ -22,7 +26,7 @@ int parse_lines(struct ClientSocket *client, char *lines, int len) {
 static void parse_line(struct ClientSocket *client, char *line) {
     int i = 0, argc = 0;
     char *argv[MAXNUMPARAMS];
-    printf("[recv %s] %s", strlen(line), line);
+    printf("[recv %d] %s", strlen(line), line);
     if(line[0] == ':')
         i = 1;
     else
@@ -59,12 +63,6 @@ static void register_irc_function(char *command, irc_cmd_t *func) {
     irc_commands = irc_cmd;
 }
 
-void parser_init() {
-    
-    register_irc_function("001", raw_001);
-    
-}
-
 static void parse_raw(struct ClientSocket *client, char *from, char *cmd, char **argv, int argc) {
     struct irc_cmd *irc_cmd;
     for(irc_cmd = irc_commands; irc_cmd; irc_cmd = irc_cmd->next) {
@@ -80,4 +78,8 @@ static IRC_CMD(raw_001) {
     write_socket(client, "PRIVMSG Watchcat :hi\n", 21);
 }
 
-
+void parser_init() {
+    
+    register_irc_function("001", raw_001);
+    
+}