la communication fonctionne avec signal

This commit is contained in:
hugogogo
2021-08-29 16:45:21 +02:00
parent ce1e7d46c5
commit a5f922ed6e
7 changed files with 31 additions and 42 deletions

Binary file not shown.

Binary file not shown.

BIN
client

Binary file not shown.

BIN
server

Binary file not shown.

View File

@@ -1,5 +1,4 @@
#include "../includes/minitalk.h" #include "../includes/minitalk.h"
#include <stdlib.h> //for atoi
int usage(void) int usage(void)
{ {
@@ -18,9 +17,8 @@ void send_char(int server_pid, char c)
if ((c & mask) == 0) if ((c & mask) == 0)
kill(server_pid, SIGUSR2); kill(server_pid, SIGUSR2);
mask >>= 1; mask >>= 1;
usleep(300); usleep(20);
} }
} }
void send_message(int server_pid, char *msg) void send_message(int server_pid, char *msg)
@@ -31,30 +29,6 @@ void send_message(int server_pid, char *msg)
msg++; msg++;
} }
send_char(server_pid, *msg); send_char(server_pid, *msg);
// if (!ft_strcmp(msg, "SIGUSR1"))
// kill(server_pid, SIGUSR1);
// if (!ft_strcmp(msg, "SIGUSR2"))
// kill(server_pid, SIGUSR2);
// int mask;
// mask = 1 << 6;
// char character;
// character = 'c';
// ft_printf("%c %i\n", character, character, mask);
// while (mask != 0)
// {
// ft_putchar('\n');
// ft_putnbrbase(character, "01");
// ft_putchar('\n');
// ft_putnbrbase(mask, "01");
// ft_putchar('\n');
// if ((character & mask) != 0)
// ft_putchar('1');
// if ((character & mask) == 0)
// ft_putchar('0');
// mask >>= 1;
// }
} }
int main(int ac, char **av) int main(int ac, char **av)

View File

@@ -20,13 +20,7 @@ void init_message(void)
message.text = ft_strdup(""); message.text = ft_strdup("");
} }
int main() void concat_msg()
{
signal(SIGUSR1, sig_handler_1);
signal(SIGUSR2, sig_handler_2);
ft_putnbrendl((int)getpid());
init_message();
while (1)
{ {
if (message.count_bits == 7) if (message.count_bits == 7)
{ {
@@ -41,11 +35,19 @@ int main()
message.character = 0; message.character = 0;
} }
} }
int main()
{
signal(SIGUSR1, sig_handler_1);
signal(SIGUSR2, sig_handler_2);
ft_putnbrendl((int)getpid());
init_message();
while (1)
concat_msg();
return (0); return (0);
} }
/* /*
**
** allowed functions : ** allowed functions :
** - write ** - write
** - signal ** - signal
@@ -61,6 +63,15 @@ int main()
** - usleep ** - usleep
** - exit ** - exit
** **
**
** cmm
** deii
** enlc
** ctlr
** iiio
** 0.0010
** 10
**
** you can only use two signals : ** you can only use two signals :
** - SIGUSR1 ** - SIGUSR1
** - SIGUSR2 ** - SIGUSR2

View File

@@ -4,3 +4,7 @@ cnealin azelj aze .
cnealin azelj aze . cnealin azelj aze .
cnealin azelj aze cnealin azelj aze
cnealin azelj aze..... cnealin azelj aze.....
21377
cnealin azelj aze.....
cnealin azelj aze
salut heuuu