Age | Commit message (Collapse) | Author | |
---|---|---|---|
2023-06-30 | Rework and apply stream nesting on SASL success | xengineering | |
If SASL authentication is successful a new stream has to be opened by the client. This is implemented with this commit. | |||
2023-06-30 | Add SASL success handler | xengineering | |
2023-06-30 | Send SASL request based on new routing | xengineering | |
2023-06-30 | Add session pointer to routing infrastructure | xengineering | |
It is nearly useless to route a XML element to an appropriate handler function if the latter has no idea how to send responses to the server or the GUI. Passing a pointer to the session solves this issue. | |||
2023-06-30 | Fix debug message | xengineering | |
2023-06-30 | Move SASL mechanism detection to xmpp/sasl.go | xengineering | |
2023-06-30 | Add detection for SASL mechanism | xengineering | |
This is needed to respond with a SASL auth attempt. | |||
2023-06-30 | Add dummy handler for stream features elements | xengineering | |
This is the first step to handle stream features correctly with the new routing infrastructure. | |||
2023-06-30 | Add unit test for routing function | xengineering | |
2023-06-30 | Add xmpp/router.go | xengineering | |
This implements a routing function for XML elements received by an XML stream. | |||
2023-06-29 | Add FIXME to element buffer specification | xengineering | |
The behaviour is ok for now but should be improved in the future to make it more robust. | |||
2023-06-29 | Document element buffer test point struct | xengineering | |
This makes it easier to add further test data in case there are further corner cases which should be tested in the future. | |||
2023-06-29 | Minor improvements to element buffer test | xengineering | |
2023-06-29 | xmpp: Add indent level test for elementBuffer | xengineering | |
This tests if the indent level is correctly detected. This basic test can be extended to support invalid XML elements which should be refused to add to the element buffer. | |||
2023-06-28 | xmpp: Implement basic elementBuffer | xengineering | |
This is needed to buffer XML elements of a stream until they are complete and can be given to an element handler. | |||
2023-06-28 | Apply go fmt | xengineering | |
2023-06-28 | xmpp: Implement syncStreams() | xengineering | |
This should ensure that the incoming and outgoing XML streams are in sync. | |||
2023-06-28 | xmpp: Move Stream logic to stream_pair.go | xengineering | |
The new source file should contain the complete stream logic. | |||
2023-06-28 | Temporarily drop SASL auth | xengineering | |
This prepares the switch to stream pairs. | |||
2023-06-27 | xmpp: Re-introduce SASL authentication | xengineering | |
2023-06-27 | xmpp: StartSession(): Switch to directed chan | xengineering | |
This reduces the risk of using those channels wrong. | |||
2023-06-27 | xmpp: Add name to return value of StartSession | xengineering | |
This explains implicitly why the value is returned. | |||
2023-06-27 | Apply go fmt | xengineering | |
2023-06-27 | xmpp: Remove unused code | xengineering | |
This is part of the refactoring. Details of the old implementation should be looked up by older commits. | |||
2023-06-16 | Add chan xml.Token xmpp.session.rx | xengineering | |
This allows the goroutine which fetches all tokens from the server to forward them to the main goroutine of the session. | |||
2023-06-05 | Re-implement XML decoding | xengineering | |
2023-06-05 | Re-implement initial stream start/end | xengineering | |
2023-06-05 | Re-implement XML encoding | xengineering | |
2023-06-04 | Implement dummy XML encoder and decoder | xengineering | |
2023-06-03 | Re-implement transport setup in session | xengineering | |
2023-06-03 | Introduce new communication pattern | xengineering | |
2023-06-03 | Implement dummy session | xengineering | |
Minimal step towards session-based XMPP architecture. | |||
2023-05-25 | Add unit test for xmpp.username() and fix it | xengineering | |
The second unit test detected a bug - they are worth the effort! | |||
2023-05-25 | Implement first unit test and integrate into build | xengineering | |
2023-05-22 | Rename xmpp/xmpp.go -> xmpp/conn.go | xengineering | |
2023-05-22 | Stop decoding on decoding errors | xengineering | |
This avoids an endless loop. | |||
2023-05-22 | Act on SASL server response | xengineering | |
2023-05-22 | Introduce new xmpp/sasl.go | xengineering | |
2023-05-22 | Move stream logic to new xmpp/stream.go | xengineering | |
2023-05-21 | Implement SASL PLAIN authentication | xengineering | |
2023-05-21 | Include TCP connection in xmpp.Conn | xengineering | |
2023-05-21 | Introduce xengineering.eu/xmpp.Conn | xengineering | |
2023-05-21 | Implement SASL method parsing | xengineering | |
2023-05-21 | Allow error propagation from XML element handlers | xengineering | |
2023-05-21 | Implement XML element routing | xengineering | |
2023-05-21 | Fix token routing | xengineering | |
2023-05-21 | Implement xengineering.eu/xmpp.tokenRouter | xengineering | |
This will collect XML tokens until a full XML element is received and can be routed by a to-implement elementRouter. | |||
2023-05-20 | Copy received tokens | xengineering | |
The bytes the token refers to are just valid until a new token arrives. See the documentation of the encoding/xml package for details. | |||
2023-05-19 | Implement basic stream error detection | xengineering | |
With this commit LimoX will cancel the connection to the server if it receives an encoding/xml.EndElement with .Name.Local attribute set to "error". | |||
2023-05-18 | Handle server side debug in xmpp/decoder.go | xengineering | |