mirror of
https://github.com/irssi/irssi.git
synced 2024-12-04 14:46:39 -05:00
Added /SET proxy_string_after setting which gets sent after NICK/USER, bnc
wants this. git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2338 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
parent
5202ef9314
commit
0157d234f8
@ -8,7 +8,7 @@ int refcount;
|
||||
/* if we're connecting via proxy, or just NULLs */
|
||||
char *proxy;
|
||||
int proxy_port;
|
||||
char *proxy_string, *proxy_password;
|
||||
char *proxy_string, *proxy_string_after, *proxy_password;
|
||||
|
||||
unsigned short family; /* 0 = don't care, AF_INET or AF_INET6 */
|
||||
char *tag; /* try to keep this tag when connected to server */
|
||||
|
@ -140,6 +140,7 @@ server_connect_copy_skeleton(SERVER_CONNECT_REC *src, int connect_info)
|
||||
dest->proxy = g_strdup(src->proxy);
|
||||
dest->proxy_port = src->proxy_port;
|
||||
dest->proxy_string = g_strdup(src->proxy_string);
|
||||
dest->proxy_string_after = g_strdup(src->proxy_string_after);
|
||||
dest->proxy_password = g_strdup(src->proxy_password);
|
||||
|
||||
dest->tag = g_strdup(src->tag);
|
||||
|
@ -131,6 +131,7 @@ static void server_setup_fill(SERVER_CONNECT_REC *conn,
|
||||
conn->proxy = g_strdup(settings_get_str("proxy_address"));
|
||||
conn->proxy_port = settings_get_int("proxy_port");
|
||||
conn->proxy_string = g_strdup(settings_get_str("proxy_string"));
|
||||
conn->proxy_string_after = g_strdup(settings_get_str("proxy_string_after"));
|
||||
conn->proxy_password = g_strdup(settings_get_str("proxy_password"));
|
||||
}
|
||||
|
||||
@ -515,6 +516,7 @@ void servers_setup_init(void)
|
||||
settings_add_str("proxy", "proxy_address", "");
|
||||
settings_add_int("proxy", "proxy_port", 6667);
|
||||
settings_add_str("proxy", "proxy_string", "CONNECT %s %d");
|
||||
settings_add_str("proxy", "proxy_string_after", "");
|
||||
settings_add_str("proxy", "proxy_password", "");
|
||||
|
||||
setupservers = NULL;
|
||||
|
@ -467,6 +467,7 @@ void server_connect_unref(SERVER_CONNECT_REC *conn)
|
||||
|
||||
g_free_not_null(conn->proxy);
|
||||
g_free_not_null(conn->proxy_string);
|
||||
g_free_not_null(conn->proxy_string_after);
|
||||
g_free_not_null(conn->proxy_password);
|
||||
|
||||
g_free_not_null(conn->tag);
|
||||
|
@ -144,12 +144,19 @@ static void server_init(IRC_SERVER_REC *server)
|
||||
username = g_strdup(conn->username);
|
||||
ptr = strchr(username, ' ');
|
||||
if (ptr != NULL) *ptr = '\0';
|
||||
|
||||
|
||||
irc_send_cmdv(server, "USER %s %s %s :%s", username, hostname,
|
||||
address, conn->realname);
|
||||
g_free(username);
|
||||
|
||||
server->cmdcount = 0;
|
||||
|
||||
if (conn->proxy_string_after != NULL) {
|
||||
irc_send_cmdv(server, conn->proxy_string_after,
|
||||
conn->address, conn->port);
|
||||
}
|
||||
|
||||
server->cmdcount = 0;
|
||||
}
|
||||
|
||||
IRC_SERVER_REC *irc_server_connect(IRC_SERVER_CONNECT_REC *conn)
|
||||
|
Loading…
Reference in New Issue
Block a user