diff options
author | Haru <haru@dotalux.com> | 2015-06-18 01:52:38 +0200 |
---|---|---|
committer | Haru <haru@dotalux.com> | 2015-08-15 00:51:38 +0200 |
commit | 1034bfb7a390cb21623c3892f4d2304e2458af79 (patch) | |
tree | 236ce246af0d248cff51bb85725a735c5aeccb06 /src/map/clif.c | |
parent | 747d3b7d5c6056470b1c9d3f41e09e0ed92af6d6 (diff) | |
download | hercules-1034bfb7a390cb21623c3892f4d2304e2458af79.tar.gz hercules-1034bfb7a390cb21623c3892f4d2304e2458af79.tar.bz2 hercules-1034bfb7a390cb21623c3892f4d2304e2458af79.tar.xz hercules-1034bfb7a390cb21623c3892f4d2304e2458af79.zip |
Cleaned up socket interface
- Replaced some macro calls with the proper interface syntax
- Removed useless macros and workarounds
API changes summary:
- WFIFOSET() can now be safely used both inside and outside socket.c
- RFIFOSKIP() can now be safely used both inside and outside socket.c
- do_close() is now sockt->close()
- flush_fifo() is now sockt->flush()
- flush_fifos() is now sockt->flush_fifos()
- getips() is now sockt->getips()
- host2ip() is now sockt->host2ip()
- ip2str() is now sockt->ip2str()
- ntows() is now sockt->ntows()
- make_connection() is now sockt->make_connection()
- make_listen_bind() is now sockt->make_listen_bind()
- realloc_fifo() is now sockt->realloc_fifo()
- realloc_writefifo() is now sockt->realloc_writefifo()
- session_isActive() is now sockt->session_is_active()
- session_isValid() is now sockt->session_is_valid()
- set_defaultparse() is now sockt->set_defaultparse()
- set_eof() is now sockt->eof()
- set_noblocking() is now sockt->set_noblocking()
- str2ip() is now sockt->str2ip()
Signed-off-by: Haru <haru@dotalux.com>
Diffstat (limited to 'src/map/clif.c')
-rw-r--r-- | src/map/clif.c | 47 |
1 files changed, 23 insertions, 24 deletions
diff --git a/src/map/clif.c b/src/map/clif.c index d00cac0ee..66f245980 100644 --- a/src/map/clif.c +++ b/src/map/clif.c @@ -193,22 +193,22 @@ static inline unsigned int mes_len_check(char* mes, unsigned int len, unsigned i *------------------------------------------*/ bool clif_setip(const char* ip) { char ip_str[16]; - clif->map_ip = host2ip(ip); + clif->map_ip = sockt->host2ip(ip); if ( !clif->map_ip ) { ShowWarning("Failed to Resolve Map Server Address! (%s)\n", ip); return false; } safestrncpy(clif->map_ip_str, ip, sizeof(clif->map_ip_str)); - ShowInfo("Map Server IP Address : '"CL_WHITE"%s"CL_RESET"' -> '"CL_WHITE"%s"CL_RESET"'.\n", ip, ip2str(clif->map_ip, ip_str)); + ShowInfo("Map Server IP Address : '"CL_WHITE"%s"CL_RESET"' -> '"CL_WHITE"%s"CL_RESET"'.\n", ip, sockt->ip2str(clif->map_ip, ip_str)); return true; } bool clif_setbindip(const char* ip) { - clif->bind_ip = host2ip(ip); + clif->bind_ip = sockt->host2ip(ip); if ( clif->bind_ip ) { char ip_str[16]; - ShowInfo("Map Server Bind IP Address : '"CL_WHITE"%s"CL_RESET"' -> '"CL_WHITE"%s"CL_RESET"'.\n", ip, ip2str(clif->bind_ip, ip_str)); + ShowInfo("Map Server Bind IP Address : '"CL_WHITE"%s"CL_RESET"' -> '"CL_WHITE"%s"CL_RESET"'.\n", ip, sockt->ip2str(clif->bind_ip, ip_str)); return true; } ShowWarning("Failed to Resolve Map Server Address! (%s)\n", ip); @@ -242,10 +242,9 @@ uint16 clif_getport(void) /*========================================== * Updates server ip resolution and returns it *------------------------------------------*/ -uint32 clif_refresh_ip(void) { - uint32 new_ip; - - new_ip = host2ip(clif->map_ip_str); +uint32 clif_refresh_ip(void) +{ + uint32 new_ip = sockt->host2ip(clif->map_ip_str); if ( new_ip && new_ip != clif->map_ip ) { clif->map_ip = new_ip; ShowInfo("Updating IP resolution of [%s].\n", clif->map_ip_str); @@ -698,7 +697,7 @@ void clif_authfail_fd(int fd, int type) WFIFOW(fd,0) = 0x81; WFIFOB(fd,2) = type; WFIFOSET(fd,packet_len(0x81)); - set_eof(fd); + sockt->eof(fd); } @@ -1746,7 +1745,7 @@ void clif_changemapserver(struct map_session_data* sd, unsigned short map_index, WFIFOW(fd,18) = x; WFIFOW(fd,20) = y; WFIFOL(fd,22) = htonl(ip); - WFIFOW(fd,26) = ntows(htons(port)); // [!] LE byte order here [!] + WFIFOW(fd,26) = sockt->ntows(htons(port)); // [!] LE byte order here [!] WFIFOSET(fd,packet_len(0x92)); } @@ -2238,7 +2237,7 @@ void clif_additem(struct map_session_data *sd, int n, int amount, int fail) { struct packet_additem p; nullpo_retv(sd); - if( !session_isActive(sd->fd) ) //Sasuke- + if (!sockt->session_is_active(sd->fd)) //Sasuke- return; if( fail ) @@ -2697,7 +2696,7 @@ void clif_updatestatus(struct map_session_data *sd,int type) fd=sd->fd; - if ( !session_isActive(fd) ) // Invalid pointer fix, by sasuke [Kevin] + if (!sockt->session_is_active(fd)) // Invalid pointer fix, by sasuke [Kevin] return; WFIFOHEAD(fd, 14); @@ -3605,7 +3604,7 @@ void clif_joinchatok(struct map_session_data *sd,struct chat_data* cd) nullpo_retv(cd); fd = sd->fd; - if (!session_isActive(fd)) + if (!sockt->session_is_active(fd)) return; t = (int)(cd->owner->type == BL_NPC); WFIFOHEAD(fd, 8 + (28*(cd->users+t))); @@ -5683,7 +5682,7 @@ void clif_wis_message(int fd, const char* nick, const char* mes, size_t mes_len) /// 2 = ignored by target /// 3 = everyone ignored by target void clif_wis_end(int fd, int flag) { - struct map_session_data *sd = session_isValid(fd) ? session[fd]->session_data : NULL; + struct map_session_data *sd = sockt->session_is_valid(fd) ? session[fd]->session_data : NULL; struct packet_wis_end p; if( !sd ) @@ -7450,7 +7449,7 @@ void clif_guild_notice(struct map_session_data* sd, struct guild* g) fd = sd->fd; - if ( !session_isActive(fd) ) + if (!sockt->session_is_active(fd)) return; if(g->mes1[0] == '\0' && g->mes2[0] == '\0') @@ -8806,7 +8805,7 @@ bool clif_process_message(struct map_session_data *sd, int format, char **name_, { //Hacked message, or infamous "client desynchronize" issue where they pick one char while loading another. ShowWarning("clif_process_message: Player '%s' sent a message using an incorrect name! Forcing a relog...\n", sd->status.name); - set_eof(fd); // Just kick them out to correct it. + sockt->eof(fd); // Just kick them out to correct it. return false; } @@ -8956,7 +8955,7 @@ void clif_parse_WantToConnection(int fd, struct map_session_data* sd) { WFIFOW(fd,0) = 0x6a; WFIFOB(fd,2) = 3; // Rejected by server WFIFOSET(fd,packet_len(0x6a)); - set_eof(fd); + sockt->eof(fd); return; } @@ -9528,7 +9527,7 @@ void clif_parse_QuitGame(int fd, struct map_session_data *sd) if( !sd->sc.data[SC_CLOAKING] && !sd->sc.data[SC_HIDING] && !sd->sc.data[SC_CHASEWALK] && !sd->sc.data[SC_CLOAKINGEXCEED] && !sd->sc.data[SC__INVISIBILITY] && (!battle_config.prevent_logout || DIFF_TICK(timer->gettick(), sd->canlog_tick) > battle_config.prevent_logout) ) { - set_eof(fd); + sockt->eof(fd); clif->disconnect_ack(sd, 0); } else { @@ -18317,9 +18316,9 @@ int clif_parse(int fd) { map->quit(sd); } } else { - ShowInfo("Closed connection from '"CL_WHITE"%s"CL_RESET"'.\n", ip2str(session[fd]->client_addr, NULL)); + ShowInfo("Closed connection from '"CL_WHITE"%s"CL_RESET"'.\n", sockt->ip2str(session[fd]->client_addr, NULL)); } - do_close(fd); + sockt->close(fd); return 0; } @@ -18348,7 +18347,7 @@ int clif_parse(int fd) { #ifdef DUMP_INVALID_PACKET ShowDump(RFIFOP(fd,0), RFIFOREST(fd)); #endif - set_eof(fd); + sockt->eof(fd); return 0; } @@ -18364,7 +18363,7 @@ int clif_parse(int fd) { #ifdef DUMP_INVALID_PACKET ShowDump(RFIFOP(fd,0), RFIFOREST(fd)); #endif - set_eof(fd); + sockt->eof(fd); return 0; } @@ -18506,8 +18505,8 @@ int do_init_clif(bool minimal) packetdb_loaddb(); - set_defaultparse(clif->parse); - if( make_listen_bind(clif->bind_ip,clif->map_port) == -1 ) { + sockt->set_defaultparse(clif->parse); + if (sockt->make_listen_bind(clif->bind_ip,clif->map_port) == -1) { ShowFatalError("Failed to bind to port '"CL_WHITE"%d"CL_RESET"'\n",clif->map_port); exit(EXIT_FAILURE); } |