4 Erklær variabler er nødvendige for at skabe et TCP /IP-pakke ved at tilføje følgende kode i din funktion :
struct addrinfo hints , * res ,
int socket_descriptor ,
" addrinfo " structs gemmer returværdien af " getaddrinfo "-funktionen . Den " socket_descriptor " er heltal deskriptor , at de " socket" funktionen vil returnere
5
Initialiser variabler ved at tilføje følgende kode : .
Memset (& hints , 0 , sizeof hints ),
hints.ai_family = AF_UNSPEC ,
hints.ai_socktype = SOCK_STREAM ,
" AF_UNSPEC " værdi angiver , at adressen familie for " getaddrinfo " kan være enhver gyldig type, såsom IPv4 eller IPv6 . Den " SOCK_STREAM " angiver en TCP stream socket
6
Kald " getaddrinfo "-funktionen ved at tilføje følgende kode : .
Getaddrinfo ( " www.server.com ", " 3490 " , & hints , & RES)
Erstat" www.server.com " med den server, du ønsker at forbinde til . Erstat " 3490 " med den port, du vil forbinde til . Den " getaddrinfo "-funktionen indsamler protokol -uafhængig information om en adresse fra sin vært navn, hvilket det returnerer i " addrinfo " structs .
7
Opret en TCP /IP socket med " socket" funktionen ved at tilføje følgende kode : Hej
socket_descriptor = socket (res -> ai_family , res -> ai_socktype , res -> ai_protocol )
" socket" funktionen bruger oplysningerne vendte tilbage fra " getaddrinfo " funktion for at oprette en komplet sokkel
8
forbindelse til den eksterne server med " connect "-funktionen ved at tilføje følgende kode : .
connect ( socket_descriptor , res -> ai_addr , res -> ai_addrlen )
" connect "-funktionen tager din socket, sender den til den angivne adresse og skaber en aktiv forbindelse med værten
9. .
Gem filen , kompilere og udføre dit program til at oprette TCP /IP-pakker .