Giter Site home page Giter Site logo

zcrun's People

Contributors

1nwf avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

matu3ba

zcrun's Issues

Open Source License

Hey, great work with zcrun!

Any chance you'd be willing to put this under an open source license?

Question on Design Plans

Which of the following properties are planned?

    1. option for full cleanup/reset after process/container being run with/without errors (stateless)
    1. all namespaces specified by clone (network, pid, mount, and uts given, missing are IPC and user)
    1. sane ziggified clone3 interface and/or stack routines (upstream Zig still uses clone2)
    1. ziggigied clone3 for race free signaling
    1. build/run API for all the filepath things, which now search hardcoded system paths
    1. scope of rtnetlink with address, link, route is quite abit unclear and rtnetlink/ has no rtnetlink.zig (I guess network filters are not protocol aware besides "what kind of sys connection is it", but this looks like awefully lot configuration options)
    1. syscall or Kernel object access filtering (seccomp, seccomp-bpf, landlock)
    1. checking most relevant Kernel configs (https://en.wikipedia.org/wiki/Kernel_same-page_merging being the most obvious one)

Use case 1 is for testing and quality, 2 for completeness, 3 for long-living supervision processes (and testing 1) and efficiency, 4 for sane process control instead of the racy posix mess, 5+6 for reusability, 7 the fancy dancy stuff, 8 nice to have.

Very novice to sandboxing code, but I believe "must create a child process to enter the new PID namespace" is wrong, see "man 3 unshare": "unshare() allows a process (or thread) to disassociate parts of its execution context that are currently being shared with other processes (or threads)." Afaiu, only exec* must be used to start a new execution context, which is also what the example code shows.

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.