Skip to content

Commit a52b13e

Browse files
committed
fix: return error for unsupported socket options instead of silent no-op
Signed-off-by: danbugs <danilochiarlone@gmail.com>
1 parent 9ee6231 commit a52b13e

1 file changed

Lines changed: 5 additions & 5 deletions

File tree

host/src/lib.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1101,14 +1101,14 @@ fn register_net_tools(
11011101
// SOL_SOCKET=1, SO_REUSEADDR=2
11021102
if level == 1 && optname == 2 {
11031103
sock.set_reuse_address(value != 0)?;
1104-
}
11051104
// SOL_SOCKET=1, SO_KEEPALIVE=9
1106-
if level == 1 && optname == 9 {
1105+
} else if level == 1 && optname == 9 {
11071106
sock.set_keepalive(value != 0)?;
1108-
}
11091107
// IPPROTO_TCP=6, TCP_NODELAY=1
1110-
if level == 6 && optname == 1 {
1108+
} else if level == 6 && optname == 1 {
11111109
sock.set_nodelay(value != 0)?;
1110+
} else {
1111+
return Err(anyhow!("unsupported socket option: level={}, optname={}", level, optname));
11121112
}
11131113
Ok(json!({}))
11141114
});
@@ -1129,7 +1129,7 @@ fn register_net_tools(
11291129
} else if level == 6 && optname == 1 {
11301130
sock.nodelay()? as i32
11311131
} else {
1132-
0
1132+
return Err(anyhow!("unsupported socket option: level={}, optname={}", level, optname));
11331133
};
11341134
Ok(json!({ "value": val }))
11351135
});

0 commit comments

Comments
 (0)