summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-06-30Fix debug messagexengineering
2023-06-30Move SASL mechanism detection to xmpp/sasl.goxengineering
2023-06-30Add detection for SASL mechanismxengineering
This is needed to respond with a SASL auth attempt.
2023-06-30Add dummy handler for stream features elementsxengineering
This is the first step to handle stream features correctly with the new routing infrastructure.
2023-06-30Merge branch 'routing'xengineering
This adds an XML element router and a corresponding unit test. The element router will be used to register XML element handler with a single line.
2023-06-30Add unit test for routing functionxengineering
2023-06-30Add xmpp/router.goxengineering
This implements a routing function for XML elements received by an XML stream.
2023-06-29Merge branch 'element-buffer'xengineering
This adds xengineering.eu/limox/xmpp/elementBuffer which is a buffer for a collection of XML tokens which are further processed after a full XML element is collected.
2023-06-29Add FIXME to element buffer specificationxengineering
The behaviour is ok for now but should be improved in the future to make it more robust.
2023-06-29Document element buffer test point structxengineering
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-29Minor improvements to element buffer testxengineering
2023-06-29Make tests verbosexengineering
This helps to debug tests with t.Log() and t.Logf().
2023-06-29xmpp: Add indent level test for elementBufferxengineering
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-28xmpp: Implement basic elementBufferxengineering
This is needed to buffer XML elements of a stream until they are complete and can be given to an element handler.
2023-06-28Merge branch 'stream-pair'xengineering
This adds the source file xmpp/stream_pair.go with the central function runStreamPair(). This function is called once by a session and could call itself. That way an initial stream and nested streams are implemented and closed via return and defer.
2023-06-28Apply go fmtxengineering
2023-06-28xmpp: Implement syncStreams()xengineering
This should ensure that the incoming and outgoing XML streams are in sync.
2023-06-28xmpp: Move Stream logic to stream_pair.goxengineering
The new source file should contain the complete stream logic.
2023-06-28Temporarily drop SASL authxengineering
This prepares the switch to stream pairs.
2023-06-27xmpp: Re-introduce SASL authenticationxengineering
2023-06-27xmpp: StartSession(): Switch to directed chanxengineering
This reduces the risk of using those channels wrong.
2023-06-27xmpp: Add name to return value of StartSessionxengineering
This explains implicitly why the value is returned.
2023-06-27Apply go fmtxengineering
2023-06-27xmpp: Fix confusing terminologyxengineering
2023-06-27xmpp: Remove unused codexengineering
This is part of the refactoring. Details of the old implementation should be looked up by older commits.
2023-06-17Rework build of imagesxengineering
This allows to add svg image sources by simply adding their name to the Makefile.
2023-06-17Use Go package name for tests targetxengineering
2023-06-16Add template for PDF developer documentationxengineering
This should be filled with content in the future. Furthermore build system integration will follow.
2023-06-16Add statemachine diagram for xmpp.sessionxengineering
This models the different states of an xmpp.session and helps to implement it correctly.
2023-06-16Add chan xml.Token xmpp.session.rxxengineering
This allows the goroutine which fetches all tokens from the server to forward them to the main goroutine of the session.
2023-06-05Re-implement XML decodingxengineering
2023-06-05Re-implement initial stream start/endxengineering
2023-06-05Re-implement XML encodingxengineering
2023-06-04Implement dummy XML encoder and decoderxengineering
2023-06-03Re-implement transport setup in sessionxengineering
2023-06-03Introduce new communication patternxengineering
2023-06-03Implement dummy sessionxengineering
Minimal step towards session-based XMPP architecture.
2023-05-25Add Golang race detector to debug runsxengineering
2023-05-25Add unit test for xmpp.username() and fix itxengineering
The second unit test detected a bug - they are worth the effort!
2023-05-25Update dependenciesxengineering
2023-05-25Implement first unit test and integrate into buildxengineering
2023-05-22Rename xmpp/xmpp.go -> xmpp/conn.goxengineering
2023-05-22Stop decoding on decoding errorsxengineering
This avoids an endless loop.
2023-05-22Act on SASL server responsexengineering
2023-05-22Introduce new xmpp/sasl.goxengineering
2023-05-22Move stream logic to new xmpp/stream.goxengineering
2023-05-22Lower the priority of mobile compliancexengineering
Mobile compliance will increase performance which has to step back in favour of basic features.
2023-05-21Re-order Roadmapxengineering
2023-05-21Rework Makefile completelyxengineering
2023-05-21Implement SASL PLAIN authenticationxengineering