RTRlib
|
#include "rtrlib/bgpsec/bgpsec_utils_private.h"
Go to the source code of this file.
Functions | |
int | rtr_bgpsec_validate_as_path (const struct rtr_bgpsec *data, struct spki_table *table) |
Validation function for AS path validation. | |
int | rtr_bgpsec_generate_signature (const struct rtr_bgpsec *data, uint8_t *private_key, struct rtr_signature_seg **new_signature) |
Signing function for a BGPsec_PATH. | |
int | rtr_bgpsec_get_version (void) |
Returns the highest supported BGPsec version. | |
int | rtr_bgpsec_has_algorithm_suite (uint8_t alg_suite) |
Check, if an algorithm suite is supported by RTRlib. | |
int | rtr_bgpsec_get_algorithm_suites (const uint8_t **algs_arr) |
Returns a pointer to a list that holds all supported algorithm suites. | |
void | rtr_bgpsec_free_signatures (struct rtr_signature_seg *seg) |
Free a signature and any signatures that are pointed to. | |
struct rtr_secure_path_seg * | rtr_bgpsec_new_secure_path_seg (uint8_t pcount, uint8_t flags, uint32_t asn) |
Return an allocated and initialized Secure Path Segment. | |
void | rtr_bgpsec_prepend_sec_path_seg (struct rtr_bgpsec *bgpsec, struct rtr_secure_path_seg *new_seg) |
Prepend a given Secure Path Segment to rtr_bgpsec::path. | |
struct rtr_signature_seg * | rtr_bgpsec_new_signature_seg (uint8_t *ski, uint16_t sig_len, uint8_t *signature) |
Return an allocated and initialized Signature. | |
int | rtr_bgpsec_prepend_sig_seg (struct rtr_bgpsec *bgpsec, struct rtr_signature_seg *new_seg) |
Prepend a given Signature Segment to rtr_bgpsec::sigs. | |
struct rtr_bgpsec * | rtr_bgpsec_new (uint8_t alg, uint8_t safi, uint16_t afi, uint32_t my_as, uint32_t target_as, struct rtr_bgpsec_nlri *nlri) |
Initializes and returns a pointer to a rtr_bgpsec struct. | |
struct rtr_bgpsec_nlri * | rtr_bgpsec_nlri_new (int nlri_len) |
Allocate memory for a rtr_bgpsec_nlri struct. | |
void | rtr_bgpsec_nlri_free (struct rtr_bgpsec_nlri *nlri) |
Free a rtr_bgpsec_nlri struct. | |
void | rtr_bgpsec_free (struct rtr_bgpsec *bgpsec) |
Free a rtr_bgpsec struct and any Secure Path and Signature Segments it holds. | |
void | rtr_bgpsec_free_secure_path (struct rtr_secure_path_seg *seg) |
Free a Secure Path Segment and any segments that are pointed to by rtr_secure_path_seg::next. | |
struct rtr_signature_seg * | rtr_bgpsec_pop_signature_seg (struct rtr_bgpsec *bgpsec) |
Pop off the first Signature Segment from a given rtr_bgpsec struct and return this Signature Segment. | |
struct rtr_secure_path_seg * | rtr_bgpsec_pop_secure_path_seg (struct rtr_bgpsec *bgpsec) |
Pop off the first Secure Path Segment from a given rtr_bgpsec struct and return this Secure Path Segment. | |
int | rtr_bgpsec_append_sig_seg (struct rtr_bgpsec *bgpsec, struct rtr_signature_seg *new_seg) |
Append a Signature Segment to the end of the rtr_bgpsec::sigs of a given rtr_bgpsec struct. | |
void | rtr_bgpsec_append_sec_path_seg (struct rtr_bgpsec *bgpsec, struct rtr_secure_path_seg *new_seg) |
Append a Secure Path Segment to the end of the rtr_bgpsec::path of a given rtr_bgpsec struct. | |
void | rtr_bgpsec_add_spki_record (struct spki_table *table, struct spki_record *record) |
Manually add a SPKI record into the SPKI table. | |