From 5167ce24997fa78994999613e73cc97737b270e2 Mon Sep 17 00:00:00 2001 From: "Cherish A. Franco" Date: Thu, 29 Sep 2011 16:04:38 -0600 Subject: [PATCH] Making client do some snazzy stuff like sendto(). ~Cherish --- packages/multicaster/src/multicaster-client.c | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/packages/multicaster/src/multicaster-client.c b/packages/multicaster/src/multicaster-client.c index 6c00f66..a2bf4ef 100644 --- a/packages/multicaster/src/multicaster-client.c +++ b/packages/multicaster/src/multicaster-client.c @@ -92,12 +92,24 @@ int main(int argc, char* argv[]) for (;;) /* Run forever */ { - char recvString[500]; /* Buffer for received string */ - int recvStringLen; /* Length of received string */ + char recvString[500]; /* Buffer for received string */ + int recvStringLen; /* Length of received string */ + struct sockaddr_in6 from; + socklen_t fromlen = sizeof(from); + char sendString[] = "Token: banana\n"; + char errorString[] = "That is not correct! Try again!\n"; /* Receive a single datagram from the server */ - if ((recvStringLen = recvfrom(sock, recvString, sizeof(recvString) - 1, 0, NULL, 0)) < 0) DieWithError("recvfrom() failed"); + if ((recvStringLen = recvfrom(sock, recvString, sizeof(recvString) - 1, 0, (struct sockaddr *)&from, &fromlen)) < 0) DieWithError("recvfrom() failed"); recvString[recvStringLen] = '\0'; + if(strcmp(recvString, "hello")==0) { + printf("Correct!!\n"); + // printf("Token: banana\n"); + sendto(sock, sendString, sizeof(sendString) - 1, 0, (struct sockaddr *)&from, fromlen); + } else { + // printf("That isn't correct! Try again!\n"); + sendto(sock, errorString, sizeof(errorString) - 1, 0, (struct sockaddr *)&from, fromlen); + } /* Print the received string */ printf("Received string [%s]\n", recvString);