summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHomu <homu@barosl.com>2016-09-18 04:25:10 +0900
committerHomu <homu@barosl.com>2016-09-18 04:25:10 +0900
commit9f3f7c21890e93bf3a6907c8e5f8dbd12d0f253b (patch)
tree2cbb5c493f2d4d51a80fac222ad401de2bb4014e
parent6ea8f7f91c65aa4d20a95dc79995904c374d7a88 (diff)
parent26e1b6d78563e75977c8023179b490516fb2516b (diff)
downloadnix-9f3f7c21890e93bf3a6907c8e5f8dbd12d0f253b.zip
Auto merge of #429 - Idolf:master, r=fiveop
Fixed a bug where UnixAddr::new_abstract forgot to count the null-byte.
-rw-r--r--src/sys/socket/addr.rs4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/sys/socket/addr.rs b/src/sys/socket/addr.rs
index 22970d8b..e3c1401c 100644
--- a/src/sys/socket/addr.rs
+++ b/src/sys/socket/addr.rs
@@ -391,7 +391,7 @@ impl UnixAddr {
.. mem::zeroed()
};
- if path.len() > ret.sun_path.len() {
+ if path.len() + 1 > ret.sun_path.len() {
return Err(Error::Sys(Errno::ENAMETOOLONG));
}
@@ -401,7 +401,7 @@ impl UnixAddr {
ret.sun_path.as_mut_ptr().offset(1) as *mut u8,
path.len());
- Ok(UnixAddr(ret, path.len()))
+ Ok(UnixAddr(ret, path.len() + 1))
}
}