diff options
author | bors[bot] <26634292+bors[bot]@users.noreply.github.com> | 2022-06-09 04:26:59 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-06-09 04:26:59 +0000 |
commit | b3ba2b5f63ddafa1644452030c1fac9a9cdd2641 (patch) | |
tree | aebc8b81a0934ba80abdc225c623122a9b41e2ff /src/sys/socket | |
parent | 32d597bbd6177adcb611e8d8eea631bab71629f9 (diff) | |
parent | ccf1b804551c6e09ad8aac24f6e39989a618fe22 (diff) | |
download | nix-b3ba2b5f63ddafa1644452030c1fac9a9cdd2641.zip |
Merge #1736
1736: Fix socket address family checks r=rtzoeller a=qwandor
The `SockaddrLike::from_raw` implementations for `VsockAddr` and `SysControlAddr` were checking against the wrong address family constant. This PR makes them consistent with the values matched against in `SockaddrStorage::from_raw`.
Co-authored-by: Andrew Walbran <qwandor@google.com>
Diffstat (limited to 'src/sys/socket')
-rw-r--r-- | src/sys/socket/addr.rs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/sys/socket/addr.rs b/src/sys/socket/addr.rs index 8de501a4..9d5c61ce 100644 --- a/src/sys/socket/addr.rs +++ b/src/sys/socket/addr.rs @@ -2259,7 +2259,7 @@ pub mod sys_control { return None; } } - if (*addr).sa_family as i32 != libc::AF_INET6 as i32 { + if (*addr).sa_family as i32 != libc::AF_SYSTEM as i32 { return None; } Some(SysControlAddr(*(addr as *const libc::sockaddr_ctl))) @@ -2566,7 +2566,7 @@ pub mod vsock { return None; } } - if (*addr).sa_family as i32 != libc::AF_INET6 as i32 { + if (*addr).sa_family as i32 != libc::AF_VSOCK as i32 { return None; } Some(VsockAddr(*(addr as *const libc::sockaddr_vm))) |