std: implement the `random` feature (alternative version) by joboet · Pull Request #129201 · rust-lang/rust

@rustbot rustbot added O-hermit

Operating System: Hermit

O-SGX

Target: SGX

O-solid

Operating System: SOLID

O-unix

Operating system: Unix-like

O-wasi

Operating system: Wasi, Webassembly System Interface

O-windows

Operating system: Windows

S-waiting-on-review

Status: Awaiting review from the assignee but also interested parties.

T-libs

Relevant to the library team, which will review and decide on the PR/issue.

labels

Aug 17, 2024

BlackHoleFox

@bors bors added the S-waiting-on-bors

Status: Waiting on bors to run and complete tests. Bors will change the label on completion.

label

Sep 22, 2024

workingjubilee added a commit to workingjubilee/rustc that referenced this pull request

Sep 23, 2024
…shtriplett

std: implement the `random` feature (alternative version)

Implements the ACP rust-lang/libs-team#393.

This PR is an alternative version of rust-lang#129120 that replaces `getentropy` with `CCRandomGenerateBytes` (on macOS) and `arc4random_buf` (other BSDs), since that function is not suited for generating large amounts of data and should only be used to seed other CPRNGs. `CCRandomGenerateBytes`/`arc4random_buf` on the other hand is (on modern platforms) just as secure and uses its own, very strong CPRNG (ChaCha20 on the BSDs, AES on macOS) periodically seeded with `getentropy`.

bors added a commit to rust-lang-ci/rust that referenced this pull request

Sep 23, 2024
…triplett

std: implement the `random` feature (alternative version)

Implements the ACP rust-lang/libs-team#393.

This PR is an alternative version of rust-lang#129120 that replaces `getentropy` with `CCRandomGenerateBytes` (on macOS) and `arc4random_buf` (other BSDs), since that function is not suited for generating large amounts of data and should only be used to seed other CPRNGs. `CCRandomGenerateBytes`/`arc4random_buf` on the other hand is (on modern platforms) just as secure and uses its own, very strong CPRNG (ChaCha20 on the BSDs, AES on macOS) periodically seeded with `getentropy`.

@bors bors mentioned this pull request

Sep 23, 2024

@bors bors added S-waiting-on-review

Status: Awaiting review from the assignee but also interested parties.

and removed S-waiting-on-bors

Status: Waiting on bors to run and complete tests. Bors will change the label on completion.

labels

Sep 23, 2024

@bors bors added S-waiting-on-bors

Status: Waiting on bors to run and complete tests. Bors will change the label on completion.

and removed S-waiting-on-review

Status: Awaiting review from the assignee but also interested parties.

labels

Sep 23, 2024

workingjubilee added a commit to workingjubilee/rustc that referenced this pull request

Sep 23, 2024
…shtriplett

std: implement the `random` feature (alternative version)

Implements the ACP rust-lang/libs-team#393.

This PR is an alternative version of rust-lang#129120 that replaces `getentropy` with `CCRandomGenerateBytes` (on macOS) and `arc4random_buf` (other BSDs), since that function is not suited for generating large amounts of data and should only be used to seed other CPRNGs. `CCRandomGenerateBytes`/`arc4random_buf` on the other hand is (on modern platforms) just as secure and uses its own, very strong CPRNG (ChaCha20 on the BSDs, AES on macOS) periodically seeded with `getentropy`.

This was referenced

Sep 23, 2024

bors added a commit to rust-lang-ci/rust that referenced this pull request

Sep 23, 2024
…kingjubilee

Rollup of 7 pull requests

Successful merges:

 - rust-lang#129201 (std: implement the `random` feature (alternative version))
 - rust-lang#130536 (bootstrap: Set the dylib path when building books with rustdoc)
 - rust-lang#130551 (Fix `break_last_token`.)
 - rust-lang#130657 (Remove x86_64-fuchsia and aarch64-fuchsia target aliases)
 - rust-lang#130721 (Add more test cases for block-no-opening-brace)
 - rust-lang#130736 (Add rustfmt 2024 reformatting to git blame ignore)
 - rust-lang#130746 (readd `@tgross35` and `@joboet` to the review rotation)

r? `@ghost`
`@rustbot` modify labels: rollup

rust-timer added a commit to rust-lang-ci/rust that referenced this pull request

Sep 23, 2024
Rollup merge of rust-lang#129201 - joboet:random_faster_sources, r=joshtriplett

std: implement the `random` feature (alternative version)

Implements the ACP rust-lang/libs-team#393.

This PR is an alternative version of rust-lang#129120 that replaces `getentropy` with `CCRandomGenerateBytes` (on macOS) and `arc4random_buf` (other BSDs), since that function is not suited for generating large amounts of data and should only be used to seed other CPRNGs. `CCRandomGenerateBytes`/`arc4random_buf` on the other hand is (on modern platforms) just as secure and uses its own, very strong CPRNG (ChaCha20 on the BSDs, AES on macOS) periodically seeded with `getentropy`.

RalfJung