web-dev-qa-db-fra.com

structure sockaddr_un vs sockaddr

Comment est struct sockaddr différent de struct sockaddr_un?

Je sais que nous utilisons ces structures dans des modules client-serveur, pour lier la prise à l'adresse de la prise. Et nous utilisons un opérateur de distribution pour cela pour accepter la structure sockaddr_un.

Je veux savoir à quel point ils sont différents/similaires, et pourquoi l'opérateur de distribution?

30
Pavitar

"Struct Sockaddr" est une définition générique. Il est utilisé par n'importe quelle fonction de prise nécessitant une adresse.

"Struct sockaddr_un" (une adresse "Unix sockets") est un type spécifique de famille d'adresses.

Plus on voit "struct sockaddr_in" (une "socket internet") est un autre type spécifique de famille d'adresses.

La distribution est ce qui permet aux API des sockets d'accepter un type de paramètre commun qui sera en réalité n'importe lequel de plusieurs types réels différents.

Voici un bon lien qui montre plusieurs définitions de la famille d'adresses différentes:

http://www.cas.mcmaster.ca/~qiao/courses/cs3mh3/Tutorials/socket.html

30
paulsm4