diff options
-rw-r--r-- | docs/images/whiteboard-object-model.dot | 2 | ||||
-rw-r--r-- | docs/images/whiteboard-object-model.pdf | bin | 3266 -> 3259 bytes | |||
-rw-r--r-- | docs/repository-engine-objects.dot | 65 | ||||
-rw-r--r-- | docs/repository-engine-objects.pdf | bin | 0 -> 3266 bytes |
4 files changed, 66 insertions, 1 deletions
diff --git a/docs/images/whiteboard-object-model.dot b/docs/images/whiteboard-object-model.dot index 3e9101a0..3c61f3ab 100644 --- a/docs/images/whiteboard-object-model.dot +++ b/docs/images/whiteboard-object-model.dot @@ -22,7 +22,7 @@ digraph rpki_engine_objects { // Objects visible in left-to-right protocol node [ color=blue ]; self [ label="Self|{Preferences}" ]; - parent [ label="Parent|{URI|TA|SIA Head}" ]; + parent [ label="Parent|{URI|TA}" ]; repo [ label="Repository|{URI|TA}" ]; child [ label="Child|{TA}" ]; biz_sign [ label="Business\nSigning Context|{Keypair|CertChain}" ]; diff --git a/docs/images/whiteboard-object-model.pdf b/docs/images/whiteboard-object-model.pdf Binary files differindex 7f4b9256..9b7da850 100644 --- a/docs/images/whiteboard-object-model.pdf +++ b/docs/images/whiteboard-object-model.pdf diff --git a/docs/repository-engine-objects.dot b/docs/repository-engine-objects.dot new file mode 100644 index 00000000..e100888f --- /dev/null +++ b/docs/repository-engine-objects.dot @@ -0,0 +1,65 @@ +// $URL$ +// $Id$ + +// This is an attempt to capture +// http://subvert-rpki.hactrn.net/docs/prague-whiteboard-2007-03-22-23:15:01.jpg + +// {arrowhead,arrowtail} shapes to use for database object relationships: +// 1- none +// m- crow +// Color code: +// Blue: visible in left-right protocol +// Green: created on the fly + +// Explanation for many-many mapping beween CA and child objects +// (courtesy of RobL): Each child is an entity; each CA can have +// multiple children, and each child can hold certs from multiple CAs. + +digraph rpki_engine_objects { + rotate=90; size="11,8.5"; splines=true; ratio=fill; + node [ shape=record ]; + + // Objects visible in left-to-right protocol + node [ color=blue ]; + self [ label="Self|{Preferences}" ]; + parent [ label="Parent|{URI|TA|SIA Head}" ]; + repo [ label="Repository|{URI|TA}" ]; + child [ label="Child|{TA}" ]; + biz_sign [ label="Business\nSigning Context|{Keypair|CertChain}" ]; + + // Objects created on the fly by the RPKI engine + node [ color=green ]; + ca [ label="CA|{CRL #|Last Issued Serial #}" ]; + child_cert [ label="Child Certificate" ]; + ee_cert [ label="EE Certificate|{ROA}" ]; + ca_key_pair [ label="CA Key Pair|{Latest CA Certificate|Latest CRL}" ]; + + // One-many mappings + edge [ color=blue, arrowtail=none, arrowhead=crow ]; + biz_sign -> child; + biz_sign -> parent; + biz_sign -> repo; + self -> child; + self -> parent; + repo -> parent; + + // Many-many mappings + edge [ color=green, arrowtail=crow, arrowhead=crow ]; + ca -> child; + + // One-many mappings + edge [ color=green, arrowtail=none, arrowhead=crow ]; + ca -> ca_key_pair; + child -> child_cert; + self -> ca; + parent -> ca; + + // Weird one-many + edge [ color=green, arrowtail=none, arrowhead=crow, style=dashed ]; + ca_key_pair -> child_cert; + ca_key_pair -> ee_cert; +} + +// Local Variables: +// compile-command: "neato -Tps2 repository-engine-objects.dot | ps2pdf - repository-engine-objects.pdf" +// End: diff --git a/docs/repository-engine-objects.pdf b/docs/repository-engine-objects.pdf Binary files differnew file mode 100644 index 00000000..7f4b9256 --- /dev/null +++ b/docs/repository-engine-objects.pdf |