Changeset 553 in code
- Timestamp:
- Jun 10, 2021, 9:17:00 AM (4 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/downstream.go
r552 r553 1103 1103 dc.SendMessage(msg) 1104 1104 } 1105 if uc := dc.upstream(); uc != nil { 1106 dc.SendMessage(&irc.Message{ 1107 Prefix: dc.srv.prefix(), 1108 Command: irc.RPL_UMODEIS, 1109 Params: []string{dc.nick, string(uc.modes)}, 1110 }) 1111 } 1105 1112 dc.SendMessage(&irc.Message{ 1106 1113 Prefix: dc.srv.prefix(), … … 1602 1609 }) 1603 1610 } else { 1604 // TODO: only do this in multi-upstream mode 1611 var userMode string 1612 if uc := dc.upstream(); uc != nil { 1613 userMode = string(uc.modes) 1614 } 1615 1605 1616 dc.SendMessage(&irc.Message{ 1606 1617 Prefix: dc.srv.prefix(), 1607 1618 Command: irc.RPL_UMODEIS, 1608 Params: []string{dc.nick, ""}, // TODO1619 Params: []string{dc.nick, userMode}, 1609 1620 }) 1610 1621 } -
trunk/upstream.go
r552 r553 673 673 } 674 674 675 uc.forEachDownstreamByID(downstreamID, func 676 dc.SendMessage(&irc.Message 677 Prefix: uc.srv.prefix(),675 uc.forEachDownstreamByID(downstreamID, func(dc *downstreamConn) { 676 dc.SendMessage(&irc.Message{ 677 Prefix: uc.srv.prefix(), 678 678 Command: msg.Command, 679 Params: msg.Params,679 Params: msg.Params, 680 680 }) 681 681 }) … … 933 933 return fmt.Errorf("received MODE message for unknown nick %q", name) 934 934 } 935 return uc.modes.Apply(modeStr) 936 // TODO: notify downstreams about user mode change? 935 936 if err := uc.modes.Apply(modeStr); err != nil { 937 return err 938 } 939 940 uc.forEachDownstream(func(dc *downstreamConn) { 941 if dc.upstream() == nil { 942 return 943 } 944 945 dc.SendMessage(msg) 946 }) 937 947 } else { // channel mode change 938 948 ch, err := uc.getChannel(name) … … 983 993 return err 984 994 } 985 // TODO: send RPL_UMODEIS to downstream connections when applicable 995 996 uc.forEachDownstream(func(dc *downstreamConn) { 997 if dc.upstream() == nil { 998 return 999 } 1000 1001 dc.SendMessage(msg) 1002 }) 986 1003 case irc.RPL_CHANNELMODEIS: 987 1004 var channel string … … 1443 1460 } 1444 1461 1445 uc.forEachDownstreamByID(downstreamID, func 1446 dc.SendMessage(&irc.Message 1447 Prefix: uc.srv.prefix(),1462 uc.forEachDownstreamByID(downstreamID, func(dc *downstreamConn) { 1463 dc.SendMessage(&irc.Message{ 1464 Prefix: uc.srv.prefix(), 1448 1465 Command: msg.Command, 1449 Params: msg.Params,1466 Params: msg.Params, 1450 1467 }) 1451 1468 })
Note:
See TracChangeset
for help on using the changeset viewer.