char *mask_nick, *mask_ident, *mask_host, *mask_info, *server, *reason, *notice_target, *accountmask;
irc_in_addr_t ip_mask;
unsigned long limit;
char *mask_nick, *mask_ident, *mask_host, *mask_info, *server, *reason, *notice_target, *accountmask;
irc_in_addr_t ip_mask;
unsigned long limit;
unsigned int min_level, max_level, domain_depth, duration, min_clones, min_channels, max_channels;
unsigned char ip_mask_bits;
unsigned int match_opers : 1, match_trusted : 1, option_log : 1;
unsigned int min_level, max_level, domain_depth, duration, min_clones, min_channels, max_channels;
unsigned char ip_mask_bits;
unsigned int match_opers : 1, match_trusted : 1, option_log : 1;
unsigned int n;
reply("OSMSG_CHANINFO_HEADER", channel->name);
fmt = user_find_message(user, "OSMSG_CHANINFO_TIMESTAMP");
unsigned int n;
reply("OSMSG_CHANINFO_HEADER", channel->name);
fmt = user_find_message(user, "OSMSG_CHANINFO_TIMESTAMP");
- strftime(buffer, sizeof(buffer), fmt, gmtime(&channel->timestamp));
+ feh = channel->timestamp;
+ strftime(buffer, sizeof(buffer), fmt, gmtime(&feh));
send_message_type(4, user, cmd->parent->bot, "%s", buffer);
irc_make_chanmode(channel, buffer);
if (channel->bad_channel)
send_message_type(4, user, cmd->parent->bot, "%s", buffer);
irc_make_chanmode(channel, buffer);
if (channel->bad_channel)
reply("OSMSG_CHANINFO_MODES", buffer);
if (channel->topic_time) {
fmt = user_find_message(user, "OSMSG_CHANINFO_TOPIC");
reply("OSMSG_CHANINFO_MODES", buffer);
if (channel->topic_time) {
fmt = user_find_message(user, "OSMSG_CHANINFO_TOPIC");
- strftime(buffer, sizeof(buffer), fmt, gmtime(&channel->topic_time));
+ feh = channel->topic_time;
+ strftime(buffer, sizeof(buffer), fmt, gmtime(&feh));
send_message_type(4, user, cmd->parent->bot, buffer, channel->topic_nick, channel->topic);
} else {
irc_fetchtopic(cmd->parent->bot, channel->name);
send_message_type(4, user, cmd->parent->bot, buffer, channel->topic_nick, channel->topic);
} else {
irc_fetchtopic(cmd->parent->bot, channel->name);
fmt = user_find_message(user, "OSMSG_CHANINFO_BAN");
for (n = 0; n < channel->banlist.used; n++) {
ban = channel->banlist.list[n];
fmt = user_find_message(user, "OSMSG_CHANINFO_BAN");
for (n = 0; n < channel->banlist.used; n++) {
ban = channel->banlist.list[n];
- strftime(buffer, sizeof(buffer), fmt, localtime(&ban->set));
+ feh = ban->set;
+ strftime(buffer, sizeof(buffer), fmt, localtime(&feh));
send_message_type(4, user, cmd->parent->bot, buffer, ban->ban, ban->who);
}
}
send_message_type(4, user, cmd->parent->bot, buffer, ban->ban, ban->who);
}
}
- reply("OSMSG_MAX_CLIENTS", max_clients, asctime(localtime(&max_clients_time)));
+ time_t feh;
+ feh = max_clients_time;
+ reply("OSMSG_MAX_CLIENTS", max_clients, asctime(localtime(&feh)));
-opserv_add_trusted_host(const char *ipaddr, unsigned int limit, const char *issuer, time_t issued, time_t expires, const char *reason)
+opserv_add_trusted_host(const char *ipaddr, unsigned int limit, const char *issuer, unsigned long issued, unsigned long expires, const char *reason)
if (!self->uplink) return 0;
discrim = calloc(1, sizeof(*discrim));
discrim->limit = dict_size(clients);
if (!self->uplink) return 0;
discrim = calloc(1, sizeof(*discrim));
discrim->limit = dict_size(clients);
-gag_create(const char *mask, const char *owner, const char *reason, time_t expires)
+gag_create(const char *mask, const char *owner, const char *reason, unsigned long expires)
{
struct record_data *rd = data;
char *owner, *reason, *expstr;
{
struct record_data *rd = data;
char *owner, *reason, *expstr;
owner = database_get_data(rd->d.object, KEY_OWNER, RECDB_QSTRING);
reason = database_get_data(rd->d.object, KEY_REASON, RECDB_QSTRING);
owner = database_get_data(rd->d.object, KEY_OWNER, RECDB_QSTRING);
reason = database_get_data(rd->d.object, KEY_REASON, RECDB_QSTRING);
{
struct record_data *rd = data;
const char *limit, *str, *reason, *issuer;
{
struct record_data *rd = data;
const char *limit, *str, *reason, *issuer;
unsigned int limit;
} *cdiscrim_t;
static cdiscrim_t opserv_cdiscrim_create(struct userNode *user, unsigned int argc, char *argv[]);
static unsigned int opserv_cdiscrim_search(cdiscrim_t discrim, cdiscrim_search_func dsf, void *data);
unsigned int limit;
} *cdiscrim_t;
static cdiscrim_t opserv_cdiscrim_create(struct userNode *user, unsigned int argc, char *argv[]);
static unsigned int opserv_cdiscrim_search(cdiscrim_t discrim, cdiscrim_search_func dsf, void *data);
smart_parse_time(const char *str) {
/* If an interval-style string is given, treat as time before now.
* If it's all digits, treat directly as a Unix timestamp. */
smart_parse_time(const char *str) {
/* If an interval-style string is given, treat as time before now.
* If it's all digits, treat directly as a Unix timestamp. */
- discrim->max_users = ~0;
- /* So, time_t is frequently signed. Fun. */
- discrim->max_ts = (1ul << (CHAR_BIT * sizeof(time_t) - 1)) - 1;
+ discrim->max_users = UINT_MAX;
+ discrim->max_ts = ULONG_MAX;