RPKI Engine  1.0
Public Member Functions | Public Attributes | Static Public Attributes
rpki::rpkid::ca_obj Class Reference
Inheritance diagram for rpki::rpkid::ca_obj:
Inheritance graph
Collaboration diagram for rpki::rpkid::ca_obj:
Collaboration graph

List of all members.

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

Detailed Description

Internal CA object.

Definition at line 358 of file rpki/rpkid.py.


Member Function Documentation

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().

Here is the caller graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the call graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the call graph for this function:

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().

Here is the call graph for this function:

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().

Here is the call graph for this function:

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().

Here is the caller graph for this function:

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().

Here is the call graph for this function:

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().

Here is the call graph for this function:

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().

Here is the call graph for this function:

Here is the caller graph for this function:

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.


Member Data Documentation

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().

Definition at line 372 of file rpki/rpkid.py.

Referenced by next_crl_number().

Definition at line 373 of file rpki/rpkid.py.

Referenced by next_serial_number().

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.

Initial value:
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().


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Properties