|
@@ -2,6 +2,7 @@
|
|
|
#include <netdb.h>
|
|
#include <netdb.h>
|
|
|
#include <stdio.h>
|
|
#include <stdio.h>
|
|
|
#include <unistd.h>
|
|
#include <unistd.h>
|
|
|
|
|
+#include <string.h>
|
|
|
|
|
|
|
|
#include "Practical.h"
|
|
#include "Practical.h"
|
|
|
#include "ch4_common.h"
|
|
#include "ch4_common.h"
|
|
@@ -14,7 +15,7 @@ int main(int argc, char **argv) {
|
|
|
char *server = argv[1];
|
|
char *server = argv[1];
|
|
|
char *echo_str = argv[2];
|
|
char *echo_str = argv[2];
|
|
|
|
|
|
|
|
- const size_t echo_str_len = sizeof(echo_str);
|
|
|
|
|
|
|
+ const size_t echo_str_len = strlen(echo_str);
|
|
|
if (echo_str_len > MAXSTRINGLENGTH) {
|
|
if (echo_str_len > MAXSTRINGLENGTH) {
|
|
|
DieWithUserMessage(echo_str, "string too long");
|
|
DieWithUserMessage(echo_str, "string too long");
|
|
|
}
|
|
}
|
|
@@ -55,7 +56,7 @@ int main(int argc, char **argv) {
|
|
|
);
|
|
);
|
|
|
if (num_bytes < 0) {
|
|
if (num_bytes < 0) {
|
|
|
DieWithSystemMessage("sendto() failed");
|
|
DieWithSystemMessage("sendto() failed");
|
|
|
- } else if (num_bytes != echo_str_len) {
|
|
|
|
|
|
|
+ } else if ((size_t) num_bytes != echo_str_len) {
|
|
|
DieWithUserMessage("sendto() error", "sent unexpected amount of bytes");
|
|
DieWithUserMessage("sendto() error", "sent unexpected amount of bytes");
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -72,7 +73,7 @@ int main(int argc, char **argv) {
|
|
|
);
|
|
);
|
|
|
if (num_bytes < 0) {
|
|
if (num_bytes < 0) {
|
|
|
DieWithSystemMessage("recvfrom() failed");
|
|
DieWithSystemMessage("recvfrom() failed");
|
|
|
- } else if (num_bytes != echo_str_len) {
|
|
|
|
|
|
|
+ } else if ((size_t) num_bytes != echo_str_len) {
|
|
|
DieWithUserMessage("recvfrom() error", "received unexpected amount of bytes");
|
|
DieWithUserMessage("recvfrom() error", "received unexpected amount of bytes");
|
|
|
}
|
|
}
|
|
|
|
|
|