summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
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
2023-05-21Disable info loggingxengineering
The current log policy is to be quiet if nothing failed to allow to focus on relevant messages.
2023-05-21Include TCP connection in xmpp.Connxengineering
2023-05-21Introduce xengineering.eu/xmpp.Connxengineering
2023-05-21Implement SASL method parsingxengineering
2023-05-21Mark multi-token XML element handling as donexengineering
2023-05-21Allow error propagation from XML element handlersxengineering
2023-05-21Implement XML element routingxengineering
2023-05-21Fix token routingxengineering
2023-05-21Implement xengineering.eu/xmpp.tokenRouterxengineering
This will collect XML tokens until a full XML element is received and can be routed by a to-implement elementRouter.
2023-05-20Copy received tokensxengineering
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-20Implement last password persistencexengineering
2023-05-20Add persistence for last used JIDxengineering
2023-05-19Fix Makefilexengineering
2023-05-19Update README.md and ROADMAP.mdxengineering