- Added irc_channel_pass setting and prevent crashing when irc server lookup by host fails. Thanks to Trancid for the details.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@7133 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
parent
f3a1218d62
commit
785e089deb
@ -4,6 +4,8 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO
|
|||||||
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
|
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
|
||||||
|
|
||||||
2006/06/13
|
2006/06/13
|
||||||
|
* Added irc_channel_pass setting and prevent crashing when irc server
|
||||||
|
lookup by host fails. Thanks to Trancid for the details. [Skotlex]
|
||||||
* [Fixed]:
|
* [Fixed]:
|
||||||
- clif_parse_GetCharNameRequest displaying false alarm for legitimate GM snooping.
|
- clif_parse_GetCharNameRequest displaying false alarm for legitimate GM snooping.
|
||||||
[Lance]
|
[Lance]
|
||||||
|
@ -29,6 +29,9 @@ irc_autojoin: 0
|
|||||||
//IRC Channel
|
//IRC Channel
|
||||||
irc_channel: #
|
irc_channel: #
|
||||||
|
|
||||||
|
//IRC Channel password (set if required)
|
||||||
|
//irc_channel_pass:
|
||||||
|
|
||||||
//IRC Trade Channel
|
//IRC Trade Channel
|
||||||
irc_trade_channel: #
|
irc_trade_channel: #
|
||||||
|
|
||||||
|
@ -54,6 +54,7 @@ char irc_nick[30]="";
|
|||||||
char irc_password[32]="";
|
char irc_password[32]="";
|
||||||
|
|
||||||
char irc_channel[32]="";
|
char irc_channel[32]="";
|
||||||
|
char irc_channel_pass[32]="";
|
||||||
char irc_trade_channel[32]="";
|
char irc_trade_channel[32]="";
|
||||||
|
|
||||||
unsigned char irc_ip_str[128]="";
|
unsigned char irc_ip_str[128]="";
|
||||||
@ -251,7 +252,7 @@ void irc_parse_sub(int fd, char *incoming_string)
|
|||||||
ShowStatus("IRC: Connected to IRC.\n");
|
ShowStatus("IRC: Connected to IRC.\n");
|
||||||
sprintf(send_string, "PRIVMSG nickserv :identify %s", irc_password);
|
sprintf(send_string, "PRIVMSG nickserv :identify %s", irc_password);
|
||||||
irc_send(send_string);
|
irc_send(send_string);
|
||||||
sprintf(send_string, "JOIN %s", irc_channel);
|
sprintf(send_string, "JOIN %s %s", irc_channel, irc_channel_pass);
|
||||||
irc_send(send_string);
|
irc_send(send_string);
|
||||||
sprintf(send_string,"NAMES %s",irc_channel);
|
sprintf(send_string,"NAMES %s",irc_channel);
|
||||||
irc_send(send_string);
|
irc_send(send_string);
|
||||||
@ -319,7 +320,7 @@ void irc_parse_sub(int fd, char *incoming_string)
|
|||||||
|
|
||||||
// Autojoin on kick [Zido]
|
// Autojoin on kick [Zido]
|
||||||
else if((strcmpi(command,"kick")==0)&&(irc_autojoin==1)) {
|
else if((strcmpi(command,"kick")==0)&&(irc_autojoin==1)) {
|
||||||
sprintf(send_string,"JOIN %s",target);
|
sprintf(send_string, "JOIN %s %s", target, irc_channel_pass);
|
||||||
irc_send(send_string);
|
irc_send(send_string);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -363,6 +364,12 @@ void do_init_irc(void)
|
|||||||
if (irc_ip_str[strlen(irc_ip_str)-1] == '\n')
|
if (irc_ip_str[strlen(irc_ip_str)-1] == '\n')
|
||||||
irc_ip_str[strlen(irc_ip_str)-1] = '\0';
|
irc_ip_str[strlen(irc_ip_str)-1] = '\0';
|
||||||
irc_hostname=gethostbyname(irc_ip_str);
|
irc_hostname=gethostbyname(irc_ip_str);
|
||||||
|
if (!irc_hostname)
|
||||||
|
{
|
||||||
|
ShowError("Unable to resolve %s! Cannot connect to IRC server, disabling irc_bot.\n", irc_ip_str);
|
||||||
|
use_irc = 0;
|
||||||
|
return;
|
||||||
|
}
|
||||||
irc_ip_str[0]='\0';
|
irc_ip_str[0]='\0';
|
||||||
sprintf(irc_ip_str, "%d.%d.%d.%d", (unsigned char)irc_hostname->h_addr[0], (unsigned char)irc_hostname->h_addr[1],
|
sprintf(irc_ip_str, "%d.%d.%d.%d", (unsigned char)irc_hostname->h_addr[0], (unsigned char)irc_hostname->h_addr[1],
|
||||||
(unsigned char)irc_hostname->h_addr[2], (unsigned char)irc_hostname->h_addr[3]);
|
(unsigned char)irc_hostname->h_addr[2], (unsigned char)irc_hostname->h_addr[3]);
|
||||||
@ -539,6 +546,8 @@ int irc_read_conf(char *file) {
|
|||||||
irc_autojoin=atoi(w2);
|
irc_autojoin=atoi(w2);
|
||||||
else if(strcmpi(w1,"irc_channel")==0)
|
else if(strcmpi(w1,"irc_channel")==0)
|
||||||
strcpy(irc_channel,w2);
|
strcpy(irc_channel,w2);
|
||||||
|
else if(strcmpi(w1,"irc_channel_pass")==0)
|
||||||
|
strcpy(irc_channel_pass,w2);
|
||||||
else if(strcmpi(w1,"irc_trade_channel")==0)
|
else if(strcmpi(w1,"irc_trade_channel")==0)
|
||||||
strcpy(irc_trade_channel,w2);
|
strcpy(irc_trade_channel,w2);
|
||||||
else if(strcmpi(w1,"irc_nick")==0)
|
else if(strcmpi(w1,"irc_nick")==0)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user