556 Commits

Author SHA1 Message Date
contact
8a7264f55f doc/soju.1: explain http-origin defaults
git-svn-id: file:///srv/svn/repo/suika/trunk@556 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-06-11 08:26:22 +00:00
contact
17a115d060 Don't suggest users to /motd in multi-upstream mode
git-svn-id: file:///srv/svn/repo/suika/trunk@555 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-06-10 10:16:33 +00:00
contact
3172dbeb87 Make user MODE commands fail in multi-upstream mode
References: https://todo.sr.ht/~emersion/soju/20

git-svn-id: file:///srv/svn/repo/suika/trunk@554 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-06-10 09:24:10 +00:00
greg
594bd5bf30 Forward user mode changes in single-upstream mode
References: https://todo.sr.ht/~emersion/soju/20

git-svn-id: file:///srv/svn/repo/suika/trunk@553 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-06-10 09:17:00 +00:00
greg
be96d9078b Forward MOTD messages downstream
The first MOTD upon connection is ignored, but subsequent MOTD messages
(requested by the "MOTD" message from the client, typically using a
/motd command) are forwarded.

git-svn-id: file:///srv/svn/repo/suika/trunk@552 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-06-09 19:29:36 +00:00
contact
5fe3eae580 Add downstreamConn.SendBatch helper
git-svn-id: file:///srv/svn/repo/suika/trunk@551 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-06-05 10:38:52 +00:00
contact
f8859b0d8a Prune detached channels from CHATHISTORY TARGETS
git-svn-id: file:///srv/svn/repo/suika/trunk@550 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-06-04 09:27:59 +00:00
contact
522becbe30 Implement CHATHISTORY TARGETS
References: https://github.com/ircv3/ircv3-specifications/pull/450

git-svn-id: file:///srv/svn/repo/suika/trunk@549 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-06-02 18:32:11 +00:00
contact
73e8ea27b7 doc/ext/bouncer-networks: fix typo
git-svn-id: file:///srv/svn/repo/suika/trunk@548 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-29 11:18:06 +00:00
contact
b9249feca3 Forward unknown commands to upstream in single-upstream mode
git-svn-id: file:///srv/svn/repo/suika/trunk@547 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-28 09:15:15 +00:00
contact
62bc41f442 Send placeholder when no network/channel is returned by BouncerServ
git-svn-id: file:///srv/svn/repo/suika/trunk@546 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-26 09:27:59 +00:00
contact
048bea91ce Reject JOIN with invalid channel names
This prevents us from storing typo'ed channel names in the DB.

git-svn-id: file:///srv/svn/repo/suika/trunk@545 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-26 09:23:09 +00:00
contact
70e6f1fb5a Fix typo in BOUNCER notifications: s/status/state/
git-svn-id: file:///srv/svn/repo/suika/trunk@544 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-26 09:08:10 +00:00
contact
b3d039ec5b Broadcast BOUNCER notifications to all downstream connections
We weren't sending them to downstreams which weren't bound to a
network.

git-svn-id: file:///srv/svn/repo/suika/trunk@543 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-26 09:04:33 +00:00
contact
30c6e9e954 Allow networks to be disabled
git-svn-id: file:///srv/svn/repo/suika/trunk@542 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-26 08:51:02 +00:00
contact
52add75a86 doc/getting-started: s/Freenode/Libera Chat/
git-svn-id: file:///srv/svn/repo/suika/trunk@541 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-26 06:39:06 +00:00
contact
b4ffea243d Add support for IRCv3 setname
References: https://todo.sr.ht/~emersion/soju/41

git-svn-id: file:///srv/svn/repo/suika/trunk@540 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-25 18:24:45 +00:00
contact
6de426954b Add channel status service command
git-svn-id: file:///srv/svn/repo/suika/trunk@539 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-25 17:22:22 +00:00
contact
8e5428aac9 contrib/clients: add note about bouncer-networks
git-svn-id: file:///srv/svn/repo/suika/trunk@538 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-25 16:54:16 +00:00
contact
ac62ccdfbc Vendor BATCH bouncer-networks type
And add the prefix throughout the spec, to make it clear the unprefixed
version is not to be used.

git-svn-id: file:///srv/svn/repo/suika/trunk@537 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-25 14:56:38 +00:00
contact
74c1f24258 Don't send connection status NOTICEs with bouncer-networks
git-svn-id: file:///srv/svn/repo/suika/trunk@536 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-25 14:42:51 +00:00
contact
b736ba981b Introduce the soju.im/bouncer-networks-notify capability
git-svn-id: file:///srv/svn/repo/suika/trunk@535 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-25 14:42:51 +00:00
contact
8ceceb932c Send network settings in LISTNETWORKS
git-svn-id: file:///srv/svn/repo/suika/trunk@534 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-25 14:42:51 +00:00
contact
66c64aa42f Add pass to bouncer network attributes
git-svn-id: file:///srv/svn/repo/suika/trunk@533 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-25 14:42:51 +00:00
contact
f00821626a Implement the soju.im/bouncer-networks extension
git-svn-id: file:///srv/svn/repo/suika/trunk@532 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-25 14:42:51 +00:00
sir
2f5c2a2edd db: refactor into interface
This refactors the SQLite-specific bits into db_sqlite.go. A future
patch will add PostgreSQL support.

git-svn-id: file:///srv/svn/repo/suika/trunk@531 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-25 14:35:39 +00:00
hubert
06ce9f24b6 Don't build soju when calling "make install"
Otherwise soju would be rebuilt as the user who runs "make install"
(typically root).

git-svn-id: file:///srv/svn/repo/suika/trunk@530 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-25 14:31:06 +00:00
philipk
63e19e8add Directly return self-messages to user in multi-upstream mode
git-svn-id: file:///srv/svn/repo/suika/trunk@529 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-24 11:31:24 +00:00
contact
d5ca492750 Pass-through the BOT ISUPPORT token
References: https://github.com/ircv3/ircv3-specifications/pull/439

git-svn-id: file:///srv/svn/repo/suika/trunk@528 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-24 09:41:04 +00:00
contact
b6b214e5e8 readme: link to rendered man page
git-svn-id: file:///srv/svn/repo/suika/trunk@527 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-23 19:41:01 +00:00
hubert
96082ecef8 Don't forward label tags
We don't want to have the label tag when calling uc.produce, otherwise
downstream will end up with junk labels.

git-svn-id: file:///srv/svn/repo/suika/trunk@526 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-23 10:32:27 +00:00
contact
acbb420d9c doc/soju.1: document user delete command
git-svn-id: file:///srv/svn/repo/suika/trunk@525 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-22 08:44:36 +00:00
contact
7225f0f5e9 doc/soju.1: document -connect-command
git-svn-id: file:///srv/svn/repo/suika/trunk@524 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-22 08:40:36 +00:00
contact
50b5d6c486 readme: add link to IRC channel
git-svn-id: file:///srv/svn/repo/suika/trunk@523 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-21 22:04:22 +00:00
contact
54f3d31823 readme: move quickstart to dedicated doc page
git-svn-id: file:///srv/svn/repo/suika/trunk@522 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-21 22:01:06 +00:00
hubert
2b8a6e1a59 Fix CAP LIST listing disabled capabilities
git-svn-id: file:///srv/svn/repo/suika/trunk@521 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-21 08:03:39 +00:00
contact
de72d133a9 Relay self-WHO/WHOIS in single-upstream mode
In multi-upstream mode, we can't relay WHO/WHOIS messages for the
current user, because we can't decide which upstream server the
message should be relayed to.

In single-upstream server, we do know which upstream server to use,
so we can just blindly relay the message.

This allows users to send a self-WHO/WHOIS to check their cloak and
other information.

git-svn-id: file:///srv/svn/repo/suika/trunk@520 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-20 09:13:14 +00:00
contact
692d48de9e Silence net.ErrClosed errors
git-svn-id: file:///srv/svn/repo/suika/trunk@519 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-19 22:07:44 +00:00
contact
5c822e5b49 contrib/clients: add gamja and senpai
git-svn-id: file:///srv/svn/repo/suika/trunk@518 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-19 14:42:03 +00:00
contact
b893736c9e Check message stores implement expected interfaces
git-svn-id: file:///srv/svn/repo/suika/trunk@517 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-18 12:19:34 +00:00
hubert
84c329faff Implement CHATHISTORY BETWEEN
git-svn-id: file:///srv/svn/repo/suika/trunk@516 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-18 08:44:10 +00:00
contact
0f0bc90e97 Add more context to chathistory errors
git-svn-id: file:///srv/svn/repo/suika/trunk@515 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-11 10:42:12 +00:00
yyp
547fb73d86 contrib/weechat: fix typo
git-svn-id: file:///srv/svn/repo/suika/trunk@514 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-03 22:06:02 +00:00
contact
f8965cc888 contrib/weechat: explain how to enable IRCv3 features
git-svn-id: file:///srv/svn/repo/suika/trunk@513 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-05-01 16:52:28 +00:00
hubert
fc31a8fa58 Don't directly reply to network-specific NICK
The NICK must only apply to the specific network, not to the downstream
connection.

git-svn-id: file:///srv/svn/repo/suika/trunk@512 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-04-30 10:17:23 +00:00
hubert
4c8f7cd0f3 Handle casemapping on BouncerServ
git-svn-id: file:///srv/svn/repo/suika/trunk@511 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-04-30 10:10:49 +00:00
yyp
21a44ff840 Makefile: mark soju and sojuctl as .PHONY
Otherwise running `make` didn't do anything on a non-clean state. Go
deals with changed files automatically, and there's no real need to
explicitly specify them.

git-svn-id: file:///srv/svn/repo/suika/trunk@510 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-04-27 17:06:16 +00:00
yyp
e92b4b5cdf db: match placeholders with columns
Soju inserts 9 columns but only with 8 placeholders. This causes
channels not being saved properly and also logging errors like this:

    downstream ...: failed to create or update channel ...: 8 values for 9 columns

git-svn-id: file:///srv/svn/repo/suika/trunk@509 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-04-27 07:22:44 +00:00
ecs
e3c909c007 handleUserDelete: delete the correct user
Prior to this, we deleted the user issuing the deletion rather than the
user which should've been deleted.

git-svn-id: file:///srv/svn/repo/suika/trunk@508 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-04-22 08:37:05 +00:00
contact
7bfba6f771 Make db and log config options more future-proof
Rename the "sql" directive to "db". Rename the "log" directive to
"log fs".

In the future, we'll maybe support more databases and more message
stores. Make it so it's easy to integrate these new festures to the
config file format.

git-svn-id: file:///srv/svn/repo/suika/trunk@507 f0ae65fe-ee39-954e-97ec-027ff2717ef4
2021-04-21 16:15:04 +00:00