*/
#include "stdinc.h"
-#include "tools.h"
#include "s_gline.h"
#include "channel.h"
#include "client.h"
#include "ircd.h"
#include "hostmask.h"
#include "numeric.h"
-#include "commio.h"
#include "s_conf.h"
#include "s_newconf.h"
#include "scache.h"
#include "parse.h"
#include "modules.h"
#include "s_log.h"
+#include "reject.h"
static int mo_gline(struct Client *, struct Client *, int, const char **);
static int mc_gline(struct Client *, struct Client *, int, const char **);
oper_reason++;
if(!EmptyString(oper_reason))
- DupString(aconf->spasswd, oper_reason);
+ aconf->spasswd = rb_strdup(oper_reason);
}
- ircsnprintf(buffer, sizeof(buffer), "%s (%s)", reason, current_date);
+ rb_snprintf(buffer, sizeof(buffer), "%s (%s)", reason, current_date);
- DupString(aconf->passwd, buffer);
- DupString(aconf->user, user);
- DupString(aconf->host, host);
+ aconf->passwd = rb_strdup(buffer);
+ aconf->user = rb_strdup(user);
+ aconf->host = rb_strdup(host);
aconf->hold = CurrentTime + ConfigFileEntry.gline_time;
add_gline(aconf);
majority_gline(struct Client *source_p, const char *user,
const char *host, const char *reason)
{
- dlink_node *pending_node;
+ rb_dlink_node *pending_node;
struct gline_pending *pending;
/* to avoid desync.. --fl */
if(find_is_glined(host, user))
return NO;
- DLINK_FOREACH(pending_node, pending_glines.head)
+ RB_DLINK_FOREACH(pending_node, pending_glines.head)
{
pending = pending_node->data;
sizeof(pending->oper_user2));
strlcpy(pending->oper_host2, source_p->host,
sizeof(pending->oper_host2));
- DupString(pending->reason2, reason);
+ pending->reason2 = rb_strdup(reason);
pending->oper_server2 = scache_get_name(source_p->servptr->serv->nameinfo);
pending->last_gline_time = CurrentTime;
pending->time_request2 = CurrentTime;
/* no pending gline, create a new one */
pending = (struct gline_pending *)
- MyMalloc(sizeof(struct gline_pending));
+ rb_malloc(sizeof(struct gline_pending));
strlcpy(pending->oper_nick1, source_p->name,
sizeof(pending->oper_nick1));
strlcpy(pending->user, user, sizeof(pending->user));
strlcpy(pending->host, host, sizeof(pending->host));
- DupString(pending->reason1, reason);
+ pending->reason1 = rb_strdup(reason);
pending->reason2 = NULL;
pending->last_gline_time = CurrentTime;
pending->time_request1 = CurrentTime;
- dlinkAddAlloc(pending, &pending_glines);
+ rb_dlinkAddAlloc(pending, &pending_glines);
return NO;
}
remove_temp_gline(const char *user, const char *host)
{
struct ConfItem *aconf;
- dlink_node *ptr;
+ rb_dlink_node *ptr;
struct irc_sockaddr_storage addr, caddr;
int bits, cbits;
int mtype, gtype;
mtype = parse_netmask(host, (struct sockaddr *)&addr, &bits);
- DLINK_FOREACH(ptr, glines.head)
+ RB_DLINK_FOREACH(ptr, glines.head)
{
aconf = ptr->data;
(struct sockaddr *)&caddr, bits))
continue;
- dlinkDestroy(ptr, &glines);
+ rb_dlinkDestroy(ptr, &glines);
+ remove_reject_mask(aconf->user, aconf->host);
delete_one_address_conf(aconf->host, aconf);
return YES;
}