#include "hash.h"
#include "ircd.h"
#include "ircd_alloc.h"
+#include "ircd_auth.h"
#include "ircd_chattr.h"
#include "ircd_features.h"
#include "ircd_log.h"
static time_t last_too_many2;
assert(cptr == sptr);
+ if (!IsIAuthed(sptr)) {
+ if (iauth_active)
+ return iauth_start_client(iauth_active, sptr);
+ else
+ SetIAuthed(sptr);
+ }
switch (conf_check_client(sptr))
{
case ACR_OK:
if (MyConnect(sptr)) {
cli_handler(sptr) = CLIENT_HANDLER;
release_dns_reply(sptr);
-
+ SetLocalNumNick(sptr);
send_reply(sptr,
RPL_WELCOME,
feature_str(FEAT_NETWORK),
set_snomask(sptr, cli_snomask(sptr) & SNO_NOISY, SNO_ADD);
if (feature_bool(FEAT_CONNEXIT_NOTICES))
sendto_opmask_butone(0, SNO_CONNEXIT,
- "Client connecting: %s (%s@%s) [%s] {%d} [%s] <%s%s>",
+ "Client connecting: %s (%s@%s) [%s] {%s} [%s] <%s%s>",
cli_name(sptr), user->username, user->host,
cli_sock_ip(sptr), get_client_class(sptr),
cli_info(sptr), NumNick(cptr) /* two %s's */);
cli_user(sptr) = make_user(sptr);
cli_user(sptr)->server = &me;
}
- SetLocalNumNick(sptr);
hAddClient(sptr);
/*
&& (chan->channel->mode.mode & MODE_DELJOINS))
SetDelayedJoin(chan);
else
- sendcmdto_channel_butserv_butone(cptr, CMD_JOIN, chan->channel, cptr,
+ sendcmdto_channel_butserv_butone(cptr, CMD_JOIN, chan->channel, cptr, 0,
"%H", chan->channel);
if (IsChanOp(chan) && HasVoice(chan))
- sendcmdto_channel_butserv_butone(&me, CMD_MODE, chan->channel, cptr,
+ sendcmdto_channel_butserv_butone(&me, CMD_MODE, chan->channel, cptr, 0,
"%H +ov %C %C", chan->channel, cptr,
cptr);
else if (IsChanOp(chan) || HasVoice(chan))
- sendcmdto_channel_butserv_butone(&me, CMD_MODE, chan->channel, cptr,
+ sendcmdto_channel_butserv_butone(&me, CMD_MODE, chan->channel, cptr, 0,
"%H +%c %C", chan->channel, IsChanOp(chan) ? 'o' : 'v', cptr);
}
return 0;