3
0
mirror of https://github.com/jlu5/PyLink.git synced 2024-11-27 21:19:31 +01:00
Commit Graph

1010 Commits

Author SHA1 Message Date
James Lu
3ae9155e78 hybrid: inherit from proto/ts6, drastically reducing the module size 2016-04-07 18:11:13 -07:00
James Lu
d585b60507 Merge branch 'devel+hybrid' of github.com:DanielOaks/PyLink into wip/hybrid 2016-04-07 17:53:57 -07:00
Daniel Oaks
59809e1530 hybrid: Dispatch ENDBURST so it can be caught by plugins 2016-04-07 22:29:15 +10:00
James Lu
dc1d9602e9 utils: add a simple P10 UID generator (#87)
Reference: https://github.com/evilnet/nefarious2/blob/a29b631/doc/p10.txt#L85-L92
2016-04-05 18:45:00 -07:00
James Lu
e2edc68fe8 utils: check explicitly for "pos is None", as 0 is a falsey value too
Without this, the UID generator would refuse to change the left-most character of the UID, as it is position 0.
2016-04-05 18:44:00 -07:00
James Lu
1e3aba2cce protocols: simplify super() syntax 2016-04-05 18:37:09 -07:00
James Lu
f620b5b4e8 protocols: initialize sidgen/uidgen in ts6_common 2016-04-05 18:34:54 -07:00
James Lu
cb8ea473df utils: modularize UID generators 2016-04-05 18:05:52 -07:00
James Lu
8ee64d5ec1 readme: mention why expiringdict is broken in pip3
ref: mailgun/expiringdict#13
2016-04-04 16:28:20 -07:00
James Lu
528dfdba2a pmodule-spec: mention cmodes, umodes, prefixmodes variables 2016-04-03 16:40:11 -07:00
James Lu
cb3187c5e9 ts6_common: do reverse nick lookup for KICK targets
Also needed for Unreal 3.2 compat, as the kick target may be a nick (on legacy servers) instead of a UID.
2016-04-03 13:03:00 -07:00
James Lu
55afa1bff6 unreal: log instances of PUID manging to debug 2016-04-03 13:01:08 -07:00
James Lu
75984c3c4c ts6_common: add abstraction to convert UIDs->outgoing nicks
This is a more complete fix for #193.
2016-04-03 12:57:47 -07:00
James Lu
9f20f8f767 unreal: update SJOIN matching regex
We should only treat symbols as a possible prefix, not letters. Things like +nick might be sent in a SJOIN instead of +001AAAAAA, for legacy servers.
2016-04-03 12:57:47 -07:00
James Lu
4157cb5671 ts6_common: use a better variable name for _getSid() 2016-04-03 12:49:50 -07:00
James Lu
e687bb0a78 unreal: remove outfilter hack, this doesn't handle text including PUIDs properly
Reverts part of 44dc856ffa.
2016-04-03 12:38:38 -07:00
James Lu
0136ff2c3a example conf: mention using spaces to indent 2016-04-02 22:26:20 -07:00
James Lu
86781d37ba README: fix typo 2016-04-02 12:58:28 -07:00
James Lu
9fde35fd77 relay: handle server name conflicts more correctly
1) Clear the relay servers cache
2) Disconnect
3) Raise a proper exception so other parts of relay don't carry on with undefined behaviour
2016-04-02 12:46:45 -07:00
James Lu
c01b449741 relay: treat network names case-sensitively 2016-04-02 12:15:53 -07:00
James Lu
02ec50826b unreal: fix super() syntax in SQUIT handling 2016-04-02 12:12:38 -07:00
James Lu
16779aa5ce classes: remove lower() call when storing netname
An hour of debugging protocol/unreal and it turns out the issue was not there, but this.
2016-04-02 12:11:35 -07:00
James Lu
6acfbb4125 unreal: case-desensitize legacy server names when handling user introductions from them 2016-04-02 11:51:29 -07:00
James Lu
62da384cae README: unreal 3.2 mixed networks are supported now, sorta
Closes #193.
2016-04-02 11:00:03 -07:00
James Lu
5d0f450c73 Merge branches 'master' and 'devel' into devel+unreal32 2016-04-02 10:58:23 -07:00
James Lu
956167538a unreal: add warnings & more descriptive errors regarding mixed_link 2016-04-02 10:56:41 -07:00
James Lu
f3ceefe87f unreal: initialize legacy users on the right server 2016-04-02 10:56:13 -07:00
James Lu
efd13d20ee example-conf: add sample unreal block, documenting mixed_link 2016-04-02 10:13:45 -07:00
James Lu
44b102ffce networks: allow all opers to run 'autoconnect' 2016-04-02 09:48:49 -07:00
James Lu
13e97177e2 docs: Add a PyLink oper guide 2016-04-02 09:45:35 -07:00
James Lu
c4273e68a4 unreal: fix for Python 3.4 support
The general syntax for unpacking lists with *list was only introduced in Python 3.5: https://www.python.org/dev/peps/pep-0448/
2016-04-02 09:32:03 -07:00
James Lu
4f08894227 unreal: typofix 2016-04-01 23:35:48 -07:00
James Lu
10be962318 unreal: actually return the hook data for NICK & KILL 2016-04-01 23:27:31 -07:00
James Lu
44dc856ffa unreal: use an awful outFilter hack to convert PUIDs->nicks when sending outgoing commands 2016-04-01 23:14:04 -07:00
James Lu
74ee1ded4d unreal: Start work on some really hacky Unreal 3.2 compat code (#193)
What works:
- Tracking user JOINs, QUITs, PARTs

What doesn't work:
- Sending messages from PyLink clients to 3.2 users. They have fake UIDs (nick@counter) which don't go anywhere, meaning messages are silently dropped.
2016-04-01 23:02:12 -07:00
James Lu
3e7255e4b2 classes: remove ts6-specific hack in Protocol.removeClient 2016-04-01 22:55:03 -07:00
James Lu
514072804c README: mention the implications of #193 2016-04-01 20:26:30 -07:00
James Lu
fd32bbf45f unreal: fix typo in last commit 2016-04-01 19:12:58 -07:00
James Lu
efcc30c983 unreal: don't confuse legacy SERVER introductions from our uplink with protocol negotiation
Reported by Rascle on IRC.
2016-04-01 19:08:25 -07:00
James Lu
fab404f8d6 Merge branches 'master' and 'wip/relay-fixes' into devel 2016-04-01 18:32:19 -07:00
James Lu
3a8b0aa123 relay: catch OSError too when loading DB 2016-04-01 18:31:53 -07:00
James Lu
1bcadbe12b Use more flexible shebangs (/usr/bin/env python3) 2016-04-01 18:22:02 -07:00
James Lu
9e33081bc9 relay: fix typo in comment 2016-03-30 21:22:18 -07:00
James Lu
d21344342d relay: experimental fix for #183 2016-03-30 18:33:44 -07:00
Daniel Oaks
80b659a940 hybrid: Actually set irc.connected on CAPAB, like other protocols 2016-03-30 17:24:26 +10:00
Daniel Oaks
9d40efc114 hybrid: Steal some more handlers from TS6/Unreal protocols 2016-03-30 16:25:03 +10:00
Daniel Oaks
153b77c4bb hybrid: Set irc.connected after receiving EOB 2016-03-30 15:48:44 +10:00
Daniel Oaks
4b14134a17 hybrid: Fix TBURST, support WHOIS 2016-03-30 13:59:04 +10:00
Daniel Oaks
177e690dd3 hybrid: Support TBURST 2016-03-30 13:51:53 +10:00
Daniel Oaks
89c88d9111 hybrid: Use standard handle_events (with our special additions), don't lower() commands anymore since that isn't done now 2016-03-30 13:40:35 +10:00