clean a bit std::cout

This commit is contained in:
kinou-p 2023-03-09 06:07:26 +01:00
parent d3f4e3769e
commit 4517fa302f
18 changed files with 127 additions and 98 deletions

View File

@ -6,7 +6,7 @@
/* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */ /* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2022/12/01 17:27:37 by apommier #+# #+# */ /* Created: 2022/12/01 17:27:37 by apommier #+# #+# */
/* Updated: 2023/03/09 03:07:21 by apommier ### ########.fr */ /* Updated: 2023/03/09 05:45:36 by apommier ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -42,8 +42,8 @@
#define MAX_CHAN 10 #define MAX_CHAN 10
#define READ_SIZE 10 #define READ_SIZE 10
#define CMD_NBR 10 #define CMD_NBR 10
#define OP_PASSWORD "password" #define OP_PASSWORD "q"
#define OP_NAME "operator" #define OP_NAME "q"
// if (!allFds.userData[userNbr].registered) // if (!allFds.userData[userNbr].registered)
@ -78,7 +78,7 @@ struct chanMode
s(0), s(0),
i(0), i(0),
t(0), t(0),
n(0), n(1),
m(0), m(0),
l(0), l(0),
b(0), b(0),

View File

@ -6,7 +6,7 @@
/* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */ /* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2022/12/09 22:34:36 by apommier #+# #+# */ /* Created: 2022/12/09 22:34:36 by apommier #+# #+# */
/* Updated: 2023/02/16 23:01:04 by apommier ### ########.fr */ /* Updated: 2023/03/09 05:00:20 by apommier ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -43,7 +43,6 @@ bool clientRequest(fdList &allFds, int userNbr)//,
// std::cout << "buffer empty\n"; // std::cout << "buffer empty\n";
return (1); return (1);
} }
std::cout << "BUFFER: ---" << buf << "---" << std::endl;
// for (int i = 0; buffer[i]; i++) // for (int i = 0; buffer[i]; i++)
// { // {
// std::cout << i << " = " << (int)buffer[i] << std::endl; // std::cout << i << " = " << (int)buffer[i] << std::endl;

View File

@ -6,7 +6,7 @@
/* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */ /* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2023/02/12 23:30:11 by apommier #+# #+# */ /* Created: 2023/02/12 23:30:11 by apommier #+# #+# */
/* Updated: 2023/02/15 00:15:32 by apommier ### ########.fr */ /* Updated: 2023/03/09 05:01:54 by apommier ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -53,7 +53,7 @@ void print_registered_msg(fdList &allFds, int userNbr)
void connect_client(fdList &allFds, int userNbr) void connect_client(fdList &allFds, int userNbr)
{ {
std::cout << "connect client start\n"; //std::cout << "connect client start\n";
if (allFds.userData[userNbr].password.empty() || allFds.userData[userNbr].password != allFds.password) if (allFds.userData[userNbr].password.empty() || allFds.userData[userNbr].password != allFds.password)
{ {
@ -66,6 +66,6 @@ void connect_client(fdList &allFds, int userNbr)
allFds.userData[userNbr].registered = 1; allFds.userData[userNbr].registered = 1;
print_registered_msg(allFds, userNbr); print_registered_msg(allFds, userNbr);
std::cout << "connect client end\n"; //std::cout << "connect client end\n";
//ft_putstr_fd(allFds.userData[userNbr].fd, ":irc.local NOTICE kinou :*** Could not resolve your hostname: Request timed out; using your IP address (172.17.0.1) instead.\nirc.local 376 kinou :End of message of the day."); //ft_putstr_fd(allFds.userData[userNbr].fd, ":irc.local NOTICE kinou :*** Could not resolve your hostname: Request timed out; using your IP address (172.17.0.1) instead.\nirc.local 376 kinou :End of message of the day.");
} }

View File

@ -6,7 +6,7 @@
/* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */ /* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2023/02/06 14:40:39 by apommier #+# #+# */ /* Created: 2023/02/06 14:40:39 by apommier #+# #+# */
/* Updated: 2023/02/14 01:25:22 by apommier ### ########.fr */ /* Updated: 2023/03/09 05:01:38 by apommier ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -30,8 +30,8 @@ void USER(std::string buffer, fdList &allFds, int userNbr)
buffer.resize(buffer.size() - realName.size()); buffer.resize(buffer.size() - realName.size());
std::cout << "Buffer in userNbr = ---" << buffer << "---" << std::endl; //std::cout << "Buffer in userNbr = ---" << buffer << "---" << std::endl;
std::cout << "realname in userNbr = ---" << realName << "---" << std::endl; //std::cout << "realname in userNbr = ---" << realName << "---" << std::endl;
split(buffer, ' ', splitBuff); split(buffer, ' ', splitBuff);
if (splitBuff.size() < 4) if (splitBuff.size() < 4)
{ {

View File

@ -6,7 +6,7 @@
/* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */ /* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2023/02/09 17:21:57 by apommier #+# #+# */ /* Created: 2023/02/09 17:21:57 by apommier #+# #+# */
/* Updated: 2023/02/21 02:02:38 by apommier ### ########.fr */ /* Updated: 2023/03/09 05:17:20 by apommier ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -35,51 +35,68 @@ int is_joined(fdList &allFds, std::string chanName, int userNbr)
{ {
std::vector<channelData*>::iterator start = allFds.userData[userNbr].joinedChan.begin(); std::vector<channelData*>::iterator start = allFds.userData[userNbr].joinedChan.begin();
std::vector<channelData*>::iterator pastEnd = allFds.userData[userNbr].joinedChan.end(); std::vector<channelData*>::iterator pastEnd = allFds.userData[userNbr].joinedChan.end();
std::cout << "name1= ---" << chanName << "---\n"; //std::cout << "name1= ---" << chanName << "---\n";
while (start != pastEnd) while (start != pastEnd)
{ {
std::cout << "result in find chan = " << pastEnd - start << std::endl; //std::cout << "result in find chan = " << pastEnd - start << std::endl;
std::cout << "test is joined= " << allFds.userData[userNbr].joinedChan[pastEnd - start - 1]->name << "---\n"; //std::cout << "test is joined= " << allFds.userData[userNbr].joinedChan[pastEnd - start - 1]->name << "---\n";
if (allFds.userData[userNbr].joinedChan[pastEnd - start - 1]->name == chanName) if (allFds.userData[userNbr].joinedChan[pastEnd - start - 1]->name == chanName)
return (pastEnd - start - 1); return (pastEnd - start - 1);
start++; start++;
} }
std::cout << "chan not found in is joined\n"; //std::cout << "chan not found in is joined\n";
return (-1); return (-1);
} }
int find_channel(fdList &allFds, std::string chanName)//return channel nbr int find_channel(fdList &allFds, std::string chanName)//return channel nbr
{ {
std::_List_iterator<channelData> start = allFds.channelList.begin(); // std::_List_iterator<channelData> start = allFds.channelList.begin();
std::_List_iterator<channelData> pastEnd = allFds.channelList.end(); // std::_List_iterator<channelData> pastEnd = allFds.channelList.end();
std::cout << "name1= ---" << chanName << "---\n"; // //std::cout << "name1= ---" << chanName << "---\n";
while (start != pastEnd) // while (start != pastEnd)
// {
// //std::cout << "chan = ---" << allFds.channelList[pastEnd - start - 1].name << "---" << std::endl;
// //std::cout << "test = " << allFds.channelList[pastEnd - start - 1].name << "---\n";
// if (allFds.channelList[pastEnd - start - 1].name == chanName)
// return (pastEnd - start - 1);
// start++;
// }
// //std::cout << "chan not found in find \n";
// return (-1);
int size = allFds.channelList.size();
for (int i = 0; i < size; i++)
{ {
std::cout << "chan = ---" << allFds.channelList[pastEnd - start - 1].name << "---" << std::endl; if (allFds.channelList[i].name == chanName)
std::cout << "test = " << allFds.channelList[pastEnd - start - 1].name << "---\n"; return (i);
if (allFds.channelList[pastEnd - start - 1].name == chanName)
return (pastEnd - start - 1);
start++;
} }
std::cout << "chan not found in find \n";
return (-1); return (-1);
} }
int find_user(fdList &allFds, std::string userName)//return direct user fd int find_user(fdList &allFds, std::string userName)//return direct user fd
{ {
std::_List_iterator<clientData> start = allFds.userData.begin(); // std::_List_iterator<clientData> start = allFds.userData.begin();
std::_List_iterator<clientData> pastEnd = allFds.userData.end(); // std::_List_iterator<clientData> pastEnd = allFds.userData.end();
std::cout << "name1= ---" << userName << "---\n"; // //std::cout << "name1= ---" << userName << "---\n";
while (start != pastEnd) // while (start != pastEnd)
// {
// //std::cout << "result in find user = " << pastEnd - start << std::endl;
// //std::cout << "name2= ---" << allFds.userData[pastEnd - start - 1].nickname << "---\n";
// if (allFds.userData[pastEnd - start - 1].nickname == userName)
// return (pastEnd - start - 1);
// start++;
// }
// //std::cout << "user not found\n";
// return (-1);
int size = allFds.userData.size();
for (int i = 0; i < size; i++)
{ {
std::cout << "result in find user = " << pastEnd - start << std::endl; if (allFds.userData[i].nickname == userName)
std::cout << "name2= ---" << allFds.userData[pastEnd - start - 1].nickname << "---\n"; return (i);
if (allFds.userData[pastEnd - start - 1].nickname == userName)
return (pastEnd - start - 1);
start++;
} }
std::cout << "user not found\n";
return (-1); return (-1);
} }

View File

@ -6,7 +6,7 @@
/* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */ /* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2023/02/09 15:40:33 by apommier #+# #+# */ /* Created: 2023/02/09 15:40:33 by apommier #+# #+# */
/* Updated: 2023/03/03 19:37:23 by apommier ### ########.fr */ /* Updated: 2023/03/09 05:18:05 by apommier ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -116,7 +116,7 @@ void join_or_create(std::string buffer, fdList &allFds, int userNbr)
for (int i = 0; i < joined_chan.nbrUser; i++) for (int i = 0; i < joined_chan.nbrUser; i++)
{ {
send(joined_chan.userList[i]->fd, fullMsg.c_str(), fullMsg.size(), 0); send(joined_chan.userList[i]->fd, fullMsg.c_str(), fullMsg.size(), 0);
std::cout << "loop here\n"; //std::cout << "loop here\n";
} }
if (chanNbr == -1) if (chanNbr == -1)
@ -140,8 +140,8 @@ void join_loop(fdList &allFds, std::vector<std::string> splitBuff, int userNbr)
std::vector<std::string> splitPwd; std::vector<std::string> splitPwd;
std::string buffer; std::string buffer;
std::cout << "join loop buf= " << splitBuff[1] << std::endl; //std::cout << "join loop buf= " << splitBuff[1] << std::endl;
std::cout << "==========join loop========\n"; //std::cout << "==========join loop========\n";
split(splitBuff[1], ',', splitChan); split(splitBuff[1], ',', splitChan);
split(splitBuff[1], ',', splitPwd); split(splitBuff[1], ',', splitPwd);
if (splitBuff[1] == "0") if (splitBuff[1] == "0")
@ -149,9 +149,9 @@ void join_loop(fdList &allFds, std::vector<std::string> splitBuff, int userNbr)
leave_all(allFds, userNbr); leave_all(allFds, userNbr);
return ; return ;
} }
std::cout << "==========join loop2========\n"; //std::cout << "==========join loop2========\n";
std::cout << "size= " << splitChan.size() << std::endl; //std::cout << "size= " << splitChan.size() << std::endl;
std::cout << "content= " << splitChan[0] << std::endl; //std::cout << "content= " << splitChan[0] << std::endl;
for (size_t i = 0; i < splitChan.size(); i++) for (size_t i = 0; i < splitChan.size(); i++)
{ {
if (splitChan[i][0] != '#' && splitChan[i][0] != '&') if (splitChan[i][0] != '#' && splitChan[i][0] != '&')
@ -160,7 +160,7 @@ void join_loop(fdList &allFds, std::vector<std::string> splitBuff, int userNbr)
buffer = "476 * JOIN " + splitChan[i] + " ::Bad Channel Mask\n"; buffer = "476 * JOIN " + splitChan[i] + " ::Bad Channel Mask\n";
cmd_error(allFds, allFds.userData[userNbr].fd, buffer); cmd_error(allFds, allFds.userData[userNbr].fd, buffer);
//:Bad Channel Mask //:Bad Channel Mask
std::cout << "bad chan mask\n"; //std::cout << "bad chan mask\n";
return ; return ;
} }
if (i < splitPwd.size()) if (i < splitPwd.size())
@ -168,9 +168,9 @@ void join_loop(fdList &allFds, std::vector<std::string> splitBuff, int userNbr)
else else
buffer = "JOIN " + splitChan[i]; buffer = "JOIN " + splitChan[i];
join_or_create(buffer, allFds, userNbr); join_or_create(buffer, allFds, userNbr);
std::cout << "i= " << i << " ==========join loop3========\n"; //std::cout << "i= " << i << " ==========join loop3========\n";
} }
std::cout << "==========join loop3========\n"; //std::cout << "==========join loop3========\n";
} }
@ -180,7 +180,7 @@ void JOIN(std::string buffer, fdList &allFds, int userNbr)
{ {
std::vector<std::string> splitBuff; std::vector<std::string> splitBuff;
std::string msg; std::string msg;
std::cout << "==========join start========\n"; //std::cout << "==========join start========\n";
std::cout << "userNbr= " << userNbr << std::endl; std::cout << "userNbr= " << userNbr << std::endl;
if (!allFds.userData[userNbr].registered) if (!allFds.userData[userNbr].registered)
@ -192,7 +192,7 @@ void JOIN(std::string buffer, fdList &allFds, int userNbr)
if (splitBuff.size() < 2) if (splitBuff.size() < 2)
{ {
/*change error*/ /*change error*/
std::cout << "JOIN : need more param\n"; //std::cout << "JOIN : need more param\n";
cmd_error(allFds, allFds.userData[userNbr].fd, "461 * JOIN :Not enough parameters\n"); //ERR_NEEDMOREPARAMS cmd_error(allFds, allFds.userData[userNbr].fd, "461 * JOIN :Not enough parameters\n"); //ERR_NEEDMOREPARAMS
return ; return ;
} }

View File

@ -6,7 +6,7 @@
/* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */ /* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2023/02/14 21:24:55 by apommier #+# #+# */ /* Created: 2023/02/14 21:24:55 by apommier #+# #+# */
/* Updated: 2023/02/14 21:35:45 by apommier ### ########.fr */ /* Updated: 2023/03/09 05:18:13 by apommier ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -34,10 +34,10 @@ void send_notice_msg(fdList &allFds, std::string msg, std::string dest, int user
return ; return ;
for (size_t i = 0; i < allFds.channelList[pos].userList.size(); i++) for (size_t i = 0; i < allFds.channelList[pos].userList.size(); i++)
{ {
std::cout << "send nickname " << allFds.channelList[pos].userList[i]->nickname << std::endl; //std::cout << "send nickname " << allFds.channelList[pos].userList[i]->nickname << std::endl;
if (i != (size_t)userNbr) if (i != (size_t)userNbr)
send(allFds.channelList[pos].userList[i]->fd, fullMsg.c_str(), fullMsg.size(), 0); send(allFds.channelList[pos].userList[i]->fd, fullMsg.c_str(), fullMsg.size(), 0);
std::cout << "loop here\n"; //std::cout << "loop here\n";
} }
return ; return ;
} }
@ -54,7 +54,7 @@ void NOTICE(std::string buffer, fdList &allFds, int userNbr)
std::vector<std::string> splitBuff; std::vector<std::string> splitBuff;
std::string msg; std::string msg;
std::cout << "notice bufer= --" << buffer << std::endl; //std::cout << "notice bufer= --" << buffer << std::endl;
split(buffer, ' ', splitBuff); split(buffer, ' ', splitBuff);
if (splitBuff.size() < 2) if (splitBuff.size() < 2)
return ; return ;

View File

@ -6,7 +6,7 @@
/* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */ /* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2023/02/19 22:10:07 by apommier #+# #+# */ /* Created: 2023/02/19 22:10:07 by apommier #+# #+# */
/* Updated: 2023/03/09 03:11:17 by apommier ### ########.fr */ /* Updated: 2023/03/09 05:54:44 by apommier ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -19,7 +19,7 @@ void leave_chan(fdList &allFds, std::string chan, int userNbr, std::string msg)
if ((chanPos = find_channel(allFds, chan)) == -1) if ((chanPos = find_channel(allFds, chan)) == -1)
{ {
cmd_error(allFds, allFds.userData[userNbr].fd, "401 * PART " + chan + " :No such nick/channel\n"); cmd_error(allFds, allFds.userData[userNbr].fd, "401 * PART " + chan + " :No such channel\n");
return ; return ;
} }
if (is_joined(allFds, chan, userNbr) == -1) if (is_joined(allFds, chan, userNbr) == -1)
@ -50,14 +50,14 @@ void leave_chan(fdList &allFds, std::string chan, int userNbr, std::string msg)
// reply += " " + msg; // reply += " " + msg;
//else //else
// reply += "\n"; // reply += "\n";
std::cout << "leave msg=" << reply << std::endl; //std::cout << "leave msg=" << reply << std::endl;
send(allFds.userData[userNbr].fd, reply.c_str(), reply.size(), 0); send(allFds.userData[userNbr].fd, reply.c_str(), reply.size(), 0);
//allFds.channelList[chanPos].nbrUser--; //allFds.channelList[chanPos].nbrUser--;
for (int i = 0; i < allFds.channelList[chanPos].nbrUser; i++) for (int i = 0; i < allFds.channelList[chanPos].nbrUser; i++)
{ {
if (allFds.channelList[chanPos].userList[i]->mode.s) if (allFds.channelList[chanPos].userList[i]->mode.s)
send(allFds.channelList[chanPos].userList[i]->fd, reply.c_str(), reply.size(), 0); send(allFds.channelList[chanPos].userList[i]->fd, reply.c_str(), reply.size(), 0);
std::cout << "loop here\n"; //std::cout << "loop here\n";
} }
//cmd_reply(allFds, allFds.userData[userNbr].fd, reply + "\n"); //cmd_reply(allFds, allFds.userData[userNbr].fd, reply + "\n");

View File

@ -6,7 +6,7 @@
/* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */ /* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2023/02/11 08:53:03 by apommier #+# #+# */ /* Created: 2023/02/11 08:53:03 by apommier #+# #+# */
/* Updated: 2023/03/03 22:28:18 by apommier ### ########.fr */ /* Updated: 2023/03/09 05:54:52 by apommier ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -30,7 +30,7 @@ void PRIVMSG(std::string buffer, fdList &allFds, int userNbr)
cmd_error(allFds, allFds.userData[userNbr].fd, "451 * PRIVMSG :You have not registered\n"); cmd_error(allFds, allFds.userData[userNbr].fd, "451 * PRIVMSG :You have not registered\n");
return ; return ;
} }
std::cout << "privmsg bufer= --" << buffer << std::endl; //std::cout << "privmsg bufer= --" << buffer << std::endl;
split(buffer, ' ', splitBuff); split(buffer, ' ', splitBuff);
if (splitBuff.size() < 2) if (splitBuff.size() < 2)
{ {
@ -60,7 +60,7 @@ void send_msg(fdList &allFds, std::string msg, std::string dest, int userNbr)
pos = find_channel(allFds, dest); pos = find_channel(allFds, dest);
if (pos == -1) if (pos == -1)
{ {
cmd_error(allFds, allFds.userData[userNbr].fd, "401 * PRIVMSG " + dest + " :No such nick/channel\n"); cmd_error(allFds, allFds.userData[userNbr].fd, "401 * PRIVMSG " + dest + " :No such channel\n");
return ; return ;
} }
if (allFds.channelList[pos].mode.n && is_joined(allFds, dest, userNbr) == -1 ) if (allFds.channelList[pos].mode.n && is_joined(allFds, dest, userNbr) == -1 )
@ -81,23 +81,26 @@ void send_msg(fdList &allFds, std::string msg, std::string dest, int userNbr)
} }
for (size_t i = 0; i < allFds.channelList[pos].userList.size(); i++) for (size_t i = 0; i < allFds.channelList[pos].userList.size(); i++)
{ {
std::cout << "send nickname " << allFds.channelList[pos].userList[i]->nickname << std::endl; //std::cout << "send nickname " << allFds.channelList[pos].userList[i]->nickname << std::endl;
if (i != (size_t)userNbr && allFds.channelList[pos].userList[i]->mode.s) if (&allFds.userData[userNbr] != allFds.channelList[pos].userList[i] && allFds.channelList[pos].userList[i]->mode.s)
{
//std::cout << "send msg to user nbr" << i << std::endl;
send(allFds.channelList[pos].userList[i]->fd, fullMsg.c_str(), fullMsg.size(), 0); send(allFds.channelList[pos].userList[i]->fd, fullMsg.c_str(), fullMsg.size(), 0);
std::cout << "loop here\n"; }
//std::cout << "loop here\n";
} }
return ; return ;
} }
pos = find_user(allFds, dest); //return direct user fd pos = find_user(allFds, dest); //return direct user fd
std::cout << "pos of user = " << pos << std::endl; //std::cout << "pos of user = " << pos << std::endl;
if (pos == -1) if (pos == -1)
{ {
cmd_error(allFds, allFds.userData[userNbr].fd, "401 * PRIVMSG " + dest + " :No such nick/channel\n"); cmd_error(allFds, allFds.userData[userNbr].fd, "401 * PRIVMSG " + dest + " :No such nick\n");
return ; return ;
} }
if (allFds.userData[pos].mode.s) if (allFds.userData[pos].mode.s)
send(allFds.userData[pos].fd, fullMsg.c_str(), fullMsg.size(), 0); send(allFds.userData[pos].fd, fullMsg.c_str(), fullMsg.size(), 0);
std::cout << "msg send\n"; //std::cout << "msg send\n";
std::cout << "msg = " << fullMsg << std::endl; //std::cout << "msg = " << fullMsg << std::endl;
} }

View File

@ -6,7 +6,7 @@
/* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */ /* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2023/02/11 19:19:56 by apommier #+# #+# */ /* Created: 2023/02/11 19:19:56 by apommier #+# #+# */
/* Updated: 2023/02/23 17:47:06 by apommier ### ########.fr */ /* Updated: 2023/03/09 05:54:59 by apommier ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -41,7 +41,7 @@ void INVITE(std::string buffer, fdList &allFds, int userNbr)
} }
if ((invitedNbr = find_user(allFds, splitBuff[1])) == -1) if ((invitedNbr = find_user(allFds, splitBuff[1])) == -1)
{ {
cmd_error(allFds, allFds.userData[userNbr].fd, "401 * " + splitBuff[1] + " :No such nick/channel\n"); cmd_error(allFds, allFds.userData[userNbr].fd, "401 * " + splitBuff[1] + " :No such nick\n");
return ; return ;
} }
if (is_joined(allFds, splitBuff[2], userNbr) == -1) if (is_joined(allFds, splitBuff[2], userNbr) == -1)

View File

@ -6,7 +6,7 @@
/* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */ /* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2023/02/11 19:19:32 by apommier #+# #+# */ /* Created: 2023/02/11 19:19:32 by apommier #+# #+# */
/* Updated: 2023/03/03 22:24:11 by apommier ### ########.fr */ /* Updated: 2023/03/09 05:25:45 by apommier ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -37,7 +37,7 @@ void KICK(std::string buffer, fdList &allFds, int userNbr)
if ((chanPos = find_channel(allFds, splitBuff[1])) == -1) if ((chanPos = find_channel(allFds, splitBuff[1])) == -1)
{ {
cmd_error(allFds, allFds.userData[userNbr].fd, "401 * KICK " + splitBuff[1] + " :No such nick/channel\n"); cmd_error(allFds, allFds.userData[userNbr].fd, "401 * KICK " + splitBuff[1] + " :No such channel\n");
return ; return ;
} }
if (!allFds.userData[userNbr].op && is_joined(allFds, splitBuff[1], userNbr) == -1) if (!allFds.userData[userNbr].op && is_joined(allFds, splitBuff[1], userNbr) == -1)
@ -45,6 +45,13 @@ void KICK(std::string buffer, fdList &allFds, int userNbr)
cmd_error(allFds, allFds.userData[userNbr].fd, "422 * " + splitBuff[1] + " :You're not on that channel\n"); cmd_error(allFds, allFds.userData[userNbr].fd, "422 * " + splitBuff[1] + " :You're not on that channel\n");
return ; return ;
} }
if ((find_user(allFds, splitBuff[2])) == -1)
{
cmd_error(allFds, allFds.userData[userNbr].fd, "401 * KICK " + splitBuff[1] + " :No such nick\n");
return ;
}
if (chanPos != -1) if (chanPos != -1)
{ {
chan = allFds.channelList[chanPos]; chan = allFds.channelList[chanPos];
@ -62,7 +69,7 @@ void KICK(std::string buffer, fdList &allFds, int userNbr)
return ; return ;
} }
kickMsg = allFds.userData[userPos].nickname + " have been kicked by " + allFds.userData[userNbr].nickname + "\n"; kickMsg = allFds.userData[userPos].nickname + " have been kicked by " + allFds.userData[userNbr].nickname + "\n";
PART("PART " + splitBuff[1], allFds, userPos); PART("PART " + splitBuff[1] + " has been kicked by " + allFds.userData[userNbr].nickname, allFds, userPos);
//del_user_in_chan(&allFds.userData[userPos], &allFds.channelList[chanPos]); //del_user_in_chan(&allFds.userData[userPos], &allFds.channelList[chanPos]);
//del_chan_in_user(&allFds.userData[userPos], &allFds.channelList[chanPos]); //del_chan_in_user(&allFds.userData[userPos], &allFds.channelList[chanPos]);
std::cout << "kick msg---" << msg << "---" << std::endl; std::cout << "kick msg---" << msg << "---" << std::endl;

View File

@ -3,10 +3,10 @@
/* ::: :::::::: */ /* ::: :::::::: */
/* mode.cpp :+: :+: :+: */ /* mode.cpp :+: :+: :+: */
/* +:+ +:+ +:+ */ /* +:+ +:+ +:+ */
/* By: sadjigui <sadjigui@student.42.fr> +#+ +:+ +#+ */ /* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2023/02/11 19:19:30 by apommier #+# #+# */ /* Created: 2023/02/11 19:19:30 by apommier #+# #+# */
/* Updated: 2023/03/09 03:32:36 by sadjigui ### ########.fr */ /* Updated: 2023/03/09 05:44:57 by apommier ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -110,6 +110,7 @@ void chan_opt_b(fdList &allFds, int userNbr, std::vector<std::string> opt, int c
if (sign == true && target_in_ban == -1) if (sign == true && target_in_ban == -1)
{ {
allFds.channelList[chanNbr].banList.push_back(&allFds.userData[target_in_client]); allFds.channelList[chanNbr].banList.push_back(&allFds.userData[target_in_client]);
std::cout << "call kick\n";
KICK("/KICK " + allFds.channelList[chanNbr].name + " " + allFds.userData[target_in_client].nickname + " You have been banned from this channel", allFds, userNbr); KICK("/KICK " + allFds.channelList[chanNbr].name + " " + allFds.userData[target_in_client].nickname + " You have been banned from this channel", allFds, userNbr);
if ((pos = find_client_list(allFds.channelList[chanNbr].userList, &allFds.userData[target_in_client])) != -1) if ((pos = find_client_list(allFds.channelList[chanNbr].userList, &allFds.userData[target_in_client])) != -1)
allFds.channelList[chanNbr].userList.erase(allFds.channelList[chanNbr].userList.begin() + pos); allFds.channelList[chanNbr].userList.erase(allFds.channelList[chanNbr].userList.begin() + pos);
@ -179,7 +180,7 @@ void do_user_opt(fdList &allFds, int userNbr, std::vector<std::string> opt, int
bool sign = true; bool sign = true;
if (opt[2][0] == '-') if (opt[2][0] == '-')
sign = false; sign = false;
if (allFds.userData[userNbr].userName != opt[1]) if (allFds.userData[userNbr].nickname != opt[1])
{ {
std::cout << "not the same user ! don't try to change someone else MODE you stupid bitch\n"; std::cout << "not the same user ! don't try to change someone else MODE you stupid bitch\n";
//cmd_error(allFds, allFds.userData[userNbr].fd, "401 *" + opt[1] + " :No such nick/channel\n"); //cmd_error(allFds, allFds.userData[userNbr].fd, "401 *" + opt[1] + " :No such nick/channel\n");

View File

@ -6,7 +6,7 @@
/* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */ /* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2023/02/15 16:34:57 by apommier #+# #+# */ /* Created: 2023/02/15 16:34:57 by apommier #+# #+# */
/* Updated: 2023/02/23 17:47:50 by apommier ### ########.fr */ /* Updated: 2023/03/09 05:55:10 by apommier ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -36,7 +36,7 @@ void KILL(std::string buffer, fdList &allFds, int userNbr)
pos = find_user(allFds, splitBuff[1]); pos = find_user(allFds, splitBuff[1]);
if (pos == -1) if (pos == -1)
{ {
cmd_error(allFds, allFds.userData[userNbr].fd, "401 * KILL " + splitBuff[1] + " :No such nick/channel\n"); cmd_error(allFds, allFds.userData[userNbr].fd, "401 * KILL " + splitBuff[1] + " :No such nick\n");
return ; return ;
} }
std::string msg; std::string msg;

View File

@ -6,7 +6,7 @@
/* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */ /* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2023/02/13 00:16:27 by apommier #+# #+# */ /* Created: 2023/02/13 00:16:27 by apommier #+# #+# */
/* Updated: 2023/02/14 14:27:53 by apommier ### ########.fr */ /* Updated: 2023/03/09 05:02:08 by apommier ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -54,10 +54,10 @@ void PING(std::string buffer, fdList &allFds, int userNbr)
msg = ":irc.local PONG irc.local :" + splitBuff[1] + "\n"; msg = ":irc.local PONG irc.local :" + splitBuff[1] + "\n";
//msg = "PONG irc.local " + splitBuff[1]; //msg = "PONG irc.local " + splitBuff[1];
send(allFds.userData[userNbr].fd, msg.c_str(), msg.size(), 0); send(allFds.userData[userNbr].fd, msg.c_str(), msg.size(), 0);
std::cout << "pong send\n"; //std::cout << "pong send\n";
std::cout << "/r = " << (int)'\r' << "\n"; //std::cout << "/r = " << (int)'\r' << "\n";
std::cout << "/n = " << (int)'\n' << "\n"; //std::cout << "/n = " << (int)'\n' << "\n";
std::cout << "msg=" << msg << "\n"; //std::cout << "msg=" << msg << "\n";
// if (splitBuff.size() < 2) // if (splitBuff.size() < 2)
// { // {
// cmd_error(allFds, allFds.userData[userNbr].fd, "431 * NICK :No nickname given\n"); // cmd_error(allFds, allFds.userData[userNbr].fd, "431 * NICK :No nickname given\n");

View File

@ -6,7 +6,7 @@
/* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */ /* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2023/02/11 19:10:26 by apommier #+# #+# */ /* Created: 2023/02/11 19:10:26 by apommier #+# #+# */
/* Updated: 2023/03/03 22:24:47 by apommier ### ########.fr */ /* Updated: 2023/03/09 05:18:42 by apommier ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -33,9 +33,9 @@ void send_quit_msg(fdList &allFds, int userNbr, std::string msg)
if (allFds.userData[userNbr].joinedChan[i]->userList[j]->mode.s) if (allFds.userData[userNbr].joinedChan[i]->userList[j]->mode.s)
send(allFds.userData[userNbr].joinedChan[i]->userList[j]->fd, fullMsg.c_str(), fullMsg.size(), 0); send(allFds.userData[userNbr].joinedChan[i]->userList[j]->fd, fullMsg.c_str(), fullMsg.size(), 0);
} }
else //else
std::cout << "hehe je quitte\n"; // std::cout << "hehe je quitte\n";
std::cout << "loop here\n"; //std::cout << "loop here\n";
} }
} }
} }

View File

@ -6,7 +6,7 @@
/* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */ /* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2023/02/16 18:14:17 by apommier #+# #+# */ /* Created: 2023/02/16 18:14:17 by apommier #+# #+# */
/* Updated: 2023/02/23 17:49:05 by apommier ### ########.fr */ /* Updated: 2023/03/09 05:55:15 by apommier ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -65,7 +65,7 @@ void WHO(std::string buffer, fdList &allFds, int userNbr)
} }
if ((pos = find_channel(allFds, splitBuff[1])) == -1) if ((pos = find_channel(allFds, splitBuff[1])) == -1)
{ {
cmd_error(allFds, allFds.userData[userNbr].fd, "401 * " + splitBuff[1] + " :No such nick/channel\n"); cmd_error(allFds, allFds.userData[userNbr].fd, "401 * " + splitBuff[1] + " :No such channel\n");
return ; return ;
} }
for (int i = 0; i < allFds.channelList[pos].nbrUser; i++) for (int i = 0; i < allFds.channelList[pos].nbrUser; i++)

View File

@ -6,7 +6,7 @@
/* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */ /* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2022/12/06 22:01:25 by apommier #+# #+# */ /* Created: 2022/12/06 22:01:25 by apommier #+# #+# */
/* Updated: 2023/02/15 20:09:04 by apommier ### ########.fr */ /* Updated: 2023/03/09 05:38:19 by apommier ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -23,16 +23,18 @@ std::string ft_test()
void parse_commands(std::string buffer, fdList &allFds, int userNbr) void parse_commands(std::string buffer, fdList &allFds, int userNbr)
{ {
//std::string cmd = buffer; //std::string cmd = buffer;
std::cout << "===========parse command=============" << std::endl; std::cout << "\n===========MSG RECEIVE=============" << std::endl;
std::vector<std::string> splitBuff; std::vector<std::string> splitBuff;
std::cout << "USERNBR: " << userNbr << " | ";
std::cout << "BUFFER: " << buffer;
int a = 0; int a = 0;
if (buffer.find(13) != std::string::npos) //change that pls if (buffer.find(13) != std::string::npos) //change that pls
{ {
std::cout << "pos of bitch= " << buffer.find(13) << std::endl; //std::cout << "pos of bitch= " << buffer.find(13) << std::endl;
std::cout << "size= " << buffer.size() << std::endl; //std::cout << "size= " << buffer.size() << std::endl;
if (buffer.find(13) != buffer.size() - 2) //if (buffer.find(13) != buffer.size() - 2)
std::cout << "BE CAREFUL CHAR 10 (line feed) not at end\n"; // std::cout << "BE CAREFUL CHAR 10 (line feed) not at end\n";
buffer.erase(buffer.find(13), 1); buffer.erase(buffer.find(13), 1);
} }
@ -43,10 +45,10 @@ void parse_commands(std::string buffer, fdList &allFds, int userNbr)
return ; return ;
allFds.userData[userNbr].cmdBuffer.erase(allFds.userData[userNbr].cmdBuffer.size() - 1); allFds.userData[userNbr].cmdBuffer.erase(allFds.userData[userNbr].cmdBuffer.size() - 1);
split(allFds.userData[userNbr].cmdBuffer, ' ', splitBuff); split(allFds.userData[userNbr].cmdBuffer, ' ', splitBuff);
std::cout << "before toupper: " << splitBuff[0] << std::endl; //std::cout << "before toupper: " << splitBuff[0] << std::endl;
for (size_t i = 0; i < splitBuff[0].size(); i++) for (size_t i = 0; i < splitBuff[0].size(); i++)
splitBuff[0][i] = toupper(splitBuff[0][i]); splitBuff[0][i] = toupper(splitBuff[0][i]);
std::cout << "after toupper: " << splitBuff[0] << std::endl; //std::cout << "after toupper: " << splitBuff[0] << std::endl;
while (a < allFds.parsingTab.cmdNbr - 1 && splitBuff[0] != allFds.parsingTab.cmdName[a]) while (a < allFds.parsingTab.cmdNbr - 1 && splitBuff[0] != allFds.parsingTab.cmdName[a])
a++; a++;
//std::cout << "after while \n"; //std::cout << "after while \n";

View File

@ -6,7 +6,7 @@
/* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */ /* By: apommier <apommier@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2022/12/09 22:26:27 by apommier #+# #+# */ /* Created: 2022/12/09 22:26:27 by apommier #+# #+# */
/* Updated: 2023/02/16 23:01:04 by apommier ### ########.fr */ /* Updated: 2023/03/09 04:59:05 by apommier ### ########.fr */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@ -18,7 +18,7 @@ void new_connection(fdList &allFds)
int addrLen = sizeof(addr); int addrLen = sizeof(addr);
int newFd; int newFd;
std::cout << "==========newconnection========\n"; std::cout << "==========NEW CLIENT========\n";
//std::cout << "in new adress " << &allFds << std::endl; //std::cout << "in new adress " << &allFds << std::endl;
//std::cout << "new connection !" << std::endl; //std::cout << "new connection !" << std::endl;