mirror of
https://github.com/zeek/zeek.git
synced 2025-10-02 14:48:21 +00:00
Avoid some string copies in IRC analyzer
This commit is contained in:
parent
205c72d26f
commit
dea44003a1
1 changed files with 7 additions and 9 deletions
|
@ -807,8 +807,8 @@ void IRC_Analyzer::DeliverStream(int length, const u_char* line, bool orig) {
|
||||||
}
|
}
|
||||||
|
|
||||||
else if ( irc_quit_message && command == "QUIT" ) {
|
else if ( irc_quit_message && command == "QUIT" ) {
|
||||||
string message = params;
|
string_view message{params};
|
||||||
if ( message[0] == ':' )
|
if ( message.starts_with(":") )
|
||||||
message = message.substr(1);
|
message = message.substr(1);
|
||||||
|
|
||||||
string nickname = "";
|
string nickname = "";
|
||||||
|
@ -819,16 +819,16 @@ void IRC_Analyzer::DeliverStream(int length, const u_char* line, bool orig) {
|
||||||
}
|
}
|
||||||
|
|
||||||
EnqueueConnEvent(irc_quit_message, ConnVal(), val_mgr->Bool(orig), make_intrusive<StringVal>(nickname.c_str()),
|
EnqueueConnEvent(irc_quit_message, ConnVal(), val_mgr->Bool(orig), make_intrusive<StringVal>(nickname.c_str()),
|
||||||
make_intrusive<StringVal>(message.c_str()));
|
make_intrusive<StringVal>(message));
|
||||||
}
|
}
|
||||||
|
|
||||||
else if ( irc_nick_message && command == "NICK" ) {
|
else if ( irc_nick_message && command == "NICK" ) {
|
||||||
string nick = params;
|
string_view nick{params};
|
||||||
if ( nick[0] == ':' )
|
if ( nick[0] == ':' )
|
||||||
nick = nick.substr(1);
|
nick = nick.substr(1);
|
||||||
|
|
||||||
EnqueueConnEvent(irc_nick_message, ConnVal(), val_mgr->Bool(orig), make_intrusive<StringVal>(prefix.c_str()),
|
EnqueueConnEvent(irc_nick_message, ConnVal(), val_mgr->Bool(orig), make_intrusive<StringVal>(prefix.c_str()),
|
||||||
make_intrusive<StringVal>(nick.c_str()));
|
make_intrusive<StringVal>(nick));
|
||||||
}
|
}
|
||||||
|
|
||||||
else if ( irc_who_message && command == "WHO" ) {
|
else if ( irc_who_message && command == "WHO" ) {
|
||||||
|
@ -909,8 +909,8 @@ void IRC_Analyzer::DeliverStream(int length, const u_char* line, bool orig) {
|
||||||
}
|
}
|
||||||
|
|
||||||
else if ( irc_squit_message && command == "SQUIT" ) {
|
else if ( irc_squit_message && command == "SQUIT" ) {
|
||||||
string server = params;
|
string server;
|
||||||
string message = "";
|
string message;
|
||||||
|
|
||||||
unsigned int pos = params.find(' ');
|
unsigned int pos = params.find(' ');
|
||||||
if ( pos < params.size() ) {
|
if ( pos < params.size() ) {
|
||||||
|
@ -946,8 +946,6 @@ void IRC_Analyzer::DeliverStream(int length, const u_char* line, bool orig) {
|
||||||
AddSupportAnalyzer(new analyzer::zip::ZIP_Analyzer(Conn(), true));
|
AddSupportAnalyzer(new analyzer::zip::ZIP_Analyzer(Conn(), true));
|
||||||
AddSupportAnalyzer(new analyzer::zip::ZIP_Analyzer(Conn(), false));
|
AddSupportAnalyzer(new analyzer::zip::ZIP_Analyzer(Conn(), false));
|
||||||
}
|
}
|
||||||
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void IRC_Analyzer::StartTLS() {
|
void IRC_Analyzer::StartTLS() {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue