Skip to content

Commit

Permalink
Merge pull request #2742 from BytesGalore/rpl_udp_send_buffer
Browse files Browse the repository at this point in the history
examples:rpl_udp removed the limit of 5 characters as payload size
  • Loading branch information
cgundogan committed Mar 31, 2015
2 parents aeb5316 + b9e5c94 commit 1d9f189
Showing 1 changed file with 10 additions and 6 deletions.
16 changes: 10 additions & 6 deletions examples/rpl_udp/udp.c
Original file line number Diff line number Diff line change
Expand Up @@ -102,17 +102,21 @@ int udp_send(int argc, char **argv)
ipv6_addr_t ipaddr;
int bytes_sent;
int address;
char text[5];

if (argc != 3) {
printf("usage: send <addr> <text>\n");
return 1;
}

address = atoi(argv[1]);
/* max payload size = MTU - MAC - AES - IPV6_HDR_LEN - UDP_HDR_LEN
* 33 = 127 - 25 - 21 - 40 - 8
*/
if (strlen(argv[2]) > 32) {
puts("<text> is too large to be sent (max. 33 characters).");
return 1;
}

strncpy(text, argv[2], sizeof(text));
text[sizeof(text) - 1] = 0;
address = atoi(argv[1]);

sock = socket_base_socket(PF_INET6, SOCK_DGRAM, IPPROTO_UDP);

Expand All @@ -134,8 +138,8 @@ int udp_send(int argc, char **argv)
memcpy(&sa.sin6_addr, &ipaddr, 16);
sa.sin6_port = HTONS(SERVER_PORT);

bytes_sent = socket_base_sendto(sock, (char *)text,
strlen(text) + 1, 0, &sa,
bytes_sent = socket_base_sendto(sock, argv[2],
strlen(argv[2]), 0, &sa,
sizeof(sa));

if (bytes_sent < 0) {
Expand Down

0 comments on commit 1d9f189

Please sign in to comment.