Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-ports-kde
Path: blob/main/games/0verkill/files/patch-server.c
16461 views
1
--- server.c.orig 2001-12-16 18:18:45.000000000 +0300
2
+++ server.c 2013-11-24 22:37:06.306435317 +0400
3
@@ -907,6 +907,8 @@
4
packet[0]=P_MESSAGE;
5
if (!name){snprintf(packet+1,256,"%s",msg);len=strlen(msg)+1+1;}
6
else {snprintf(packet+1,256,"%s> %s",name,msg);len=strlen(name)+strlen(msg)+1+3;}
7
+ if (len > 255)
8
+ len = 255;
9
send_chunk_packet_to_player(packet,len,player);
10
}
11
12
@@ -921,6 +923,8 @@
13
packet[0]=P_MESSAGE;
14
if (!name){snprintf(packet+1,255,"%s",msg);len=strlen(msg)+1+1;}
15
else {snprintf(packet+1,255,"%s> %s",name,msg);len=strlen(name)+strlen(msg)+1+3;}
16
+ if (len > 255)
17
+ len = 255;
18
for (p=&players;p->next;p=p->next)
19
if ((!not1||(&(p->next->member))!=not1)&&(!not2||(&(p->next->member))!=not2))
20
send_chunk_packet_to_player(packet,len,&(p->next->member));
21
@@ -1228,6 +1232,12 @@
22
send_packet(packet,2,(struct sockaddr*)(&client),0,last_player->member.id);
23
break;
24
}
25
+ if (strlen(packet+5) > MAX_NAME_LEN)
26
+ {
27
+ snprintf(txt,256,"Name too long, shortening it to %i characters\n",MAX_NAME_LEN);
28
+ message(txt,2);
29
+ packet[5+MAX_NAME_LEN]='\0';
30
+ }
31
find_birthplace(&x,&y);
32
if (add_player(packet[4],packet+5,&client,x,y)) /* failed to add player */
33
{
34
35