This also alters PutClient such that the CMessage variant handles
sending messages, rather than the CString variant. As a side bonus, this
gives callers better information on whether the message was sent to the
client. Additionally, it eliminates the need for a hook to let modules
set the tags sent to a client, as that can now be done inside
OnSendToClientMessage.
Add OnUserQuit() callback. On smartphone, user doesn't want to see
same lines repeatedly. But, meanwhile, user doesn't want to miss lines
when connection was lost.
To do it, this uses OnUserQuit() callback. With this callback,
clearbufferonmsg can clear buffer if user quited client explicitly.
And when connection was lost, buffer is still not cleared.
Currently this needs patched SWIG.
Upstream version crashes ZNC.
Hopefully they'll apply my patches upstream soon...
As for now, working modpython tarball is available at
http://people.znc.in/~darthgandalf/znc/modpython/
The commit doesn't add support for the following module hooks:
void OnClientCapLs(CClient* pClient, SCString& ssCaps)
EModRet OnLoginAttempt(CSmartPtr<CAuthBase> Auth)
The reason for this is they do not currently work with codegen.pl
This removes the following module hooks:
OnConfigLine()
OnWriteConfig()
OnWriteUserConfig()
OnWriteChanConfig()
Modules could use these hooks for writing/reading their own stuff to/from
znc.conf. However, no module (ever?) did this and IMHO no module should ever do
this either. Modules can save stuff via SetNV(), module arguments (SetArgs())
and in their GetSavePath().
Signed-off-by: Uli Schlachter <psychon@znc.in>