Module krill::commons::api[][src]

Expand description

Data structures for the API, shared between client and server.

Modules

rrdp

Data objects used in the (RRDP) repository. I.e. the publish, update, and withdraw elements, as well as the notification, snapshot and delta file definitions.

Structs

ActiveInfo
AddChildRequest
AllCertAuthIssues
AsNumber
Base64

This type contains a base64 encoded structure. The publication protocol deals with objects in their base64 encoded form.

BgpStats
CaCommandDetails
CaRepoDetails

This struct contains the API details for the configure Repository server, and objects published there, for a CA.

CertAuthInfo

This type represents the details of a CertAuth that need to be exposed through the API/CLI/UI

CertAuthInit
CertAuthIssues
CertAuthList
CertAuthParentIssue
CertAuthStats
CertAuthSummary
CertifiedKeyInfo

Describes a Key that is certified. I.e. it received an incoming certificate and has at least a MFT and CRL.

ChildCaInfo

This type represents information about a child CA that is shared through the API.

CommandHistory
CommandHistoryCriteria

Used to limit the scope when finding commands to show in the history.

CommandHistoryRecord

A description of a command that was processed, and the events / or error that followed. Does not include the full stored command details, but only the summary which is shown in the history response.

CommandSummary

Generic command summary used to show command details in history in a way that support internationalization.

EntitlementClass
Entitlements

This structure is what is called the “Resource Class List Response” in section 3.3.2 of RFC6492.

ErrorResponse

Defines an error response. Codes are unique and documented here: https://rpki.readthedocs.io/en/latest/krill/pub/api.html#error-responses

Handle
HexEncodedHash

This type contains a hex encoded sha256 hash.

IdCertPem

A PEM encoded IdCert and sha256 of the encoding, for easier

InvalidHandle
Ipv4Prefix
Ipv6Prefix
IssuanceRequest

This type reflects the content of a Certificate Issuance Request defined in section 3.4.1 of RFC6492.

IssuanceResponse

A Certificate Issuance Response equivalent to the one defined in section 3.4.2 of RFC6492.

IssuedCert

This type defines an issued certificate, including its publication point and resource set. Intended for use in list responses defined in RFC6492, section 3.3.2.

KnownEntitlement
ListElement

This type represents a single object that is published at a publication server.

ListReply

This type represents the list reply as described in https://tools.ietf.org/html/rfc8181#section-2.3

ObjectName

This type is used to represent the (deterministic) file names for RPKI repository objects.

ParentCaReq

This type defines all parent ca details needed to add a parent to a CA

ParentExchange
ParentInfo
ParentStatus
ParentStatusCert
ParentStatusIssuingCert
ParentStatuses
PendingInfo
PendingKeyInfo
PublicationServerUris

Contains the information needed to initialize a new Publication Server

Publish

Type representing a json equivalent to the publish element, that does not update any existing object, defined in: https://tools.ietf.org/html/rfc8181#section-3.1

PublishDelta

This type represents a multi element query as described in https://tools.ietf.org/html/rfc8181#section-3.7

PublishDeltaBuilder
PublisherDetails

This type defines the publisher details for: /api/v1/publishers/{handle}

PublisherList

This type represents a list of (all) current publishers to show in the API

PublisherSummary

Defines a summary of publisher information to be used in the publisher list.

RcvdCert

Contains a CA Certificate that has been issued to this CA, for some key.

ReplacedObject
RepoInfo

Contains the rsync and RRDP base URIs for a repository, or publisher inside a repository.

RepoStatus
RepositoryContact
RequestResourceLimit

The scope of resources that a child CA wants to have certified. By default there are no limits, i.e. all the child wants all resources the parent is willing to give. Only if some values are specified for certain resource types will the scope be limited for that type only. Note that asking for more than you are entitled to as a child, will anger a parent. In this case the IssuanceRequest will be rejected.

ResourceClassInfo
ResourceClassName

This type represents a resource class name, as used in RFC6492. The protocol allows for any arbitrary set of utf8 characters to be used as the name, though in practice names can be expected to be short and plain ascii or even numbers.

ResourceSet

This type defines a set of Internet Number Resources.

ResourceSetDiff
ResourceSetSummary

This type defines a summary of a set of Internet Number Resources, for use in concise reporting.

Revocation

A Crl Revocation. Note that this type differs from CrlEntry in that it implements De/Serialize and Eq/PartialEq

RevocationRequest

This type represents a Certificate Revocation Request as defined in section 3.5.1 of RFC6492.

RevocationResponse

This type represents a Certificate Revocation Response as defined in section 3.5.2 of RFC6492.

Revocations
RevocationsDelta
RoaAggregateKey
RoaAggregateKeyFmtError
RoaDefinition

This type defines the definition of a Route Origin Authorization (ROA), i.e. the originating asn, IPv4 or IPv6 prefix, and optionally a max length.

RoaDefinitionUpdates

This type defines a delta of Route Authorizations, i.e. additions or removals of authorizations of tuples of (Prefix, Max Length, ASN) that ultimately are put into ROAs by a CA, in as far as the CA has the required prefixes on its resource certificates.

RoaDefinitions
RollNewInfo
RollOldInfo
RollPendingInfo
RtaList
RtaPrepResponse
ServerInfo
SigningCert
StorableRcEntitlement
TaCertDetails
Token
TrustAnchorLocator
Update

Type representing a json equivalent to the publish element, that updates an existing object: https://tools.ietf.org/html/rfc8181#section-3.2

UpdateChildRequest
Withdraw

Type representing a json equivalent to a withdraw element that removes an object from the repository: https://tools.ietf.org/html/rfc8181#section-3.3

Enums

AuthorizationFmtError
CaCommandResult
ParentCaContact

This type contains the information needed to contact the parent ca for resource provisioning requests (RFC6492).

ParentExchangeResult
ParentKindInfo
ProvisioningRequest
ProvisioningResponse
PublishReply

This type is used to wrap API responses for publication requests.

PublishRequest

This type provides a convenience wrapper to contain the request found inside of a validated RFC8181 request.

ResourceClassKeysInfo

Contains the current key status for a resource class.

ResourceSetError
StorableCaCommand
StorableParentContact

This type is used when saving and presenting command history

StorableRepositoryCommand
StoredEffect
TypedPrefix

Type Definitions

ArgKey
ArgVal
ChildHandle
Label
Message
ParentHandle
ParentResourceClassName
PublisherHandle
RepositoryHandle
RevokedObject
RtaName