diff --git a/builds/client.o b/builds/client.o index 9b28efb..1afc182 100644 Binary files a/builds/client.o and b/builds/client.o differ diff --git a/builds/server.o b/builds/server.o index 0944702..e0af096 100644 Binary files a/builds/server.o and b/builds/server.o differ diff --git a/client b/client index 9370bab..70f87c9 100755 Binary files a/client and b/client differ diff --git a/server b/server index b7adaaf..553c757 100755 Binary files a/server and b/server differ diff --git a/srcs/client.c b/srcs/client.c index 07990ad..f492fe4 100644 --- a/srcs/client.c +++ b/srcs/client.c @@ -7,12 +7,62 @@ int usage(void) return (0); } +void send_char(int server_pid, char c) +{ + int mask; + mask = 1 << 6; + ft_printf("%c %i ", c, c); + ft_putnbrbase(c, "01"); + ft_putchar('\n'); + while (mask != 0) + { + if ((c & mask) != 0) + { + ft_putnbr(1); + kill(server_pid, SIGUSR1); + } + if ((c & mask) == 0) + { + ft_putnbr(0); + kill(server_pid, SIGUSR2); + } + sleep(1); + mask >>= 1; + } + +} + void send_message(int server_pid, char *msg) { - if (!ft_strcmp(msg, "SIGUSR1")) - kill(server_pid, SIGUSR1); - if (!ft_strcmp(msg, "SIGUSR2")) - kill(server_pid, SIGUSR2); + while (*msg) + { + send_char(server_pid, *msg); + 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) diff --git a/srcs/server.c b/srcs/server.c index 1be7314..3d8bd99 100644 --- a/srcs/server.c +++ b/srcs/server.c @@ -5,12 +5,14 @@ void sig_handler_1(int sig_num) { - ft_printf("SIGUSR1 %i\n", sig_num); + (void)sig_num; + ft_putnbr(1); } void sig_handler_2(int sig_num) { - ft_printf("SIGUSR2 %i\n", sig_num); + (void)sig_num; + ft_putnbr(0); } int main() @@ -22,24 +24,24 @@ int main() signal(SIGUSR1, sig_handler_1); signal(SIGUSR2, sig_handler_2); - 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 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; +// } while (1); return (0);