PIPEFAIL: How a missing shell option slowed Cloudflare down
April 05, 2022
This post tells the story of how a missing shell option called “pipefail” slowed Cloudflare down....
April 05, 2022
This post tells the story of how a missing shell option called “pipefail” slowed Cloudflare down....
March 20, 2022
We continue our technical deep dive into traditional TCP proxying over HTTP...
February 04, 2022
Chances are you might have heard of io_uring. It first appeared in Linux 5.1, back in 2019, and was advertised as the new API for asynchronous I/O. Its goal was to be an alternative to the deemed-to-be-broken-beyond-repair AIO, the “old” asynchronous I/O API...
February 02, 2022
Often programmers have assumptions that turn out, to their surprise, to be invalid. From my experience this happens a lot. Every API, technology or system can be abused beyond its limits and break in a miserable way...
September 14, 2021
In this blog post, we’ll show you how we built a new system that can give you access to your Cloudflare logs in real time, with just a single click....
September 10, 2021
Continue learning how to import and execute code from an object file. In this part we will handle external library dependencies....
August 26, 2021
Using async Rust libraries is usually easy. It's just like using normal Rust code, with a little async or .await here and there. But writing your own async libraries can be hard. ...
May 06, 2021
Is it ok to have if clauses that will basically never be run? Surely, there must be some performance cost to that......
April 02, 2021
Continue learning how to import and execute code from an object file. This time we will investigate ELF relocations....
March 02, 2021
Ever wondered if it is possible to execute an object file without linking? Or use any object file as a library? Follow along to learn how to decompose an object file and import code from it along the way....
December 18, 2020
On Wednesday, December 16, the RedDrip Team from QiAnXin Technology released their discoveries (tweet, github) regarding the random subdomains associated with the SUNBURST malware which was present in the SolarWinds Orion compromise. I...
November 27, 2020
At Cloudflare, we pride ourselves in our global network that spans more than 200 cities in over 100 countries. To accelerate all that traffic through our network, there are multiple technologies at play. So let’s have a look at one of the cornerstones that makes all of this work....
October 27, 2020
A few months ago, after reading about Cloudflare doubling its intern class, I quickly dusted off my CV and applied for an internship. Long story short: now, a couple of months later, I found myself staring at Linux kernel code and adding a pretty cool feature to gVisor....
October 12, 2020
Today, we’re excited to share Cloudflare One™, our vision to tackle the intractable job of corporate security and networking. Run your network on Cloudflare and keep it secure....
September 15, 2020
The goal of Cloudflare operated Secondary DNS is to allow our customers with custom DNS solutions, be it on-premise or some other DNS provider, to be able to take advantage of Cloudflare's DNS performance and more recently, through Secondary Override, our proxying and security ca...
September 09, 2020
Unimog is the Layer 4 Load Balancer for Cloudflare’s edge data centers. This post explains the problems it solves and how it works....
July 08, 2020
In this post we will review Linux seccomp and learn how to sandbox any (even a proprietary) application without writing a single line of code....
June 18, 2020
My program received a SIGSEGV signal and crashed with "Segmentation Fault" message. Where does the "V" come from? Did I read it wrong? Was there a "Segmentation *V*ault?"? Or did Linux authors make a mistake? Shouldn't the signal be named SIGSEGF? ...