projects
/
gapil.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Tolti commenti inutili e tolto i "parametri" al posto degli argomenti delle
[gapil.git]
/
sources
/
UDP_echo.c
diff --git
a/sources/UDP_echo.c
b/sources/UDP_echo.c
index b14e1f6cbb884fa711c07aae1ce019ebe770fe64..cc9e3ae786a378d0a1b2cbb2c57fb804c2f51b2b 100644
(file)
--- a/
sources/UDP_echo.c
+++ b/
sources/UDP_echo.c
@@
-26,7
+26,7
@@
*
* Usage: echo -h give all info's
*
*
* 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.
4 2004/06/04 00:31:33
piccardi Exp $
*
****************************************************************/
/*
*
****************************************************************/
/*
@@
-44,7
+44,7
@@
#define MAXLINE 256
void usage(void);
#define MAXLINE 256
void usage(void);
-void ClientEcho(FILE * filein, int socket
, struct sockaddr_in *serv_add
);
+void ClientEcho(FILE * filein, int socket);
void SigTERM_hand(int sig);
/* Program begin */
void SigTERM_hand(int sig);
/* Program begin */
@@
-54,7
+54,7
@@
int main(int argc, char *argv[])
* Variables definition
*/
int sock, i;
* Variables definition
*/
int sock, i;
- struct sockaddr_in
serv_add
;
+ struct sockaddr_in
dst_addr
;
/*
* Input section: decode parameters passed in the calling
* Use getopt function
/*
* Input section: decode parameters passed in the calling
* Use getopt function
@@
-90,16
+90,17
@@
int main(int argc, char *argv[])
return 1;
}
/* initialize address */
return 1;
}
/* initialize address */
- memset((void *) &
serv_add, 0, sizeof(serv_add)); /* clear serve
r address */
-
serv_add
.sin_family = AF_INET; /* address type is INET */
-
serv_add
.sin_port = htons(7); /* echo port is 7 */
+ memset((void *) &
dst_addr, 0, sizeof(dst_addr)); /* clea
r address */
+
dst_addr
.sin_family = AF_INET; /* address type is INET */
+
dst_addr
.sin_port = htons(7); /* echo port is 7 */
/* build address using inet_pton */
/* build address using inet_pton */
- if ( (inet_pton(AF_INET, argv[optind], &
serv_add
.sin_addr)) <= 0) {
+ if ( (inet_pton(AF_INET, argv[optind], &
dst_addr
.sin_addr)) <= 0) {
perror("Address creation error");
return 1;
}
perror("Address creation error");
return 1;
}
+ connect(sock, (struct sockaddr *) &dst_addr, sizeof(dst_addr));
/* do read/write operations */
/* do read/write operations */
- ClientEcho(stdin, sock
, &serv_add
);
+ ClientEcho(stdin, sock);
/* normal exit */
return 0;
}
/* normal exit */
return 0;
}
@@
-116,7
+117,7
@@
void usage(void) {
exit(1);
}
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;
{
char sendbuff[MAXLINE+1], recvbuff[MAXLINE+1];
int nread, nwrite;
@@
-125,14
+126,13
@@
void ClientEcho(FILE * filein, int socket, struct sockaddr_in * serv_addr)
if (fgets(sendbuff, MAXLINE, filein) == NULL) {
return; /* if no input just return */
} else { /* else we have to write to socket */
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;
}
}
if (nwrite < 0) { /* on error stop */
printf("Errore in scrittura: %s", strerror(errno));
return;
}
}
- nread = re
cvfrom(socket, recvbuff, strlen(sendbuff), 0, NULL, NULL
);
+ nread = re
ad(socket, recvbuff, strlen(sendbuff)
);
if (nread < 0) { /* error condition, stop client */
printf("Errore in lettura: %s\n", strerror(errno));
return;
if (nread < 0) { /* error condition, stop client */
printf("Errore in lettura: %s\n", strerror(errno));
return;