diff options
| author | Bert Belder <bertbelder@gmail.com> | 2019-05-22 19:47:15 -0700 |
|---|---|---|
| committer | Bert Belder <bertbelder@gmail.com> | 2019-05-22 19:47:15 -0700 |
| commit | 7d03a63dedac6c0509655248107dcfb8b3142442 (patch) | |
| tree | d6170fdd7b9b35e0ff8942c14048dfd43d1e3c0d /cli | |
| parent | 880265275fd49b1dad9a5643e2ad299292901e89 (diff) | |
Revert "Fix permissions for dial and listen (#2373)"
This reverts commit 7219787894f13b1920b3b6b49203cdcb8f672c00.
Diffstat (limited to 'cli')
| -rw-r--r-- | cli/ops.rs | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/cli/ops.rs b/cli/ops.rs index 2960f3d9d..9b5bc0079 100644 --- a/cli/ops.rs +++ b/cli/ops.rs @@ -1625,18 +1625,19 @@ fn op_listen( data: Option<PinnedBuf>, ) -> Box<OpWithError> { assert!(data.is_none()); + if let Err(e) = state.check_net("listen") { + return odd_future(e); + } + let cmd_id = base.cmd_id(); let inner = base.inner_as_listen().unwrap(); let network = inner.network().unwrap(); assert_eq!(network, "tcp"); let address = inner.address().unwrap(); - if let Err(e) = state.check_net(&address) { - return odd_future(e); - } - Box::new(futures::future::result((move || { let addr = resolve_addr(address).wait()?; + let listener = TcpListener::bind(&addr)?; let resource = resources::add_tcp_listener(listener); @@ -1681,11 +1682,14 @@ fn new_conn(cmd_id: u32, tcp_stream: TcpStream) -> OpResult { } fn op_accept( - _state: &ThreadSafeState, + state: &ThreadSafeState, base: &msg::Base<'_>, data: Option<PinnedBuf>, ) -> Box<OpWithError> { assert!(data.is_none()); + if let Err(e) = state.check_net("accept") { + return odd_future(e); + } let cmd_id = base.cmd_id(); let inner = base.inner_as_accept().unwrap(); let server_rid = inner.rid(); @@ -1709,16 +1713,15 @@ fn op_dial( data: Option<PinnedBuf>, ) -> Box<OpWithError> { assert!(data.is_none()); + if let Err(e) = state.check_net("dial") { + return odd_future(e); + } let cmd_id = base.cmd_id(); let inner = base.inner_as_dial().unwrap(); let network = inner.network().unwrap(); assert_eq!(network, "tcp"); // TODO Support others. let address = inner.address().unwrap(); - if let Err(e) = state.check_net(&address) { - return odd_future(e); - } - let op = resolve_addr(address) .map_err(DenoError::from) |
