Commit Graph

211 Commits

Author SHA1 Message Date
Alexey Sokolov
d3a7f125cf Make unix sockets work from modules 2025-04-20 08:31:36 +01:00
Alexey Sokolov
f93829e3b3 Implement message-tags spec
Message tags were supported already, but not arbitrary tags, and not
TAGMSG
2025-04-11 21:28:10 +01:00
Alexey Sokolov
93e364b296 Add modpython sasl test 2025-03-15 22:43:35 +00:00
Alexey Sokolov
6e9980d67f Various SASL changes 2025-02-22 15:59:52 +00:00
Alexey Sokolov
4ef64eb4d5 rename next sasl module hook 2025-02-13 21:36:07 +00:00
Alexey Sokolov
c8266aafda Rename new callback, fix build 2025-02-13 21:22:09 +00:00
Alexey Sokolov
41a0030fdb Merge branch 'master' into sasl
Conflicts:
	include/znc/Client.h
	src/Client.cpp
	src/Modules.cpp
	test/integration/tests/modules.cpp
2025-02-13 20:37:32 +00:00
Peter
44e4b95a20 Welcome to 2025 (#1929) 2025-02-07 23:23:45 +00:00
Alexey Sokolov
efd136c01c Make modpython work with server-dependent caps 2024-01-14 11:12:32 +00:00
Alexey Sokolov
4b1a524a72 Move extended-join test to integration test
Fix build of modperl/modpython
2024-01-14 01:46:12 +00:00
Alexey Sokolov
1d3b33354f Merge branch 'master' into cap302 2024-01-06 20:36:24 +00:00
Alexey Sokolov
64ce25e53d Update comments, namespace some internal modpython functions 2024-01-05 08:54:08 +00:00
Alexey Sokolov
3f4c1cce77 Fix build with SWIG 4.2.0
https://bugs.gentoo.org/921230
2024-01-05 02:20:49 +00:00
Falk Rund
17a004aa0b Welcome to 2024
[skip ci]
2023-12-31 21:09:25 +01:00
Alexey Sokolov
4cbccac707 Merge branch 'master' into cap302 2023-11-19 10:53:47 +00:00
Alexey Sokolov
aa5016657b Fix modpython to show list of available modules
In 1.8.0 I switched from deprecated imp to importlib for loading module
by name, but forgot about this function

Close #1884
2023-10-26 00:36:12 +01:00
Alexey Sokolov
afe94158a7 Try to simplify building modules 2023-09-30 11:59:53 +01:00
Alexey Sokolov
57188cda04 Pass list of deps to modperl and modpython bindings too 2023-09-30 10:07:21 +01:00
delthas
1dd995ef77 Reabse and address PR comments 2023-08-31 14:35:49 +02:00
Alexey Sokolov
c15fc63c55 Implement cap negotiation 3.2 on server side
Used for "server-dependent" caps which already rely on sending NEW and
DEL to client. This functionality is not yet available for caps added by
modules.
2023-01-09 01:08:04 +00:00
Falk Rund
f9fd05c307 Welcome to 2023 2023-01-01 06:49:00 +01:00
Alexey Sokolov
fecdd98958 Add support SWIG 4.1.0, drop support for < 4.0.1
https://bugs.gentoo.org/878587
2022-11-05 13:02:12 +00:00
Alexey Sokolov
e0c05ddb63 Rename cmd/desc to command/description
Ref #1832
2022-07-04 23:16:22 +01:00
Ernestas Kulik
94f1c32729 modules: modpython: Implement Module.AddCommand()
Currently, there is no usable wrapper for CModCommand for use within
bindings, so this commit adds a proxy class that adds itself as a
callback and allows implementing Python classes to implement commands
via __call__().

A completely synthetic example:

import znc

class foo(znc.Module):
    module_types = [znc.CModInfo.UserModule]

    def OnLoad(self, args, message):
        self.AddHelpCommand()
        self.AddCommand(FooCmd)

        return True

class FooCmd(znc.Command):
    cmd = 'foo'
    args = foo.t_d('bar')
    desc = foo.t_d('baz')

    def __call__(self, line):
        self.GetModule().PutModule('I have been foo’d!')

Fixes https://github.com/znc/znc/issues/198
2022-07-04 07:28:24 +03:00
Falk Rund
6402d241ac Welcome to 2022
The same procedure as last year, Miss Sophie?
Same procedure as every year, James.
2022-01-01 14:05:32 +01:00
MAGIC
99687b0f24 Welcome to 2021 2021-01-01 19:37:07 +01:00
Alexey Sokolov
47e633b267 Don't load modperl as a python module
Close #1757
2020-09-17 23:08:19 +01:00
Alexey Sokolov
b3b38956a7 Rewrite how modpython loads modules
'imp' was deprecated since python 3.3.
This removes the undocumented feature of loading python C extension as
ZNC module, but adds a test that python package can be loaded.

Bump python requirements to 3.4
2020-05-23 13:32:50 +01:00
Alexey Sokolov
dd42fcd209 Remove autoconf, leave only CMake 2020-05-01 23:44:19 +01:00
Alexey Sokolov
f3d7922499 Update copyright in files which were missing in the previous update 2020-01-05 11:37:51 +00:00
Alexey Sokolov
5b5ab5cf83 Support python 3.9
Fix #1702
2020-01-05 11:18:44 +00:00
MAGIC
9081aa971d Welcome to 2020 2020-01-02 00:36:05 +01:00
Alexey Sokolov
960b76d2ea Use FindPython3 in addition to pkg-config 2019-08-08 21:56:45 +01:00
Alexey Sokolov
0ab205ccfa Merge pull request #1628 from dgw/welcome-to-2019
Welcome to 2019
2019-01-08 22:50:58 +00:00
dgw
8d5427cf9b Welcome to 2019
What are we going to do today, Brain?

The same thing we do every year, Pinky: Update all the copyright
headers!

[Skip CI]
2019-01-01 17:05:05 -06:00
Pierre Gordon
6af027c5dd Normalize methods with 'UserName' to 'Username' 2019-01-01 16:19:27 -05:00
Alexey Sokolov
8eebdf750d Slightly cleaner way to fix #1543 2018-06-02 10:45:03 +01:00
Alexey Sokolov
11fb428878 Fix VCString return values in modpython
The list of functions which returned list of unknown objects instead of
list of strings:
* CMessage::GetParams()
* CZNC::GetMotd()
* CZNC::GetTrustedProxies()
* CZNC::GetBindHosts()
2018-06-02 01:02:40 +01:00
Alexey Sokolov
6eaa93f8da Fix python sockets after latest changes.
The issue was triggered by CCoreTranslationMixin being parent of
CZNCSock, and DisableReadLine wasn't found as attribute anymore.

Thanks to obiw4n for report.
2018-03-27 22:26:05 +01:00
Falk Seidel
d647eaabc0 Welcome to 2018
The same procedure as last year, Miss Sophie?
The same procedure as every year, James.

[skip ci]
2018-01-19 19:38:58 +00:00
Alexey Sokolov
9474c3dc09 Support ValidateWebRequestCSRFCheck in perl/python. Fix #1424 2017-12-17 22:10:41 +00:00
Alexey Sokolov
ddd3023d5d Refactor default return values of callbacks of perl/python modules
See #1424
2017-12-17 22:03:47 +00:00
Alexey Sokolov
7e94158c6d More strings to translate #1354 2017-09-08 00:03:27 +01:00
MuffinMedic
74ab8e59d3 Add CQuery(s) and CServer(s) to modpython 2017-08-27 14:27:25 -04:00
Alexey Sokolov
ef5ace9b86 Travis: Also count code coverage of modpython 2017-05-28 08:52:37 +01:00
Alexey Sokolov
fa79f69be9 CMake: use pkg-config to find python.
Makes it easier to override its path.
2017-05-28 01:27:14 +01:00
Alexey Sokolov
18da03b66a Fix clean cmake build again
8b48465df4 did it wrong
2017-04-30 15:01:45 +01:00
Alexey Sokolov
8b48465df4 Fix clean cmake build 2017-04-25 21:11:48 +01:00
Eli Young
823ac07240 Add OnSendToIRCMessage and OnSendToClientMessage
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.
2017-04-18 15:43:16 -07:00
Phansa
3189ce7f8a Welcome to 2017
Welcome to 2017

temp

temp2
2017-03-12 20:34:26 -04:00