- Char server will now ignore packet 0x65 for already authentified accounts.
git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@6206 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
parent
18270f85ed
commit
0db2a0aa0b
@ -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/04/20
|
2006/04/20
|
||||||
|
* Char server will now ignore packet 0x65 for already authentified
|
||||||
|
accounts. [Skotlex]
|
||||||
* Added two columns to item_db: equip_script and unequip_script are scripts
|
* Added two columns to item_db: equip_script and unequip_script are scripts
|
||||||
that are executed once when the corresponding item is equipped or
|
that are executed once when the corresponding item is equipped or
|
||||||
unequipped respectively. [Skotlex]
|
unequipped respectively. [Skotlex]
|
||||||
|
@ -1876,7 +1876,7 @@ int parse_tologin(int fd) {
|
|||||||
for(i = 0; i < fd_max; i++) {
|
for(i = 0; i < fd_max; i++) {
|
||||||
if (session[i] && (sd = (struct char_session_data*)session[i]->session_data) && sd->account_id == RFIFOL(fd,2)) {
|
if (session[i] && (sd = (struct char_session_data*)session[i]->session_data) && sd->account_id == RFIFOL(fd,2)) {
|
||||||
if (RFIFOB(fd,6) != 0) {
|
if (RFIFOB(fd,6) != 0) {
|
||||||
WFIFOHEAD(i, 3);
|
WFIFOHEAD(i, 3);
|
||||||
WFIFOW(i,0) = 0x6c;
|
WFIFOW(i,0) = 0x6c;
|
||||||
WFIFOB(i,2) = 0x42;
|
WFIFOB(i,2) = 0x42;
|
||||||
WFIFOSET(i,3);
|
WFIFOSET(i,3);
|
||||||
@ -3137,13 +3137,18 @@ int parse_char(int fd) {
|
|||||||
// memset(sd, 0, sizeof(struct char_session_data)); aCalloc does this [Skotlex]
|
// memset(sd, 0, sizeof(struct char_session_data)); aCalloc does this [Skotlex]
|
||||||
strncpy(sd->email, "no mail", 40); // put here a mail without '@' to refuse deletion if we don't receive the e-mail
|
strncpy(sd->email, "no mail", 40); // put here a mail without '@' to refuse deletion if we don't receive the e-mail
|
||||||
sd->connect_until_time = 0; // unknow or illimited (not displaying on map-server)
|
sd->connect_until_time = 0; // unknow or illimited (not displaying on map-server)
|
||||||
|
} else {
|
||||||
|
//Received again auth packet for already authentified account?? Discard it.
|
||||||
|
//TODO: Perhaps log this as a hack attempt?
|
||||||
|
RFIFOSKIP(fd,17);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
sd->account_id = RFIFOL(fd,2);
|
sd->account_id = RFIFOL(fd,2);
|
||||||
sd->login_id1 = RFIFOL(fd,6);
|
sd->login_id1 = RFIFOL(fd,6);
|
||||||
sd->login_id2 = RFIFOL(fd,10);
|
sd->login_id2 = RFIFOL(fd,10);
|
||||||
sd->sex = RFIFOB(fd,16);
|
sd->sex = RFIFOB(fd,16);
|
||||||
// send back account_id
|
// send back account_id
|
||||||
WFIFOHEAD(fd, 4);
|
WFIFOHEAD(fd, 4);
|
||||||
WFIFOL(fd,0) = RFIFOL(fd,2);
|
WFIFOL(fd,0) = RFIFOL(fd,2);
|
||||||
WFIFOSET(fd,4);
|
WFIFOSET(fd,4);
|
||||||
// search authentification
|
// search authentification
|
||||||
|
@ -2981,7 +2981,13 @@ int parse_char(int fd) {
|
|||||||
CREATE(session[fd]->session_data, struct char_session_data, 1);
|
CREATE(session[fd]->session_data, struct char_session_data, 1);
|
||||||
sd = (struct char_session_data*)session[fd]->session_data;
|
sd = (struct char_session_data*)session[fd]->session_data;
|
||||||
sd->connect_until_time = 0; // unknow or illimited (not displaying on map-server)
|
sd->connect_until_time = 0; // unknow or illimited (not displaying on map-server)
|
||||||
|
} else {
|
||||||
|
//Received again auth packet for already authentified account?? Discard it.
|
||||||
|
//TODO: Perhaps log this as a hack attempt?
|
||||||
|
RFIFOSKIP(fd,17);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
sd->account_id = RFIFOL(fd, 2);
|
sd->account_id = RFIFOL(fd, 2);
|
||||||
sd->login_id1 = RFIFOL(fd, 6);
|
sd->login_id1 = RFIFOL(fd, 6);
|
||||||
sd->login_id2 = RFIFOL(fd, 10);
|
sd->login_id2 = RFIFOL(fd, 10);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user