]> git.ipfire.org Git - thirdparty/FORT-validator.git/commit
Parse and process snapshot, remember RRDP URIs (session ID and serial).
authorpcarana <pc.moreno2099@gmail.com>
Wed, 27 Nov 2019 21:49:39 +0000 (15:49 -0600)
committerpcarana <pc.moreno2099@gmail.com>
Wed, 27 Nov 2019 21:49:39 +0000 (15:49 -0600)
commit3139916fc249990440e8c6b60c47dd1d216150ad
treef87f4530750a001daaf0662061a56d96ecf3e5c9
parentc09a282cc5c6633d3197a6808c971b49c16ff18e
Parse and process snapshot, remember RRDP URIs (session ID and serial).

+Create struct and method to store RRDP URIs data.
+Create handler so that multiple threads can access RRDP URIs data.
+Rename 'gdata' property to 'global_data' at update_notification struct.
+Use prefered access method according to the order specified at the CAs.
+Implement RRDP URIs comparison, considers: URI, session ID and serial so that the caller can determine what to do (process snapshot, deltas, etc.)
+Document rrdp_objects.h structs.
+Add content length to 'publish' structure.
+Add functions to parse 'publish' elements.
+Validate that a new RRDP object parsed matches session ID and serial of the parent.
+Whenever a snapshot file is parsed (and validated), all of its 'publish' elements are parsed as well and created at the local repository.
+Use 'fnstack' to log whenever an RRDP file is being processed.
+Update 'uri.h' to explicitly create either rsync or https URIs.
+Use rrdp_handler at the validation state of each thread (or each TAL, it's the same thing).
+Fix wrong return value on error at __do_file_validation, it should return a 'no memory' error instead of 'invalid value'.
+Fix macro ARRAYLIST_FOREACH, one argument wasn't being utilized.
+Update unit tests, add reference to new header 'db_rrdp.h'.
23 files changed:
src/Makefile.am
src/data_structure/array_list.h
src/object/certificate.c
src/object/tal.c
src/rrdp/db_rrdp.c [new file with mode: 0644]
src/rrdp/db_rrdp.h [new file with mode: 0644]
src/rrdp/rrdp_handler.c [new file with mode: 0644]
src/rrdp/rrdp_handler.h [new file with mode: 0644]
src/rrdp/rrdp_objects.c
src/rrdp/rrdp_objects.h
src/rrdp/rrdp_parser.c
src/rrdp/rrdp_parser.h
src/rsync/rsync.c
src/rtr/db/vrps.c
src/rtr/db/vrps.h
src/state.c
src/state.h
src/uri.c
src/uri.h
test/rsync_test.c
test/rtr/db/vrps_test.c
test/rtr/pdu_handler_test.c
test/tal_test.c