]>
git.ipfire.org Git - thirdparty/FORT-validator.git/log
pcarana [Mon, 18 Feb 2019 16:29:40 +0000 (10:29 -0600)]
Save in memory the VRPs loaded from CSV
Alberto Leiva Popper [Thu, 14 Feb 2019 23:03:22 +0000 (17:03 -0600)]
Address several TODOs.
dhfelix [Thu, 14 Feb 2019 21:57:03 +0000 (15:57 -0600)]
Update args parser framework
Alberto Leiva Popper [Thu, 14 Feb 2019 16:53:19 +0000 (10:53 -0600)]
Update usage of the libcmscodec library
pcarana [Thu, 14 Feb 2019 15:38:04 +0000 (09:38 -0600)]
Read VRPs from a CSV file set at JSON config
Alberto Leiva Popper [Wed, 13 Feb 2019 23:13:00 +0000 (17:13 -0600)]
Bugfix: policy was not being initialized
Alberto Leiva Popper [Tue, 12 Feb 2019 21:44:06 +0000 (15:44 -0600)]
Add a bunch of GCC warning flags
Found lots of bugs because of them. Most are fixed.
Alberto Leiva Popper [Tue, 12 Feb 2019 17:56:16 +0000 (11:56 -0600)]
Implement RFC 8360
Not really tested, because it doesn't look like there are people using
this feature yet.
Also:
- refactor inet_ntop() usage so we don't have to clutter the stack with
string buffers every time we want to print.
- Patch sometimes undefined behavior `0xFFFFFFFFu >> 32`.
dhfelix [Mon, 11 Feb 2019 22:56:20 +0000 (16:56 -0600)]
Merge branch 'master' into args-parser
Conflicts:
src/config.c
src/config.h
src/main.c
Alberto Leiva Popper [Fri, 8 Feb 2019 19:05:05 +0000 (13:05 -0600)]
Add RPKI-specific validation for CRLs
dhfelix [Fri, 8 Feb 2019 20:26:52 +0000 (14:26 -0600)]
Add flag parser framework
- checkpoint commit
- First version, stable and working but needs some tweaks
Alberto Leiva Popper [Thu, 7 Feb 2019 21:47:42 +0000 (15:47 -0600)]
Code review
- Print relevant IP address on address errors
- Add missing resource validations (swapped ranges, AS number out of
bounds)
- Remove validation of ROA's AS number. The RFCs never state that the
number must be present in the EE certificate.
pcarana [Thu, 7 Feb 2019 17:41:06 +0000 (11:41 -0600)]
Remove unnecessary conversion
pcarana [Thu, 7 Feb 2019 16:57:06 +0000 (10:57 -0600)]
Keep validating certs, don't stop on a child cert error
Alberto Leiva Popper [Thu, 7 Feb 2019 16:32:17 +0000 (10:32 -0600)]
Code review
Patched some segfaults, removed some redundant code, added more
sensible defaults.
pcarana [Wed, 6 Feb 2019 22:54:41 +0000 (16:54 -0600)]
Implement cert's subject validation
pcarana [Tue, 5 Feb 2019 21:15:55 +0000 (15:15 -0600)]
Merge branch 'intstructs' of https://github.com/ydahhrk/rpki-validator into intstructs
pcarana [Tue, 5 Feb 2019 18:27:22 +0000 (12:27 -0600)]
Validate certificate policies extension
pcarana [Tue, 5 Feb 2019 18:17:30 +0000 (12:17 -0600)]
Validate manifest number size
pcarana [Fri, 1 Feb 2019 23:17:19 +0000 (17:17 -0600)]
Cast INTEGER_t as unsigned long and use as such
pcarana [Fri, 1 Feb 2019 01:30:44 +0000 (19:30 -0600)]
Adapt types from long to INTEGER_t
pcarana [Tue, 5 Feb 2019 18:27:22 +0000 (12:27 -0600)]
Validate certificate policies extension
pcarana [Tue, 5 Feb 2019 18:17:30 +0000 (12:17 -0600)]
Validate manifest number size
Alberto Leiva Popper [Sat, 2 Feb 2019 00:08:51 +0000 (18:08 -0600)]
Impose a certificate chain length limit by configuration
Also add a configuration module, and patch a ROA address iteration
bug.
pcarana [Fri, 1 Feb 2019 23:17:19 +0000 (17:17 -0600)]
Cast INTEGER_t as unsigned long and use as such
dhfelix [Fri, 1 Feb 2019 22:30:09 +0000 (16:30 -0600)]
Add parsing for a config file
First version of it, needs more tweaks, but first I need
to finish an arg parser framework.
Alberto Leiva Popper [Fri, 1 Feb 2019 19:16:06 +0000 (13:16 -0600)]
Certificate serial number uniqueness validation
pcarana [Fri, 1 Feb 2019 01:30:44 +0000 (19:30 -0600)]
Adapt types from long to INTEGER_t
Alberto Leiva Popper [Wed, 30 Jan 2019 16:50:54 +0000 (10:50 -0600)]
Merge branch 'ydahhrk'
Alberto Leiva Popper [Wed, 30 Jan 2019 16:45:16 +0000 (10:45 -0600)]
Unify Access Description management
Alberto Leiva Popper [Tue, 29 Jan 2019 22:16:28 +0000 (16:16 -0600)]
Strengthen the TAL parser
Prevents segfaults when there's no blank line between the URI
section and the public key, as well as when the file is empty.
Fixes #1.
Alberto Leiva Popper [Tue, 29 Jan 2019 20:36:09 +0000 (14:36 -0600)]
Add validation of IP vs Range selection
RFC 3779, section 2.2.3.7.
Also patch memory leaks during AIA handling and other small TODOs.
dhfelix [Sat, 26 Jan 2019 03:09:13 +0000 (21:09 -0600)]
Add getopt to handle argc and argv
- Needs more tweaks
Alberto Leiva Popper [Fri, 25 Jan 2019 22:39:18 +0000 (16:39 -0600)]
Merge branch 'ydahhrk'
Alberto Leiva Popper [Fri, 25 Jan 2019 22:28:16 +0000 (16:28 -0600)]
Postpone recursive traversal and validate Access Descriptions
1. It was traversing through children before the current
certificate's validation was done. It's fixed now.
2. Adds validation of CRL Distribution Points, AIA.caIssuers and
SIA.signedObject.
Man, those requirements looked deceively small. It was a
freaking mess.
I'm not actually sure this is the final version of this code,
because several argument lists grew too much for my liking.
dhfelix [Wed, 23 Jan 2019 18:04:28 +0000 (12:04 -0600)]
Review of rsync.c code
Alberto Leiva Popper [Tue, 22 Jan 2019 22:57:11 +0000 (16:57 -0600)]
Engineer URIs a little
Should make URIs easier to use, and prevent the missing
null character bug from appearing again.
Alberto Leiva Popper [Fri, 18 Jan 2019 20:28:40 +0000 (14:28 -0600)]
Merge branch 'master' of github.com:ydahhrk/rpki-validator
Alberto Leiva Popper [Fri, 18 Jan 2019 20:09:12 +0000 (14:09 -0600)]
More misc tweaks:
- Validate more certificate extensions
- Ensure there is only one visible CRL and manifest per publication
point.
- Validate ROA's max length more thoroughly.
dhfelix [Fri, 18 Jan 2019 18:46:42 +0000 (12:46 -0600)]
Improve of rsync.c code
-add unit test for rsync.c
-TODO fix tal_tests
Alberto Leiva Popper [Tue, 15 Jan 2019 15:42:17 +0000 (09:42 -0600)]
Implement some postponed requirements
At this point I'm filling in blanks and TODOs rather than focus on a
particular feature. Mainly, this commit adds
- Validate certificate extensions
- Improve the main loop so it stops on the TAL's first successful URI
Alberto Leiva Popper [Fri, 21 Dec 2018 06:04:47 +0000 (00:04 -0600)]
Review of rsync.c code
Still need to review the calling code and actually test it.
Alberto Leiva Popper [Thu, 20 Dec 2018 19:10:20 +0000 (13:10 -0600)]
Merge branch 'rsync'
Alberto Leiva Popper [Thu, 20 Dec 2018 17:09:17 +0000 (11:09 -0600)]
Validate signed object hashes
And address several other minor TODOs
Alberto Leiva Popper [Mon, 17 Dec 2018 23:26:42 +0000 (17:26 -0600)]
Add validation of manifest hashes
It seems that the basic tree validation, at least as far as the
first iteration is concerned, is done.
Except I never managed to understand AS validation at all. It's
like there's nothing to do.
Of course, there's still a ways to go. I still have to add many
little ifs that the project needs to reach strict RFC compliance.
Also those 20-octet sequence manifest numbers. WTF.
Alberto Leiva Popper [Mon, 17 Dec 2018 19:01:35 +0000 (13:01 -0600)]
Adds:
- Check that the TAL's public key matches the root cert's public key
- Validate EE certificates differently than CA certificates
- Reorder tree traversal. (I noticed that I was doing it wrong.)
- Polish many other validations by hunting TODOs
dhfelix [Fri, 14 Dec 2018 22:48:40 +0000 (16:48 -0600)]
Add rsync command execution to download repositories
First version of the code, when executing the app, if a 4th arg is
detected, the app will not run rsync.
Maybe I need to replace the "system()" call with another function to
execute the "rsync command"
Also needs to read the "rsync command" from a user JSON configuration
file.
dhfelix [Fri, 14 Dec 2018 02:39:58 +0000 (20:39 -0600)]
Read the host address as a hostname
Converts the hostname to its equivalent in IPv4 or IPv6
Alberto Leiva Popper [Tue, 11 Dec 2018 17:18:31 +0000 (11:18 -0600)]
Refactor: Send the validation state to thread local
Unclutters lots of argument lists.
Also delete the prefix*_contains functions. Weren't being used.
Alberto Leiva Popper [Tue, 11 Dec 2018 15:12:20 +0000 (09:12 -0600)]
Automatically print offending files' names on errors
Alberto Leiva Popper [Sat, 8 Dec 2018 03:26:15 +0000 (21:26 -0600)]
Adds:
- IP ranges
- Bunch of ROA validation
- Bunch of certificate validation
I clearly don't understand how EE certificates validate AS numbers.
They never seem to have the AS extension.
Back to reading...
Alberto Leiva Popper [Thu, 29 Nov 2018 21:52:13 +0000 (15:52 -0600)]
More certificate validation
Includes an implementation of RFC 3779.
There's a lot of diff pollution due to another log.c refactor.
I can't seem to nail the right implementation of that thing.
Alberto Leiva Popper [Thu, 15 Nov 2018 20:11:47 +0000 (14:11 -0600)]
Add actual certificate tree validation and other misc tweaks
The tweaks are
1. Unified error message printing. Probably not the final version.
2. Add validation state object, meant to be passed around everywhere.
Prevents global variables.
3. Add a sketch of the CRL code. WIP.
dhfelix [Fri, 9 Nov 2018 22:12:02 +0000 (16:12 -0600)]
Add jansson reference as json parser
Alberto Leiva Popper [Wed, 7 Nov 2018 16:14:20 +0000 (10:14 -0600)]
Implement address block parsing (rfc3779, section 2.1)
Also, move the signed code decoding to its own module to prevent
duplicate code elsewhere
Alberto Leiva Popper [Fri, 2 Nov 2018 19:18:05 +0000 (13:18 -0600)]
Implement a bunch of global logic
The code traverses my repository clone, apparently in a correct
(although recursive) manner.
Not many validations are performed yet.
Alberto Leiva Popper [Thu, 27 Sep 2018 21:56:50 +0000 (16:56 -0500)]
Implement about 40% of RFC 6486 (Manifests)
Alberto Leiva Popper [Wed, 26 Sep 2018 18:49:45 +0000 (13:49 -0500)]
Implement about 80% of RFC 6482 (ROAs)
Alberto Leiva Popper [Fri, 21 Sep 2018 22:42:58 +0000 (17:42 -0500)]
About 80% of RFC 6488
Alberto Leiva Popper [Tue, 4 Sep 2018 21:17:34 +0000 (16:17 -0500)]
Implement RFC 7730 (TALs)
Alberto Leiva Popper [Tue, 4 Sep 2018 21:08:55 +0000 (16:08 -0500)]
Initial commit
Alberto Leiva Popper [Wed, 29 Aug 2018 22:23:03 +0000 (17:23 -0500)]
Add unit testing framework
And fix some bugs as a side effect.
Alberto Leiva Popper [Thu, 23 Aug 2018 22:38:53 +0000 (17:38 -0500)]
Improve the autotools config
The idea is to make it debian-packaging friendly.
It should work out of the box if appended a minimalistic debian
directory now.
Alberto Leiva Popper [Thu, 23 Aug 2018 02:19:04 +0000 (21:19 -0500)]
Add the traditional autoconf/automake mess
Alberto Leiva Popper [Thu, 23 Aug 2018 02:14:21 +0000 (21:14 -0500)]
Add string parsing to RTR
Rob Austein, author of RFCs 6810 and 8210, clarified that string
length unit is octets. Dumping according (still untested) code.
Alberto Leiva Popper [Thu, 16 Aug 2018 16:41:12 +0000 (11:41 -0500)]
Add RTR socket draft
Alberto Leiva Popper [Thu, 16 Aug 2018 16:23:32 +0000 (11:23 -0500)]
Initial commit