Giter Site home page Giter Site logo

Comments (3)

alevy avatar alevy commented on June 11, 2024 1

This seems right to me. In other words, the implementations of ReadProcessBuffer has to be trusted even if it doesn't happen to require unsafe to write. So marking the trait unsafe would help ensure that only trusted code is allowed to write this trusted code.

from tock.

kupiakos avatar kupiakos commented on June 11, 2024

Note: #![forbid(unsafe_code)] can generally interact with and use an unsafe trait without issue; it primarily affects implementers of the trait itself.

from tock.

kupiakos avatar kupiakos commented on June 11, 2024

Yes, at the moment any implementer of ReadableProcessBuffer could write fn ptr(&self) -> *const u8 { ptr::null() }. Since there's no safety requirement for trait implementers, that implementation is fine according to soundness rules - thus it's not fine for unsafe code to trust generic ReadableProcessBuffer::ptr output to be a valid pointer.

from tock.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.