diff --git a/src/s_user.c b/src/s_user.c index 04dcef7..1fc9661 100644 --- a/src/s_user.c +++ b/src/s_user.c @@ -1430,6 +1430,13 @@ oper_up(struct Client *source_p, struct oper_conf *oper_p) user_join(&me, source_p, aconf->autojoin_opers, NULL); } + /* If we're setting +p, expire it */ + if(ConfigFileEntry.expire_override_time && MyClient(source_p) && source_p->umodes & UMODE_OVERRIDE) + { + source_p->localClient->override_timeout_event = + rb_event_addonce("expire_override", expire_umode_p, source_p, ConfigFileEntry.expire_override_time); + } + return (1); }