#include "ircd_config.h"
#include "ircd_sock.h"
#include "ircd_client.h"
+#include "ircd_parse.h"
#include "struct_connection.h"
#include "IOHandler/IOSockets.h"
break;
case IOSOCKETEVENT_RECV:
- if(connection->server) {
-
- } else {
- client_recv(connection, event->data.recv_str);
- }
+ if(!connection->authed)
+ parse_unauth_data(connection->data.auth, event->data.recv_str);
+ else if(connection->server)
+ parse_server_data(connection->data.server, event->data.recv_buf);
+ else
+ parse_client_data(connection->data.client, event->data.recv_str);
break;
default:
iosocket_send(conn->socket, data, len);
}
+void socket_set_server(struct Connection *conn) {
+ struct IOSocket *iosock = conn->socket;
+ iosock->parse_delimiter = 0;
+ conn->server = 1;
+}