Comments (6)
Just FYI, I started working on this on/off the past few days, should be done with it soon. Sorry it took so long!
from girc.
Yes, I plan to support most if not all of IRCv3. This is just one I haven't gotten around to yet.
from girc.
https://ircv3.net/specs/extensions/sts.html
KittehOrg/KittehIRCClientLib#139
from girc.
I believe I've completed STS functionality (in https://github.com/lrstanley/girc/tree/feature/sts) with the exception of a persistent store for the policies. For now, it will only be in-memory based storage (but the goal is this persists connections, as clients should be re-used).
I will eventually get around to creating some kind of policy storage interface that allows users to store policies however they define, but for now I think this is a good enough replacement for STARTTLS, even without the additional STS functionality of persisted enforcement, even after restarts.
If anyone wants to test it out before I merge: @nmeum @42wim @puffrfish @bmeh @qaisjp and anyone else I can remember off the top of my head.
See: https://ircv3.net/specs/extensions/sts
And: https://ircv3.net/support/networks (Oragono Testnet is a good test network)
from girc.
Note the implications -- it WILL by default disconnect from irc and reconnect when the server provides an STS policy (this should mean little to handlers unless you have on-connect stuff, as it should happen before registration). It will fallback by default on the first attempt if it fails to the original non-secure connection. If it successfully makes a connection with a valid policy (and fails after), it will continue failing until the policy expires. Connections made over tls won't do anything different.
from girc.
Merged in 634e679.
from girc.
Related Issues (20)
- DISCONNECTED event handler is never invoked
- switch to using CallersFrames over Callers
- Make CTCP handlers optional HOT 3
- integration with ircdef HOT 1
- WebIRC HOT 4
- Special treatment of 'trailing' argument in commands is incorrect HOT 3
- Bad who command HOT 2
- Allow extra characters HOT 3
- Implement splitting of long messages? HOT 2
- ability to not send nick in the login process HOT 1
- Implement RPL_CREATIONTIME HOT 2
- execLoop and sendLoop not getting closed if network connection is low-quality HOT 20
- feature: implement tests using fuzzing HOT 1
- bug: newlines are removed instead of changed to a space HOT 3
- feature: IRCv3 Labeled Responses
- feature: IRCv3 `setname`
- feature: IRCv3 Standard Replies
- feature: IRCv3 `WHOX`
- bug: Twitch connection fails with "connection failed EOF" HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from girc.