diff --git a/src/platform/redox/socket.rs b/src/platform/redox/socket.rs index 87ecff53a8..a4b8318eee 100644 --- a/src/platform/redox/socket.rs +++ b/src/platform/redox/socket.rs @@ -789,8 +789,8 @@ impl PalSocket for Sys { } return Ok(()); } - crate::header::netinet_in::IPPROTO_IP as c_int - | crate::header::netinet_in::IPPROTO_IPV6 as c_int => { + val if val == crate::header::netinet_in::IPPROTO_IP as c_int + || val == crate::header::netinet_in::IPPROTO_IPV6 as c_int => { let metadata = [SocketCall::GetSockOpt as u64, option_name as u64]; let payload = unsafe { slice::from_raw_parts_mut(option_value as *mut u8, option_len) }; diff --git a/src/sync/pthread_mutex.rs b/src/sync/pthread_mutex.rs index aa91bc20f7..0b69cfcfce 100644 --- a/src/sync/pthread_mutex.rs +++ b/src/sync/pthread_mutex.rs @@ -65,15 +65,16 @@ impl RlctMutex { _ => return Err(Errno(EINVAL)), }, + prioceiling, }) } pub fn prioceiling(&self) -> Result { - todo_skip!(0, "pthread_getprioceiling: not implemented"); - Ok(0) + Ok(self.prioceiling) } - pub fn replace_prioceiling(&self, _: c_int) -> Result { - todo_skip!(0, "pthread_setprioceiling: not implemented"); - Ok(0) + pub fn replace_prioceiling(&self, new_ceiling: c_int) -> Result { + let old_ceiling = self.prioceiling; + self.prioceiling = new_ceiling; + Ok(old_ceiling) } pub fn make_consistent(&self) -> Result<(), Errno> { debug_assert!(self.robust, "make_consistent called on non-robust mutex");