Commit d5cef954 authored by Rob Muhlestein's avatar Rob Muhlestein 🎧

bork links at least fixed

parent b7d98093
......@@ -13,6 +13,6 @@ Feel free to check back regularly as more content is added to this main home pag
* [The Gregg Reference Manual (Annotations)](/gregg-reference-manual/)
* [Modern C (Book)](/modern-c/)
* [Linux Kernel Coding Style (Guide)](/linux-kernel-coding-style/)
* [OSCP Notes and Refs](/oscp/)
* [Contributing to `rwx.gg`](/contributing/)
[Source on GitLab](https://gitlab.com/rwx.gg/README)
......@@ -4,6 +4,9 @@ Name: 'OSCP'
UUID: 'rwx.gg/oscp'
Description: |
THIS DOCUMENT IS OLD AND HERE FOR LATER SPELUNKING
The Offensive Security Certified Professional is a proprietary
certificate offered by [Offensive
Security](https://www.offensive-security.com). This informal list of
......@@ -36,7 +39,6 @@ Requirements:
- R: 'Explain why OSCP differs from other credentials.'
- R: 'Understand exam restrictions.'
- R: 'https://support.offensive-security.com/oscp-exam-guide/#oscp-certification-exam-guide'
- R: 'Use of alternatives to what is in course is okay.'
- R: 'Execute a buffer overflow attack.'
- R: 'Tunnel using Secure Shell'
......
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>README</title>
<style>
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
span.underline{text-decoration: underline;}
div.column{display: inline-block; vertical-align: top; width: 50%;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
ul.task-list{list-style: none;}
</style>
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
</head>
<body>
<p>TODO</p>
</body>
</html>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>README</title>
<style>
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
span.underline{text-decoration: underline;}
div.column{display: inline-block; vertical-align: top; width: 50%;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
ul.task-list{list-style: none;}
</style>
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
</head>
<body>
<p>TODO</p>
</body>
</html>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>README</title>
<style>
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
span.underline{text-decoration: underline;}
div.column{display: inline-block; vertical-align: top; width: 50%;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
ul.task-list{list-style: none;}
</style>
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
</head>
<body>
<p>TODO</p>
</body>
</html>
......@@ -4,16 +4,16 @@
### C Coding Styles
*Just use [RWX C Coding Style](rwx-c-coding-style).*
*Just use [RWX C Coding Style](/c#rwx-c-coding-style).*
This chapter might leave you wondering a few things about the coding style being used:
* Why is the curly bracket (`{`) on its own line after functions?
* Why does other C code in other books like [Modern C](modern-c/) look different?
* Why does other C code in other books like [Modern C](/modern-c/) look different?
* Who decided this?
* Which style should I use?
It is really too bad the authors of this book chose to not even weigh in on the different C style guidelines at all, but it is understandable. It seems they are following K&R, which is also followed by the [Linux kernel team](linux-kernel-coding-style/).
It is really too bad the authors of this book chose to not even weigh in on the different C style guidelines at all, but it is understandable. It seems they are following K&R, which is also followed by the [Linux kernel team](/linux-kernel-coding-style/).
The *only* things you need to know about styles are the following:
......@@ -34,7 +34,7 @@ The `gcc` compiler has been the standard for more than thirty years. C99 is the
The `clang` tool might boast faster *perceived* compilation times, color terminal support, and very verbose errors but strictly speaking `clang` isn't even a true C compiler. It creates a small bit of binary code that is combined with something called the Low-Level Virtual Machine or LLVM. This is exactly what other LLVM languages do as well (Rust, Crystal, and Julia). To give you a sense of this, the first LLVM was created with `gcc`, the main Linux compiler. Considering that the main reason you are learning C at this point is to understand how languages work and interact with the underlying operating system and machine it is in our best interests to leave out the LLVM, which robs you of the opportunity to actually compile to machine code.
# RWX C Coding Style
The `rwx.gg` project follows a modern C coding style that is more consistent with that of JavaScript, Go, and Rust. It is the same as the [Linux Kernel Coding Style](linux-kernel-coding-style/) with the following changes:
The `rwx.gg` project follows a modern C coding style that is more consistent with that of JavaScript, Go, and Rust. It is the same as the [Linux Kernel Coding Style](/linux-kernel-coding-style/) with the following changes:
* Left curly brackets *always* end of line.
* *All* blocks require curly brackets.
......
......@@ -21,15 +21,15 @@
<h1 id="head-first-c-annotations">Head First C (Annotations)</h1>
<h2 id="chapter-1">Chapter 1</h2>
<h3 id="c-coding-styles">C Coding Styles</h3>
<p><em>Just use <a href="rwx-c-coding-style">RWX C Coding Style</a>.</em></p>
<p><em>Just use <a href="/c#rwx-c-coding-style">RWX C Coding Style</a>.</em></p>
<p>This chapter might leave you wondering a few things about the coding style being used:</p>
<ul>
<li>Why is the curly bracket (<code>{</code>) on its own line after functions?</li>
<li>Why does other C code in other books like <a href="modern-c/">Modern C</a> look different?</li>
<li>Why does other C code in other books like <a href="/modern-c/">Modern C</a> look different?</li>
<li>Who decided this?</li>
<li>Which style should I use?</li>
</ul>
<p>It is really too bad the authors of this book chose to not even weigh in on the different C style guidelines at all, but it is understandable. It seems they are following K&amp;R, which is also followed by the <a href="linux-kernel-coding-style/">Linux kernel team</a>.</p>
<p>It is really too bad the authors of this book chose to not even weigh in on the different C style guidelines at all, but it is understandable. It seems they are following K&amp;R, which is also followed by the <a href="/linux-kernel-coding-style/">Linux kernel team</a>.</p>
<p>The <em>only</em> things you need to know about styles are the following:</p>
<ul>
<li>Use same style on existing projects.</li>
......@@ -42,7 +42,7 @@
<p>The <code>gcc</code> compiler has been the standard for more than thirty years. C99 is the most widely supported version of C even though the standard itself is at C2X now. Most projects and documentation will be using C99.</p>
<h4 id="why-not-clang">Why not <code>clang</code>?</h4>
<p>The <code>clang</code> tool might boast faster <em>perceived</em> compilation times, color terminal support, and very verbose errors but strictly speaking <code>clang</code> isn’t even a true C compiler. It creates a small bit of binary code that is combined with something called the Low-Level Virtual Machine or LLVM. This is exactly what other LLVM languages do as well (Rust, Crystal, and Julia). To give you a sense of this, the first LLVM was created with <code>gcc</code>, the main Linux compiler. Considering that the main reason you are learning C at this point is to understand how languages work and interact with the underlying operating system and machine it is in our best interests to leave out the LLVM, which robs you of the opportunity to actually compile to machine code. # RWX C Coding Style</p>
<p>The <code>rwx.gg</code> project follows a modern C coding style that is more consistent with that of JavaScript, Go, and Rust. It is the same as the <a href="linux-kernel-coding-style/">Linux Kernel Coding Style</a> with the following changes:</p>
<p>The <code>rwx.gg</code> project follows a modern C coding style that is more consistent with that of JavaScript, Go, and Rust. It is the same as the <a href="/linux-kernel-coding-style/">Linux Kernel Coding Style</a> with the following changes:</p>
<ul>
<li>Left curly brackets <em>always</em> end of line.</li>
<li><em>All</em> blocks require curly brackets.</li>
......
......@@ -28,8 +28,8 @@
<li><a href="/gregg-reference-manual/">The Gregg Reference Manual (Annotations)</a></li>
<li><a href="/modern-c/">Modern C (Book)</a></li>
<li><a href="/linux-kernel-coding-style/">Linux Kernel Coding Style (Guide)</a></li>
<li><a href="/oscp/">OSCP Notes and Refs</a></li>
<li><a href="/contributing/">Contributing to <code>rwx.gg</code></a></li>
</ul>
<p><a href="https://gitlab.com/rwx.gg/README">Source on GitLab</a></p>
</body>
</html>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>README</title>
<style>
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
span.underline{text-decoration: underline;}
div.column{display: inline-block; vertical-align: top; width: 50%;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
ul.task-list{list-style: none;}
</style>
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
</head>
<body>
<p>TODO</p>
</body>
</html>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>README</title>
<style>
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
span.underline{text-decoration: underline;}
div.column{display: inline-block; vertical-align: top; width: 50%;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
ul.task-list{list-style: none;}
</style>
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
</head>
<body>
<p>TODO</p>
</body>
</html>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>README</title>
<style>
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
span.underline{text-decoration: underline;}
div.column{display: inline-block; vertical-align: top; width: 50%;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
ul.task-list{list-style: none;}
</style>
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
</head>
<body>
<p>TODO</p>
</body>
</html>
# Linux Kernel Coding Style
*From the [Linux Kernel Project](https://www.kernel.org/doc/html/v4.10/process/coding-style.html). You probably want to use [RWX C coding style](rwx-c-coding-style/) instead.*
*From the [Linux Kernel Project](https://www.kernel.org/doc/html/v4.10/process/coding-style.html). You probably want to use [RWX C coding style](/c#rwx-c-coding-style) instead.*
This is a short document describing the preferred coding style for the
linux kernel. Coding style is very personal, and I won't **force** my
......
......@@ -81,7 +81,7 @@
</head>
<body>
<h1 id="linux-kernel-coding-style">Linux Kernel Coding Style</h1>
<p><em>From the <a href="https://www.kernel.org/doc/html/v4.10/process/coding-style.html">Linux Kernel Project</a>. You probably want to use <a href="rwx-c-coding-style/">RWX C coding style</a> instead.</em></p>
<p><em>From the <a href="https://www.kernel.org/doc/html/v4.10/process/coding-style.html">Linux Kernel Project</a>. You probably want to use <a href="/c#rwx-c-coding-style">RWX C coding style</a> instead.</em></p>
<p>This is a short document describing the preferred coding style for the linux kernel. Coding style is very personal, and I won’t <strong>force</strong> my views on anybody, but this is what goes for anything that I have to be able to maintain, and I’d prefer it for most other things too. Please at least consider the points made here.</p>
<p>First off, I’d suggest printing out a copy of the GNU coding standards, and NOT read it. Burn them, it’s a great symbolic gesture.</p>
<p>Anyway, here goes:</p>
......
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>README</title>
<style>
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
span.underline{text-decoration: underline;}
div.column{display: inline-block; vertical-align: top; width: 50%;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
ul.task-list{list-style: none;}
</style>
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
</head>
<body>
<p>TODO</p>
</body>
</html>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>README</title>
<style>
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
span.underline{text-decoration: underline;}
div.column{display: inline-block; vertical-align: top; width: 50%;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
ul.task-list{list-style: none;}
</style>
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
</head>
<body>
<p>TODO</p>
</body>
</html>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>README</title>
<style>
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
span.underline{text-decoration: underline;}
div.column{display: inline-block; vertical-align: top; width: 50%;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
ul.task-list{list-style: none;}
</style>
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
</head>
<body>
<p>TODO</p>
</body>
</html>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>README</title>
<style>
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
span.underline{text-decoration: underline;}
div.column{display: inline-block; vertical-align: top; width: 50%;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
ul.task-list{list-style: none;}
</style>
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
</head>
<body>
<p>TODO</p>
</body>
</html>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
<meta charset="utf-8" />
<meta name="generator" content="pandoc" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
<title>README</title>
<style>
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
span.underline{text-decoration: underline;}
div.column{display: inline-block; vertical-align: top; width: 50%;}
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
ul.task-list{list-style: none;}
</style>
<!--[if lt IE 9]>
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
<![endif]-->
</head>
<body>
<p>TODO</p>
</body>
</html>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment