コード例 #1
0
ファイル: client.c プロジェクト: Lithios/circbot
/**********************************************************************
*rejoin a channel upon being kicked,                                  *
*the parameters are as follows, p is the input buffer from the socket *
*p2 is the string to be built and compared with the buffer, and will  *
*be used to build the rejoin command. p3 is the channel name, p4 is   *
*the JOIN command, ni is hte nick, and i is the socket file descriptor*
**********************************************************************/
void rejoinchan(char *p, char *p2, char *p3, char *p4, char *ni, int i){
if(strstr(p, "KICK " ) !='\0'){
printf("%s\n", "I have been kicked" );
if(strstr(p, strncat(strncat(strncat(p2, p3, strlen(p3)), " ", strlen(" ")), ni, strlen(ni))) != '\0'){
nullstring(p2);
strncat(strncat(strncat(p2,p4,strlen(p4)),p3 ,strlen(p3)), "\r\n", strlen("\r\n"));
if(send(i, p2, strlen(p2), 0)  > 0)
printf("%s%s\n","Rejoining channel: ", p3);
else exit(1);
nullstring(p2);
}
}
}
コード例 #2
0
ファイル: decoder.c プロジェクト: puring0815/OpenKore
int databody(int c)
{
         if(c==1) return labeldata();
   else if (c==2) return bytex();
   else if (c==3) return byte();
   else if (c==4) return pascalstring();
   else if (c==5) return nullstring();
   else if (c==6) return worddata();
   else return 0;
}
コード例 #3
0
ファイル: client.c プロジェクト: Lithios/circbot
void startconnect(char *b, char *c, char *n, char *nick,char *user,char *jn, char *j, int *s,struct sockaddr_in *ta){
if ((*s = socket(AF_INET, SOCK_STREAM, 0)) == -1) {
perror("socket");
exit(1);
}
if (connect(*s, (struct sockaddr *)ta,sizeof(struct sockaddr)) == -1) {
perror("connect");
exit(1);
}
nullstring(c);
strncat(strncat(strncat(c,n,strlen(n)),nick ,strlen(nick)), "\r\n", strlen("\r\n"));
send(*s, c, strlen(c), 0);
send(*s,user,strlen(user), 0);
int i;
for(i = 0; i < 10000; i++);
nullstring(c);
strncat(strncat(strncat(c,jn,strlen(jn)),j ,strlen(j)), "\r\n", strlen("\r\n"));
send(*s, c, strlen(c), 0);
nullstring(c);
printf("%s\n", "Joined Channel\n");