View Issue Details

IDProjectCategoryView StatusLast Update
0004408unrealircdpublic2015-09-05 12:14
ReporterGLolol Assigned Tosyzop  
PrioritylowSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
Platform*NIXOSDebianOS Versionstretch/sid
Product Version3.4-beta3 
Fixed in Version3.4-beta4 
Summary0004408: V:Line isn't sent by UnrealIRCd, despite VL capability available from both sides
DescriptionWriting UnrealIRCd 3.4 support for an IRC pseudo-service, I noticed that the V:Line was not being sent by the remote server, contrary to what the docs suggest: https://www.unrealircd.org/files/docs/technical/serverprotocol.html#S2_2

Log is here: https://gist.github.com/GLolol/a0d6a83102e0207530d6#file-raw-log-L15
Steps To Reproduce- Link a server
- Watch the raw logs
TagsNo tags attached.
3rd party modules

Activities

syzop

2015-09-05 09:35

administrator   ~0018677

Hmm. Yes, seems nenolod silently removed that. There's no entry about it in the changelog whatsoever, but it's removed at all places.

syzop

2015-09-05 09:38

administrator   ~0018678

I just checked when/where you get the VL information. You only see it from the directly-connected server but not from any servers connected (so 2 hops away). Since it's only the directly-connected server you get the same information in NETINFO. Therefore I think it's OK to keep it removed.

Documentation must be updated however and it would have been nice if I were consulted :D

syzop

2015-09-05 09:47

administrator   ~0018679

Oh and "deny link" and such -- don't they use SERVER rather than NETINFO? Better check. Wouldn't be surprised if... ;)

syzop

2015-09-05 10:18

administrator   ~0018680

Last edited: 2015-09-05 10:19

Right, so "deny link" is broken. It works for incoming links (eg: to reject a 3.2.x server), but a 3.4.x will never be rejected as it never sends protocolversion in SERVER and that's the only place where it's being checked. (Which is understandable as the NETINFO info is very late in the synch)

syzop

2015-09-05 12:13

administrator   ~0018681

Last edited: 2015-09-05 12:14

Ok, I did both:
* Restored sending of VL information in the SERVER command (as you requested), this makes deny version { } work on 3.2.x servers if you want to block 3.4.x -- something that wasn't possible until now.
* We now send (more) version information in PROTOCTL EAUTH, see https://www.unrealircd.org/docs/Server_protocol:PROTOCTL_command#EAUTH_.28Optional.29

Thanks for the report!

https://github.com/unrealircd/unrealircd/commit/15469cae2e70975f8d4dd9a171dfcd987d38beec

Issue History

Date Modified Username Field Change
2015-09-04 19:33 GLolol New Issue
2015-09-05 09:35 syzop Note Added: 0018677
2015-09-05 09:38 syzop Note Added: 0018678
2015-09-05 09:47 syzop Note Added: 0018679
2015-09-05 10:18 syzop Note Added: 0018680
2015-09-05 10:19 syzop Note Edited: 0018680
2015-09-05 12:13 syzop Note Added: 0018681
2015-09-05 12:13 syzop Status new => resolved
2015-09-05 12:13 syzop Fixed in Version => 3.4-beta4
2015-09-05 12:13 syzop Resolution open => fixed
2015-09-05 12:13 syzop Assigned To => syzop
2015-09-05 12:14 syzop Note Edited: 0018681