www/blog.hillion.co.uk/categories/weekly-updates/page/2/index.html
2023-01-07 22:30:40 +00:00

14 lines
9.9 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html><html lang=en dir=auto><head><meta charset=utf-8><meta http-equiv=x-ua-compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Weekly Updates | Jake Hillion</title><meta name=keywords content><meta name=description content="Jake Hillion's Blog"><meta name=author content="Jake Hillion"><link rel=canonical href=https://blog.hillion.co.uk/categories/weekly-updates/><link crossorigin=anonymous href=/assets/css/stylesheet.min.48a18943c2fc15c38a372b8dde1f5e5dc0bc64fa6cb90f5a817d2f8c76b7f3ae.css integrity="sha256-SKGJQ8L8FcOKNyuN3h9eXcC8ZPpsuQ9agX0vjHa3864=" rel="preload stylesheet" as=style><link rel=icon href=https://blog.hillion.co.uk/favicon.ico><link rel=icon type=image/png sizes=16x16 href=https://blog.hillion.co.uk/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=https://blog.hillion.co.uk/favicon-32x32.png><link rel=apple-touch-icon href=https://blog.hillion.co.uk/apple-touch-icon.png><link rel=mask-icon href=https://blog.hillion.co.uk/safari-pinned-tab.svg><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://blog.hillion.co.uk/categories/weekly-updates/index.xml><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--hljs-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51)}.list{background:var(--theme)}.list:not(.dark)::-webkit-scrollbar-track{background:0 0}.list:not(.dark)::-webkit-scrollbar-thumb{border-color:var(--theme)}}</style></noscript><script async src="https://www.googletagmanager.com/gtag/js?id=G-4CXXF49E7M"></script>
<script>var doNotTrack=!1;if(!doNotTrack){window.dataLayer=window.dataLayer||[];function gtag(){dataLayer.push(arguments)}gtag("js",new Date),gtag("config","G-4CXXF49E7M",{anonymize_ip:!1})}</script><meta property="og:title" content="Weekly Updates"><meta property="og:description" content="Jake Hillion's Blog"><meta property="og:type" content="website"><meta property="og:url" content="https://blog.hillion.co.uk/categories/weekly-updates/"><meta property="og:site_name" content="Jake Hillion"><meta name=twitter:card content="summary"><meta name=twitter:title content="Weekly Updates"><meta name=twitter:description content="Jake Hillion's Blog"></head><body class=list id=top><script>localStorage.getItem("pref-theme")==="dark"?document.body.classList.add("dark"):localStorage.getItem("pref-theme")==="light"?document.body.classList.remove("dark"):window.matchMedia("(prefers-color-scheme: dark)").matches&&document.body.classList.add("dark")</script><header class=header><nav class=nav><div class=logo><a href=https://blog.hillion.co.uk/ accesskey=h title="Jake Hillion (Alt + H)">Jake Hillion</a>
<span class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)"><svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg><svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></span></div><ul id=menu><li><a href=https://blog.hillion.co.uk/categories/ title=categories><span>categories</span></a></li><li><a href=https://blog.hillion.co.uk/tags/ title=tags><span>tags</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=https://blog.hillion.co.uk/>Home</a>&nbsp;»&nbsp;<a href=https://blog.hillion.co.uk/categories/>Categories</a></div><h1>Weekly Updates</h1></header><article class="post-entry tag-entry"><header class=entry-header><h2>Jake's Weekly - 13th Feb 2022</h2></header><section class=entry-content><p>Research Project Process Isolation Built the shim in Rust (clone_shim).
Wrote a quite nice to use wrapper for the clone3 syscall in (relatively) safe Rust (clone.rs).
Wrote the basis of specification, that should be extensible enough for future features (specification.rs).
Currently this reads only JSON specifications, but Rusts serde library has support for a variety of binary formats to try later on. Started tying things together. Currently on the running at startup launches work, but they do launch and its a strong basis to add more features from....</p></section><footer class=entry-footer><span title='2022-02-14 11:00:00 +0000 UTC'>February 14, 2022</span>&nbsp;·&nbsp;3 min&nbsp;·&nbsp;Jake Hillion</footer><a class=entry-link aria-label="post link to Jake's Weekly - 13th Feb 2022" href=https://blog.hillion.co.uk/posts/weekly-2022-02-13/></a></article><article class="post-entry tag-entry"><header class=entry-header><h2>Jake's Weekly - 31st Jan 2022</h2></header><section class=entry-content><p>Research Project Process Isolation Built three privilege separated test applications.
Wrote a privilege separated fib implementation (fib_priv_sep.c).
Pretty basic separation as the program is trivial. In the later cp example I did privilege separate the arguments, but I didnt for the purpose of fib. Starting to build up a structure. The files are structured to have a main implementation reminiscent of the eventual shim, while the functions like real_main would come from the eventual binary....</p></section><footer class=entry-footer><span title='2022-01-31 11:00:00 +0000 UTC'>January 31, 2022</span>&nbsp;·&nbsp;3 min&nbsp;·&nbsp;Jake Hillion</footer><a class=entry-link aria-label="post link to Jake's Weekly - 31st Jan 2022" href=https://blog.hillion.co.uk/posts/weekly-2022-01-31/></a></article><article class="post-entry tag-entry"><header class=entry-header><h2>Jake's Weekly - 17th Jan 2022</h2></header><section class=entry-content><p>Research Project Process Isolation Wrote an OCaml binding for the clone3 syscall (clone_shim.ml/clone3_stub.c).
Some decisions made to make this feel a bit higher level: List of flags rather than ORed together numbers. Options used where helpful. Looked into using an OCaml callback, but of course this doesnt work (as expected - OCaml didnt like Multicore!). Currently execves a specific binary (/bin/sh), but should be easy to extend. Tricky to know sometimes what to put in C and what to put in OCaml....</p></section><footer class=entry-footer><span title='2022-01-15 11:00:00 +0000 UTC'>January 15, 2022</span>&nbsp;·&nbsp;3 min&nbsp;·&nbsp;Jake Hillion</footer><a class=entry-link aria-label="post link to Jake's Weekly - 17th Jan 2022" href=https://blog.hillion.co.uk/posts/weekly-2022-01-17/></a></article><article class="post-entry tag-entry"><header class=entry-header><h2>Jake's Weekly - 3rd Jan 2022</h2></header><section class=entry-content><p>Research Project Process Isolation Setup a Fedora testing VM for easier and consistent testing.
Fedora 35 uses pure cgroups2 by default - very useful! Sorted out backups for the repo and the above machine. Chose a testing framework for C enabling testing of the assertions to build the project upon.
Used Unity. Simple and the examples show that it doesnt do much beyond the minimum - important for this low level code with syscalls....</p></section><footer class=entry-footer><span title='2022-01-01 11:00:00 +0000 UTC'>January 1, 2022</span>&nbsp;·&nbsp;5 min&nbsp;·&nbsp;Jake Hillion</footer><a class=entry-link aria-label="post link to Jake's Weekly - 3rd Jan 2022" href=https://blog.hillion.co.uk/posts/weekly-2022-01-03/></a></article><footer class=page-footer><nav class=pagination><a class=prev href=https://blog.hillion.co.uk/categories/weekly-updates/>« Prev Page</a></nav></footer></main><footer class=footer><span>&copy; 2023 <a href=https://blog.hillion.co.uk/>Jake Hillion</a></span>
<span>Powered by
<a href=https://gohugo.io/ rel="noopener noreferrer" target=_blank>Hugo</a> &
<a href=https://git.io/hugopapermod rel=noopener target=_blank>PaperMod</a></span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentcolor"><path d="M12 6H0l6-6z"/></svg></a><script>let menu=document.getElementById("menu");menu&&(menu.scrollLeft=localStorage.getItem("menu-scroll-position"),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}),document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script><script>document.getElementById("theme-toggle").addEventListener("click",()=>{document.body.className.includes("dark")?(document.body.classList.remove("dark"),localStorage.setItem("pref-theme","light")):(document.body.classList.add("dark"),localStorage.setItem("pref-theme","dark"))})</script></body></html>