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

List of all members.

Public Member Functions

def __init__
def ca_detail
def generate
def published_callback
def regenerate
def revoke
def self
def update
def uri
def uri_from_key
def uri_tail

Public Attributes

 gctx
 self_id

Static Public Attributes

 ca_detail_id = None
 cert = None
 ghostbuster = None
 published = None
tuple sql_template
 vcard = None

Detailed Description

Ghostbusters record.

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


Constructor & Destructor Documentation

def rpki::rpkid::ghostbuster_obj::__init__ (   self,
  gctx = None,
  self_id = None,
  ca_detail_id = None,
  vcard = None 
)

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


Member Function Documentation

def rpki::rpkid::ghostbuster_obj::ca_detail (   self)
def rpki::rpkid::ghostbuster_obj::generate (   self,
  publisher,
  fast = False 
)
Generate a Ghostbuster record

Once we have the right covering certificate, we generate the
ghostbuster payload, generate a new EE certificate, use the EE
certificate to sign the ghostbuster payload, publish the result,
then throw away the private key for the EE cert.  This is modeled
after the way we handle ROAs.

If fast is set, we leave generating the new manifest for our
caller to handle, presumably at the end of a bulk operation.

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

References rpki::rpkid::child_cert_obj::ca_detail(), rpki::rpkid::revoked_cert_obj::ca_detail(), rpki::rpkid::roa_obj::ca_detail(), ca_detail(), rpki::rpkid::child_cert_obj::cert, rpki::rpkid::roa_obj::cert, cert, ghostbuster, rpki::rpkid::child_cert_obj::published, rpki::rpkid::roa_obj::published, published, rpki::rpkid::child_cert_obj::published_callback(), rpki::rpkid::roa_obj::published_callback(), published_callback(), rpki::sql::sql_persistent::sql_store(), rpki::rpkid::child_cert_obj::uri(), rpki::rpkid::roa_obj::uri(), uri(), rpki::rpkid::roa_obj::uri_from_key(), uri_from_key(), rpki::rcynic::rcynic_ghostbuster::vcard, rpki::left_right::list_ghostbuster_requests_elt::vcard, and vcard.

Referenced by regenerate(), revoke(), and update().

Here is the call graph for this function:

Here is the caller graph for this function:

def rpki::rpkid::ghostbuster_obj::published_callback (   self,
  pdu 
)
Check publication result.

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

References rpki::rpkid::child_cert_obj::published, rpki::rpkid::roa_obj::published, published, and rpki::sql::sql_persistent::sql_mark_dirty().

Referenced by generate().

Here is the call graph for this function:

Here is the caller graph for this function:

def rpki::rpkid::ghostbuster_obj::regenerate (   self,
  publisher,
  fast = False 
)
Reissue Ghostbuster associated with this ghostbuster_obj.

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

References rpki::rpkid::roa_obj::generate(), generate(), ghostbuster, rpki::rpkid::ca_obj::revoke(), rpki::rpkid::ca_detail_obj::revoke(), rpki::rpkid::child_cert_obj::revoke(), rpki::rpkid::revoked_cert_obj::revoke(), rpki::rpkid::roa_obj::revoke(), and revoke().

Referenced by update().

Here is the call graph for this function:

Here is the caller graph for this function:

def rpki::rpkid::ghostbuster_obj::revoke (   self,
  publisher,
  regenerate = False,
  allow_failure = False,
  fast = False 
)
Withdraw Ghostbuster associated with this ghostbuster_obj.

In order to preserve make-before-break properties without
duplicating code, this method also handles generating a
replacement ghostbuster when requested.

If allow_failure is set, failing to withdraw the ghostbuster will not be
considered an error.

If fast is set, SQL actions will be deferred, on the assumption
that our caller will handle regenerating CRL and manifest and
flushing the SQL cache.

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

References rpki::rpkid::child_cert_obj::ca_detail(), rpki::rpkid::revoked_cert_obj::ca_detail(), rpki::rpkid::roa_obj::ca_detail(), ca_detail(), rpki::rpkid::child_cert_obj::cert, rpki::rpkid::roa_obj::cert, cert, rpki::rpkid::roa_obj::generate(), generate(), ghostbuster, rpki::sql::sql_persistent::sql_mark_deleted(), rpki::rpkid::child_cert_obj::uri(), rpki::rpkid::roa_obj::uri(), and uri().

Referenced by regenerate().

Here is the call graph for this function:

Here is the caller graph for this function:

def rpki::rpkid::ghostbuster_obj::self (   self)
def rpki::rpkid::ghostbuster_obj::update (   self,
  publisher,
  fast = False 
)
Bring this ghostbuster_obj up to date if necesssary.

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

References rpki::rpkid::roa_obj::generate(), generate(), ghostbuster, rpki::rpkid::roa_obj::regenerate(), regenerate(), rpki::left_right::data_elt::self(), rpki::rpkid::roa_obj::self(), and self().

Here is the call graph for this function:

def rpki::rpkid::ghostbuster_obj::uri (   self)
def rpki::rpkid::ghostbuster_obj::uri_from_key (   self,
  key 
)
Return publication URI for a public key.

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

References rpki::rpkid::child_cert_obj::ca_detail(), rpki::rpkid::revoked_cert_obj::ca_detail(), rpki::rpkid::roa_obj::ca_detail(), and ca_detail().

Referenced by generate().

Here is the call graph for this function:

Here is the caller graph for this function:

def rpki::rpkid::ghostbuster_obj::uri_tail (   self)
Return the tail (filename portion) of the publication URI for this
ghostbuster_obj's ghostbuster.

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

Referenced by uri().

Here is the caller graph for this function:


Member Data Documentation

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

Referenced by generate(), and revoke().

Reimplemented from rpki::sql::sql_persistent.

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

Referenced by rpki::left_right::data_elt::bsc(), rpki::left_right::self_elt::bscs(), ca_detail(), rpki::left_right::child_elt::ca_from_class_name(), rpki::left_right::repository_elt::call_pubd(), rpki::left_right::parent_elt::cas(), rpki::left_right::self_elt::children(), rpki::left_right::bsc_elt::children(), rpki::left_right::child_elt::fetch_child_certs(), rpki::left_right::self_elt::ghostbusters(), rpki::left_right::data_elt::make_reply_clone_hook(), rpki::left_right::self_elt::parents(), rpki::left_right::bsc_elt::parents(), rpki::left_right::repository_elt::parents(), rpki::left_right::child_elt::parents(), 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(), rpki::left_right::self_elt::roas(), rpki::left_right::data_elt::self(), 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::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 1622 of file rpki/rpkid.py.

Referenced by generate(), regenerate(), revoke(), and update().

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

Referenced by generate(), and published_callback().

Initial value:
rpki.sql.template(
    "ghostbuster",
    "ghostbuster_id",
    "ca_detail_id",
    "self_id",
    "vcard",
    ("ghostbuster", rpki.x509.Ghostbuster),
    ("cert", rpki.x509.X509),
    ("published", rpki.sundial.datetime))

Definition at line 1610 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().

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

Referenced by generate().


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