Pārlūkot izejas kodu

Introducing charpointer macros for fifo/buffers (#1624)

* Introducing charpointer macros for fifo/buffers
Lemongrass3110 8 gadi atpakaļ
vecāks
revīzija
73eb96f358

+ 1 - 1
src/char/char.c

@@ -1891,7 +1891,7 @@ int char_mmo_char_tobuf(uint8* buffer, struct mmo_charstatus* p)
 	WBUFW(buf,106) = ( p->rename > 0 ) ? 0 : 1;
 	offset += 2;
 #if (PACKETVER >= 20100720 && PACKETVER <= 20100727) || PACKETVER >= 20100803
-	mapindex_getmapname_ext(mapindex_id2name(p->last_point.map), (char*)WBUFP(buf,108));
+	mapindex_getmapname_ext(mapindex_id2name(p->last_point.map), WBUFCP(buf,108));
 	offset += MAP_NAME_LENGTH_EXT;
 #endif
 #if PACKETVER >= 20100803

+ 12 - 12
src/char/char_clif.c

@@ -152,7 +152,7 @@ int chclif_parse_pincode_check( int fd, struct char_session_data* sd ){
 		return 1;
 
 	memset(pin,0,PINCODE_LENGTH+1);
-	strncpy((char*)pin, (char*)RFIFOP(fd, 6), PINCODE_LENGTH);
+	strncpy((char*)pin, RFIFOCP(fd, 6), PINCODE_LENGTH);
 	RFIFOSKIP(fd,10);
 
 	char_pincode_decrypt(sd->pincode_seed, pin );
@@ -246,8 +246,8 @@ int chclif_parse_pincode_change( int fd, struct char_session_data* sd ){
 		
 		memset(oldpin,0,PINCODE_LENGTH+1);
 		memset(newpin,0,PINCODE_LENGTH+1);
-		strncpy(oldpin, (char*)RFIFOP(fd,6), PINCODE_LENGTH);
-		strncpy(newpin, (char*)RFIFOP(fd,10), PINCODE_LENGTH);
+		strncpy(oldpin, RFIFOCP(fd,6), PINCODE_LENGTH);
+		strncpy(newpin, RFIFOCP(fd,10), PINCODE_LENGTH);
 		RFIFOSKIP(fd,14);
 		
 		char_pincode_decrypt(sd->pincode_seed,oldpin);
@@ -280,7 +280,7 @@ int chclif_parse_pincode_setnew( int fd, struct char_session_data* sd ){
 	else {
 		char newpin[PINCODE_LENGTH+1];
 		memset(newpin,0,PINCODE_LENGTH+1);
-		strncpy( newpin, (char*)RFIFOP(fd,6), PINCODE_LENGTH );
+		strncpy( newpin, RFIFOCP(fd,6), PINCODE_LENGTH );
 		RFIFOSKIP(fd,10);
 
 		char_pincode_decrypt( sd->pincode_seed, newpin );
@@ -674,8 +674,8 @@ int chclif_parse_maplogin(int fd){
 		return 0;
 	else {
 		int i;
-		char* l_user = (char*)RFIFOP(fd,2);
-		char* l_pass = (char*)RFIFOP(fd,26);
+		char* l_user = RFIFOCP(fd,2);
+		char* l_pass = RFIFOCP(fd,26);
 		l_user[23] = '\0';
 		l_pass[23] = '\0';
 		ARR_FIND( 0, ARRAYLENGTH(map_server), i, map_server[i].fd <= 0 );
@@ -906,7 +906,7 @@ int chclif_parse_charselect(int fd, struct char_session_data* sd,uint32 ipl){
 		WFIFOHEAD(fd,28);
 		WFIFOW(fd,0) = 0x71;
 		WFIFOL(fd,2) = cd->char_id;
-		mapindex_getmapname_ext(mapindex_id2name(cd->last_point.map), (char*)WFIFOP(fd,6));
+		mapindex_getmapname_ext(mapindex_id2name(cd->last_point.map), WFIFOCP(fd,6));
 		subnet_map_ip = char_lan_subnetcheck(ipl); // Advanced subnet check [LuzZza]
 		WFIFOL(fd,22) = htonl((subnet_map_ip) ? subnet_map_ip : map_server[i].ip);
 		WFIFOW(fd,26) = ntows(htons(map_server[i].port)); // [!] LE byte order here [!]
@@ -943,13 +943,13 @@ int chclif_parse_createnewchar(int fd, struct char_session_data* sd,int cmd){
 		i = -2;
 	else {
 #if PACKETVER >= 20151001
-			i = char_make_new_char_sql(sd, (char*)RFIFOP(fd,2),RFIFOB(fd,26),RFIFOW(fd,27),RFIFOW(fd,29),RFIFOW(fd,31),RFIFOW(fd,32),RFIFOB(fd,35));
+			i = char_make_new_char_sql(sd, RFIFOCP(fd,2),RFIFOB(fd,26),RFIFOW(fd,27),RFIFOW(fd,29),RFIFOW(fd,31),RFIFOW(fd,32),RFIFOB(fd,35));
 			RFIFOSKIP(fd,36);
 #elif PACKETVER >= 20120307
-			i = char_make_new_char_sql(sd, (char*)RFIFOP(fd,2),RFIFOB(fd,26),RFIFOW(fd,27),RFIFOW(fd,29));
+			i = char_make_new_char_sql(sd, RFIFOCP(fd,2),RFIFOB(fd,26),RFIFOW(fd,27),RFIFOW(fd,29));
 			RFIFOSKIP(fd,31);
 #else
-			i = char_make_new_char_sql(sd, (char*)RFIFOP(fd,2),RFIFOB(fd,26),RFIFOB(fd,27),RFIFOB(fd,28),RFIFOB(fd,29),RFIFOB(fd,30),RFIFOB(fd,31),RFIFOB(fd,32),RFIFOW(fd,33),RFIFOW(fd,35));
+			i = char_make_new_char_sql(sd, RFIFOCP(fd,2),RFIFOB(fd,26),RFIFOB(fd,27),RFIFOB(fd,28),RFIFOB(fd,29),RFIFOB(fd,30),RFIFOB(fd,31),RFIFOB(fd,32),RFIFOW(fd,33),RFIFOW(fd,35));
 			RFIFOSKIP(fd,37);
 #endif
 	}
@@ -1067,7 +1067,7 @@ int chclif_parse_reqrename(int fd, struct char_session_data* sd, int cmd){
 	if(cmd == 0x8fc){
 		FIFOSD_CHECK(30)
 		cid =RFIFOL(fd,2);
-		safestrncpy(name, (char *)RFIFOP(fd,6), NAME_LENGTH);
+		safestrncpy(name, RFIFOCP(fd,6), NAME_LENGTH);
 		RFIFOSKIP(fd,30);
 	}
 	else if(cmd == 0x28d) {
@@ -1075,7 +1075,7 @@ int chclif_parse_reqrename(int fd, struct char_session_data* sd, int cmd){
 		FIFOSD_CHECK(34);
 		aid = RFIFOL(fd,2);
 		cid =RFIFOL(fd,6);
-		safestrncpy(name, (char *)RFIFOP(fd,10), NAME_LENGTH);
+		safestrncpy(name, RFIFOCP(fd,10), NAME_LENGTH);
 		RFIFOSKIP(fd,34);
 		if( aid != sd->account_id )
 			return 1;

+ 7 - 7
src/char/char_logif.c

@@ -37,7 +37,7 @@ void chlogif_pincode_notifyLoginPinUpdate( uint32 account_id, char* pin ){
 		WFIFOW(login_fd,0) = 0x2738;
 		WFIFOW(login_fd,2) = size;
 		WFIFOL(login_fd,4) = account_id;
-		strncpy( (char*)WFIFOP(login_fd,8), pin, PINCODE_LENGTH+1 );
+		strncpy( WFIFOCP(login_fd,8), pin, PINCODE_LENGTH+1 );
 		WFIFOSET(login_fd,size);
 	}
 }
@@ -188,7 +188,7 @@ void chlogif_send_global_accreg(const char *key, unsigned int index, intptr_t va
 	WFIFOB(login_fd, nlen) = (unsigned char)len; // won't be higher; the column size is 32
 	nlen += 1;
 
-	safestrncpy((char*)WFIFOP(login_fd,nlen), key, len);
+	safestrncpy(WFIFOCP(login_fd,nlen), key, len);
 	nlen += len;
 
 	WFIFOL(login_fd, nlen) = index;
@@ -205,7 +205,7 @@ void chlogif_send_global_accreg(const char *key, unsigned int index, intptr_t va
 			WFIFOB(login_fd, nlen) = (unsigned char)len; // won't be higher; the column size is 254
 			nlen += 1;
 
-			safestrncpy((char*)WFIFOP(login_fd,nlen), sval, len);
+			safestrncpy(WFIFOCP(login_fd,nlen), sval, len);
 			nlen += len;
 		}
 	} else {
@@ -355,8 +355,8 @@ int chlogif_parse_reqaccdata(int fd, struct char_session_data* sd){
 			sd->char_slots = MAX_CHARS;/* cap to maximum */
 		} else if ( !sd->char_slots )/* no value aka 0 in sql */
 			sd->char_slots = MIN_CHARS;/* cap to minimum */
-		safestrncpy(sd->birthdate, (const char*)RFIFOP(fd,52), sizeof(sd->birthdate));
-		safestrncpy(sd->pincode, (const char*)RFIFOP(fd,63), sizeof(sd->pincode));
+		safestrncpy(sd->birthdate, RFIFOCP(fd,52), sizeof(sd->birthdate));
+		safestrncpy(sd->pincode, RFIFOCP(fd,63), sizeof(sd->pincode));
 		sd->pincode_change = (time_t)RFIFOL(fd,68);
 		sd->isvip = RFIFOB(fd,72);
 		sd->chars_vip = RFIFOB(fd,73);
@@ -694,8 +694,8 @@ int chlogif_parse_AccInfoAck(int fd) {
 		}
 		type>>=1;
 		mapif_accinfo_ack(true, RFIFOL(fd,2), RFIFOL(fd,6), RFIFOL(fd,10), RFIFOL(fd,14), type, RFIFOL(fd,19), RFIFOL(fd,23), RFIFOL(fd,27),
-			(char*)RFIFOP(fd,31), (char*)RFIFOP(fd,71), (char*)RFIFOP(fd,87), (char*)RFIFOP(fd,111),
-			(char*)RFIFOP(fd,122), (char*)RFIFOP(fd,155), (char*)RFIFOP(fd,155+PINCODE_LENGTH));
+			RFIFOCP(fd,31), RFIFOCP(fd,71), RFIFOCP(fd,87), RFIFOCP(fd,111),
+			RFIFOCP(fd,122), RFIFOCP(fd,155), RFIFOCP(fd,155+PINCODE_LENGTH));
 		RFIFOSKIP(fd,155+PINCODE_LENGTH+NAME_LENGTH);
 	}
 	return 1;

+ 6 - 6
src/char/char_mapif.c

@@ -697,7 +697,7 @@ int chmapif_parse_reqcharname(int fd){
 	WFIFOHEAD(fd,30);
 	WFIFOW(fd,0) = 0x2b09;
 	WFIFOL(fd,2) = RFIFOL(fd,2);
-	char_loadName((int)RFIFOL(fd,2), (char*)WFIFOP(fd,6));
+	char_loadName((int)RFIFOL(fd,2), WFIFOCP(fd,6));
 	WFIFOSET(fd,30);
 
 	RFIFOSKIP(fd,6);
@@ -736,7 +736,7 @@ int chmapif_parse_fwlog_changestatus(int fd){
 		char esc_name[NAME_LENGTH*2+1];
 		char answer = true;
 		int aid = RFIFOL(fd,2); // account_id of who ask (-1 if server itself made this request)
-		const char* name = (char*)RFIFOP(fd,6); // name of the target character
+		const char* name = RFIFOCP(fd,6); // name of the target character
 		int operation = RFIFOW(fd,30); // type of operation @see enum chrif_req_op
 		int32 timediff = 0;
 		int val1 = 0, sex = SEX_MALE;
@@ -825,7 +825,7 @@ int chmapif_parse_fwlog_changestatus(int fd){
 			WFIFOHEAD(fd,34);
 			WFIFOW(fd, 0) = 0x2b0f;
 			WFIFOL(fd, 2) = aid;
-			safestrncpy((char*)WFIFOP(fd,6), name, NAME_LENGTH);
+			safestrncpy(WFIFOCP(fd,6), name, NAME_LENGTH);
 			WFIFOW(fd,30) = operation;
 			WFIFOW(fd,32) = result;
 			WFIFOSET(fd,34);
@@ -1133,7 +1133,7 @@ int chmapif_parse_fw_configstats(int fd){
 
 		session[sfd]->flag.server = 1;/* to ensure we won't drop our own packet */
 		WFIFOHEAD(sfd, RFIFOW(fd,2) );
-		memcpy((char*)WFIFOP(sfd,0), (char*)RFIFOP(fd, 0), RFIFOW(fd,2));
+		memcpy(WFIFOCP(sfd,0), RFIFOCP(fd, 0), RFIFOW(fd,2));
 		WFIFOSET(sfd, RFIFOW(fd,2) );
 		flush_fifo(sfd);
 		do_close(sfd);
@@ -1225,7 +1225,7 @@ int chmapif_parse_reqcharban(int fd){
 	else {
 		//int aid = RFIFOL(fd,2); aid of player who as requested the ban
 		int timediff = RFIFOL(fd,6);
-		const char* name = (char*)RFIFOP(fd,10); // name of the target character
+		const char* name = RFIFOCP(fd,10); // name of the target character
 		RFIFOSKIP(fd,10+NAME_LENGTH);
 
 		if( SQL_ERROR == Sql_Query(sql_handle, "SELECT `account_id`,`char_id`,`unban_time` FROM `%s` WHERE `name` = '%s'", schema_config.char_db, name) )
@@ -1290,7 +1290,7 @@ int chmapif_parse_reqcharunban(int fd){
 	if (RFIFOREST(fd) < 6+NAME_LENGTH)
 		return 0;
 	else {
-		const char* name = (char*)RFIFOP(fd,6);
+		const char* name = RFIFOCP(fd,6);
 		RFIFOSKIP(fd,6+NAME_LENGTH);
 
 		if( SQL_ERROR == Sql_Query(sql_handle, "UPDATE `%s` SET `unban_time` = '0' WHERE `name` = '%s' LIMIT 1", schema_config.char_db, name) ) {

+ 1 - 1
src/char/int_auction.c

@@ -467,7 +467,7 @@ static void mapif_parse_Auction_bid(int fd)
 	}
 
 	auction->buyer_id = char_id;
-	safestrncpy(auction->buyer_name, (char*)RFIFOP(fd,16), NAME_LENGTH);
+	safestrncpy(auction->buyer_name, RFIFOCP(fd,16), NAME_LENGTH);
 	auction->price = bid;
 
 	if( bid >= auction->buynow )

+ 8 - 8
src/char/int_guild.c

@@ -1844,21 +1844,21 @@ int inter_guild_parse_frommap(int fd)
 {
 	RFIFOHEAD(fd);
 	switch(RFIFOW(fd,0)) {
-	case 0x3030: mapif_parse_CreateGuild(fd,RFIFOL(fd,4),(char*)RFIFOP(fd,8),(struct guild_member *)RFIFOP(fd,32)); break;
+	case 0x3030: mapif_parse_CreateGuild(fd,RFIFOL(fd,4),RFIFOCP(fd,8),(struct guild_member *)RFIFOP(fd,32)); break;
 	case 0x3031: mapif_parse_GuildInfo(fd,RFIFOL(fd,2)); break;
 	case 0x3032: mapif_parse_GuildAddMember(fd,RFIFOL(fd,4),(struct guild_member *)RFIFOP(fd,8)); break;
-	case 0x3033: mapif_parse_GuildMasterChange(fd,RFIFOL(fd,4),(const char*)RFIFOP(fd,8),RFIFOW(fd,2)-8); break;
-	case 0x3034: mapif_parse_GuildLeave(fd,RFIFOL(fd,2),RFIFOL(fd,6),RFIFOL(fd,10),RFIFOB(fd,14),(const char*)RFIFOP(fd,15)); break;
+	case 0x3033: mapif_parse_GuildMasterChange(fd,RFIFOL(fd,4),RFIFOCP(fd,8),RFIFOW(fd,2)-8); break;
+	case 0x3034: mapif_parse_GuildLeave(fd,RFIFOL(fd,2),RFIFOL(fd,6),RFIFOL(fd,10),RFIFOB(fd,14),RFIFOCP(fd,15)); break;
 	case 0x3035: mapif_parse_GuildChangeMemberInfoShort(fd,RFIFOL(fd,2),RFIFOL(fd,6),RFIFOL(fd,10),RFIFOB(fd,14),RFIFOW(fd,15),RFIFOW(fd,17)); break;
 	case 0x3036: mapif_parse_BreakGuild(fd,RFIFOL(fd,2)); break;
-	case 0x3037: mapif_parse_GuildMessage(fd,RFIFOL(fd,4),RFIFOL(fd,8),(char*)RFIFOP(fd,12),RFIFOW(fd,2)-12); break;
-	case 0x3039: mapif_parse_GuildBasicInfoChange(fd,RFIFOL(fd,4),RFIFOW(fd,8),(const char*)RFIFOP(fd,10),RFIFOW(fd,2)-10); break;
-	case 0x303A: mapif_parse_GuildMemberInfoChange(fd,RFIFOL(fd,4),RFIFOL(fd,8),RFIFOL(fd,12),RFIFOW(fd,16),(const char*)RFIFOP(fd,18),RFIFOW(fd,2)-18); break;
+	case 0x3037: mapif_parse_GuildMessage(fd,RFIFOL(fd,4),RFIFOL(fd,8),RFIFOCP(fd,12),RFIFOW(fd,2)-12); break;
+	case 0x3039: mapif_parse_GuildBasicInfoChange(fd,RFIFOL(fd,4),RFIFOW(fd,8),RFIFOCP(fd,10),RFIFOW(fd,2)-10); break;
+	case 0x303A: mapif_parse_GuildMemberInfoChange(fd,RFIFOL(fd,4),RFIFOL(fd,8),RFIFOL(fd,12),RFIFOW(fd,16),RFIFOCP(fd,18),RFIFOW(fd,2)-18); break;
 	case 0x303B: mapif_parse_GuildPosition(fd,RFIFOL(fd,4),RFIFOL(fd,8),(struct guild_position *)RFIFOP(fd,12)); break;
 	case 0x303C: mapif_parse_GuildSkillUp(fd,RFIFOL(fd,2),RFIFOL(fd,6),RFIFOL(fd,10),RFIFOL(fd,14)); break;
 	case 0x303D: mapif_parse_GuildAlliance(fd,RFIFOL(fd,2),RFIFOL(fd,6),RFIFOL(fd,10),RFIFOL(fd,14),RFIFOB(fd,18)); break;
-	case 0x303E: mapif_parse_GuildNotice(fd,RFIFOL(fd,2),(const char*)RFIFOP(fd,6),(const char*)RFIFOP(fd,66)); break;
-	case 0x303F: mapif_parse_GuildEmblem(fd,RFIFOW(fd,2)-12,RFIFOL(fd,4),RFIFOL(fd,8),(const char*)RFIFOP(fd,12)); break;
+	case 0x303E: mapif_parse_GuildNotice(fd,RFIFOL(fd,2),RFIFOCP(fd,6),RFIFOCP(fd,66)); break;
+	case 0x303F: mapif_parse_GuildEmblem(fd,RFIFOW(fd,2)-12,RFIFOL(fd,4),RFIFOL(fd,8),RFIFOCP(fd,12)); break;
 	case 0x3040: mapif_parse_GuildCastleDataLoad(fd,RFIFOW(fd,2),(int *)RFIFOP(fd,4)); break;
 	case 0x3041: mapif_parse_GuildCastleDataSave(fd,RFIFOW(fd,2),RFIFOB(fd,4),RFIFOL(fd,5)); break;
 

+ 2 - 2
src/char/int_homun.c

@@ -76,7 +76,7 @@ static void mapif_homunculus_renamed(int fd, uint32 account_id, uint32 char_id,
 	WFIFOL(fd, 2) = account_id;
 	WFIFOL(fd, 6) = char_id;
 	WFIFOB(fd,10) = flag;
-	safestrncpy((char*)WFIFOP(fd,11), name, NAME_LENGTH);
+	safestrncpy(WFIFOCP(fd,11), name, NAME_LENGTH);
 	WFIFOSET(fd, NAME_LENGTH+12);
 }
 
@@ -305,7 +305,7 @@ int inter_homunculus_parse_frommap(int fd)
 		case 0x3091: mapif_parse_homunculus_load  (fd, (int)RFIFOL(fd,2), (int)RFIFOL(fd,6)); break;
 		case 0x3092: mapif_parse_homunculus_save  (fd, (int)RFIFOW(fd,2), (int)RFIFOL(fd,4), (struct s_homunculus*)RFIFOP(fd,8)); break;
 		case 0x3093: mapif_parse_homunculus_delete(fd, (int)RFIFOL(fd,2)); break;
-		case 0x3094: mapif_parse_homunculus_rename(fd, (int)RFIFOL(fd,2), (int)RFIFOL(fd,6), (char*)RFIFOP(fd,10)); break;
+		case 0x3094: mapif_parse_homunculus_rename(fd, (int)RFIFOL(fd,2), (int)RFIFOL(fd,6), RFIFOCP(fd,10)); break;
 		default:
 			return 0;
 	}

+ 3 - 3
src/char/int_party.c

@@ -774,14 +774,14 @@ int inter_party_parse_frommap(int fd)
 {
 	RFIFOHEAD(fd);
 	switch(RFIFOW(fd,0)) {
-	case 0x3020: mapif_parse_CreateParty(fd, (char*)RFIFOP(fd,4), RFIFOB(fd,28), RFIFOB(fd,29), (struct party_member*)RFIFOP(fd,30)); break;
+	case 0x3020: mapif_parse_CreateParty(fd, RFIFOCP(fd,4), RFIFOB(fd,28), RFIFOB(fd,29), (struct party_member*)RFIFOP(fd,30)); break;
 	case 0x3021: mapif_parse_PartyInfo(fd, RFIFOL(fd,2), RFIFOL(fd,6)); break;
 	case 0x3022: mapif_parse_PartyAddMember(fd, RFIFOL(fd,4), (struct party_member*)RFIFOP(fd,8)); break;
 	case 0x3023: mapif_parse_PartyChangeOption(fd, RFIFOL(fd,2), RFIFOL(fd,6), RFIFOW(fd,10), RFIFOW(fd,12)); break;
-	case 0x3024: mapif_parse_PartyLeave(fd, RFIFOL(fd,2), RFIFOL(fd,6), RFIFOL(fd,10), (char *)RFIFOP(fd,14), (enum e_party_member_withdraw)RFIFOB(fd,14+NAME_LENGTH)); break;
+	case 0x3024: mapif_parse_PartyLeave(fd, RFIFOL(fd,2), RFIFOL(fd,6), RFIFOL(fd,10), RFIFOCP(fd,14), (enum e_party_member_withdraw)RFIFOB(fd,14+NAME_LENGTH)); break;
 	case 0x3025: mapif_parse_PartyChangeMap(fd, RFIFOL(fd,2), RFIFOL(fd,6), RFIFOL(fd,10), RFIFOW(fd,14), RFIFOB(fd,16), RFIFOW(fd,17)); break;
 	case 0x3026: mapif_parse_BreakParty(fd, RFIFOL(fd,2)); break;
-	case 0x3027: mapif_parse_PartyMessage(fd, RFIFOL(fd,4), RFIFOL(fd,8), (char*)RFIFOP(fd,12), RFIFOW(fd,2)-12); break;
+	case 0x3027: mapif_parse_PartyMessage(fd, RFIFOL(fd,4), RFIFOL(fd,8), RFIFOCP(fd,12), RFIFOW(fd,2)-12); break;
 	case 0x3029: mapif_parse_PartyLeaderChange(fd, RFIFOL(fd,2), RFIFOL(fd,6), RFIFOL(fd,10)); break;
 	case 0x302A: mapif_parse_PartyShareLevel(fd, RFIFOL(fd,2)); break;
 	default:

+ 1 - 1
src/char/int_pet.c

@@ -271,7 +271,7 @@ int mapif_delete_pet(int fd, int pet_id){
 int mapif_parse_CreatePet(int fd){
 	RFIFOHEAD(fd);
 	mapif_create_pet(fd, RFIFOL(fd, 2), RFIFOL(fd, 6), RFIFOW(fd, 10), RFIFOW(fd, 12), RFIFOW(fd, 14), RFIFOW(fd, 16), RFIFOW(fd, 18),
-		RFIFOW(fd, 20), RFIFOB(fd, 22), RFIFOB(fd, 23), (char*)RFIFOP(fd, 24));
+		RFIFOW(fd, 20), RFIFOB(fd, 22), RFIFOB(fd, 23), RFIFOCP(fd, 24));
 	return 0;
 }
 

+ 11 - 11
src/char/inter.c

@@ -370,7 +370,7 @@ void inter_to_fd(int fd, int u_fd, int aid, char* msg, ...) {
 	WFIFOW(fd,2) = 12 + (unsigned short)len;
 	WFIFOL(fd,4) = u_fd;
 	WFIFOL(fd,8) = aid;
-	safestrncpy((char*)WFIFOP(fd,12), msg_out, len);
+	safestrncpy(WFIFOCP(fd,12), msg_out, len);
 
 	WFIFOSET(fd,12 + len);
 
@@ -389,7 +389,7 @@ static void mapif_acc_info_ack(int fd, int u_fd, int acc_id, const char* acc_nam
 	WFIFOW(fd,0) = 0x3808;
 	WFIFOL(fd,2) = u_fd;
 	WFIFOL(fd,6) = acc_id;
-	safestrncpy((char*)WFIFOP(fd,10),acc_name,NAME_LENGTH);
+	safestrncpy(WFIFOCP(fd,10),acc_name,NAME_LENGTH);
 	WFIFOSET(fd,10 + NAME_LENGTH);
 }
 
@@ -405,7 +405,7 @@ void mapif_parse_accinfo(int fd) {
 	int account_id = 0;
 	char *data;
 
-	safestrncpy(query, (char*) RFIFOP(fd,15), NAME_LENGTH);
+	safestrncpy(query, RFIFOCP(fd,15), NAME_LENGTH);
 	Sql_EscapeString(sql_handle, query_esq, query);
 
 	account_id = atoi(query);
@@ -614,7 +614,7 @@ int inter_accreg_fromsql(uint32 account_id, uint32 char_id, int fd, int type)
 		WFIFOB(fd, plen) = (unsigned char)len; // won't be higher; the column size is 32
 		plen += 1;
 
-		safestrncpy((char*)WFIFOP(fd,plen), data, len);
+		safestrncpy(WFIFOCP(fd,plen), data, len);
 		plen += len;
 
 		Sql_GetData(sql_handle, 1, &data, NULL);
@@ -628,7 +628,7 @@ int inter_accreg_fromsql(uint32 account_id, uint32 char_id, int fd, int type)
 		WFIFOB(fd, plen) = (unsigned char)len; // won't be higher; the column size is 254
 		plen += 1;
 
-		safestrncpy((char*)WFIFOP(fd,plen), data, len);
+		safestrncpy(WFIFOCP(fd,plen), data, len);
 		plen += len;
 
 		WFIFOW(fd, 14) += 1;
@@ -694,7 +694,7 @@ int inter_accreg_fromsql(uint32 account_id, uint32 char_id, int fd, int type)
 		WFIFOB(fd, plen) = (unsigned char)len;/* won't be higher; the column size is 32 */
 		plen += 1;
 
-		safestrncpy((char*)WFIFOP(fd,plen), data, len);
+		safestrncpy(WFIFOCP(fd,plen), data, len);
 		plen += len;
 
 		Sql_GetData(sql_handle, 1, &data, NULL);
@@ -1023,7 +1023,7 @@ int mapif_parse_WisRequest(int fd)
 		return 0;
 	}
 
-	safestrncpy(name, (char*)RFIFOP(fd,28), NAME_LENGTH); //Received name may be too large and not contain \0! [Skotlex]
+	safestrncpy(name, RFIFOCP(fd,28), NAME_LENGTH); //Received name may be too large and not contain \0! [Skotlex]
 
 	Sql_EscapeStringLen(sql_handle, esc_name, name, strnlen(name, NAME_LENGTH));
 	if( SQL_ERROR == Sql_Query(sql_handle, "SELECT `name` FROM `%s` WHERE `name`='%s'", schema_config.char_db, esc_name) )
@@ -1045,7 +1045,7 @@ int mapif_parse_WisRequest(int fd)
 		memset(name, 0, NAME_LENGTH);
 		memcpy(name, data, zmin(len, NAME_LENGTH));
 		// if source is destination, don't ask other servers.
-		if( strncmp((const char*)RFIFOP(fd,4), name, NAME_LENGTH) == 0 )
+		if( strncmp(RFIFOCP(fd,4), name, NAME_LENGTH) == 0 )
 		{
 			uint8 buf[27];
 			WBUFW(buf, 0) = 0x3802;
@@ -1126,7 +1126,7 @@ int mapif_parse_Registry(int fd)
 
 		for(i = 0; i < count; i++) {
 			unsigned int index;
-			safestrncpy(key, (char*)RFIFOP(fd, cursor + 1), RFIFOB(fd, cursor));
+			safestrncpy(key, RFIFOCP(fd, cursor + 1), RFIFOB(fd, cursor));
 			cursor += RFIFOB(fd, cursor) + 1;
 
 			index = RFIFOL(fd, cursor);
@@ -1143,7 +1143,7 @@ int mapif_parse_Registry(int fd)
 					break;
 				// str
 				case 2:
-					safestrncpy(sval, (char*)RFIFOP(fd, cursor + 1), RFIFOB(fd, cursor));
+					safestrncpy(sval, RFIFOCP(fd, cursor + 1), RFIFOB(fd, cursor));
 					cursor += RFIFOB(fd, cursor) + 1;
 					inter_savereg(account_id,char_id,key,index,(intptr_t)sval,true);
 					break;
@@ -1197,7 +1197,7 @@ int mapif_parse_NameChangeRequest(int fd)
 	account_id = RFIFOL(fd,2);
 	char_id = RFIFOL(fd,6);
 	type = RFIFOB(fd,10);
-	name = (char*)RFIFOP(fd,11);
+	name = RFIFOCP(fd,11);
 
 	// Check Authorised letters/symbols in the name
 	if (charserv_config.char_config.char_name_option == 1) { // only letters/symbols in char_name_letters are authorised

+ 4 - 0
src/common/socket.h

@@ -25,6 +25,8 @@
 #define RFIFOP(fd,pos) (session[fd]->rdata + session[fd]->rdata_pos + (pos))
 #define WFIFOP(fd,pos) (session[fd]->wdata + session[fd]->wdata_size + (pos))
 
+#define RFIFOCP(fd,pos) ((char*)RFIFOP(fd,pos))
+#define WFIFOCP(fd,pos) ((char*)WFIFOP(fd,pos))
 #define RFIFOB(fd,pos) (*(uint8*)RFIFOP(fd,pos))
 #define WFIFOB(fd,pos) (*(uint8*)WFIFOP(fd,pos))
 #define RFIFOW(fd,pos) (*(uint16*)RFIFOP(fd,pos))
@@ -50,12 +52,14 @@
 
 // buffer I/O macros
 #define RBUFP(p,pos) (((uint8*)(p)) + (pos))
+#define RBUFCP(p,pos) ((char*)RBUFP((p),(pos)))
 #define RBUFB(p,pos) (*(uint8*)RBUFP((p),(pos)))
 #define RBUFW(p,pos) (*(uint16*)RBUFP((p),(pos)))
 #define RBUFL(p,pos) (*(uint32*)RBUFP((p),(pos)))
 #define RBUFQ(p,pos) (*(uint64*)RBUFP((p),(pos)))
 
 #define WBUFP(p,pos) (((uint8*)(p)) + (pos))
+#define WBUFCP(p,pos) ((char*)WBUFP((p),(pos)))
 #define WBUFB(p,pos) (*(uint8*)WBUFP((p),(pos)))
 #define WBUFW(p,pos) (*(uint16*)WBUFP((p),(pos)))
 #define WBUFL(p,pos) (*(uint32*)WBUFP((p),(pos)))

+ 5 - 5
src/login/account.c

@@ -661,7 +661,7 @@ void mmo_save_global_accreg(AccountDB* self, int fd, int account_id, int char_id
 
 		for (i = 0; i < count; i++) {
 			unsigned int index;
-			safestrncpy(key, (char*)RFIFOP(fd, cursor + 1), RFIFOB(fd, cursor));
+			safestrncpy(key, RFIFOCP(fd, cursor + 1), RFIFOB(fd, cursor));
 			cursor += RFIFOB(fd, cursor) + 1;
 
 			index = RFIFOL(fd, cursor);
@@ -680,7 +680,7 @@ void mmo_save_global_accreg(AccountDB* self, int fd, int account_id, int char_id
 					break;
 				// str
 				case 2:
-					safestrncpy(sval, (char*)RFIFOP(fd, cursor + 1), RFIFOB(fd, cursor));
+					safestrncpy(sval, RFIFOCP(fd, cursor + 1), RFIFOB(fd, cursor));
 					cursor += RFIFOB(fd, cursor) + 1;
 					if( SQL_ERROR == Sql_Query(sql_handle, "REPLACE INTO `%s` (`account_id`,`key`,`index`,`value`) VALUES ('%d','%s','%u','%s')", db->global_acc_reg_str_table, account_id, key, index, sval) )
 						Sql_ShowDebug(sql_handle);
@@ -730,7 +730,7 @@ void mmo_send_global_accreg(AccountDB* self, int fd, int account_id, int char_id
 		WFIFOB(fd, plen) = (unsigned char)len; // won't be higher; the column size is 32
 		plen += 1;
 
-		safestrncpy((char*)WFIFOP(fd,plen), data, len);
+		safestrncpy(WFIFOCP(fd,plen), data, len);
 		plen += len;
 
 		Sql_GetData(sql_handle, 1, &data, NULL);
@@ -744,7 +744,7 @@ void mmo_send_global_accreg(AccountDB* self, int fd, int account_id, int char_id
 		WFIFOB(fd, plen) = (unsigned char)len; // won't be higher; the column size is 254
 		plen += 1;
 
-		safestrncpy((char*)WFIFOP(fd,plen), data, len);
+		safestrncpy(WFIFOCP(fd,plen), data, len);
 		plen += len;
 
 		WFIFOW(fd, 14) += 1;
@@ -797,7 +797,7 @@ void mmo_send_global_accreg(AccountDB* self, int fd, int account_id, int char_id
 		WFIFOB(fd, plen) = (unsigned char)len; // won't be higher; the column size is 32
 		plen += 1;
 
-		safestrncpy((char*)WFIFOP(fd,plen), data, len);
+		safestrncpy(WFIFOCP(fd,plen), data, len);
 		plen += len;
 
 		Sql_GetData(sql_handle, 1, &data, NULL);

+ 13 - 13
src/login/loginchrif.c

@@ -190,12 +190,12 @@ int logchrif_send_accdata(int fd, uint32 aid) {
 	WFIFOHEAD(fd,75);
 	WFIFOW(fd,0) = 0x2717;
 	WFIFOL(fd,2) = aid;
-	safestrncpy((char*)WFIFOP(fd,6), email, 40);
+	safestrncpy(WFIFOCP(fd,6), email, 40);
 	WFIFOL(fd,46) = (uint32)expiration_time;
 	WFIFOB(fd,50) = (unsigned char)group_id;
 	WFIFOB(fd,51) = char_slots;
-	safestrncpy((char*)WFIFOP(fd,52), birthdate, 10+1);
-	safestrncpy((char*)WFIFOP(fd,63), pincode, 4+1 );
+	safestrncpy(WFIFOCP(fd,52), birthdate, 10+1);
+	safestrncpy(WFIFOCP(fd,63), pincode, 4+1 );
 	WFIFOL(fd,68) = (uint32)acc.pincode_change;
 	WFIFOB(fd,72) = isvip;
 	WFIFOB(fd,73) = char_vip;
@@ -276,8 +276,8 @@ int logchrif_parse_reqchangemail(int fd, int id, char* ip){
 		char new_email[40];
 
 		uint32 account_id = RFIFOL(fd,2);
-		safestrncpy(actual_email, (char*)RFIFOP(fd,6), 40);
-		safestrncpy(new_email, (char*)RFIFOP(fd,46), 40);
+		safestrncpy(actual_email, RFIFOCP(fd,6), 40);
+		safestrncpy(new_email, RFIFOCP(fd,46), 40);
 		RFIFOSKIP(fd, 86);
 
 		if( e_mail_check(actual_email) == 0 )
@@ -612,7 +612,7 @@ int logchrif_parse_updpincode(int fd){
 		AccountDB* accounts = login_get_accounts_db();
 
 		if( accounts->load_num(accounts, &acc, RFIFOL(fd,4) ) ){
-			strncpy( acc.pincode, (char*)RFIFOP(fd,8), PINCODE_LENGTH+1 );
+			strncpy( acc.pincode, RFIFOCP(fd,8), PINCODE_LENGTH+1 );
 			acc.pincode_change = time( NULL );
 			accounts->save(accounts, &acc);
 		}
@@ -736,19 +736,19 @@ int logchrif_parse_accinfo(int fd) {
 			WFIFOL(fd, 19) = acc.group_id;
 			WFIFOL(fd, 23) = acc.logincount;
 			WFIFOL(fd, 27) = acc.state;
-			safestrncpy((char*)WFIFOP(fd, 31), acc.email, 40);
-			safestrncpy((char*)WFIFOP(fd, 71), acc.last_ip, 16);
-			safestrncpy((char*)WFIFOP(fd, 87), acc.lastlogin, 24);
-			safestrncpy((char*)WFIFOP(fd, 111), acc.birthdate, 11);
+			safestrncpy(WFIFOCP(fd, 31), acc.email, 40);
+			safestrncpy(WFIFOCP(fd, 71), acc.last_ip, 16);
+			safestrncpy(WFIFOCP(fd, 87), acc.lastlogin, 24);
+			safestrncpy(WFIFOCP(fd, 111), acc.birthdate, 11);
 			if ((unsigned int)u_group >= acc.group_id) {
-				safestrncpy((char*)WFIFOP(fd, 122), acc.pass, 33);
-				safestrncpy((char*)WFIFOP(fd, 155), acc.pincode, PINCODE_LENGTH);
+				safestrncpy(WFIFOCP(fd, 122), acc.pass, 33);
+				safestrncpy(WFIFOCP(fd, 155), acc.pincode, PINCODE_LENGTH);
 			}
 			else {
 				memset(WFIFOP(fd, 122), '\0', 33);
 				memset(WFIFOP(fd, 155), '\0', PINCODE_LENGTH);
 			}
-			safestrncpy((char*)WFIFOP(fd, 155 + PINCODE_LENGTH), acc.userid, NAME_LENGTH);
+			safestrncpy(WFIFOCP(fd, 155 + PINCODE_LENGTH), acc.userid, NAME_LENGTH);
 			WFIFOSET(fd, len);
 		}
 		else {

+ 9 - 9
src/login/loginclif.c

@@ -211,7 +211,7 @@ static void logclif_auth_failed(struct login_session_data* sd, int result) {
 			struct mmo_account acc;
 			AccountDB* accounts = login_get_accounts_db();
 			time_t unban_time = ( accounts->load_str(accounts, &acc, sd->userid) ) ? acc.unban_time : 0;
-			timestamp2string((char*)WFIFOP(fd,6), 20, unban_time, login_config.date_format);
+			timestamp2string(WFIFOCP(fd,6), 20, unban_time, login_config.date_format);
 		}
 		WFIFOSET(fd,26);
 	}
@@ -226,7 +226,7 @@ static void logclif_auth_failed(struct login_session_data* sd, int result) {
 			struct mmo_account acc;
 			AccountDB* accounts = login_get_accounts_db();
 			time_t unban_time = ( accounts->load_str(accounts, &acc, sd->userid) ) ? acc.unban_time : 0;
-			timestamp2string((char*)WFIFOP(fd,3), 20, unban_time, login_config.date_format);
+			timestamp2string(WFIFOCP(fd,3), 20, unban_time, login_config.date_format);
 		}
 		WFIFOSET(fd,23);
 	}
@@ -299,8 +299,8 @@ static int logclif_parse_reqauth(int fd, struct login_session_data *sd, int comm
 
 		// Shinryo: For the time being, just use token as password.
 		if(command == 0x0825) {
-			char *accname = (char *)RFIFOP(fd, 9);
-			char *token = (char *)RFIFOP(fd, 0x5C);
+			char *accname = RFIFOCP(fd, 9);
+			char *token = RFIFOCP(fd, 0x5C);
 			size_t uAccLen = strlen(accname);
 			size_t uTokenLen = RFIFOREST(fd) - 0x5C;
 
@@ -319,10 +319,10 @@ static int logclif_parse_reqauth(int fd, struct login_session_data *sd, int comm
 		else
 		{
 			version = RFIFOL(fd,2);
-			safestrncpy(username, (const char*)RFIFOP(fd,6), NAME_LENGTH);
+			safestrncpy(username, RFIFOCP(fd,6), NAME_LENGTH);
 			if( israwpass )
 			{
-				safestrncpy(password, (const char*)RFIFOP(fd,30), PASSWD_LENGTH);
+				safestrncpy(password, RFIFOCP(fd,30), PASSWD_LENGTH);
 				clienttype = RFIFOB(fd,54);
 			}
 			else
@@ -409,15 +409,15 @@ static int logclif_parse_reqcharconnec(int fd, struct login_session_data *sd, ch
 		uint16 type;
 		uint16 new_;
 
-		safestrncpy(sd->userid, (char*)RFIFOP(fd,2), NAME_LENGTH);
-		safestrncpy(sd->passwd, (char*)RFIFOP(fd,26), NAME_LENGTH);
+		safestrncpy(sd->userid, RFIFOCP(fd,2), NAME_LENGTH);
+		safestrncpy(sd->passwd, RFIFOCP(fd,26), NAME_LENGTH);
 		if( login_config.use_md5_passwds )
 			MD5_String(sd->passwd, sd->passwd);
 		sd->passwdenc = 0;
 		sd->version = login_config.client_version_to_connect; // hack to skip version check
 		server_ip = ntohl(RFIFOL(fd,54));
 		server_port = ntohs(RFIFOW(fd,58));
-		safestrncpy(server_name, (char*)RFIFOP(fd,60), 20);
+		safestrncpy(server_name, RFIFOCP(fd,60), 20);
 		type = RFIFOW(fd,82);
 		new_ = RFIFOW(fd,84);
 		RFIFOSKIP(fd,86);

+ 4 - 4
src/map/battle.c

@@ -8459,9 +8459,9 @@ void rAthena_report(char* date, char *time_c) {
 	WBUFW(buf,2) = 6 + 12 + 9 + 24 + 4 + 4 + 4 + 4 + ( bd_size * ( BFLAG_LENGTH + 4 ) );
 	WBUFW(buf,4) = 0x9c;
 
-	safestrncpy((char*)WBUFP(buf,6), date, 12);
-	safestrncpy((char*)WBUFP(buf,6 + 12), time_c, 9);
-	safestrncpy((char*)WBUFP(buf,6 + 12 + 9), timestring, 24);
+	safestrncpy(WBUFCP(buf,6), date, 12);
+	safestrncpy(WBUFCP(buf,6 + 12), time_c, 9);
+	safestrncpy(WBUFCP(buf,6 + 12 + 9), timestring, 24);
 
 	WBUFL(buf,6 + 12 + 9 + 24)         = rev;
 	WBUFL(buf,6 + 12 + 9 + 24 + 4)     = map_getusers();
@@ -8470,7 +8470,7 @@ void rAthena_report(char* date, char *time_c) {
 	WBUFL(buf,6 + 12 + 9 + 24 + 4 + 4 + 4) = bd_size;
 
 	for( i = 0; i < bd_size; i++ ) {
-		safestrncpy((char*)WBUFP(buf,6 + 12 + 9+ 24  + 4 + 4 + 4 + 4 + ( i * ( BFLAG_LENGTH + 4 ) ) ), battle_data[i].str, 35);
+		safestrncpy(WBUFCP(buf,6 + 12 + 9+ 24  + 4 + 4 + 4 + 4 + ( i * ( BFLAG_LENGTH + 4 ) ) ), battle_data[i].str, 35);
 		WBUFL(buf,6 + 12 + 9 + 24 + 4 + 4 + 4 + 4 + BFLAG_LENGTH + ( i * ( BFLAG_LENGTH + 4 )  )  ) = *battle_data[i].val;
 	}
 

+ 6 - 6
src/map/chrif.c

@@ -861,7 +861,7 @@ int chrif_req_login_operation(int aid, const char* character_name, enum chrif_re
 	WFIFOHEAD(char_fd,44);
 	WFIFOW(char_fd,0) = 0x2b0e;
 	WFIFOL(char_fd,2) = aid;
-	safestrncpy((char*)WFIFOP(char_fd,6), character_name, NAME_LENGTH);
+	safestrncpy(WFIFOCP(char_fd,6), character_name, NAME_LENGTH);
 	WFIFOW(char_fd,30) = operation_type;
 
 	if ( operation_type == CHRIF_OP_LOGIN_BAN || operation_type == CHRIF_OP_LOGIN_VIP)
@@ -883,7 +883,7 @@ int chrif_changesex(struct map_session_data *sd, bool change_account) {
 	WFIFOHEAD(char_fd,44);
 	WFIFOW(char_fd,0) = 0x2b0e;
 	WFIFOL(char_fd,2) = sd->status.account_id;
-	safestrncpy((char*)WFIFOP(char_fd,6), sd->status.name, NAME_LENGTH);
+	safestrncpy(WFIFOCP(char_fd,6), sd->status.name, NAME_LENGTH);
 	WFIFOW(char_fd,30) = (change_account ? CHRIF_OP_LOGIN_CHANGESEX : CHRIF_OP_CHANGECHARSEX);
 	if (!change_account)
 		WFIFOB(char_fd,32) = sd->status.sex == SEX_MALE ? SEX_FEMALE : SEX_MALE;
@@ -1131,7 +1131,7 @@ int chrif_req_charban(int aid, const char* character_name, int32 timediff){
 	WFIFOW(char_fd,0) = 0x2b28;
 	WFIFOL(char_fd,2) = aid;
 	WFIFOL(char_fd,6) = timediff;
-	safestrncpy((char*)WFIFOP(char_fd,10), character_name, NAME_LENGTH);
+	safestrncpy(WFIFOCP(char_fd,10), character_name, NAME_LENGTH);
 	WFIFOSET(char_fd,10+NAME_LENGTH); //default 34
 	return 0;
 }
@@ -1142,7 +1142,7 @@ int chrif_req_charunban(int aid, const char* character_name){
 	WFIFOHEAD(char_fd,6+NAME_LENGTH);
 	WFIFOW(char_fd,0) = 0x2b2a;
 	WFIFOL(char_fd,2) = aid;
-	safestrncpy((char*)WFIFOP(char_fd,6), character_name, NAME_LENGTH);
+	safestrncpy(WFIFOCP(char_fd,6), character_name, NAME_LENGTH);
 	WFIFOSET(char_fd,6+NAME_LENGTH);
 	return 0;
 }
@@ -1805,10 +1805,10 @@ int chrif_parse(int fd) {
 			case 0x2b03: clif_charselectok(RFIFOL(fd,2), RFIFOB(fd,6)); break;
 			case 0x2b04: chrif_recvmap(fd); break;
 			case 0x2b06: chrif_changemapserverack(RFIFOL(fd,2), RFIFOL(fd,6), RFIFOL(fd,10), RFIFOL(fd,14), RFIFOW(fd,18), RFIFOW(fd,20), RFIFOW(fd,22), RFIFOL(fd,24), RFIFOW(fd,28)); break;
-			case 0x2b09: map_addnickdb(RFIFOL(fd,2), (char*)RFIFOP(fd,6)); break;
+			case 0x2b09: map_addnickdb(RFIFOL(fd,2), RFIFOCP(fd,6)); break;
 			case 0x2b0b: chrif_skillcooldown_load(fd); break;
 			case 0x2b0d: chrif_changedsex(fd); break;
-			case 0x2b0f: chrif_ack_login_req(RFIFOL(fd,2), (char*)RFIFOP(fd,6), RFIFOW(fd,30), RFIFOW(fd,32)); break;
+			case 0x2b0f: chrif_ack_login_req(RFIFOL(fd,2), RFIFOCP(fd,6), RFIFOW(fd,30), RFIFOW(fd,32)); break;
 			case 0x2b12: chrif_divorceack(RFIFOL(fd,2), RFIFOL(fd,6)); break;
 			case 0x2b14: chrif_ban(fd); break;
 			case 0x2b1b: chrif_recvfamelist(fd); break;

Failā izmaiņas netiks attēlotas, jo tās ir par lielu
+ 131 - 131
src/map/clif.c


+ 36 - 36
src/map/intif.c

@@ -400,7 +400,7 @@ int intif_saveregistry(struct map_session_data *sd)
 		WFIFOB(inter_fd, plen) = (unsigned char)len; // won't be higher; the column size is 32
 		plen += 1;
 
-		safestrncpy((char*)WFIFOP(inter_fd,plen), varname, len);
+		safestrncpy(WFIFOCP(inter_fd,plen), varname, len);
 		plen += len;
 
 		WFIFOL(inter_fd, plen) = script_getvaridx(key.i64);
@@ -418,7 +418,7 @@ int intif_saveregistry(struct map_session_data *sd)
 				WFIFOB(inter_fd, plen) = (unsigned char)len; // won't be higher; the column size is 254
 				plen += 1;
 
-				safestrncpy((char*)WFIFOP(inter_fd,plen), p->value, len);
+				safestrncpy(WFIFOCP(inter_fd,plen), p->value, len);
 				plen += len;
 			} else {
 				script_reg_destroy_single(sd,key.i64,&p->flag);
@@ -629,7 +629,7 @@ int intif_party_leave(int party_id, uint32 account_id, uint32 char_id, char *nam
 	WFIFOL(inter_fd,2) = party_id;
 	WFIFOL(inter_fd,6) = account_id;
 	WFIFOL(inter_fd,10) = char_id;
-	memcpy((char *)WFIFOP(inter_fd,14), name, NAME_LENGTH);
+	memcpy(WFIFOCP(inter_fd,14), name, NAME_LENGTH);
 	WFIFOB(inter_fd,14+NAME_LENGTH) = type;
 	WFIFOSET(inter_fd,15+NAME_LENGTH);
 	return 1;
@@ -844,7 +844,7 @@ int intif_guild_leave(int guild_id,uint32 account_id,uint32 char_id,int flag,con
 	WFIFOL(inter_fd, 6) = account_id;
 	WFIFOL(inter_fd,10) = char_id;
 	WFIFOB(inter_fd,14) = flag;
-	safestrncpy((char*)WFIFOP(inter_fd,15),mes,40);
+	safestrncpy(WFIFOCP(inter_fd,15),mes,40);
 	WFIFOSET(inter_fd,55);
 	return 1;
 }
@@ -1212,7 +1212,7 @@ int intif_parse_WisMessage(int fd)
 
 	id=RFIFOL(fd,4);
 
-	safestrncpy(name, (char*)RFIFOP(fd,32), NAME_LENGTH);
+	safestrncpy(name, RFIFOCP(fd,32), NAME_LENGTH);
 	sd = map_nick2sd(name);
 	if(sd == NULL || strcmp(sd->status.name, name) != 0)
 	{	//Not found
@@ -1223,7 +1223,7 @@ int intif_parse_WisMessage(int fd)
 		intif_wis_replay(id, 2);
 		return 0;
 	}
-	wisp_source = (char *) RFIFOP(fd,8); // speed up [Yor]
+	wisp_source = RFIFOCP(fd,8); // speed up [Yor]
 	for(i=0; i < MAX_IGNORE_LIST &&
 		sd->ignore[i].name[0] != '\0' &&
 		strcmp(sd->ignore[i].name, wisp_source) != 0
@@ -1235,7 +1235,7 @@ int intif_parse_WisMessage(int fd)
 		return 0;
 	}
 	//Success to send whisper.
-	clif_wis_message(sd->fd, wisp_source, (char*)RFIFOP(fd,56),RFIFOW(fd,2)-56);
+	clif_wis_message(sd->fd, wisp_source, RFIFOCP(fd,56),RFIFOW(fd,2)-56);
 	intif_wis_replay(id,0);   // success
 	return 1;
 }
@@ -1251,7 +1251,7 @@ int intif_parse_WisEnd(int fd)
 
 	if (battle_config.etc_log)
 		ShowInfo("intif_parse_wisend: player: %s, flag: %d\n", RFIFOP(fd,2), RFIFOB(fd,26)); // flag: 0: success to send wisper, 1: target character is not loged in?, 2: ignored by target
-	sd = (struct map_session_data *)map_nick2sd((char *) RFIFOP(fd,2));
+	sd = (struct map_session_data *)map_nick2sd(RFIFOCP(fd,2));
 	if (sd != NULL)
 		clif_wis_end(sd->fd, RFIFOB(fd,26));
 
@@ -1298,8 +1298,8 @@ int mapif_parse_WisToGM(int fd)
 	message = (char *) aMalloc(mes_len+1);
 
 	permission = RFIFOL(fd,4+NAME_LENGTH);
-	safestrncpy(Wisp_name, (char*)RFIFOP(fd,4), NAME_LENGTH);
-	safestrncpy(message, (char*)RFIFOP(fd,8+NAME_LENGTH), mes_len+1);
+	safestrncpy(Wisp_name, RFIFOCP(fd,4), NAME_LENGTH);
+	safestrncpy(message, RFIFOCP(fd,8+NAME_LENGTH), mes_len+1);
 	// information is sent to all online GM
 	map_foreachpc(mapif_parse_WisToGM_sub, permission, Wisp_name, message, mes_len);
 	aFree(message);
@@ -1365,13 +1365,13 @@ void intif_parse_Registers(int fd)
 		if (type) {
 			for(i = 0; i < max; i++) {
 				char sval[254];
-				safestrncpy(key, (char*)RFIFOP(fd, cursor + 1), RFIFOB(fd, cursor));
+				safestrncpy(key, RFIFOCP(fd, cursor + 1), RFIFOB(fd, cursor));
 				cursor += RFIFOB(fd, cursor) + 1;
 
 				index = RFIFOL(fd, cursor);
 				cursor += 4;
 
-				safestrncpy(sval, (char*)RFIFOP(fd, cursor + 1), RFIFOB(fd, cursor));
+				safestrncpy(sval, RFIFOCP(fd, cursor + 1), RFIFOB(fd, cursor));
 				cursor += RFIFOB(fd, cursor) + 1;
 
 				set_reg(NULL,sd,reference_uid(add_str(key), index), key, (void*)sval, NULL);
@@ -1385,7 +1385,7 @@ void intif_parse_Registers(int fd)
 		} else {
 			for(i = 0; i < max; i++) {
 				int ival;
-				safestrncpy(key, (char*)RFIFOP(fd, cursor + 1), RFIFOB(fd, cursor));
+				safestrncpy(key, RFIFOCP(fd, cursor + 1), RFIFOB(fd, cursor));
 				cursor += RFIFOB(fd, cursor) + 1;
 
 				index = RFIFOL(fd, cursor);
@@ -1474,7 +1474,7 @@ int intif_parse_PartyCreated(int fd)
 {
 	if(battle_config.etc_log)
 		ShowInfo("intif: party created by account %d\n\n", RFIFOL(fd,2));
-	party_created(RFIFOL(fd,2), RFIFOL(fd,6),RFIFOB(fd,10),RFIFOL(fd,11), (char *)RFIFOP(fd,15));
+	party_created(RFIFOL(fd,2), RFIFOL(fd,6),RFIFOB(fd,10),RFIFOL(fd,11), RFIFOCP(fd,15));
 	return 1;
 }
 
@@ -1529,8 +1529,8 @@ int intif_parse_PartyOptionChanged(int fd)
 int intif_parse_PartyMemberWithdraw(int fd)
 {
 	if(battle_config.etc_log)
-		ShowInfo("intif: party member withdraw: Type(%d) Party(%d), Account(%d), Char(%d), Name(%s)\n",RFIFOB(fd,14+NAME_LENGTH),RFIFOL(fd,2),RFIFOL(fd,6),RFIFOL(fd,10),(char*)RFIFOP(fd,14));
-	party_member_withdraw(RFIFOL(fd,2),RFIFOL(fd,6),RFIFOL(fd,10),(char*)RFIFOP(fd,14),(enum e_party_member_withdraw)RFIFOB(fd,14+NAME_LENGTH));
+		ShowInfo("intif: party member withdraw: Type(%d) Party(%d), Account(%d), Char(%d), Name(%s)\n",RFIFOB(fd,14+NAME_LENGTH),RFIFOL(fd,2),RFIFOL(fd,6),RFIFOL(fd,10),RFIFOCP(fd,14));
+	party_member_withdraw(RFIFOL(fd,2),RFIFOL(fd,6),RFIFOL(fd,10),RFIFOCP(fd,14),(enum e_party_member_withdraw)RFIFOB(fd,14+NAME_LENGTH));
 	return 1;
 }
 
@@ -1563,7 +1563,7 @@ int intif_parse_PartyMove(int fd)
  */
 int intif_parse_PartyMessage(int fd)
 {
-	party_recv_message(RFIFOL(fd,4),RFIFOL(fd,8),(char *) RFIFOP(fd,12),RFIFOW(fd,2)-12);
+	party_recv_message(RFIFOL(fd,4),RFIFOL(fd,8),RFIFOCP(fd,12),RFIFOW(fd,2)-12);
 	return 1;
 }
 
@@ -1616,7 +1616,7 @@ int intif_parse_GuildMemberAdded(int fd)
  */
 int intif_parse_GuildMemberWithdraw(int fd)
 {
-	guild_member_withdraw(RFIFOL(fd,2),RFIFOL(fd,6),RFIFOL(fd,10),RFIFOB(fd,14),(char *)RFIFOP(fd,55),(char *)RFIFOP(fd,15));
+	guild_member_withdraw(RFIFOL(fd,2),RFIFOL(fd,6),RFIFOL(fd,10),RFIFOB(fd,14),RFIFOCP(fd,55),RFIFOCP(fd,15));
 	return 1;
 }
 
@@ -1737,7 +1737,7 @@ int intif_parse_GuildSkillUp(int fd)
  */
 int intif_parse_GuildAlliance(int fd)
 {
-	guild_allianceack(RFIFOL(fd,2),RFIFOL(fd,6),RFIFOL(fd,10),RFIFOL(fd,14),RFIFOB(fd,18),(char *) RFIFOP(fd,19),(char *) RFIFOP(fd,43));
+	guild_allianceack(RFIFOL(fd,2),RFIFOL(fd,6),RFIFOL(fd,10),RFIFOL(fd,14),RFIFOB(fd,18),RFIFOCP(fd,19),RFIFOCP(fd,43));
 	return 1;
 }
 
@@ -1748,7 +1748,7 @@ int intif_parse_GuildAlliance(int fd)
  */
 int intif_parse_GuildNotice(int fd)
 {
-	guild_notice_changed(RFIFOL(fd,2),(char *) RFIFOP(fd,6),(char *) RFIFOP(fd,66));
+	guild_notice_changed(RFIFOL(fd,2),RFIFOCP(fd,6),RFIFOCP(fd,66));
 	return 1;
 }
 
@@ -1759,7 +1759,7 @@ int intif_parse_GuildNotice(int fd)
  */
 int intif_parse_GuildEmblem(int fd)
 {
-	guild_emblem_changed(RFIFOW(fd,2)-12,RFIFOL(fd,4),RFIFOL(fd,8), (char *)RFIFOP(fd,12));
+	guild_emblem_changed(RFIFOW(fd,2)-12,RFIFOL(fd,4),RFIFOL(fd,8), RFIFOCP(fd,12));
 	return 1;
 }
 
@@ -1770,7 +1770,7 @@ int intif_parse_GuildEmblem(int fd)
  */
 int intif_parse_GuildMessage(int fd)
 {
-	guild_recv_message(RFIFOL(fd,4),RFIFOL(fd,8),(char *) RFIFOP(fd,12),RFIFOW(fd,2)-12);
+	guild_recv_message(RFIFOL(fd,4),RFIFOL(fd,8),RFIFOCP(fd,12),RFIFOW(fd,2)-12);
 	return 1;
 }
 
@@ -1869,10 +1869,10 @@ int intif_parse_ChangeNameOk(int fd)
 	case 0: //Players [NOT SUPPORTED YET]
 		break;
 	case 1: //Pets
-		pet_change_name_ack(sd, (char*)RFIFOP(fd,12), RFIFOB(fd,11));
+		pet_change_name_ack(sd, RFIFOCP(fd,12), RFIFOB(fd,11));
 		break;
 	case 2: //Hom
-		hom_change_name_ack(sd, (char*)RFIFOP(fd,12), RFIFOB(fd,11));
+		hom_change_name_ack(sd, RFIFOCP(fd,12), RFIFOB(fd,11));
 		break;
 	}
 	return 1;
@@ -2374,8 +2374,8 @@ static void intif_parse_Mail_new(int fd)
 {
 	struct map_session_data *sd = map_charid2sd(RFIFOL(fd,2));
 	int mail_id = RFIFOL(fd,6);
-	const char* sender_name = (char*)RFIFOP(fd,10);
-	const char* title = (char*)RFIFOP(fd,34);
+	const char* sender_name = RFIFOCP(fd,10);
+	const char* title = RFIFOCP(fd,34);
 
 	if( sd == NULL )
 		return;
@@ -2913,7 +2913,7 @@ int intif_request_accinfo(int u_fd, int aid, int group_lv, char* query, char typ
 	WFIFOL(inter_fd,6) = aid;
 	WFIFOL(inter_fd,10) = group_lv;
 	WFIFOB(inter_fd,14) = type;
-	safestrncpy((char *)WFIFOP(inter_fd,15), query, NAME_LENGTH);
+	safestrncpy(WFIFOCP(inter_fd,15), query, NAME_LENGTH);
 
 	WFIFOSET(inter_fd,2 + 4 + 4 + 4 + 1 + NAME_LENGTH);
 	return 1;
@@ -2927,7 +2927,7 @@ void intif_parse_accinfo_ack( int fd ) {
 	char acc_name[NAME_LENGTH];
 	int u_fd = RFIFOL(fd,2);
 	int acc_id = RFIFOL(fd,6);
-	safestrncpy(acc_name, (char*)RFIFOP(fd,10), NAME_LENGTH);
+	safestrncpy(acc_name, RFIFOCP(fd,10), NAME_LENGTH);
 	clif_account_name(u_fd, acc_id, acc_name);
 }
 
@@ -2944,7 +2944,7 @@ void intif_parse_MessageToFD(int fd) {
 		/* matching e.g. previous fd owner didn't dc during request or is still the same */
 		if( sd->bl.id == aid ) {
 			char msg[512];
-			safestrncpy(msg, (char*)RFIFOP(fd,12), RFIFOW(fd,2) - 12);
+			safestrncpy(msg, RFIFOCP(fd,12), RFIFOW(fd,2) - 12);
 			clif_displaymessage(u_fd,msg);
 		}
 
@@ -2988,7 +2988,7 @@ int intif_broadcast_obtain_special_item(struct map_session_data *sd, unsigned sh
 	WFIFOW(inter_fd, 4) = nameid;
 	WFIFOW(inter_fd, 6) = sourceid;
 	WFIFOB(inter_fd, 8) = type;
-	safestrncpy((char *)WFIFOP(inter_fd, 9), sd->status.name, NAME_LENGTH);
+	safestrncpy(WFIFOCP(inter_fd, 9), sd->status.name, NAME_LENGTH);
 	WFIFOSET(inter_fd, WFIFOW(inter_fd, 2));
 
 	return 1;
@@ -3021,8 +3021,8 @@ int intif_broadcast_obtain_special_item_npc(struct map_session_data *sd, unsigne
 	WFIFOW(inter_fd, 4) = nameid;
 	WFIFOW(inter_fd, 6) = 0;
 	WFIFOB(inter_fd, 8) = ITEMOBTAIN_TYPE_NPC;
-	safestrncpy((char *)WFIFOP(inter_fd, 9), sd->status.name, NAME_LENGTH);
-	safestrncpy((char *)WFIFOP(inter_fd, 9 + NAME_LENGTH), srcname, NAME_LENGTH);
+	safestrncpy(WFIFOCP(inter_fd, 9), sd->status.name, NAME_LENGTH);
+	safestrncpy(WFIFOCP(inter_fd, 9 + NAME_LENGTH), srcname, NAME_LENGTH);
 	WFIFOSET(inter_fd, WFIFOW(inter_fd, 2));
 
 	return 1;
@@ -3037,9 +3037,9 @@ void intif_parse_broadcast_obtain_special_item(int fd) {
 	int type = RFIFOB(fd, 8);
 	char name[NAME_LENGTH], srcname[NAME_LENGTH];
 
-	safestrncpy(name, (char *)RFIFOP(fd, 9), NAME_LENGTH);
+	safestrncpy(name, RFIFOCP(fd, 9), NAME_LENGTH);
 	if (type == ITEMOBTAIN_TYPE_NPC)
-		safestrncpy(name, (char *)RFIFOP(fd, 9 + NAME_LENGTH), NAME_LENGTH);
+		safestrncpy(name, RFIFOCP(fd, 9 + NAME_LENGTH), NAME_LENGTH);
 
 	clif_broadcast_obtain_special_item(name, RFIFOW(fd, 4), RFIFOW(fd, 6), (enum BROADCASTING_SPECIAL_ITEM_OBTAIN)type, srcname);
 }
@@ -3150,9 +3150,9 @@ int intif_parse(int fd)
 	switch(cmd){
 	case 0x3800:
 		if (RFIFOL(fd,4) == 0xFF000000) //Normal announce.
-			clif_broadcast(NULL, (char *) RFIFOP(fd,16), packet_len-16, BC_DEFAULT, ALL_CLIENT);
+			clif_broadcast(NULL, RFIFOCP(fd,16), packet_len-16, BC_DEFAULT, ALL_CLIENT);
 		else //Color announce.
-			clif_broadcast2(NULL, (char *) RFIFOP(fd,16), packet_len-16, RFIFOL(fd,4), RFIFOW(fd,8), RFIFOW(fd,10), RFIFOW(fd,12), RFIFOW(fd,14), ALL_CLIENT);
+			clif_broadcast2(NULL, RFIFOCP(fd,16), packet_len-16, RFIFOL(fd,4), RFIFOW(fd,8), RFIFOW(fd,10), RFIFOW(fd,12), RFIFOW(fd,14), ALL_CLIENT);
 		break;
 	case 0x3801:	intif_parse_WisMessage(fd); break;
 	case 0x3802:	intif_parse_WisEnd(fd); break;

Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels