Jump to content


GreenByteSoftware's Content

There have been 13 items by GreenByteSoftware (Search limited from 10-February 22)


By content type

See this member's

Sort by                Order  

#269006 [Version 5] SystemC - the thing that takes over OS work

Posted by GreenByteSoftware on 14 August 2017 - 06:16 PM in Operating Systems

Okay, some more changes, a lot of them actually. Now it is pretty stable and has fully working file permissions support. Also, improved sandboxing, now from my tests I could stack at least 3 sandboxes one inside the other. And other stuff, just check the commit message on github.



#265857 [Version 5] SystemC - the thing that takes over OS work

Posted by GreenByteSoftware on 27 March 2017 - 03:56 PM in Operating Systems

Another day another update. Now there is a fs api replacement which uses the uid information. Also, setuid call has been added to systemc api. Sudo uses it. Just try it out.



#265856 [CC 1.79] [Adv. Pocket Computer] craftAndroid [WIP]

Posted by GreenByteSoftware on 27 March 2017 - 12:51 PM in Operating Systems

If you need to just clone all the files run this:
pastebin run W5ZkVYSi Piorjade craftAndroid



#265855 [Off-Development]PockyOS v2.21 - Even more advanced pocket OS

Posted by GreenByteSoftware on 27 March 2017 - 12:45 PM in Operating Systems

View PostCLNinja, on 26 March 2017 - 05:31 PM, said:

So a few things (Not running latest, 2.0):
  • No form of a shell which leaves very little control over the device at all.
  • No way of adding more apps to the OS
  • Requires adding a site to the whitelist
So to address these, ill offer advice
  • Add a shell and modify fs to only allow editing of user made files
  • Make the [More apps] option look through a folder that the user can put scripts into and have it scroll through and display them graphically
  • Host on github or pastebin for the new files. Otherwise people will only be able to use past versions on servers.
Oh, it has been good 2-3 years since I stopped working on it. I will never address these because 1) the OS is just bad by design (code by a 14 years old) and 2) The files of the newest version are lost forever (website was closed and I do not have a copy of them



#265841 [Version 5] SystemC - the thing that takes over OS work

Posted by GreenByteSoftware on 26 March 2017 - 08:13 PM in Operating Systems

Another little update fixing some bugs.



#265839 [Version 5] SystemC - the thing that takes over OS work

Posted by GreenByteSoftware on 26 March 2017 - 06:47 PM in Operating Systems

Hey! I happened to be bored again so I improved the system dramatically. Just read the commit message, the update contains some cool stuff!

Ok, I leave it here:
Spoiler



#265835 Identifying API caller's environment

Posted by GreenByteSoftware on 26 March 2017 - 05:00 PM in Ask a Pro

View PostLyqyd, on 26 March 2017 - 02:54 PM, said:

In LyqydOS, there's a process API, and one field of that API is process.active. The PID of the active process is kept in that field, so if you utilized a similar setup, all you'd have to do is check that field from your other APIs to know which process is starting the new one. It could also be set up as a getter that fetches a local variable, to prevent other processes from writing to the value.
Perfect! I set up a local table's table from which a public process table is set every time a coroutine is resumed and this way I can know who is calling anything.



#265830 Identifying API caller's environment

Posted by GreenByteSoftware on 26 March 2017 - 08:36 AM in Ask a Pro

TL;DR - how to make APIs identify the caller environment and act differently based on it.

Hello,
is there any way to identify the program started with os.run? I am trying to make it so that every program runs on a specific UID and has different levels of file/api access. The best way would be so that no craftOS API is broken. I already am able to replace the os.run API so I can modify it.

My current code is as follows:
function os.run( _tEnv, _sPath, ... )
  local tEnv = _tEnv
  lastid = lastid+1
  local pid = lastid
  ptable[pid] = {_sPath, uid}

  ret = _osrun(tEnv, _sPath, ...)

  ptable[pid] = nil
  return ret
end
Where _osrun is the native os.run and a ptable and lastid are local variables.

So, I have a process table, now the problem is that how do I get a parent uid/pid in any API (including os.run)? I could store something like a function or a table so that if a variable in program's environment is altered, then it would make calls as a nobody user.



#263778 [Version 5] SystemC - the thing that takes over OS work

Posted by GreenByteSoftware on 17 January 2017 - 08:15 PM in Operating Systems

View PostH4X0RZ, on 17 January 2017 - 06:56 PM, said:

View PostGreenByteSoftware, on 17 January 2017 - 04:43 PM, said:

View Postクデル, on 16 January 2017 - 03:35 AM, said:

Thank you! I knew it existed, but since this forum does not allow searches of less than 4 characters I could not find it.

you can search for more advanced stuff using google. Just search for
computercraft.info: <your query here>
and it should show you all the pages google knows of.
Oh yes! The good old never old google.



#263773 [Version 5] SystemC - the thing that takes over OS work

Posted by GreenByteSoftware on 17 January 2017 - 04:43 PM in Operating Systems

View PostAdmicos, on 16 January 2017 - 08:55 AM, said:

View PostGreenByteSoftware, on 24 December 2016 - 02:02 PM, said:

That guy who does "Linux Suc*s" talks every year - for somehow inspiring me to make this

His name is Bryan Lunduke
Thanks

View Postクデル, on 16 January 2017 - 03:35 AM, said:

Thank you! I knew it existed, but since this forum does not allow searches of less than 4 characters I could not find it.



#263007 [Version 5] SystemC - the thing that takes over OS work

Posted by GreenByteSoftware on 24 December 2016 - 02:02 PM in Operating Systems

SystemC

More Than Just an Init System!



Hello again,

Today I would like to present you SystemC - something that became a bit bigger than I wanted it to be. Now it's basically like an OS, a base for an OS with really cool features like services similar to SystemD ones, file permissions, PoC user support (users are saved nowhere, sudo does no authentication), sandboxing support (I want you to try to break out of it) and many more things.

Currently half of the programs are very nig rigged, just like part of the inside code (for example support for SIGKILL was very hacky).

List of programs:

Spoiler

This was sort of a side project when not feeling doing all the game hacking or game dev stuff I'm used to doing now.

How to install? Well, for now I will not create the installer because of so many files (7, I know), but you can grab all of these from github.
Link: https://github.com/G...oftware/systemc
Install (should work): pastebin run W5ZkVYSi GreenByteSoftware systemc

So some FAQ:

Spoiler

Things to do:
Spoiler

And for the last, I made this up. Linux users might understand this.
Spoiler

Credits:
Spoiler



#262966 Chroot jail for CraftOS 1.7

Posted by GreenByteSoftware on 22 December 2016 - 08:34 AM in APIs and Utilities

New update, fixed bit API not being in chroot. Just re-run the bootstrapper and it should work just fine. Also, re-copy the bios.lua to rom folder of your chroot to fix bit32 API part.



#262888 Chroot jail for CraftOS 1.7

Posted by GreenByteSoftware on 20 December 2016 - 11:26 PM in APIs and Utilities

Hello everyone,

It has been a long time since I posted anything here, but this is something many people (especially those who recently came up with Linux imitating OS) would be interested in. This is chroot jail working on CraftOS 1.7 (tested on minecraft 1.7.10).

What is chroot? It basically is an utility from unix which allows to have a separate system inside existing operating system (like a sandbox). It does not allow to run windows on linux, but instead allows to run a program almost completely separated from the main system. This is great if you do not want to worry about the program ruining your system.

Download (github must be whitelisted): pastebin run GWWCYEDH
Git repository: https://github.com/G.../systemc-nspawn

The code is licensed under MIT license, just like the original code written by Lymia Aluysia. This code has been updated to work on CraftOS 1.7. Credit goes to him/her for writing the original code.

Soon I will update this with more content, this will potentially become much bigger than just chroot.