* ---------------------------------------------------
*/
+using namespace std;
+
+#include "inspircd_config.h"
#include "inspircd.h"
#include "inspircd_io.h"
#include "inspircd_util.h"
-#include "inspircd_config.h"
#include <unistd.h>
#include <fcntl.h>
#include <sys/errno.h>
-#include <sys/ioctl.h>
#include <sys/utsname.h>
-#include <cstdio>
#include <time.h>
#include <string>
#ifdef GCC3
#include <map>
#include <sstream>
#include <vector>
-#include <errno.h>
#include <deque>
-#include <errno.h>
-#include <unistd.h>
-#include <sched.h>
-#include "connection.h"
#include "users.h"
-#include "servers.h"
#include "ctables.h"
#include "globals.h"
#include "modules.h"
#include "dynamic.h"
#include "wildcard.h"
+#include "commands.h"
#include "message.h"
#include "inspstring.h"
#include "dns.h"
#include "helperfuncs.h"
-using namespace std;
-
extern int MODCOUNT;
extern std::vector<Module*> modules;
extern std::vector<ircd_module*> factory;
}
-void safedelete(userrec *p)
-{
- if (p)
- {
- log(DEBUG,"deleting %s %s %s %s",p->nick,p->ident,p->dhost,p->fullname);
- log(DEBUG,"safedelete(userrec*): pointer is safe to delete");
- delete p;
- p = NULL;
- }
- else
- {
- log(DEBUG,"safedelete(userrec*): unsafe pointer operation squished");
- }
-}
-
-void safedelete(chanrec *p)
-{
- if (p)
- {
- delete p;
- p = NULL;
- log(DEBUG,"safedelete(chanrec*): pointer is safe to delete");
- }
- else
- {
- log(DEBUG,"safedelete(chanrec*): unsafe pointer operation squished");
- }
-}
-
-
void tidystring(char* str)
{
// strips out double spaces before a : parameter
while (go_again)
{
bool noparse = false;
- int t = 0, a = 0;
+ unsigned int t = 0, a = 0;
go_again = false;
while (a < strlen(str))
{
FOREACH_RESULT(OnChangeLocalUserGECOS(user,gecos));
if (MOD_RESULT)
return;
+ FOREACH_MOD OnChangeName(user,gecos);
}
strlcpy(user->fullname,gecos,MAXBUF);
- char buffer[MAXBUF];
- snprintf(buffer,MAXBUF,"a %s :%s",user->nick,gecos);
- NetSendToAll(buffer);
}
void ChangeDisplayedHost(userrec* user, const char* host)
FOREACH_RESULT(OnChangeLocalUserHost(user,host));
if (MOD_RESULT)
return;
+ FOREACH_MOD OnChangeHost(user,host);
}
strlcpy(user->dhost,host,160);
- char buffer[MAXBUF];
- snprintf(buffer,MAXBUF,"b %s %s",user->nick,host);
- NetSendToAll(buffer);
}
/* verify that a user's ident and nickname is valid */
{
return 0;
}
- for (int i = 0; i != strlen(n); i++)
+ for (unsigned int i = 0; i < strlen(n); i++)
{
if ((n[i] < 33) || (n[i] > 125))
{
return 0;
}
/* can't occur ANYWHERE in an Ident! */
- if (strchr("<>,./?:;@'~#=+()*&%$£ \"!",n[i]))
+ if (strchr("<>,/?:;@'~#=+()*&%$£ \"!",n[i]))
{
return 0;
}
{
return 0;
}
- if (strlen(n) > NICKMAX-1)
+ if (strlen(n) > NICKMAX)
{
return 0;
}
- for (int i = 0; i != strlen(n); i++)
+ for (unsigned int i = 0; i != strlen(n); i++)
{
if ((n[i] < 33) || (n[i] > 125))
{
log(DEFAULT,"*** BUG *** cmode was given an invalid parameter");
return "";
}
+
for (int i = 0; i != MAXCHANS; i++)
{
if (user->chans[i].channel)
return 0;
}
+ if (is_uline(user->server))
+ return STATUS_OP;
+
for (int i = 0; i != MAXCHANS; i++)
{
if (user->chans[i].channel)
}
-void send_network_quit(const char* nick, const char* reason)
-{
- char buffer[MAXBUF];
- snprintf(buffer,MAXBUF,"Q %s :%s",nick,reason);
- NetSendToAll(buffer);
-}
-