Rework redirections to deal with multiple concurrent redirects better.

These mostly happen when doing remote whois and the
target server is slow.
The code uses the source server but will try to do what it
can if servers think they need to mask it.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4638 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
Jilles Tjoelker 2007-11-14 23:02:40 +00:00 committed by jilles
commit 90b66dbe6c
6 changed files with 80 additions and 39 deletions

View file

@ -116,24 +116,26 @@ CODE:
event_hash2list(hvref(signals)));
char *
server_redirect_get_signal(server, event, args)
server_redirect_get_signal(server, prefix, event, args)
Irssi::Irc::Server server
char *prefix
char *event
char *args
CODE:
RETVAL = (char *) server_redirect_get_signal(server, event, args);
RETVAL = (char *) server_redirect_get_signal(server, prefix, event, args);
OUTPUT:
RETVAL
char *
server_redirect_peek_signal(server, event, args)
server_redirect_peek_signal(server, prefix, event, args)
Irssi::Irc::Server server
char *prefix
char *event
char *args
PREINIT:
int redirection;
CODE:
RETVAL = (char *) server_redirect_peek_signal(server, event, args, &redirection);
RETVAL = (char *) server_redirect_peek_signal(server, prefix, event, args, &redirection);
OUTPUT:
RETVAL