sajoin/svsjoin

These are old archives. They are kept for historic purposes only.
Post Reply
Winbots
Posts: 65
Joined: Wed Apr 21, 2004 12:26 am
Location: irc://irc.winbots.org/Winbots
Contact:

sajoin/svsjoin

Post by Winbots »

Which is more powerful? sajoin or svsjoin? or are they the exact same?
codemastr
Former UnrealIRCd head coder
Posts: 811
Joined: Sat Mar 06, 2004 8:47 pm
Location: United States
Contact:

Post by codemastr »

SVSJOIN does not say "you were forced to join #chan"
-- codemastr
AngryWolf
Posts: 554
Joined: Sat Mar 06, 2004 10:53 am
Location: Hungary
Contact:

Post by AngryWolf »

SAJOIN was designed for Services Administrators (secure), and SVSJOIN for Services programs (needs much technical knowledge). For that reason, I suggest using SAJOIN, even if you can specify only one channel in a single SAJOIN command.
Winbots
Posts: 65
Joined: Wed Apr 21, 2004 12:26 am
Location: irc://irc.winbots.org/Winbots
Contact:

ok

Post by Winbots »

ok, just wondering, because when i do this:
[10/2/2004 4:20:47 PM] * Cobi sets mode +i for #test
and use svsjoin, i get this:
[10/2/2004 4:21:00 PM] * You were removed from #test : Invite Only (+i)
but when i use sajoin i get this:
[10/2/2004 4:22:43 PM] *** You were forced to join #test
[10/2/2004 4:22:44 PM] * You join channel #test
just wondering why svsjoin doesnt override anything...
aquanight
Official supporter
Posts: 862
Joined: Tue Mar 09, 2004 10:47 pm
Location: Boise, ID

Post by aquanight »

Well, typically SVSJOIN is used for things like NickServ AJOIN lists. I honestly can't understand why the IRCd would validate services which are supposed to be trusted, but I guess it makes since. Imagine this:

Code: Select all

* Now talking in #blah
* SomeBot sets mode: +b *!*my@*.host.here
* You were kicked from #blah by SomeBot (banned:requested)
* Attempting to rejoin #blah...
* Unable to rejoin channel (address is banned)
-> *NickServ* AJOIN ADD #blah
-NickServ- #blah added to your AutoJoin.
-> *NickServ* AJOIN ENFORCE
-NickServ- Enforcing autojoin list - 1 channel(s) to join
At this point, realize that a user had control over this operation. Which is more correct to occur? Allow the join, or simply say again that they are banned from the channel? Unreal takes the latter, but services can choose to force the former by sending an INVITE first, or by using SAJOIN instead of SVSJOIN. Usually, services would only send INVITE if the banned user isn't in control over the operation. For example, a MassServ's MASSFJOIN could be done with a simple INVITE + SVSJOIN on all users for that channel. (Note: Auspice (ew) uses INVITE + SAJOIN! Double ewww.)
Post Reply