upstream commit
The POSIX APIs that that sockaddrs all ignore the s*_len field in the incoming socket, so userspace doesn't need to set it unless it has its own reasons for tracking the size along with the sockaddr. ok phessler@ deraadt@ florian@ Upstream-ID: ca6e49e2f22f2b9e81d6d924b90ecd7e422e7437
This commit is contained in:
parent
a1187bd3ef
commit
4ba15462ca
7
mux.c
7
mux.c
|
@ -1,4 +1,4 @@
|
||||||
/* $OpenBSD: mux.c,v 1.63 2016/10/19 23:21:56 dtucker Exp $ */
|
/* $OpenBSD: mux.c,v 1.64 2017/01/21 11:32:04 guenther Exp $ */
|
||||||
/*
|
/*
|
||||||
* Copyright (c) 2002-2008 Damien Miller <djm@openbsd.org>
|
* Copyright (c) 2002-2008 Damien Miller <djm@openbsd.org>
|
||||||
*
|
*
|
||||||
|
@ -2161,7 +2161,6 @@ int
|
||||||
muxclient(const char *path)
|
muxclient(const char *path)
|
||||||
{
|
{
|
||||||
struct sockaddr_un addr;
|
struct sockaddr_un addr;
|
||||||
socklen_t sun_len;
|
|
||||||
int sock;
|
int sock;
|
||||||
u_int pid;
|
u_int pid;
|
||||||
|
|
||||||
|
@ -2185,8 +2184,6 @@ muxclient(const char *path)
|
||||||
|
|
||||||
memset(&addr, '\0', sizeof(addr));
|
memset(&addr, '\0', sizeof(addr));
|
||||||
addr.sun_family = AF_UNIX;
|
addr.sun_family = AF_UNIX;
|
||||||
sun_len = offsetof(struct sockaddr_un, sun_path) +
|
|
||||||
strlen(path) + 1;
|
|
||||||
|
|
||||||
if (strlcpy(addr.sun_path, path,
|
if (strlcpy(addr.sun_path, path,
|
||||||
sizeof(addr.sun_path)) >= sizeof(addr.sun_path))
|
sizeof(addr.sun_path)) >= sizeof(addr.sun_path))
|
||||||
|
@ -2196,7 +2193,7 @@ muxclient(const char *path)
|
||||||
if ((sock = socket(PF_UNIX, SOCK_STREAM, 0)) < 0)
|
if ((sock = socket(PF_UNIX, SOCK_STREAM, 0)) < 0)
|
||||||
fatal("%s socket(): %s", __func__, strerror(errno));
|
fatal("%s socket(): %s", __func__, strerror(errno));
|
||||||
|
|
||||||
if (connect(sock, (struct sockaddr *)&addr, sun_len) == -1) {
|
if (connect(sock, (struct sockaddr *)&addr, sizeof(addr)) == -1) {
|
||||||
switch (muxclient_command) {
|
switch (muxclient_command) {
|
||||||
case SSHMUX_COMMAND_OPEN:
|
case SSHMUX_COMMAND_OPEN:
|
||||||
case SSHMUX_COMMAND_STDIO_FWD:
|
case SSHMUX_COMMAND_STDIO_FWD:
|
||||||
|
|
Loading…
Reference in New Issue