-# FORT
+# FORT Validator
-An RPKI Validator and RTR Server.
+An RPKI Validator and RTR Server, part of the [FORT project](https://www.fortproject.net).
-## Installation
+## Documentation
-Dependencies:
+FORT Validator's documentation (installation, usage, etc.) can be found at [https://nicmx.github.io/FORT-validator/](https://nicmx.github.io/FORT-validator/).
-1. libcrypto ([LibreSSL](http://www.libressl.org/) or [OpenSSL](https://www.openssl.org/) >= 1.1)
-2. [jansson](https://github.com/akheron/jansson)
-3. [rsync](http://rsync.samba.org/)
-
-The validator is currently supported in *64-bit* OS. A 32-bit OS may face the [Year 2038 problem](https://en.wikipedia.org/wiki/Year_2038_problem) when handling dates at certificates.
-
-After all the dependencies are installed, run:
-
-```
-./autogen.sh
-./configure
-make
-make install
-```
-
-More documentation at [https://nicmx.github.io/FORT-validator/](https://nicmx.github.io/FORT-validator/).
-
-## Usage
-
-Use the following command to run an RTR server that will serve the ROAs resulting from a validation rooted at the trust anchors defined by the TALs contained at directory `--tal`:
-
-```
-fort \
- --tal <path to your TAL files> \
- --local-repository <path where you want to keep your local cache> \
- --server.address <your intended RTR server address> \
- --server.port <your intended RTR server port>
-```
-
-Run Fort validator as standalone (perform validation and exit) and print ROAs to CSV file:
-
-```
-fort \
- --mode standalone \
- --output.roa <path to output file in CSV format> \
- --tal <path to your TAL files> \
- --local-repository <path where you want to keep your local cache>
-```
-
-Run Fort validator using a [SLURM file](https://tools.ietf.org/html/rfc8416):
-
-```
-fort \
- --slurm <path to a SLURM file> \
- --tal <path to your TAL files> \
- --local-repository <path where you want to keep your local cache> \
- --server.address <your intended RTR server address> \
- --server.port <your intended RTR server port>
-```
-
-Visit the [Usage](https://nicmx.github.io/FORT-validator/usage.html) section at the docs to know all the possible Fort configurations, these are some usage examples.
\ No newline at end of file
+If you wish to generate the docs by yourself, visit the [docs directory](https://github.com/NICMx/FORT-validator/tree/master/docs).
\ No newline at end of file
The configuration options are mostly the same as the ones from the `argv` interface. (See the "Availability" metadata of each field.) Here's a full configuration file example:
<pre><code>{
- "<a href="#--tal">tal</a>": "/tmp/fort/tal/test.tal",
- "<a href="#--local-repository">local-repository</a>": "/tmp/fort/repository",
+ "<a href="#--tal">tal</a>": "/tmp/fort/tal/",
+ "<a href="#--local-repository">local-repository</a>": "/tmp/fort/repository/",
"<a href="#--sync-strategy">sync-strategy</a>": "root",
"<a href="#--shuffle-uris">shuffle-uris</a>": true,
+ "<a href="#--maximum-certificate-depth">maximum-certificate-depth</a>": 32,
"<a href="#--slurm">slurm</a>": "/tmp/fort/test.slurm",
"<a href="#--mode">mode</a>": "server",
"server": {
- "<a href="#--serveraddress">address</a>": "192.0.2.1",
+ "<a href="#--serveraddress">address</a>": "127.0.0.1",
"<a href="#--serverport">port</a>": "8323",
"<a href="#--serverbacklog">backlog</a>": 16,
"interval": {
"<a href="#rsyncprogram">program</a>": "rsync",
"<a href="#rsyncarguments-recursive">arguments-recursive</a>": [
"--recursive",
+ "--delete",
"--times",
+ "--contimeout=20",
"$REMOTE",
"$LOCAL"
],
"<a href="#rsyncarguments-flat">arguments-flat</a>": [
"--times",
+ "--contimeout=20",
"--dirs",
"$REMOTE",
"$LOCAL"
- **Type:** JSON Object
- **Availability:** JSON only
-A listing of actions to be performed by validation upon encountering certain error conditions. See [incidence](incidence.html).
+A listing of actions to be performed by validation upon encountering certain error conditions. See [Incidences](incidence.html).
{
"tal": "/tmp/fort/tal/",
- "local-repository": "/tmp/fort/repository",
+ "local-repository": "/tmp/fort/repository/",
"sync-strategy": "root",
"shuffle-uris": true,
"maximum-certificate-depth": 32,
"mode": "server",
- "slurm": "test.slurm",
+ "slurm": "/tmp/fort/test.slurm",
"server": {
- "address": "192.0.2.1",
+ "address": "127.0.0.1",
"port": "8323",
"backlog": 64,
"interval": {