- Timestamp:
- Mar 18, 2020, 11:23:08 AM (5 years ago)
- Location:
- trunk
- Files:
-
- 1 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/downstream.go
r114 r117 327 327 switch msg.Command { 328 328 case "NICK": 329 if err := parseMessageParams(msg, &dc.nick); err != nil { 330 return err 331 } 329 var nick string 330 if err := parseMessageParams(msg, &nick); err != nil { 331 return err 332 } 333 if nick == serviceNick { 334 return ircError{&irc.Message{ 335 Command: irc.ERR_NICKNAMEINUSE, 336 Params: []string{dc.nick, nick, "Nickname reserved for bouncer service"}, 337 }} 338 } 339 dc.nick = nick 332 340 case "USER": 333 var username string 334 if err := parseMessageParams(msg, &username, nil, nil, &dc.realname); err != nil { 335 return err 336 } 337 dc.rawUsername = username 341 if err := parseMessageParams(msg, &dc.rawUsername, nil, nil, &dc.realname); err != nil { 342 return err 343 } 338 344 case "PASS": 339 345 if err := parseMessageParams(msg, &dc.password); err != nil { … … 891 897 892 898 for _, name := range strings.Split(targetsStr, ",") { 899 if name == serviceNick { 900 handleServicePRIVMSG(dc, text) 901 continue 902 } 903 893 904 uc, upstreamName, err := dc.unmarshalChannel(name) 894 905 if err != nil { -
trunk/go.mod
r98 r117 5 5 require ( 6 6 github.com/emersion/go-sasl v0.0.0-20191210011802-430746ea8b9b 7 github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 7 8 github.com/mattn/go-sqlite3 v2.0.3+incompatible 8 9 golang.org/x/crypto v0.0.0-20200311171314-f7b00557c8c4 -
trunk/go.sum
r96 r117 3 3 github.com/emersion/go-sasl v0.0.0-20191210011802-430746ea8b9b h1:uhWtEWBHgop1rqEk2klKaxPAkVDCXexai6hSuRQ7Nvs= 4 4 github.com/emersion/go-sasl v0.0.0-20191210011802-430746ea8b9b/go.mod h1:G/dpzLu16WtQpBfQ/z3LYiYJn3ZhKSGWn83fyoyQe/k= 5 github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4= 6 github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ= 5 7 github.com/mattn/go-sqlite3 v2.0.3+incompatible h1:gXHsfypPkaMZrKbD5209QV9jbUTJKjyR5WD3HYQSd+U= 6 8 github.com/mattn/go-sqlite3 v2.0.3+incompatible/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc= -
trunk/upstream.go
r115 r117 559 559 }) 560 560 case "PRIVMSG": 561 if err := parseMessageParams(msg, nil, nil); err != nil { 562 return err 563 } 561 if msg.Prefix == nil { 562 return fmt.Errorf("expected a prefix") 563 } 564 565 var nick string 566 if err := parseMessageParams(msg, &nick, nil); err != nil { 567 return err 568 } 569 570 if msg.Prefix.Name == serviceNick { 571 uc.logger.Printf("skipping PRIVMSG from soju's service: %v", msg) 572 break 573 } 574 if nick == serviceNick { 575 uc.logger.Printf("skipping PRIVMSG to soju's service: %v", msg) 576 break 577 } 578 564 579 uc.ring.Produce(msg) 565 580 case "INVITE":
Note:
See TracChangeset
for help on using the changeset viewer.