diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2004-04-14 19:07:20 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2004-04-14 19:07:20 +0000 |
commit | 5232506d5eade7ab98ff39ee98577b04b257bbb2 (patch) | |
tree | 90b5d8e2ec185719f737983e956db47ceab8efa3 /src | |
parent | 8be0c0008766de9003c7e8dd2ae74bf7c9dcd525 (diff) |
Buffering fixes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@580 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src')
-rw-r--r-- | src/connection.cpp | 3 | ||||
-rw-r--r-- | src/inspircd.cpp | 5 |
2 files changed, 4 insertions, 4 deletions
diff --git a/src/connection.cpp b/src/connection.cpp index 19424afc4..6073b0a4a 100644 --- a/src/connection.cpp +++ b/src/connection.cpp @@ -6,6 +6,7 @@ #include <sys/utsname.h> #include <vector> #include <string> +#include <deque> #include "inspircd.h" #include "modules.h" @@ -256,7 +257,7 @@ bool connection::SendPacket(char *message, char* host) // receives a packet from any where there is data waiting, first come, first served // fills the message and host values with the host where the data came from. -bool connection::RecvPacket(string_list &messages, char* host) +bool connection::RecvPacket(std::deque<std::string> &messages, char* host) { char data[32767]; for (int i = 0; i < this->connectors.size(); i++) diff --git a/src/inspircd.cpp b/src/inspircd.cpp index b43734073..e11456b48 100644 --- a/src/inspircd.cpp +++ b/src/inspircd.cpp @@ -7082,14 +7082,14 @@ int InspIRCd(void) for (int x = 0; x != UDPportCount; x++) { - string_list msgs; + std::deque<std::string> msgs; msgs.clear(); if (me[x]->RecvPacket(msgs, udp_host)) { for (int ctr = 0; ctr < msgs.size(); ctr++) { char udp_msg[MAXBUF]; - strncpy(udp_msg,MAXBUF,msgs[ctr].c_str()); + strncpy(udp_msg,msgs[ctr].c_str(),MAXBUF); if (strlen(udp_msg)<1) { log(DEBUG,"Invalid string from %s [route%d]",udp_host,x); @@ -7101,7 +7101,6 @@ int InspIRCd(void) goto label; } } - } while (count2 != clientlist.end()) |