Fixed address length bug in example code
This commit is contained in:
@@ -40,7 +40,6 @@ int main(int argc, char **argv)
|
|||||||
in4.sin_addr.s_addr = inet_addr(remote_addr.c_str());
|
in4.sin_addr.s_addr = inet_addr(remote_addr.c_str());
|
||||||
in4.sin_family = AF_INET;
|
in4.sin_family = AF_INET;
|
||||||
|
|
||||||
|
|
||||||
// --- BEGIN
|
// --- BEGIN
|
||||||
|
|
||||||
DEBUG_TEST("Waiting for libzt to come online...\n");
|
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);
|
DEBUG_TEST("I am %llx", nodeId);
|
||||||
sleep(2);
|
sleep(2);
|
||||||
|
|
||||||
// socket()
|
|
||||||
if ((sockfd = zts_socket(AF_INET, SOCK_STREAM, 0)) < 0)
|
if ((sockfd = zts_socket(AF_INET, SOCK_STREAM, 0)) < 0)
|
||||||
DEBUG_ERROR("error creating ZeroTier socket");
|
DEBUG_ERROR("error creating ZeroTier socket");
|
||||||
|
|
||||||
// connect()
|
|
||||||
if ((err = zts_connect(sockfd, (const struct sockaddr *)&in4, sizeof(in4))) < 0)
|
if ((err = zts_connect(sockfd, (const struct sockaddr *)&in4, sizeof(in4))) < 0)
|
||||||
DEBUG_ERROR("error connecting to remote host (%d)", err);
|
DEBUG_ERROR("error connecting to remote host (%d)", err);
|
||||||
|
|
||||||
// tx
|
DEBUG_TEST("sending to server...");
|
||||||
w = zts_write(sockfd, msg, strlen(msg));
|
w = zts_write(sockfd, msg, strlen(msg));
|
||||||
|
|
||||||
// rx
|
DEBUG_TEST("reading from server...");
|
||||||
r = zts_read(sockfd, rbuf, strlen(msg));
|
r = zts_read(sockfd, rbuf, strlen(msg));
|
||||||
|
|
||||||
DEBUG_TEST("Sent : %s", msg);
|
DEBUG_TEST("Sent : %s", msg);
|
||||||
|
|||||||
@@ -38,7 +38,6 @@ int main(int argc, char **argv)
|
|||||||
|
|
||||||
// --- BEGIN
|
// --- BEGIN
|
||||||
|
|
||||||
|
|
||||||
DEBUG_TEST("Waiting for libzt to come online...\n");
|
DEBUG_TEST("Waiting for libzt to come online...\n");
|
||||||
uint64_t nwid = strtoull(nwidstr.c_str(),NULL,16);
|
uint64_t nwid = strtoull(nwidstr.c_str(),NULL,16);
|
||||||
printf("nwid=%llx\n", nwid);
|
printf("nwid=%llx\n", nwid);
|
||||||
@@ -47,31 +46,27 @@ int main(int argc, char **argv)
|
|||||||
DEBUG_TEST("I am %llx", nodeId);
|
DEBUG_TEST("I am %llx", nodeId);
|
||||||
sleep(2);
|
sleep(2);
|
||||||
|
|
||||||
// socket()
|
|
||||||
if ((sockfd = zts_socket(AF_INET, SOCK_STREAM, 0)) < 0)
|
if ((sockfd = zts_socket(AF_INET, SOCK_STREAM, 0)) < 0)
|
||||||
DEBUG_ERROR("error creating ZeroTier socket");
|
DEBUG_ERROR("error creating ZeroTier socket");
|
||||||
|
|
||||||
// bind()
|
|
||||||
if ((err = zts_bind(sockfd, (struct sockaddr *)&in4, sizeof(struct sockaddr_in)) < 0))
|
if ((err = zts_bind(sockfd, (struct sockaddr *)&in4, sizeof(struct sockaddr_in)) < 0))
|
||||||
DEBUG_ERROR("error binding to interface (%d)", err);
|
DEBUG_ERROR("error binding to interface (%d)", err);
|
||||||
|
|
||||||
// listen()
|
|
||||||
if ((err = zts_listen(sockfd, 100)) < 0)
|
if ((err = zts_listen(sockfd, 100)) < 0)
|
||||||
DEBUG_ERROR("error placing socket in LISTENING state (%d)", err);
|
DEBUG_ERROR("error placing socket in LISTENING state (%d)", err);
|
||||||
|
|
||||||
// accept()
|
socklen_t client_addrlen = sizeof(sockaddr_in);
|
||||||
if ((accfd = zts_accept(sockfd, (struct sockaddr *)&acc_in4, (socklen_t *)sizeof(struct sockaddr_in))) < 0)
|
if ((accfd = zts_accept(sockfd, (struct sockaddr *)&acc_in4, &client_addrlen)) < 0)
|
||||||
DEBUG_ERROR("error accepting connection (%d)", err);
|
DEBUG_ERROR("error accepting connection (%d)", err);
|
||||||
|
|
||||||
// getpeername()
|
socklen_t peer_addrlen = sizeof(struct sockaddr_storage);
|
||||||
//socklen_t peer_addrlen;
|
zts_getpeername(accfd, (struct sockaddr*)&acc_in4, &peer_addrlen);
|
||||||
//zts_getpeername(accfd, (struct sockaddr*)&acc_, &peer_addrlen);
|
DEBUG_INFO("accepted connection from %s : %d", inet_ntoa(acc_in4.sin_addr), ntohs(acc_in4.sin_port));
|
||||||
//DEBUG_INFO("getpeername() => %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);
|
r = zts_read(accfd, rbuf, sizeof rbuf);
|
||||||
|
|
||||||
// tx
|
DEBUG_TEST("sending to client...");
|
||||||
w = zts_write(accfd, rbuf, strlen(rbuf));
|
w = zts_write(accfd, rbuf, strlen(rbuf));
|
||||||
|
|
||||||
DEBUG_TEST("Received : %s", rbuf);
|
DEBUG_TEST("Received : %s", rbuf);
|
||||||
|
|||||||
Reference in New Issue
Block a user