#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <sys/wait.h>
#include <signal.h>
#include <netdb.h>
#include <pthread.h>
#include <ncurses.h>
#include "reseau.h"
#include "affichage.h"
#include "jeu.h"
Graphe des dépendances par inclusion de reseau.c:
Aller au code source de ce fichier.
Macros | |
#define | PORTECOUTE 1664 |
Port en écoute pour le serveur. | |
#define | MAXDATASIZE 200 |
Quantité max d'octets que l'on peut envoyer/recevoir. | |
#define | MAXCONNECT 1 |
Nombre max de connection que le serveur accepte d'un coup. | |
Fonctions | |
void | config_reseau () |
Configuration du socket réseau, utilise le socket en variable globale. | |
void | send_shoot (char *objective) |
Envoi un tir a l'adversaire via le réseau. | |
void | send_rep_shoot (int result) |
Renvoi la réponse à un tir reçu. | |
void | recv_msg () |
Reception des messages sur le socket, la fonction tourne en boucle et écoute le socket puis traite le message recu. | |
void | send_msg () |
Envoi des messages sur le socket. Fonction appelée dans un thread, elle tourne en boucle et récupére la saisie clavier pour l'analyser et l'envoyer si besoin. | |
int | client (int IP) |
Client : Configure le réseau et appelle send_msg (dans un thread) et recv_msg dans le programme principal. | |
int | serveur () |
Serveur : Configure le réseau et appelle send_msg (dans un thread) et recv_msg dans le programme principal. | |
Variables | |
WINDOW * | fenetre_chat |
fenetre ncurse pour l'affichage du chat | |
char | tab_message [9][200] |
Tableau contenant les messages du chat. | |
bool | quitter = false |
Variable mise a vrai pour quiter le jeu. | |
int | socket_fd |
Identifiant du socket réseau. |
établissement des connexions, boucle dans l'envoi et la réception des messages, envoi et recoit les tirs
J. Vehent
Définition dans le fichier reseau.c.
|
Nombre max de connection que le serveur accepte d'un coup.
Définition à la ligne 54 du fichier reseau.c. Référencé par serveur(). |
|
Quantité max d'octets que l'on peut envoyer/recevoir.
|
|
Port en écoute pour le serveur.
|
|
Client : Configure le réseau et appelle send_msg (dans un thread) et recv_msg dans le programme principal.
Définition à la ligne 330 du fichier reseau.c. Références config_reseau(), fenetre_chat, init_chat(), init_matrices(), init_screen(), PORTECOUTE, recv_msg(), send_msg(), socket_fd, et tab_message. Référencé par main(). Voici le graphe d'appel pour cette fonction: ![]() |
|
Configuration du socket réseau, utilise le socket en variable globale.
Définition à la ligne 86 du fichier reseau.c. Références socket_fd. |
|
Reception des messages sur le socket, la fonction tourne en boucle et écoute le socket puis traite le message recu.
Définition à la ligne 155 du fichier reseau.c. Références adv_go(), afficher_erreur(), fenetre_chat, MAXDATASIZE, quitter, recv_shoot(), rep_shoot(), saisie(), shoot(), socket_fd, et tab_message. Référencé par client(), et serveur(). Voici le graphe d'appel pour cette fonction: ![]() |
|
Envoi des messages sur le socket. Fonction appelée dans un thread, elle tourne en boucle et récupére la saisie clavier pour l'analyser et l'envoyer si besoin.
Définition à la ligne 214 du fichier reseau.c. Références afficher_erreur(), effacer_erreur(), fenetre_chat, interpretation(), MAXDATASIZE, quitter, saisie(), socket_fd, et tab_message. Référencé par client(), et serveur(). Voici le graphe d'appel pour cette fonction: ![]() |
|
Renvoi la réponse à un tir reçu.
Définition à la ligne 140 du fichier reseau.c. Références socket_fd. Référencé par recv_shoot(). |
|
Envoi un tir a l'adversaire via le réseau.
Définition à la ligne 127 du fichier reseau.c. Références socket_fd. Référencé par shoot(). |
|
Serveur : Configure le réseau et appelle send_msg (dans un thread) et recv_msg dans le programme principal.
Définition à la ligne 435 du fichier reseau.c. Références config_reseau(), fenetre_chat, init_chat(), init_matrices(), init_screen(), MAXCONNECT, PORTECOUTE, recv_msg(), send_msg(), socket_fd, et tab_message. Référencé par main(). Voici le graphe d'appel pour cette fonction: ![]() |
|
fenetre ncurse pour l'affichage du chat
Définition à la ligne 62 du fichier reseau.c. Référencé par client(), init_chat(), recv_msg(), send_msg(), et serveur(). |
|
Variable mise a vrai pour quiter le jeu.
Définition à la ligne 74 du fichier reseau.c. Référencé par recv_msg(), et send_msg(). |
|
Identifiant du socket réseau.
Définition à la ligne 80 du fichier reseau.c. Référencé par client(), config_reseau(), recv_msg(), send_msg(), send_rep_shoot(), send_shoot(), et serveur(). |
|
Tableau contenant les messages du chat.
Définition à la ligne 68 du fichier reseau.c. Référencé par client(), recv_msg(), send_msg(), et serveur(). |