*
* Usage: echo -h give all info's
*
- * $Id: UDP_echo.c,v 1.2 2004/05/02 13:10:32 piccardi Exp $
+ * $Id: UDP_echo.c,v 1.3 2004/06/02 16:31:50 piccardi Exp $
*
****************************************************************/
/*
perror("Address creation error");
return 1;
}
+ connect(sock, &serv_add, sizeof(*serv_add));
/* do read/write operations */
- ClientEcho(stdin, sock, &serv_add);
+ ClientEcho(stdin, sock);
/* normal exit */
return 0;
}
exit(1);
}
-void ClientEcho(FILE * filein, int socket, struct sockaddr_in * serv_addr)
+void ClientEcho(FILE * filein, int socket)
{
char sendbuff[MAXLINE+1], recvbuff[MAXLINE+1];
int nread, nwrite;
if (fgets(sendbuff, MAXLINE, filein) == NULL) {
return; /* if no input just return */
} else { /* else we have to write to socket */
- nwrite = sendto(socket, sendbuff, strlen(sendbuff), 0,
- (struct sockaddr *) serv_addr, sizeof(*serv_addr));
+ nwrite = write(socket, sendbuff, strlen(sendbuff));
if (nwrite < 0) { /* on error stop */
printf("Errore in scrittura: %s", strerror(errno));
return;
}
}
- nread = recvfrom(socket, recvbuff, strlen(sendbuff), 0, NULL, NULL);
+ nread = read(socket, recvbuff, strlen(sendbuff));
if (nread < 0) { /* error condition, stop client */
printf("Errore in lettura: %s\n", strerror(errno));
return;