Katalix

Categories

Reflections on our eBPF demo application

Our eBPF demo application contains some noteworthy aspects we didn't have space to explore as yet. This post gets into the specifics we glossed over last time!

...READ MORE...

The Extended Berkeley Packet Filter in action

We had an initial look at eBPF in a previous blog post. In this followup we explore some open source eBPF projects, and present a small demo of our own.

...READ MORE...

An Introduction to the Extended Berkeley Packet Filter

eBPF has been quietly revolutionising the Cloud network space, but you could be forgiven for never having heard of it. This post introduces eBPF, what it can be used for, and how to get started with using eBPF in a project.

...READ MORE...

Practical Packaging

What does the process look like for submitting a new package to a Linux distribution? In this post we document our experiences with submitting go-l2tp packages to the Debian and Fedora upstream distributions.

...READ MORE...

Android for Systems Developers

Android is, in some areas, becoming something of a de-facto standard for chipset vendor board support. But what if you're not developing a smartphone? In this post we explore what Android looks like coming from a more traditional embedded Linux world.

...READ MORE...

An approach to unit testing C code

Unlike more modern languages, C doesn't have a tradition of unit testing. But unit testing C code is perfectly possible, and a very effective way to reduce bugs and aid development. In this article we take a look at how we like to approach unit testing a C project.

...READ MORE...

Announcing kl2tpd NetworkManager-l2tp integration

NetworkManager-l2tp is a Network Manager plugin supporting L2TP/IPSec VPN connections for client machines. We've ported it to integrate support go-l2tp's kl2tpd.

...READ MORE...

Thoughts on Go

We recently used the Go language for the first time for a small project. This post explores how we got on with it.

...READ MORE...

Announcing go-l2tp

Today we're happy to announce a new project, go-l2tp, providing a library written in Go for building L2TP applications on Linux systems.

...READ MORE...

Linux and L2TP -- a peek under the hood (part 3)

The Linux Kernel has supported L2TP since 2007. In series of posts we take a look at how to make use of the Linux L2TP Application Programming Interface (API) using the C programming language. This third and final post covers debugging and unmanaged tunnels.

...READ MORE...

Linux and L2TP -- a peek under the hood (part 2)

The Linux Kernel has supported L2TP since 2007. In this series of posts we take a look at how to make use of the Linux L2TP Application Programming Interface (API) using the C programming language. This second post in a series of three looks at the details of writing to the kernel L2TP API.

...READ MORE...

Linux and L2TP -- a peek under the hood (part 1)

The Linux Kernel has supported L2TP since 2007. In series of posts we take a look at how to make use of the Linux L2TP Application Programming Interface (API) using the C programming language. This first instalment in a series of three covers application architecture.

...READ MORE...

Does real-time matter any more in Linux?

From the earliest days of its adoption in embedded devices, Linux has had a number of alternative add-ons that give it real-time capabilities. Many of these have come and gone. None were ever deemed suitable for inclusion in the mainline.

...READ MORE...

Embedded Linux: Look how far we've come

Here at Katalix, embedded Linux has been our core business for 10 years. Over that time we've seen a lot of developments in the embedded software industry. With the re-launch of our website, it seemed like a good time to reflect a little on the changes we've seen

...READ MORE...

Out with the old, in with the new (website)

The last few months here at Katalix HQ have been all about relaunching our website. This job has been on the 'to do' list for some time, but as a small company we don't have a dedicated website team, and it's often a hard call to prioritise a website refresh over paying contracts or product development.

...READ MORE...