P.S.: Attempting to copy this code all together will not compile, since there are plentiful errors in this. This code is only meant to demonstrate what the code will look like. As of writing this, I am working on making a single header library for PageLinkedList.
The Github URL for correct PageLinkedList is: PageLinkedList.
As a preface, consider these two functions and one typedef are defined as below when reading this gist (The function implementations, although Windows Specific, are easily translatable into POSIX):
typedef uint8_t Bool;
// NOTE: This code assumes that the memory given back by this function is zeroed.