SOCKETS
Publicado por Rafa (1 intervención) el 08/03/2006 11:31:58
Hola,
estoy tratando de utilizar sockets en linux y no tengo mucha idea.
Trato de realizar un programa que haga que un cliente se conecte a un servidor del protocolo hora (RFC 868) e imprima en pantalla una versión textual de la fecha y la hora devueltas por el servidor. El cliente debe admitir el nombre del servidor desde la línea
de comandos.
Os pego una versión.
#include <sys/types.h>
//#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#include <arpa/inet.h>
#include <time.h>
main (int argc, char *argv[])
{
int sock;
struct sockaddr_in servidor;
unsigned long int lahora;
sock=socket(PF_INET, SOCK_STREAM, 0);
servidor.sin_family=AF_INET;
servidor.sin_port=htons(37);
servidor.sin_addr.s_addr=inet_addr(argv[1]);
connect(sock,*servidor,sizeof(unsined long));
read(sock,&lahora,4);
LAHORA=ntohl(lahora);
printf("&lu\n", lahora);
lahora=lahora-2208988800LU;
lahora_legible=ctime(&lahora);
printf("%s\n", lahora_legible);
}
Muches gracies.
Un saludu.
estoy tratando de utilizar sockets en linux y no tengo mucha idea.
Trato de realizar un programa que haga que un cliente se conecte a un servidor del protocolo hora (RFC 868) e imprima en pantalla una versión textual de la fecha y la hora devueltas por el servidor. El cliente debe admitir el nombre del servidor desde la línea
de comandos.
Os pego una versión.
#include <sys/types.h>
//#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#include <arpa/inet.h>
#include <time.h>
main (int argc, char *argv[])
{
int sock;
struct sockaddr_in servidor;
unsigned long int lahora;
sock=socket(PF_INET, SOCK_STREAM, 0);
servidor.sin_family=AF_INET;
servidor.sin_port=htons(37);
servidor.sin_addr.s_addr=inet_addr(argv[1]);
connect(sock,*servidor,sizeof(unsined long));
read(sock,&lahora,4);
LAHORA=ntohl(lahora);
printf("&lu\n", lahora);
lahora=lahora-2208988800LU;
lahora_legible=ctime(&lahora);
printf("%s\n", lahora_legible);
}
Muches gracies.
Un saludu.
Valora esta pregunta


0