Jump to content

Type de donnée pour adresse MAC et IP


Recommended Posts

Bonjour, je voudrais savoir si il y a des types de données prédéfinis pour stocker des adresses IP et des adresses MAC en C, ou si je stock tout simplement dans des char * .

Pour les adresses MAC j'ai trouvé un type u_int8_t mais je trouve pas d'infos dessus.

Link to comment
Share on other sites

Pourquoi faire? Dans un char*, c'est bon. Ca fait longtemps que je n'ai pas fait de C réseau avec les sockets mais il me semble que les fonctions réseaux utilisent le type char* pour stocker les adresses. Après, ça dépend comment tu vas exploiter ces données.

Link to comment
Share on other sites

Pour les adresse MAC je sais pas. Regarde les fonctions que tu veux utiliser, elle ont forcement un type défini...

Sinon pour les adresses IP, ca depends ce que tu veux en faire. Je t'ai extrait un bout de code qui ouvre une socket.

La structure pour l'adresse ip (entre autre) est struct sockaddr_in stSin. Mais suivant ce que tu veux en faire, le char* marche parfaitement...

struct sockaddr_in stSin;

bzero(&stSin,sizeof(stSin));

stSin.sin_family = AF_INET; // IPV4

bcopy(pstHost->h_addr,&stSin.sin_addr.s_addr,pstHost->h_length);

stSin.sin_port = htons(nPort);

// Connection

if(connect(nSock, (struct sockaddr*) &stSin,sizeof(stSin)) < 0)

return SOCKET_CONNECT_ERROR;

Link to comment
Share on other sites

Merci bien, on m'avait effectiment parlé des types fourni pour les sockets, à première vue je dois juste les utiliser pour faire des comparaisons donc je crois que je vais me contenter des strings, mais suivant les besoins de l'implémentation j'utiliserai peut-etre les socketadr.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...