+bool Server::MatchText(std::string sliteral, std::string spattern)
+{
+ char literal[MAXBUF],pattern[MAXBUF];
+ strncpy(literal,sliteral.c_str(),MAXBUF);
+ strncpy(pattern,spattern.c_str(),MAXBUF);
+ return match(literal,pattern);
+}
+
+void Server::SendToModeMask(std::string modes, int flags, std::string text)
+{
+ WriteMode(modes.c_str(),flags,"%s",text.c_str());
+}
+
+chanrec* Server::JoinUserToChannel(userrec* user, std::string cname, std::string key)
+{
+ return add_channel(user,cname.c_str(),key.c_str(),true);
+}
+
+chanrec* Server::PartUserFromChannel(userrec* user, std::string cname, std::string reason)
+{
+ return del_channel(user,cname.c_str(),reason.c_str(),false);
+}
+
+void Server::ChangeUserNick(userrec* user, std::string nickname)
+{
+ force_nickchange(user,nickname.c_str());
+}
+
+void Server::QuitUser(userrec* user, std::string reason)
+{
+ send_network_quit(user->nick,reason.c_str());
+ kill_link(user,reason.c_str());
+}
+
+bool Server::IsUlined(std::string server)
+{
+ return is_uline(server.c_str());
+}
+
+void Server::CallCommandHandler(std::string commandname, char** parameters, int pcnt, userrec* user)
+{
+ call_handler(commandname.c_str(),parameters,pcnt,user);
+}
+