mirror of
https://github.com/apache/nuttx-apps.git
synced 2026-08-01 20:29:00 +00:00
examples: fix local socket address lengths
The configured path size already includes its NUL terminator. Adding another byte made the maximum address length exceed sockaddr_un, while ustream could write at sun_path[UNIX_PATH_MAX]. Use the existing bounded copy length directly as the path portion of the socket address and rely on strlcpy for termination. Signed-off-by: Old-Ding <35417409+Old-Ding@users.noreply.github.com>
This commit is contained in:
parent
62b7e95530
commit
4ed4f10ef9
4 changed files with 4 additions and 6 deletions
|
|
@ -100,7 +100,7 @@ int main(int argc, FAR char *argv[])
|
|||
server.sun_family = AF_LOCAL;
|
||||
strlcpy(server.sun_path, CONFIG_EXAMPLES_UDGRAM_ADDR, addrlen);
|
||||
|
||||
addrlen += sizeof(sa_family_t) + 1;
|
||||
addrlen += sizeof(sa_family_t);
|
||||
|
||||
/* Send the message */
|
||||
|
||||
|
|
|
|||
|
|
@ -102,7 +102,7 @@ int main(int argc, FAR char *argv[])
|
|||
server.sun_family = AF_LOCAL;
|
||||
strlcpy(server.sun_path, CONFIG_EXAMPLES_UDGRAM_ADDR, addrlen);
|
||||
|
||||
addrlen += sizeof(sa_family_t) + 1;
|
||||
addrlen += sizeof(sa_family_t);
|
||||
|
||||
if (bind(sockfd, (struct sockaddr *)&server, addrlen) < 0)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -88,10 +88,9 @@ int main(int argc, FAR char *argv[])
|
|||
|
||||
myaddr.sun_family = AF_LOCAL;
|
||||
strlcpy(myaddr.sun_path, CONFIG_EXAMPLES_USTREAM_ADDR, addrlen);
|
||||
myaddr.sun_path[addrlen] = '\0';
|
||||
|
||||
printf("client: Connecting to %s...\n", CONFIG_EXAMPLES_USTREAM_ADDR);
|
||||
addrlen += sizeof(sa_family_t) + 1;
|
||||
addrlen += sizeof(sa_family_t);
|
||||
ret = connect(sockfd, (struct sockaddr *)&myaddr, addrlen);
|
||||
if (ret < 0)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -88,9 +88,8 @@ int main(int argc, char *argv[])
|
|||
|
||||
myaddr.sun_family = AF_LOCAL;
|
||||
strlcpy(myaddr.sun_path, CONFIG_EXAMPLES_USTREAM_ADDR, addrlen);
|
||||
myaddr.sun_path[addrlen] = '\0';
|
||||
|
||||
addrlen += sizeof(sa_family_t) + 1;
|
||||
addrlen += sizeof(sa_family_t);
|
||||
ret = bind(listensd, (struct sockaddr *)&myaddr, addrlen);
|
||||
if (ret < 0)
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue