openSUSE / mentoring

The openSUSE Developer Mentoring Program
http://101.opensuse.org
60 stars 49 forks source link

Porting PRoot to Rust #162

Closed oxr463 closed 3 years ago

oxr463 commented 3 years ago

Project Title: Porting PRoot to Rust

Description:

There is already a proof of concept in progress, (See: https://github.com/proot-me/proot-rs). However, this implementation is very basic and only runs on a single architecture. Work is still needed to complete a functioning prototype, as outlined here, https://github.com/proot-me/proot-rs/issues/1:

Remaining steps for the bare minimum (single-tracee, no glue, no extensions, no ptrace-translation, no unix-socket translation, no qemu, -r/-R, -w and -b cli options only, no seccomp, and x86-64 with 64bits programs only)

Deliverable:

Fully functional, albeit minimal, PRoot implementation written in Rust.

Mentor: @oxr463

Skills: ptrace, rust

Skill Level: Medium

Get started: See: https://github.com/proot-me/proot-rs/issues/1

imlk0 commented 3 years ago

@oxr463

Hi oxr463,

I'm imlk, and I am studying computer science at Beijing University of Posts and Telecommunications in China. I have experience in developing toy operating systems using Rust, and I used to work as an intern in a company that uses the Rust language.

I saw this idea on GSOC. I am very interested in the work of Porting PRoot to Rust and intend to participate in it.

I forked the code and have made some changes (https://github.com/KB5201314/proot-rs) :

Currently, I'm still gaining an understanding of the existing code. I think it will be beneficial to start with fixing the cargo test failure. :)

oxr463 commented 3 years ago

@KB5201314 sounds awesome! Please join our Gitter so we can chat in real time, (https://gitter.im/proot-me/devs).

Also, it would be cool to get a PR going for these changes.

imlk0 commented 3 years ago

@KB5201314 sounds awesome! Please join our Gitter so we can chat in real time, (https://gitter.im/proot-me/devs).

Also, it would be cool to get a PR going for these changes.

Thank you, I have created a PR https://github.com/proot-me/proot-rs/pull/12

oxr463 commented 3 years ago

This is done per, https://github.com/proot-me/proot-rs/releases/tag/v0.1.0