This commit is contained in:
longjin
2024-11-29 13:06:04 +00:00
parent b9c07e0be2
commit 0e6201779a

View File

@ -328,26 +328,23 @@ impl Socket for TcpSocket {
.recv_buffer_size()
}
fn shutdown(&self, how: ShutdownTemp) -> Result<(), SystemError> {
let self_shutdown = self.shutdown.get().bits();
let diff = how.bits().difference(self_shutdown);
match diff.is_empty(){
true => {
return Ok(())
},
match diff.is_empty() {
true => return Ok(()),
false => {
if diff.contains(ShutdownBit::SHUT_RD){
if diff.contains(ShutdownBit::SHUT_RD) {
self.shutdown.recv_shutdown();
// TODO 协议栈处理
}
if diff.contains(ShutdownBit::SHUT_WR){
if diff.contains(ShutdownBit::SHUT_WR) {
self.shutdown.send_shutdown();
// TODO 协议栈处理
}
},
}
}
Ok(())
Ok(())
}
fn close(&self) -> Result<(), SystemError> {