soju forked to be LESS SHIT
Go to file
delthas 7b35757bac Add support for the irc+insecure address scheme
Some servers do not support TLS, or have invalid, expired or self-signed
TLS certificates. While the right fix would be toi contact each server
owner to add support for valid TLS, supporting plaintext upstream
connections is sometimes necessary.

This adds support for the irc+insecure address scheme, which connects to
a network in plain-text over TCP.
2020-04-28 11:41:13 +02:00
cmd Add ability to change password 2020-04-10 10:09:02 +02:00
config config: use shlex 2020-04-01 14:58:14 +02:00
doc Add support for the irc+insecure address scheme 2020-04-28 11:41:13 +02:00
.build.yml ci: add builds.sr.ht manifest 2020-03-18 10:28:58 +01:00
.gitignore doc: document "network delete" 2020-04-01 17:38:09 +02:00
LICENSE Switch license to AGPLv3 2020-02-07 17:41:51 +01:00
Makefile Move man page to doc/ 2020-03-27 19:23:41 +01:00
README.md readme: fix ref to manpage 2020-04-16 18:55:21 +02:00
bridge.go Make downstreamConn.marshal{Entity,UserPrefix} take a network 2020-04-16 17:19:00 +02:00
conn.go Introduce conn for common connection logic 2020-04-03 16:35:08 +02:00
db.go Add network.channels, remove DB.GetChannel 2020-04-23 16:36:20 +02:00
downstream.go Unmarshal nicks in texts of PRIVMSG and NOTICE from downstreams 2020-04-24 18:26:44 +02:00
go.mod Remove some IRCv3 constants 2020-03-19 14:51:45 +01:00
go.sum Remove some IRCv3 constants 2020-03-19 14:51:45 +01:00
irc.go Request server-time cap 2020-03-31 19:45:04 +02:00
logger.go Parse timestamp from message tags in messageLogger.Append 2020-04-08 10:19:33 +02:00
ring.go Remove Ring.consumers 2020-04-07 14:46:31 +02:00
server.go Introduce conn for common connection logic 2020-04-03 16:35:08 +02:00
service.go Add support for the irc+insecure address scheme 2020-04-28 11:41:13 +02:00
upstream.go Add support for the irc+insecure address scheme 2020-04-28 11:41:13 +02:00
user.go Add network.channels, remove DB.GetChannel 2020-04-23 16:36:20 +02:00

README.md

soju

A user-friendly IRC bouncer.

  • Multi-user
  • Support multiple clients for a single user, with proper backlog synchronization
  • Support connecting to multiple upstream servers via a single IRC connection to the bouncer

Usage

go run ./cmd/sojuctl create-user <username>
go run ./cmd/soju

Then connect with username <username>/chat.freenode.net and join #soju.

See the man page at doc/soju.1.scd for more information.

Contributing

Send patches on the mailing list or on GitHub, report bugs on the issue tracker. Discuss in #soju on Freenode.

License

AGPLv3, see LICENSE.

Copyright (C) 2020 Simon Ser