void error ( char * msg )
{
perror ( msg ) ;
exit ( 0 ) ;
}
int main ( int argc , char * argv [ ] )
{
int sockfd , portno , n;
struct sockaddr_in serv_addr ;
struct hostent * server;
røye buffer [ 256 ];
if ( argc < 3 ) {
fprintf ( stderr , "bruk % s hostname port \\ n" , argv [ 0 ] ) ;
exit ( 0 ) ;
}
< p> portno = atoi ( argv [ 2 ] ) ;
sockfd = socket ( AF_INET , SOCK_STREAM , 0 ) ;
if ( sockfd < 0 )
feil ( "FEIL åpning socket ");
server = gethostbyname ( argv [ 1 ] ) ;
if ( server == NULL) {
fprintf ( stderr , "FEIL , ingen slik vert \\ n ");
exit ( 0 ) ;
}
Bzero ( ( char * ) & serv_addr , sizeof ( serv_addr ) ) ;
< p> serv_addr.sin_family = AF_INET ;
bcopy ( ( char * ) server- > h_addr , etter
( char * ) & serv_addr.sin_addr.s_addr , etter
server - > h_length ) ;
serv_addr.sin_port = htons ( portno ) ;
if ( connect ( sockfd , og serv_addr , sizeof ( serv_addr ) ) < 0 )
feil ( "FEIL tilkobling ");
printf ( "Skriv inn meldingen : ");
Bzero (buffer , 256 ) ;
fgets (buffer , 255, stdin ) ;
n = write ( sockfd , buffer, strlen (buffer ));
if ( n < 0 )
feil ( " feil ved skriving til socket" ) ;
Bzero (buffer , 256 ) ;
n = read ( sockfd , buffer , 255 ) ;
if ( n < 0 )
error ( "Feil ved lesing fra socket ");
printf ( "% s \\ n" , buffer) ;
return 0 ;
}
5
Lagre dokumentet ved å klikke på "File " og " Lagre".
6
Lukk " gedit "-vinduet ved å klikke på "X" øverst i høyre hjørne . Terminalen vil vises på skjermen igjen
7
Kompiler UDP koden ved å skrive følgende på kommandolinjen : .
Gcc - c udp.c
Trykk på " Enter". Terminalen vil vise fremgang statusmeldinger som det kompilerer filen .
8
Bruk " udp " program til å sende teksten via UDP socket . På kommandolinjen , skriv : en
udp
Erstatt " " med strengen du ønsker å sende . Erstatt " " med IP -adressen til en ekstern datamaskin som du har nettverkstilgang.