mise a la norme et ajout de ressources dans readme

This commit is contained in:
hugogogo
2021-09-03 15:43:51 +02:00
parent db27c5bee9
commit da0ec36756
7 changed files with 28 additions and 33 deletions

View File

@@ -1,29 +1,25 @@
# README # # MINITALK
This README would normally document whatever steps are necessary to get your application up and running. ### how to use :
### What is this repository for? ### first launch server :
```
./server
```
it will print a line with its own pid, and an empty line below
if you want to terminate the program hit `ctrl-c`
* Quick summary then in another window launch the client, with two arguments :
* Version ```
* [Learn Markdown](https://bitbucket.org/tutorials/markdowndemo) ./client [SERVER PID] [string]
```
[SERVER PID] is the pid number printed by the server
[string] is whatever you want to write, surrounded by `"` if you want to include spaces : `"a random phrase"`
### How do I get set up? ### ### ressources
* Summary of set up - **use of getpid** : https://www.includehelp.com/c/getpid-and-getppid-functions-in-c-linux.aspx
* Configuration - **use of signal** : https://linuxhint.com/signal_handlers_c_programming_language
* Dependencies - **use of sigaction** : https://stackoverflow.com/a/17572787/9497573
* Database configuration - **standard signal vs real time signals (with queue option)** : https://www.softprayog.in/programming/posix-real-time-signals-in-linux
* How to run tests - **test time of functions in program** : https://stackoverflow.com/a/5833240/9497573
* Deployment instructions
### Contribution guidelines ###
* Writing tests
* Code review
* Other guidelines
### Who do I talk to? ###
* Repo owner or admin
* Other community or team contact

Binary file not shown.

Binary file not shown.

BIN
client

Binary file not shown.

BIN
server

Binary file not shown.

View File

@@ -27,7 +27,6 @@ void send_message(int sig_num)
} }
if (client.done == 0) if (client.done == 0)
send_char(client.text[client.count_char], client.mask, client.srv_pid); send_char(client.text[client.count_char], client.mask, client.srv_pid);
ft_putnbrbase(client.text[client.count_char], "01"); ft_printf(" - %i - [%i] %s\n", (client.text[client.count_char] & client.mask) != 0, client.count_char, client.text + client.count_char);
} }
void init_client(int pid, char *msg) void init_client(int pid, char *msg)
@@ -46,6 +45,7 @@ int main(int ac, char **av)
return (usage()); return (usage());
init_client(ft_atoi(av[1]), av[2]); init_client(ft_atoi(av[1]), av[2]);
kill((int)getpid(), SIGUSR1); kill((int)getpid(), SIGUSR1);
while (client.done == 0); while (client.done == 0)
;
return (0); return (0);
} }

View File

@@ -5,8 +5,6 @@ void send_char(void)
if (message.count_bits == 7) if (message.count_bits == 7)
{ {
ft_putchar(message.character); ft_putchar(message.character);
if (message.character == '\0')
exit(EXIT_SUCCESS);
message.count_bits = 0; message.count_bits = 0;
message.character = 0; message.character = 0;
} }
@@ -38,10 +36,10 @@ void init_message(void)
message.text = ft_strdup(""); message.text = ft_strdup("");
} }
int main() int main(void)
{ {
struct sigaction act_1; struct sigaction act_1;
struct sigaction act_2; struct sigaction act_2;
act_1.sa_flags = SA_SIGINFO; act_1.sa_flags = SA_SIGINFO;
act_1.sa_sigaction = sig_handler_1; act_1.sa_sigaction = sig_handler_1;
@@ -51,7 +49,8 @@ int main()
sigaction(SIGUSR2, &act_2, NULL); sigaction(SIGUSR2, &act_2, NULL);
ft_putnbrendl((int)getpid()); ft_putnbrendl((int)getpid());
init_message(); init_message();
while (1); while (1)
;
return (0); return (0);
} }
@@ -105,7 +104,7 @@ int main()
** # # # # # # # # # # # # # # # # # # # # ** # # # # # # # # # # # # # # # # # # # #
** CODE TO CALCULATE TIME IN MICROSECONDS ** CODE TO CALCULATE TIME IN MICROSECONDS
** **
** found here https://stackoverflow.com/questions/5833094/get-a-timestamp-in-c-in-microseconds ** found here : https://stackoverflow.com/a/5833240/9497573
** **
** #include <stdint.h> ** #include <stdint.h>
** #include <sys/time.h> ** #include <sys/time.h>