source: code/trunk/downstream.go

Revision Log Mode:


Legend:

Added
Modified
Copied or renamed
Diff Rev Age Author Log Message
(edit) @236   5 years contact Remove downstreamConn.ourMessages We can just do the filtering when …
(edit) @233   5 years contact Simplify ring consumer loop No need to use Peek here.
(edit) @231   5 years contact Remove downstreamConn.ringConsumers We no longer need long-lived ring …
(edit) @230   5 years contact Remove downstreamConn.lock Everything is now accessed from the user …
(edit) @228   5 years contact Remove channel from ring buffer consumers This is unused.
(edit) @227   5 years contact Remove per-network ring buffer goroutines Just dispatch from the user …
(edit) @226   5 years contact Introduce upstreamConn.produce The logic in this function is about to …
(edit) @222   5 years contact Add network.{createUpdate,delete}Channel These are about to get more …
(edit) @217   5 years contact Add NOTICE messages to ring buffer References: …
(edit) @216   5 years contact Add time tag to all messages
(edit) @215   5 years contact Introduce messageLogger This centralizes formatting related to …
(edit) @213   5 years contact Log self-messages too Closes: https://todo.sr.ht/~emersion/soju/44
(edit) @212   5 years contact Use conn.ReadMessage instead of irc.Conn.ReadMessage
(edit) @211   5 years contact Add support for downstream echo-message extension
(edit) @210   5 years contact Introduce conn for common connection logic This centralizes the …
(edit) @209   5 years contact Fix writer goroutine races Any SendMessage call after Close could …
(edit) @207   5 years contact Fix SQL error logged on JOIN Closes: https://todo.sr.ht/~emersion/soju/40
(edit) @205   5 years contact Set write deadlines References: https://todo.sr.ht/~emersion/soju/26
(edit) @204   5 years contact Simplify ring consumer goroutine Since network.history is now only …
(edit) @203   5 years contact Stop ring consumers when deleting network
(edit) @194   5 years contact Add downstream support for server-time
(edit) @191   5 years contact Expose message-tags capability downstream Strip tags if the client …
(edit) @190   5 years contact Make "@" and "/" indicate client name and network, respectively This …
(edit) @188   5 years contact Consume ring messages outside of writer goroutine This fixes …
(edit) @185   5 years contact Use clientName to decide whether or not history should be sent …
(edit) @184   5 years contact Remove downstreamConn.username Replace it with …
(edit) @183   5 years contact Add downstreamConn.clientName
(edit) @182   5 years contact Update password on NickServ SET PASSWORD message
(edit) @181   5 years contact s/List/LIST/ when referring to the command
(edit) @180   5 years contact Document functions safe to call from any goroutine
(edit) @179   5 years contact Introduce eventUpstreamDisconnected This allows us to perform cleanup …
(edit) @177   5 years delthas Add LIST support This commit adds support for downstream LIST …
(edit) @176   5 years delthas Make upstream.SendMessageLabeled use an uint64 id This commit is …
(edit) @173   5 years contact Stop accessing user data in downstreamConn.authenticate This becomes …
(edit) @168   5 years contact Nuke user.lock Split user.register into two functions, one to make …
(edit) @167   5 years contact Add eventDownstreamDisconnected This should remove the need for …
(edit) @166   5 years contact Add eventDownstreamConnected In a later commit, we'll be able to move …
(edit) @165   5 years contact Introduce a user.events channel This allows to easily add new events, …
(edit) @164   5 years delthas Add downstream NOTICE support
(edit) @163   5 years delthas Add downstream INVITE support
(edit) @162   5 years delthas Add upstream RPL_CREATIONTIME support
(edit) @160   5 years delthas Add downstream TOPIC support
(edit) @159   5 years delthas Add KICK support Downstream and upstream message handling are …
(edit) @158   5 years delthas Simplify error handling for downstream JOIN/PART …
(edit) @156   5 years delthas Route NAMES, WHO, WHOIS replies to the requesting downstream Using …
(edit) @154   5 years delthas Add a server-unique id to each downstream Adding a simple uint64 id …
(edit) @146   5 years contact Add support for channel keys
(edit) @145   5 years contact Handle downstream JOIN/PART with multiple channel names Closes: …
(edit) @144   5 years contact Consume ring buffer for networks added on-the-fly
(edit) @143   5 years contact Move upstreamConn.ring to network This handles upstream disconnection …
(edit) @142   5 years delthas Add downstream self WHO and WHOIS support
(edit) @141   5 years delthas Add user hostname to downstream user prefix
(edit) @140   5 years delthas Add downstream NAMES support NAMES reply for channels currently …
(edit) @139   5 years delthas Add MODE arguments support - Add RPL_ISUPPORT support with CHANMODES, …
(edit) @137   5 years contact Add user.{add,remove}Downstream
(edit) @136   5 years contact Add network.upstream helper
(edit) @135   5 years contact Fix typo
(edit) @134   5 years contact Fix empty SASL challenge message We were sending an empty string. We …
(edit) @132   5 years contact Avoid sending JOIN twice for the same channel
(edit) @131   5 years contact Move upstreamConn.history to network
(edit) @130   5 years contact Fix deadlocks in single-upstream mode
(edit) @129   5 years delthas Fix MODE downstream support - Fix replies without client as first …
(edit) @128   5 years delthas Add WHOIS support
(edit) @127   5 years delthas Add WHO support
(edit) @125   5 years contact Remove some IRCv3 constants go-irc v3.1.2 adds some missing IRCv3 …
(edit) @124   5 years contact Fix history name dc.username contains the raw account username, not …
(edit) @120   5 years delthas Add create-network bouncer service command
(edit) @119   5 years delthas Add suffixing for multi-upstream connections
(edit) @117   5 years contact Add basic infrastructure for bouncer service
(edit) @114   5 years contact Fix typo
(edit) @113   5 years contact Fix echo PRIVMSG messages
(edit) @112   5 years contact Add downstream SASL support
(edit) @111   5 years contact Allow CAP command when registered
(edit) @110   5 years contact Log downstream messages before registration
(edit) @109   5 years contact Protect upstreamConn.history with a lock
(edit) @108   5 years contact Add CAP support for downstream connections
(edit) @107   5 years contact Don't reply to PING when client is unregistered
(edit) @106   5 years contact Make downstreamConn.runUntilegistered exit with an error on EOF
(edit) @105   5 years contact Echo downstream PRIVMSGs to other downstream connections
(edit) @104   5 years contact Rename consumption to ringMessage
(edit) @103   5 years contact Per-user dispatcher goroutine This allows message handlers to read …
(edit) @102   5 years contact Rename messages channels to outgoing
(edit) @100   5 years contact Strip client & network name from username
(edit) @98   5 years contact Rename project to soju
(edit) @95   5 years contact Add support for SASL authentication We now store SASL credentials in …
(edit) @93   5 years contact Add support for upstream PASS command
(edit) @91   5 years contact Auto-save IRC networks
(edit) @90   5 years contact Store NICK changes in the DB
(edit) @89   5 years contact Update DB on JOIN and PART
(edit) @88   5 years contact Fix nil dereference when network is specified in username
(edit) @85   5 years contact Add support for PASS to downstream
(edit) @77   5 years contact Add SQLite database Closes: https://todo.sr.ht/~emersion/jounce/9
(edit) @76   5 years contact Rename network to upstreamName
(edit) @75   5 years contact Remove unused user.getChannel, move getUpstream to user
(edit) @73   5 years contact Allow clients to specify an upstream name in their username
(edit) @72   5 years contact Remove upstream prefix for outgoing MODE and PRIVMSG We shouldn't set …
(edit) @69   5 years contact Add functions to translate between upstream and downstream names
(edit) @68   5 years contact Fix PING handlers, again
(edit) @66   5 years contact Properly handle PING messages
(edit) @64   5 years contact Add a -debug flag
Note: See TracRevisionLog for help on using the revision log.