67 lines
1.2 KiB
C
67 lines
1.2 KiB
C
#include "../includes/minitalk.h"
|
|
#include <stdlib.h> //for atoi
|
|
|
|
int usage(void)
|
|
{
|
|
ft_printf("usage: ./client [server pid] [message]\n");
|
|
return (0);
|
|
}
|
|
|
|
void send_char(int server_pid, char c)
|
|
{
|
|
int mask;
|
|
mask = 1 << 6;
|
|
while (mask != 0)
|
|
{
|
|
if ((c & mask) != 0)
|
|
kill(server_pid, SIGUSR1);
|
|
if ((c & mask) == 0)
|
|
kill(server_pid, SIGUSR2);
|
|
mask >>= 1;
|
|
usleep(300);
|
|
}
|
|
|
|
}
|
|
|
|
void send_message(int server_pid, char *msg)
|
|
{
|
|
while (*msg)
|
|
{
|
|
send_char(server_pid, *msg);
|
|
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)
|
|
{
|
|
if (ac != 3)
|
|
return (usage());
|
|
send_message(ft_atoi(av[1]), av[2]);
|
|
return (0);
|
|
}
|