RTRlib
Loading...
Searching...
No Matches
spkitable_private.h File Reference
#include "rtrlib/spki/spkitable.h"
#include <stdint.h>

Go to the source code of this file.

Enumerations

enum  spki_rtvals { SPKI_SUCCESS = 0 , SPKI_ERROR = -1 , SPKI_DUPLICATE_RECORD = -2 , SPKI_RECORD_NOT_FOUND = -3 }
 Possible return values for some spki_table_ functions. More...
 

Functions

void spki_table_init (struct spki_table *spki_table, spki_update_fp update_fp)
 Initializes the spki_table struct.
 
void spki_table_free (struct spki_table *spki_table)
 Frees the memory associated with the spki_table.
 
void spki_table_free_without_notify (struct spki_table *spki_table)
 Frees the memory associated with the spki_table without calling the update callback.
 
int spki_table_add_entry (struct spki_table *spki_table, struct spki_record *spki_record)
 Adds a spki_record to a spki_table.
 
int spki_table_get_all (struct spki_table *spki_table, uint32_t asn, uint8_t *ski, struct spki_record **result, unsigned int *result_size)
 Returns all spki_record whose ASN and SKI matches.
 
int spki_table_search_by_ski (struct spki_table *spki_table, uint8_t *ski, struct spki_record **result, unsigned int *result_size)
 Returns all spki_record whose SKI number matches the given one.
 
int spki_table_remove_entry (struct spki_table *spki_table, struct spki_record *spki_record)
 Removes spki_record from spki_table.
 
int spki_table_src_remove (struct spki_table *spki_table, const struct rtr_socket *socket)
 Removes all entries in the spki_table that match the passed socket_id.
 
int spki_table_copy_except_socket (struct spki_table *src, struct spki_table *dest, struct rtr_socket *socket)
 Copy spki table except entries from the given socket.
 
void spki_table_notify_diff (struct spki_table *new_table, struct spki_table *old_table, const struct rtr_socket *socket)
 Notify client about changes between two spki tables regarding one specific socket.
 
void spki_table_swap (struct spki_table *a, struct spki_table *b)
 tommy_hashlin and tommy_list of the argument tables