-
Notifications
You must be signed in to change notification settings - Fork 12.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make native functions unsafe #2628
Comments
Agreed, these should be unsafe or explicitly marked safe with the same amount of ceremony required to enter an unsafe block. |
Agreed as well. Safe should mean "safe". |
I feel very strongly about this after working on Servo for a while. Most of our exploitable crashes are in safe code. If we don't do this I feel that Rust will, in a practical sense, have no more safety guarantees than C++. How can a security auditor hope to audit Rust code if every single call could do wildly unsafe things? |
This is now implemented. |
Implement condvars for Windows Adds 3 shims for Windows: `SleepConditionVariableSRW`, `WakeConditionVariable`, `WakeAllConditionVariable` to add support for condvars (which fixes rust-lang#2628). Salvaged from what was removed from rust-lang#2231
Implement condvars for Windows Adds 3 shims for Windows: `SleepConditionVariableSRW`, `WakeConditionVariable`, `WakeAllConditionVariable` to add support for condvars (which fixes rust-lang#2628). Salvaged from what was removed from rust-lang#2231
Implement condvars for Windows Adds 3 shims for Windows: `SleepConditionVariableSRW`, `WakeConditionVariable`, `WakeAllConditionVariable` to add support for condvars (which fixes rust-lang#2628). Salvaged from what was removed from rust-lang#2231
Kani compiler will now only store KaniMetadata after compiling all harnesses. Before, we were storing before codegen in the first iteration of the compiler. This will still allow us to generate metadata without actually performing codegen, if we ever implement a `kani list` subcommand. The metadata won't be stored though if Kani fails to codegen. However, we don't do anything extra with that file if the compilation fails. This change is required for rust-lang#2493 and contracts work. This will allow us to store information collected during code generation.
Very frequently I find myself marveling at the amount of unsafe code I can write without an
unsafe
block. Using native functions is the fastest way to segfault your rust but it usually doesn't require any special authorization. Unsafe native functions 2012.The text was updated successfully, but these errors were encountered: