Merge branch 'connect' into 'master'
Add AF_UNSPEC support to the netstack See merge request redox-os/relibc!1159
This commit is contained in:
@@ -69,6 +69,16 @@ unsafe fn bind_or_connect(
|
||||
log::warn!("bind/connect with AF_UNIX were replaced with SYS_CALL.");
|
||||
return Err(Errno(EAFNOSUPPORT));
|
||||
}
|
||||
AF_UNSPEC => match op {
|
||||
SocketCall::Bind => {
|
||||
//bind is not a valid socket call for AF_UNSPEC
|
||||
return Err(Errno(EAFNOSUPPORT));
|
||||
}
|
||||
SocketCall::Connect => {
|
||||
"0.0.0.0:0".to_string()
|
||||
}
|
||||
_ => unreachable!(),
|
||||
}
|
||||
_ => return Err(Errno(EAFNOSUPPORT)),
|
||||
};
|
||||
let fd = syscall::dup(socket as usize, path.as_bytes())?;
|
||||
@@ -667,6 +677,9 @@ impl PalSocket for Sys {
|
||||
)?;
|
||||
Result::<c_int, Errno>::Ok(0)
|
||||
}
|
||||
AF_UNSPEC => unsafe {
|
||||
bind_or_connect_into(SocketCall::Connect, socket, address, address_len)
|
||||
}
|
||||
_ => Err(Errno(EAFNOSUPPORT)),
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user