about summary refs log tree commit diff
path: root/library/std/src/sys/windows/pipe.rs
AgeCommit message (Collapse)AuthorLines
2024-01-11std: begin moving platform support modules into `pal`joboet-571/+0
2023-05-30add FromOwnedFd/FromOwnedHandle for ChildStdin/out/errVincent Thiberville-1/+7
2023-05-05Use new bindingsChris Denton-1/+1
2023-03-06Implement read_buf for a few more typesTomasz Miąsko-1/+23
Implement read_buf for TcpStream, Stdin, StdinLock, ChildStdout, ChildStderr (and internally for AnonPipe, Handle, Socket), so that it skips buffer initialization. The other provided methods like read_to_string and read_to_end are implemented in terms of read_buf and so benefit from the optimization as well. This commit also implements read_vectored and is_read_vectored where applicable.
2022-12-08Add read_to_end for AnonPipeAyush Singh-1/+5
Add `read_to_end` method for `sys::{target}::pipe::AnonPipe`. This allows having a more optimized version of `read_to_end` for ChildStdout. Signed-off-by: Ayush Singh <ayushsingh1325@gmail.com>
2022-11-04Small round of typo fixesAlex Saveau-4/+5
Signed-off-by: Alex Saveau <saveau.alexandre@gmail.com>
2022-05-17Revert "Auto merge of #96441 - ChrisDenton:sync-pipes, r=m-ou-se"Mark Rousskov-76/+25
This reverts commit ddb7fbe8434be481607ae199fe2aee976ee2fc2e, reversing changes made to baaa3b682986879c7784b5733ecea942e9ae7de3.
2022-05-15fix use of SetHandleInformation on UWPbdbai-1/+12
2022-04-26Windows: Make stdin pipes synchronousChris Denton-25/+65
Stdin pipes do not need to be used asynchronously within the standard library.
2022-04-15Auto merge of #95841 - ChrisDenton:pipe-server, r=m-ou-sebors-0/+43
Windows: Use a pipe relay for chaining pipes Fixes #95759 This fixes the issue by chaining pipes synchronously and manually pumping messages between them. It's not ideal but it has the advantage of not costing anything if pipes are not chained ("don't pay for what you don't use") and it also avoids breaking existing code that rely on our end of the pipe being asynchronous (which includes rustc's own testing framework). Libraries can avoid needing this by using their own pipes to chain commands.
2022-04-08Windows: Use a pipe relay for chaining pipesChris Denton-0/+43
2022-04-07Windows: Increase a pipe's buffer capacity to 64kbChris Denton-2/+5
This brings it inline with typical Linux defaults: https://www.man7.org/linux/man-pages/man7/pipe.7.html
2022-04-04Correct calling conventionChris Denton-1/+1
2022-04-04Update library/std/src/sys/windows/pipe.rsChris Denton-4/+6
2022-03-30Synchronize asynchronous pipe reads and writesChris Denton-2/+117
2021-08-19I/O safety.Dan Gohman-5/+12
Introduce `OwnedFd` and `BorrowedFd`, and the `AsFd` trait, and implementations of `AsFd`, `From<OwnedFd>` and `From<T> for OwnedFd` for relevant types, along with Windows counterparts for handles and sockets. Tracking issue: - <https://github.com/rust-lang/rust/issues/87074> RFC: - <https://github.com/rust-lang/rfcs/blob/master/text/3128-io-safety.md>
2020-07-27mv std libs to library/mark-0/+368