Fixed address length bug in example code

This commit is contained in:
Joseph Henry
2017-11-13 16:15:58 -08:00
parent e9ea60b189
commit f2d3675f40
2 changed files with 9 additions and 17 deletions

View File

@@ -40,7 +40,6 @@ int main(int argc, char **argv)
in4.sin_addr.s_addr = inet_addr(remote_addr.c_str());
in4.sin_family = AF_INET;
// --- BEGIN
DEBUG_TEST("Waiting for libzt to come online...\n");
@@ -51,18 +50,16 @@ int main(int argc, char **argv)
DEBUG_TEST("I am %llx", nodeId);
sleep(2);
// socket()
if ((sockfd = zts_socket(AF_INET, SOCK_STREAM, 0)) < 0)
DEBUG_ERROR("error creating ZeroTier socket");
// connect()
if ((err = zts_connect(sockfd, (const struct sockaddr *)&in4, sizeof(in4))) < 0)
DEBUG_ERROR("error connecting to remote host (%d)", err);
// tx
DEBUG_TEST("sending to server...");
w = zts_write(sockfd, msg, strlen(msg));
// rx
DEBUG_TEST("reading from server...");
r = zts_read(sockfd, rbuf, strlen(msg));
DEBUG_TEST("Sent : %s", msg);

View File

@@ -38,7 +38,6 @@ int main(int argc, char **argv)
// --- BEGIN
DEBUG_TEST("Waiting for libzt to come online...\n");
uint64_t nwid = strtoull(nwidstr.c_str(),NULL,16);
printf("nwid=%llx\n", nwid);
@@ -47,31 +46,27 @@ int main(int argc, char **argv)
DEBUG_TEST("I am %llx", nodeId);
sleep(2);
// socket()
if ((sockfd = zts_socket(AF_INET, SOCK_STREAM, 0)) < 0)
DEBUG_ERROR("error creating ZeroTier socket");
// bind()
if ((err = zts_bind(sockfd, (struct sockaddr *)&in4, sizeof(struct sockaddr_in)) < 0))
DEBUG_ERROR("error binding to interface (%d)", err);
// listen()
if ((err = zts_listen(sockfd, 100)) < 0)
DEBUG_ERROR("error placing socket in LISTENING state (%d)", err);
// accept()
if ((accfd = zts_accept(sockfd, (struct sockaddr *)&acc_in4, (socklen_t *)sizeof(struct sockaddr_in))) < 0)
socklen_t client_addrlen = sizeof(sockaddr_in);
if ((accfd = zts_accept(sockfd, (struct sockaddr *)&acc_in4, &client_addrlen)) < 0)
DEBUG_ERROR("error accepting connection (%d)", err);
// getpeername()
//socklen_t peer_addrlen;
//zts_getpeername(accfd, (struct sockaddr*)&acc_, &peer_addrlen);
//DEBUG_INFO("getpeername() => %s : %d", inet_ntoa(acc_in4.sin_addr), ntohs(acc_in4.sin_port));
socklen_t peer_addrlen = sizeof(struct sockaddr_storage);
zts_getpeername(accfd, (struct sockaddr*)&acc_in4, &peer_addrlen);
DEBUG_INFO("accepted connection from %s : %d", inet_ntoa(acc_in4.sin_addr), ntohs(acc_in4.sin_port));
// rx
DEBUG_TEST("reading from client...");
r = zts_read(accfd, rbuf, sizeof rbuf);
// tx
DEBUG_TEST("sending to client...");
w = zts_write(accfd, rbuf, strlen(rbuf));
DEBUG_TEST("Received : %s", rbuf);