RPKI Engine
1.0
|
Public Member Functions | |
def | active_ca_detail |
def | ca_details |
def | check_for_updates |
def | construct_sia_uri |
def | create |
def | delete |
def | deprecated_ca_details |
def | issue_response_candidate_ca_details |
def | next_crl_number |
def | next_manifest_number |
def | next_serial_number |
def | parent |
def | pending_ca_details |
def | reissue |
def | rekey |
def | revoke |
def | revoked_ca_details |
Public Attributes | |
gctx | |
parent_id | |
parent_resource_class | |
sia_uri | |
Static Public Attributes | |
int | last_crl_sn = 0 |
int | last_issued_sn = 0 |
int | last_manifest_sn = 0 |
tuple | sql_template |
Internal CA object.
Definition at line 358 of file rpki/rpkid.py.
def rpki::rpkid::ca_obj::active_ca_detail | ( | self | ) |
Fetch the active ca_detail for this CA, if any.
Definition at line 398 of file rpki/rpkid.py.
References rpki::rpkid::ca_detail_obj::ca_id, and gctx.
Referenced by reissue(), and rekey().
def rpki::rpkid::ca_obj::ca_details | ( | self | ) |
Fetch all ca_detail objects that link to this CA object.
Definition at line 384 of file rpki/rpkid.py.
References rpki::rpkid::ca_detail_obj::ca_id, and gctx.
Referenced by delete().
def rpki::rpkid::ca_obj::check_for_updates | ( | self, | |
parent, | |||
rc, | |||
cb, | |||
eb | |||
) |
Parent has signaled continued existance of a resource class we already knew about, so we need to check for an updated certificate, changes in resource coverage, revocation and reissue with the same key, etc.
Definition at line 440 of file rpki/rpkid.py.
def rpki::rpkid::ca_obj::construct_sia_uri | ( | self, | |
parent, | |||
rc | |||
) |
Construct the sia_uri value for this CA given configured information and the parent's up-down protocol list_response PDU.
Definition at line 427 of file rpki/rpkid.py.
References rpki::rpkid::ca_detail_obj::ca_id.
def rpki::rpkid::ca_obj::create | ( | cls, | |
parent, | |||
rc, | |||
cb, | |||
eb | |||
) |
Parent has signaled existance of a new resource class, so we need to create and set up a corresponding CA object.
Definition at line 529 of file rpki/rpkid.py.
def rpki::rpkid::ca_obj::delete | ( | self, | |
parent, | |||
callback | |||
) |
The list of current resource classes received from parent does not include the class corresponding to this CA, so we need to delete it (and its little dog too...). All certs published by this CA are now invalid, so need to withdraw them, the CRL, and the manifest from the repository, delete all child_cert and ca_detail records associated with this CA, then finally delete this CA itself.
Definition at line 553 of file rpki/rpkid.py.
References ca_details(), and rpki::sql::sql_persistent::sql_delete().
def rpki::rpkid::ca_obj::deprecated_ca_details | ( | self | ) |
Fetch deprecated ca_details for this CA, if any.
Definition at line 405 of file rpki/rpkid.py.
References rpki::rpkid::ca_detail_obj::ca_id, and gctx.
Referenced by revoke().
def rpki::rpkid::ca_obj::issue_response_candidate_ca_details | ( | self | ) |
Fetch ca_details which are candidates for consideration when processing an up-down issue_response PDU.
Definition at line 419 of file rpki/rpkid.py.
References rpki::rpkid::ca_detail_obj::ca_id, and gctx.
def rpki::rpkid::ca_obj::next_crl_number | ( | self | ) |
Allocate a CRL serial number.
Definition at line 595 of file rpki/rpkid.py.
References last_crl_sn, and rpki::sql::sql_persistent::sql_mark_dirty().
def rpki::rpkid::ca_obj::next_manifest_number | ( | self | ) |
Allocate a manifest serial number.
Definition at line 587 of file rpki/rpkid.py.
References last_manifest_sn, and rpki::sql::sql_persistent::sql_mark_dirty().
def rpki::rpkid::ca_obj::next_serial_number | ( | self | ) |
Allocate a certificate serial number.
Definition at line 579 of file rpki/rpkid.py.
References last_issued_sn, and rpki::sql::sql_persistent::sql_mark_dirty().
def rpki::rpkid::ca_obj::parent | ( | self | ) |
Fetch parent object to which this CA object links.
Definition at line 377 of file rpki/rpkid.py.
References gctx, and parent_id.
Referenced by rekey().
def rpki::rpkid::ca_obj::pending_ca_details | ( | self | ) |
Fetch the pending ca_details for this CA, if any.
Definition at line 391 of file rpki/rpkid.py.
References rpki::rpkid::ca_detail_obj::ca_id, and gctx.
def rpki::rpkid::ca_obj::reissue | ( | self, | |
cb, | |||
eb | |||
) |
Reissue all current certificates issued by this CA.
Definition at line 640 of file rpki/rpkid.py.
References active_ca_detail().
def rpki::rpkid::ca_obj::rekey | ( | self, | |
cb, | |||
eb | |||
) |
Initiate a rekey operation for this ca. Generate a new keypair. Request cert from parent using new keypair. Mark result as our active ca_detail. Reissue all child certs issued by this ca using the new ca_detail.
Definition at line 603 of file rpki/rpkid.py.
References active_ca_detail(), and parent().
def rpki::rpkid::ca_obj::revoke | ( | self, | |
cb, | |||
eb | |||
) |
Revoke deprecated ca_detail objects associated with this ca.
Definition at line 628 of file rpki/rpkid.py.
References deprecated_ca_details().
Referenced by rpki::rpkid::roa_obj::regenerate(), and rpki::rpkid::ghostbuster_obj::regenerate().
def rpki::rpkid::ca_obj::revoked_ca_details | ( | self | ) |
Fetch revoked ca_details for this CA, if any.
Definition at line 412 of file rpki/rpkid.py.
References rpki::rpkid::ca_detail_obj::ca_id, and gctx.
Reimplemented from rpki::sql::sql_persistent.
Definition at line 532 of file rpki/rpkid.py.
Referenced by active_ca_detail(), rpki::left_right::data_elt::bsc(), rpki::left_right::self_elt::bscs(), rpki::rpkid::ca_detail_obj::ca(), rpki::rpkid::child_cert_obj::ca_detail(), rpki::rpkid::revoked_cert_obj::ca_detail(), rpki::rpkid::roa_obj::ca_detail(), rpki::rpkid::ghostbuster_obj::ca_detail(), ca_details(), rpki::left_right::child_elt::ca_from_class_name(), rpki::left_right::repository_elt::call_pubd(), rpki::left_right::parent_elt::cas(), rpki::rpkid::child_cert_obj::child(), rpki::left_right::self_elt::children(), rpki::left_right::bsc_elt::children(), deprecated_ca_details(), rpki::rpkid::ca_detail_obj::fetch_child_certs(), rpki::left_right::child_elt::fetch_child_certs(), rpki::left_right::self_elt::ghostbusters(), rpki::rpkid::ca_detail_obj::ghostbusters(), issue_response_candidate_ca_details(), rpki::left_right::data_elt::make_reply_clone_hook(), parent(), rpki::left_right::self_elt::parents(), rpki::left_right::bsc_elt::parents(), rpki::left_right::repository_elt::parents(), rpki::left_right::child_elt::parents(), pending_ca_details(), rpki::left_right::parent_elt::query_up_down(), rpki::left_right::self_elt::repositories(), rpki::left_right::bsc_elt::repositories(), rpki::left_right::parent_elt::repository(), revoked_ca_details(), rpki::rpkid::ca_detail_obj::revoked_certs(), rpki::left_right::self_elt::roas(), rpki::rpkid::ca_detail_obj::roas(), rpki::left_right::data_elt::self(), rpki::rpkid::roa_obj::self(), rpki::rpkid::ghostbuster_obj::self(), rpki::left_right::list_published_objects_elt::serve_dispatch(), rpki::left_right::list_received_resources_elt::serve_dispatch(), rpki::left_right::data_elt::serve_fetch_all(), rpki::publication::client_elt::serve_fetch_all(), rpki::left_right::self_elt::serve_fetch_all(), rpki::left_right::data_elt::serve_fetch_one_maybe(), rpki::publication::config_elt::serve_fetch_one_maybe(), rpki::publication::client_elt::serve_fetch_one_maybe(), rpki::left_right::self_elt::serve_fetch_one_maybe(), rpki::left_right::data_elt::serve_pre_save_hook(), rpki::publication::config_elt::serve_set(), rpki::left_right::child_elt::serve_up_down(), rpki::sql::sql_persistent::sql_delete(), rpki::rpkid::roa_obj::sql_fetch_hook(), rpki::sql::sql_persistent::sql_is_dirty(), rpki::sql::sql_persistent::sql_store(), rpki::left_right::self_elt::update_ghostbusters(), rpki::left_right::self_elt::update_roas(), and rpki::publication::publication_object_elt::uri_to_filename().
int rpki::rpkid::ca_obj::last_crl_sn = 0 [static] |
Definition at line 372 of file rpki/rpkid.py.
Referenced by next_crl_number().
int rpki::rpkid::ca_obj::last_issued_sn = 0 [static] |
Definition at line 373 of file rpki/rpkid.py.
Referenced by next_serial_number().
int rpki::rpkid::ca_obj::last_manifest_sn = 0 [static] |
Definition at line 374 of file rpki/rpkid.py.
Referenced by next_manifest_number().
Definition at line 532 of file rpki/rpkid.py.
Referenced by rpki::left_right::parent_elt::cas(), and parent().
Definition at line 532 of file rpki/rpkid.py.
Definition at line 445 of file rpki/rpkid.py.
tuple rpki::rpkid::ca_obj::sql_template [static] |
rpki.sql.template( "ca", "ca_id", "last_crl_sn", ("next_crl_update", rpki.sundial.datetime), "last_issued_sn", "last_manifest_sn", ("next_manifest_update", rpki.sundial.datetime), "sia_uri", "parent_id", "parent_resource_class")
Definition at line 363 of file rpki/rpkid.py.
Referenced by rpki::xml_utils::data_elt::serve_create(), rpki::sql::sql_persistent::sql_decode(), rpki::sql::sql_persistent::sql_delete(), rpki::sql::sql_persistent::sql_encode(), and rpki::sql::sql_persistent::sql_store().