All blog posts

    Announcing mfio - Completion I/O for Everyone

    Dec. 7, 2023, 5 p.m. by auri

    I'm extremely proud to announce the first release of mfio, mfio-rt, and mfio-netfs! This is the most flexible Rust I/O framework, period. Let's get into it, but before that, warning: this is going to be a dense post, so if you want a higher level overview, check out the release video :)

    Read more

    What If We Pretended That a Task = Thread?

    May 22, 2023, 9:12 p.m. by auri

    In my previous post I made a fairly inaccurate attempt at describing one of the primary problems plaguing current async ecosystem and an idea of solving it. Redditors criticized me, and rightfully so - the post was written in one go without giving it time to rest and the solution was not optimal. So I thought about it more, and I think I am on to something.

    Read more

    `Future + Send` Was (Not) Unavoidable

    May 9, 2023, 10:02 p.m. by auri

    If you've done any async programming in Rust, you will have encountered the problem, where you can't run tokio::spawn, because the future cannot be sent between threads safely. This is a tale about why this problem exists, how it could be solved for good, and why it's not trivial to do without breaking existing code.

    Read more

    We Need Type Information, Not Stable ABI

    Jan. 15, 2023, 5:42 p.m. by auri

    I've always been a strong proponent of dynamic linking, and last month a new Rust proposal dropped - interoperable_abi. It sparked discussions, plans forward, and my excitement was immeasurable. Then, one member said something that got me thinking. And after much thinking, I don't think ABI is what we need today. What we need is type information. Let me explain.

    Read more

    No compromises I/O

    Dec. 26, 2022, 10:22 a.m. by auri

    "Mr. h33p, what kind of substance are you on? All I want is 2 simple read/write functions!", said everyone in the room. Well, if you just let me get into the weeds, I'll tell you why that's not enough, and why we can do much, much better.

    Read more

    "Permanent Record" Review

    July 17, 2022, 5:01 p.m. by auri

    Edward Snowden's autobiography is a story about young man's journey leading up to arguably one of the most important events of the second decade, a story about rejection of evil, a story about rejection of being complicit, a story about standing up, even though all the cards are stacked up against one.

    Read more

    Getting Your Stuff Together #1

    June 11, 2022, 9:12 a.m. by auri

    If you've been following me, you probably noticed I have gone silent. I wish I was able to say it was a massive project that is done now and I'm ready to share it with the world, no, I simply didn't do anything. Until April I had my dissertation, and after that, I've been simply not living up to my standards. It's fun and all to float around, but one day you will have to pick yourself up and do everything you have put off, which for me, is far too many things. Why don't we simply start today?...

    Read more

    Reinventing memflow-cli

    Jan. 28, 2022, 10:55 p.m. by auri

    Today I went for a casual walk around campus and for the next 2 hours started to think about memflow's CLI/daemon. We're essentially rewriting it for 0.2 with a much more flexible design. The question is how exactly the architecture is going to look like. Join me for some thoughts regarding that.

    Read more

    CGlue 0.2 is here!

    Nov. 26, 2021, 2:37 a.m. by auri

    Beautiful things happen, when you let the type system do the work for you. CGlue has reached a very important milestone, making Rust to C/C++ interop not just possible, but also seamless!

    Read more

    miniCTF's Perceval

    Nov. 8, 2021, 10:12 a.m. by auri

    miniCTF was AFNOM's little CTF to introduce new members what capture the flag is. Now, I'm not a new member, but participated anyways, because what else am I going to do from 3PM to 5PM on a Wednesday? To make things harder, I went for the final web challenge - Perceval.

    Read more

    CGlue Today And The Road Ahead

    July 23, 2021, 1:24 p.m. by auri

    Hello again, CGlue has had several updates already with 0.1.2 being the latest. Let's cover it! And also, I think it's a good a time to start talking about the road ahead.

    Read more

    CGlue Update - Greatness Is Near!

    May 27, 2021, 11:51 p.m. by auri

    A few days ago I introduced a seamless ABI safety solution, and there has been rapid progress on it. It's very close to being feature complete, but there are some final important kinks that need working out.

    Read more

    Grand Plan for ABI Safety

    May 24, 2021, 9:31 a.m. by auri

    Rust does not have ABI safety by default. Meaning, any Rust (non extern "C") code that is called on your dynamically loaded libraries relies on an explicitly unstable ABI. It will work fine if the library is compiled with the same compiler version, but could break if they differ the slightest bit. But wait, it's 2021, how is it still an unsolved problem?

    Read more

    pwnEd 2 Breaking The Simulation

    Feb. 28, 2021, 8:45 p.m. by auri

    pwnEd 2 by University of Edinburgh was one of the first proper CTFs I have attended, and I thoroughly enjoyed it. Simulation was by far one of the most fun challenges.

    Read more

    What's ahead in the second year?

    Aug. 30, 2020, 12:58 p.m. by auri

    This will be a short and sweet one. With the second year of University approaching so fast it is probably a good idea to think about what to expect.

    Read more

    Reflecting on the first year of Uni

    Aug. 30, 2020, 12:57 p.m. by auri

    In summary, it has been quite a ride, no, but for real, first year of University was amazing! This post goes into detail about that.

    Read more

    Let's talk about this beautiful website

    Aug. 28, 2020, 1:35 p.m. by auri

    I have been programming a lot, and I was meaning to make a website to showcase some of my work, but I never got around to do so. But, due to how atoms in the Universe aligned, it, well, not Universe, our University tasked us with creating a blog site. So, here I am to walk you through its design.

    Read more

    Supporting Multiple Architectures

    Aug. 19, 2020, 10:28 a.m. by auri

    As an application, or a library develops, chances are you will start to think about adding support for different usecases. This blog delves into how I would approach that by example, implementing support for more architectures in memflow memory introspection toolkit.

    Read more