mirror of
https://github.com/anope/anope.git
synced 2026-07-04 07:23:13 +02:00
Merge svn with git
This commit is contained in:
@@ -3,4 +3,3 @@
|
||||
|
||||
file(READ "${FILE}" RESULT)
|
||||
message("${RESULT}")
|
||||
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
Anope Version 1.9.3
|
||||
--------------------
|
||||
|
||||
Anope Version 1.9.2
|
||||
--------------------
|
||||
A K alias to chanserv kick command
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
Anope Version 1.9.3
|
||||
-------------------
|
||||
|
||||
|
||||
Anope Version 1.9.2
|
||||
--------------------
|
||||
** ADDED CONFIGURATION DIRECTIVES **
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
Anope Version 1.9.3
|
||||
-------------------
|
||||
|
||||
|
||||
Anope Version 1.9.2
|
||||
--------------------
|
||||
*** New Strings:
|
||||
|
||||
@@ -3,68 +3,45 @@ Legend:
|
||||
? = unsure
|
||||
+ = in progress
|
||||
|
||||
1.9.2
|
||||
1.9.3
|
||||
-----
|
||||
[x] Redo database insanity.
|
||||
[x] Move database load/save to a module
|
||||
[x] realtime SQL/whatever module using events (possibly ongoing)
|
||||
[x] flatfile save on a periodic timer
|
||||
[x] SANE password encryption - prefix password with the method it was encrypted with, allowing for *seamless* upgrading to different methods
|
||||
[x] Salted SHA256 (contact Special for this)
|
||||
[x] New database format (text, not binary - works very well for merging and so on)
|
||||
[x] generic database routines modules can use to create their own database
|
||||
[?] IRCd capability support: don't rely on CAPAB, provide an interface to turn capabilities on specifically
|
||||
[x] Socket subsystem needs some serious loving
|
||||
[x] Multiple sockets
|
||||
[x] Asynchronous, using select() (multiple engines? not really needed..)
|
||||
[x] Callbacks, event style, see also inspircd
|
||||
[x] generic way to check which modes a user has set (u->HasUmode(UMODE_OPER))
|
||||
[x] way for one module to depend on another... not like 2 MOD_HEADs and it being unpredictable which is loaded first..
|
||||
the MOD_HEAD MOD_TAIL allows for too few combinations (interface code of insp, hooks code of insp?)
|
||||
[x] Last used time on AKICK/access entries
|
||||
[x] Channel passwords seem to be of limited use, think of a more appropriate way to handle this
|
||||
[+] General options block, ability to turn LOGCHAN on from the config file..
|
||||
[x] Docs directory cleanup
|
||||
[x] Fix permanent channels support properly
|
||||
[x] CS SET INHABIT to keep pseudoclient in a channel after it empties to maintain banlists and such
|
||||
[x] Set forbidden channels +s
|
||||
[x] SendAkill should just take a pointer to the Akill class instead of millions of fields (same for some other stuff)
|
||||
[x] burn do_sjoin with fire
|
||||
[x] Channel access additions
|
||||
[x] Setter
|
||||
[x] Last used
|
||||
|
||||
Future
|
||||
------
|
||||
[ ] Asynchronous DNS
|
||||
[ ] CIDR Akills, session exceptions, etc
|
||||
[ ] Hashing system for storing just about everything needs to die
|
||||
[ ] Move a (lot) of stuff to class members as a defined interface rather than copypasta everywhere (ns_set, ns_saset!)
|
||||
[?] Remote identification (1.9.1? will this break stuff?)
|
||||
[ ] Language charset stuff, including collation (1.9.1? phoenix?)
|
||||
[ ] Add support for +k, +q, etc type umodes
|
||||
[ ] fantasy: allow replies/notifications to fantasy commands to go to the channel via notice
|
||||
[?] a way for a module to queue itself (or even another module) for unloading
|
||||
[ ] Language system is disgusting, it must die.
|
||||
[ ] Modules should also have a way to add strings programatically
|
||||
[ ] Should be able to add many strings by dropping a file in a set location.
|
||||
[ ] I forsee this working via a function rather than defines, as it seems to do now: e.g. _("NS_NICK_IS_REGISTERED").
|
||||
[?] Update help to reflect the fact /msg memoserv set notify mail - works just fine ;)
|
||||
[ ] Useful/common "third party" modules to core distro
|
||||
[ ] NS AJOIN
|
||||
[+] Method to store listmodes (more generically than AKICK, too) for e.g. +beI and extbans, etc.
|
||||
[ ] Channel access additions
|
||||
[ ] Time added
|
||||
[ ] Time modified
|
||||
[ ] Expiry (useful?)
|
||||
[ ] Add in a subcommand system, ns_set, cs_set, etc.
|
||||
[ ] Threading
|
||||
[ ] Mail sending needs to be threaded
|
||||
[ ] process_numlist needs to die
|
||||
[ ] SList needs to die
|
||||
[ ] SSL
|
||||
[ ] Command handling system needs to die, strtok() needs to die more
|
||||
[ ] Asynchronous DNS
|
||||
[ ] CIDR Akills, session exceptions, etc
|
||||
[ ] Hashing system for storing just about everything needs to die
|
||||
[ ] Add support for +k, +q, etc type umodes
|
||||
[ ] Language system is disgusting, it must die.
|
||||
[ ] Modules should also have a way to add strings programatically
|
||||
[ ] Should be able to add many strings by dropping a file in a set location.
|
||||
[+] Method to store listmodes (more generically than AKICK, too) for e.g. +beI and extbans, etc.
|
||||
[ ] Config bailing on /os reload needs to be non fatal
|
||||
[ ] AutoID needs to be able to live through /os restart, current system is just annoying.
|
||||
[ ] SQL tables need to changed to have references etc
|
||||
[ ] MS IGNORE. Make it take nick (accounts) or n!u@h masks. Fake success of memo send still, but send to opers?
|
||||
[ ] NS IDENTIFY changes
|
||||
[?] Last failed identify? Maybe more useful for sopers only, so users don't get unnecessarily worried
|
||||
[?] Last successful login time/ip? perhaps both of these should be a new nick setting
|
||||
[ ] NS INFO: seperate field for last seen realhost, shown to SRA only
|
||||
[ ] NS SUSPEND: show suspender and reason, probably to sopers only (see CS SUSPEND)
|
||||
[ ] Merge NS INFO blah ALL with NS INFO blah, if you're requesting info, you really want the info anyway.
|
||||
|
||||
Future
|
||||
------
|
||||
[ ] Move a (lot) of stuff to class members as a defined interface rather than copypasta everywhere (ns_set, ns_saset!)
|
||||
[?] Remote identification (1.9.1? will this break stuff?)
|
||||
[ ] Language charset stuff, including collation (1.9.1? phoenix?)
|
||||
[ ] fantasy: allow replies/notifications to fantasy commands to go to the channel via notice
|
||||
[?] a way for a module to queue itself (or even another module) for unloading
|
||||
[ ] Useful/common "third party" modules to core distro
|
||||
[ ] NS AJOIN
|
||||
[?] Don't allow soper accounts to expire
|
||||
[?] Reason for CS SET RESTRICTED
|
||||
[ ] NS IDENTIFY changes
|
||||
[?] Last failed identify? Maybe more useful for sopers only, so users don't get unnecessarily worried
|
||||
[?] Last successful login time/ip? perhaps both of these should be a new nick setting
|
||||
[x] AKILL/SGLINE/etc..
|
||||
[x] Setter
|
||||
[x] Time added
|
||||
@@ -74,7 +51,6 @@ Future
|
||||
[ ] Unique IDs on each AKILL/blah so that networks may use them as ticket IDs
|
||||
[ ] HS ACTIVATE -ALL (rob sez this all needs reviewing)
|
||||
[?] NS MARK, CS MARK. Allow multiple marks. Combine into OS MARK? (AKA os_info)
|
||||
[?] MS IGNORE. Make it take nick (accounts) or n!u@h masks. Fake success of memo send still, but send to opers?
|
||||
[?] More "friendly" date displays of some things like registration time ("November 7th 2006 (2 years, 0 months, 0 days ago)")
|
||||
[?] OS INJECT
|
||||
[?] Drop CS SET ENTRYMSG, replace with a 'news' type system? (limited to a configured number of items, default 3)
|
||||
|
||||
@@ -453,7 +453,7 @@ class ServerConfig
|
||||
bool StrictPasswords;
|
||||
/* How many times you're allowed to give a bad password before being killed */
|
||||
unsigned BadPassLimit;
|
||||
/* How long before bad passwords are forgotten */
|
||||
/* How long before bad passwords are forgotten */
|
||||
time_t BadPassTimeout;
|
||||
/* Delay between automatic database updates */
|
||||
time_t UpdateTimeout;
|
||||
@@ -510,7 +510,7 @@ class ServerConfig
|
||||
char *NSGuestNickPrefix;
|
||||
/* Allow users to set kill immed on */
|
||||
bool NSAllowKillImmed;
|
||||
/* Don't allow nicks to use /ns group to regroup nicks */
|
||||
/* Don't allow nicks to use /ns group to regroup nicks */
|
||||
bool NSNoGroupChange;
|
||||
/* Default flags for newly registered nicks */
|
||||
Flags<NickCoreFlag> NSDefFlags;
|
||||
@@ -579,9 +579,9 @@ class ServerConfig
|
||||
unsigned MSMaxMemos;
|
||||
/* Time you must wait between sending memos */
|
||||
time_t MSSendDelay;
|
||||
/* Notify all of the aliases of the core the memo was sent to */
|
||||
/* Notify all of the aliases of the core the memo was sent to */
|
||||
bool MSNotifyAll;
|
||||
/* Who can use memos reciepts */
|
||||
/* Who can use memos reciepts */
|
||||
unsigned MSMemoReceipt;
|
||||
|
||||
/* Defai;t BotServ flags */
|
||||
@@ -686,13 +686,13 @@ class ServerConfig
|
||||
unsigned DefSessionLimit;
|
||||
/* How long before exceptions expire */
|
||||
time_t ExceptionExpiry;
|
||||
/* How many times to kill before adding an KILL */
|
||||
/* How many times to kill before adding an KILL */
|
||||
int MaxSessionKill;
|
||||
/* Max limit that can be used for exceptions */
|
||||
unsigned MaxSessionLimit;
|
||||
/* How long session akills should last */
|
||||
time_t SessionAutoKillExpiry;
|
||||
/* Reason to use for session kills */
|
||||
/* Reason to use for session kills */
|
||||
char *SessionLimitExceeded;
|
||||
/* Optional second reason */
|
||||
char *SessionLimitDetailsLoc;
|
||||
@@ -776,7 +776,7 @@ class ConfigException : public CoreException
|
||||
* Actually no, it does nothing. Never mind.
|
||||
* @throws Nothing!
|
||||
*/
|
||||
virtual ~ConfigException() throw() { };
|
||||
virtual ~ConfigException() throw() { }
|
||||
};
|
||||
|
||||
#define CONF_NO_ERROR 0x000000
|
||||
|
||||
+1
-1
@@ -456,7 +456,7 @@ class CoreExport HostInfo
|
||||
* @param creator Who created the vhost
|
||||
* @param time When the vhost was craated
|
||||
*/
|
||||
void SetVhost(const std::string &ident, const std::string &host, const std::string &creator, time_t time = time(NULL));
|
||||
void SetVhost(const std::string &ident, const std::string &host, const std::string &creator, time_t created = time(NULL));
|
||||
|
||||
/** Remove a users vhost
|
||||
**/
|
||||
|
||||
+3
-2
@@ -1701,9 +1701,10 @@ int read_config(int reload)
|
||||
/**
|
||||
* Check all DEFCON dependiencies...
|
||||
**/
|
||||
if (Config.DefConLevel) {
|
||||
if (Config.DefConLevel)
|
||||
{
|
||||
/* Build DefCon's */
|
||||
DefCon.reserve(6);
|
||||
DefCon.resize(6);
|
||||
DefCon[5].reset();
|
||||
for (unsigned int level = 1; level < 5; ++level) {
|
||||
DefCon[level] = 0;
|
||||
|
||||
@@ -88,7 +88,7 @@ static int access_view(User *u, int index, ChannelInfo *ci, int *sent_header)
|
||||
|
||||
if (!access || !access->in_use)
|
||||
return 0;
|
||||
|
||||
|
||||
if (!*sent_header)
|
||||
{
|
||||
notice_lang(Config.s_ChanServ, u, CHAN_ACCESS_LIST_HEADER, ci->name.c_str());
|
||||
@@ -121,6 +121,7 @@ static int access_view_callback(User *u, int num, va_list args)
|
||||
{
|
||||
ChannelInfo *ci = va_arg(args, ChannelInfo *);
|
||||
int *sent_header = va_arg(args, int *);
|
||||
if (num < 1 || num > ci->GetAccessCount())
|
||||
return 0;
|
||||
return access_view(u, num - 1, ci, sent_header);
|
||||
}
|
||||
|
||||
+3
-3
@@ -111,12 +111,12 @@ void hostserv(User * u, char *buf)
|
||||
* @param creator Who created the vhost
|
||||
* @param time When the vhost was craated
|
||||
*/
|
||||
void HostInfo::SetVhost(const std::string &ident, const std::string &host, const std::string &creator, time_t time)
|
||||
void HostInfo::SetVhost(const std::string &ident, const std::string &host, const std::string &creator, time_t created)
|
||||
{
|
||||
Ident = ident;
|
||||
Host = host;
|
||||
Creator = creator;
|
||||
Time = time;
|
||||
Time = created;
|
||||
}
|
||||
|
||||
/** Remove a users vhost
|
||||
@@ -197,7 +197,7 @@ void do_on_id(User *u)
|
||||
NickAlias *na = findnick(u->nick);
|
||||
if (!na || !na->hostinfo.HasVhost())
|
||||
return;
|
||||
|
||||
|
||||
if (!u->vhost || u->vhost != na->hostinfo.GetHost() || (!na->hostinfo.GetIdent().empty() && u->GetVIdent() != na->hostinfo.GetIdent()))
|
||||
{
|
||||
ircdproto->SendVhost(u, na->hostinfo.GetIdent(), na->hostinfo.GetHost());
|
||||
|
||||
+1
-4
@@ -487,9 +487,6 @@ StackerInfo *ModeManager::GetInfo(void *Item)
|
||||
return PItem.second;
|
||||
}
|
||||
|
||||
tackerInfo *s = new StackerInfo;
|
||||
StackerObjects.push_back(std::make_pair(Item, s));
|
||||
return s;
|
||||
}
|
||||
|
||||
/** Build a list of mode strings to send to the IRCd from the mode stacker
|
||||
@@ -565,7 +562,7 @@ std::list<std::string> ModeManager::BuildModeStrings(StackerInfo *info)
|
||||
|
||||
if (!buf.empty())
|
||||
ret.push_back(buf + parambuf);
|
||||
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
+7
-7
@@ -243,12 +243,12 @@ User::~User()
|
||||
|
||||
if (is_oper(this))
|
||||
opcnt--;
|
||||
|
||||
|
||||
while (!this->chans.empty())
|
||||
{
|
||||
this->chans.front()->chan->DeleteUser(this);
|
||||
}
|
||||
|
||||
|
||||
if (this->prev)
|
||||
this->prev->next = this->next;
|
||||
else
|
||||
@@ -460,7 +460,7 @@ void User::Logout()
|
||||
{
|
||||
if (!this->nc)
|
||||
return;
|
||||
|
||||
|
||||
std::list<User *>::iterator it = std::find(this->nc->Users.begin(), this->nc->Users.end(), this);
|
||||
if (it != this->nc->Users.end())
|
||||
{
|
||||
@@ -492,7 +492,7 @@ const bool User::IsIdentified(bool CheckNick) const
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -955,7 +955,7 @@ User *do_nick(const char *source, const char *nick, const char *username, const
|
||||
{
|
||||
const char *logrealname = normalizeBuffer(user->realname);
|
||||
Alog() << "LOGUSERS: " << user->nick << " (" << user->GetIdent() << "@" << user->host
|
||||
<< (ircd->vhost ? " => " : "") << (ircd->vhost ? user->GetDisplayedHost() : "") << ") ("
|
||||
<< (ircd->vhost ? " => " : "") << (ircd->vhost ? user->GetDisplayedHost() : "") << ") ("
|
||||
<< logrealname << ") " << "changed nick to " << nick << " (" << user->server->name << ").";
|
||||
if (logrealname)
|
||||
delete [] logrealname;
|
||||
@@ -1082,7 +1082,7 @@ void do_kill(const std::string &nick, const std::string &msg)
|
||||
return;
|
||||
}
|
||||
Alog(LOG_DEBUG) << nick << " killed";
|
||||
if ((na = findnick(user->nick)) && !na->HasFlag(NS_FORBIDDEN) && !na->nc->HasFlag(NI_SUSPENDED) && (user->IsRecognized() || user->IsIdentified(true)))
|
||||
if ((na = findnick(user->nick)) && !na->HasFlag(NS_FORBIDDEN) && !na->nc->HasFlag(NI_SUSPENDED) && (user->IsRecognized() || user->IsIdentified(true)))
|
||||
{
|
||||
na->last_seen = time(NULL);
|
||||
if (na->last_quit)
|
||||
@@ -1267,7 +1267,7 @@ void UserSetInternalModes(User *user, int ac, const char **av)
|
||||
|
||||
Alog(LOG_DEBUG) << "Changing user modes for " << user->nick << " to " << merge_args(ac, av);
|
||||
|
||||
for (; *modes; *modes++)
|
||||
for (; *modes; modes++)
|
||||
{
|
||||
UserMode *um;
|
||||
|
||||
|
||||
+2
-2
@@ -7,8 +7,8 @@
|
||||
|
||||
VERSION_MAJOR="1"
|
||||
VERSION_MINOR="9"
|
||||
VERSION_PATCH="2"
|
||||
VERSION_EXTRA="-eats-children"
|
||||
VERSION_PATCH="3"
|
||||
VERSION_EXTRA="-tastes-good-on-toast"
|
||||
VERSION_BUILD="0"
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user