/************************** * Network Common Depend. * *************************** * Designed & Developed by * * Adrien Marquès * * * *************************** * doowap31@gmail.com * **************************/ #ifndef _LIB_NETWORK_COMMON_H_ #define _LIB_NETWORK_COMMON_H_ #include "../header.h" #include /* Retourne l'adresse IP du serveur (première interface excepté "lo") * * @history * [0] Initialisation des variables * [1] On récupère la liste des interfaces * [2] Parcourt des interfaces * 1. Si "lo" -> suivant * 2. Si pas IPV4 -> suivant * 3. Si ok, on retourne l'ip * [3] Cas échéant -> aucun résultat (NULL) * */ struct in_addr* GET_LOCAL_IP(); #define TIMEOUT_RECV 0x01 #define TIMEOUT_SEND 0x02 /* Définit un timeout pour une socket données * * @in * pSocket Socket à modifier * pSec Valeur en seconde du timeout * pFlags Si RECV et/ou SEND * * @out * -1 en cas d'échec * 0 sinon * * @history * [1] Initialisation des variables * [2] On applique le timeout à la socket * */ int setTimeout(int pSocket, const time_t pSec, char pFlags); /* Vérifie si un groupe multicast est déja utilisé * * @in * pAddr Adresse du groupe multicast * * @out * -1 en cas d'échec * 0 sinon * * @history * [1] Initialisation des variables * [2] On Vérifie si le groupe a du traffic * */ int checkMulticastGroup(in_addr_t pAddr); #endif