asciidoctor-rfc 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (130) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +5 -0
  3. data/.oss-guides.rubocop.yml +1077 -0
  4. data/.rspec +1 -0
  5. data/.rubocop.yml +19 -1063
  6. data/.travis.yml +3 -2
  7. data/Guardfile +22 -0
  8. data/README.adoc +1151 -0
  9. data/Rakefile +1 -1
  10. data/asciidoctor-rfc.gemspec +20 -3
  11. data/bin/asciidoctor-rfc2 +15 -0
  12. data/bin/asciidoctor-rfc3 +15 -0
  13. data/bin/rspec +0 -1
  14. data/lib/asciidoctor-rfc.rb +4 -0
  15. data/lib/asciidoctor/rfc/common/base.rb +218 -0
  16. data/lib/asciidoctor/rfc/common/front.rb +120 -0
  17. data/lib/asciidoctor/rfc/v2/base.rb +341 -0
  18. data/lib/asciidoctor/rfc/v2/blocks.rb +192 -0
  19. data/lib/asciidoctor/rfc/v2/converter.rb +64 -0
  20. data/lib/asciidoctor/rfc/v2/front.rb +69 -0
  21. data/lib/asciidoctor/rfc/v2/inline_anchor.rb +102 -0
  22. data/lib/asciidoctor/rfc/v2/lists.rb +134 -0
  23. data/lib/asciidoctor/rfc/v2/table.rb +112 -0
  24. data/lib/asciidoctor/rfc/v2/validate.rb +738 -0
  25. data/lib/asciidoctor/rfc/v2/validate2.rng +716 -0
  26. data/lib/asciidoctor/rfc/v3/base.rb +358 -0
  27. data/lib/asciidoctor/rfc/v3/blocks.rb +203 -0
  28. data/lib/asciidoctor/rfc/v3/converter.rb +64 -0
  29. data/lib/asciidoctor/rfc/v3/front.rb +115 -0
  30. data/lib/asciidoctor/rfc/v3/inline_anchor.rb +90 -0
  31. data/lib/asciidoctor/rfc/v3/lists.rb +190 -0
  32. data/lib/asciidoctor/rfc/v3/svg.rng +9081 -0
  33. data/lib/asciidoctor/rfc/v3/table.rb +65 -0
  34. data/lib/asciidoctor/rfc/v3/validate.rb +2168 -0
  35. data/lib/asciidoctor/rfc/v3/validate.rng +2143 -0
  36. data/lib/asciidoctor/rfc/version.rb +2 -2
  37. data/spec/asciidoctor/rfc/v2/appendix_spec.rb +124 -0
  38. data/spec/asciidoctor/rfc/v2/area_spec.rb +60 -0
  39. data/spec/asciidoctor/rfc/v2/author_spec.rb +444 -0
  40. data/spec/asciidoctor/rfc/v2/comments_spec.rb +316 -0
  41. data/spec/asciidoctor/rfc/v2/crossref_spec.rb +205 -0
  42. data/spec/asciidoctor/rfc/v2/date_spec.rb +166 -0
  43. data/spec/asciidoctor/rfc/v2/dlist_spec.rb +108 -0
  44. data/spec/asciidoctor/rfc/v2/document_spec.rb +161 -0
  45. data/spec/asciidoctor/rfc/v2/example_spec.rb +50 -0
  46. data/spec/asciidoctor/rfc/v2/front_spec.rb +75 -0
  47. data/spec/asciidoctor/rfc/v2/image_spec.rb +81 -0
  48. data/spec/asciidoctor/rfc/v2/indexterm_spec.rb +66 -0
  49. data/spec/asciidoctor/rfc/v2/inline_formatting_spec.rb +177 -0
  50. data/spec/asciidoctor/rfc/v2/keyword_spec.rb +63 -0
  51. data/spec/asciidoctor/rfc/v2/listing_spec.rb +59 -0
  52. data/spec/asciidoctor/rfc/v2/literal_spec.rb +53 -0
  53. data/spec/asciidoctor/rfc/v2/olist_spec.rb +147 -0
  54. data/spec/asciidoctor/rfc/v2/paragraph_spec.rb +68 -0
  55. data/spec/asciidoctor/rfc/v2/preamble_spec.rb +140 -0
  56. data/spec/asciidoctor/rfc/v2/quote_spec.rb +24 -0
  57. data/spec/asciidoctor/rfc/v2/references_spec.rb +96 -0
  58. data/spec/asciidoctor/rfc/v2/section_spec.rb +260 -0
  59. data/spec/asciidoctor/rfc/v2/sidebar_spec.rb +32 -0
  60. data/spec/asciidoctor/rfc/v2/table_spec.rb +293 -0
  61. data/spec/asciidoctor/rfc/v2/ulist_spec.rb +96 -0
  62. data/spec/asciidoctor/rfc/v2/workgroup_spec.rb +60 -0
  63. data/spec/asciidoctor/rfc/v3/appendix_spec.rb +130 -0
  64. data/spec/asciidoctor/rfc/v3/area_spec.rb +63 -0
  65. data/spec/asciidoctor/rfc/v3/author_spec.rb +540 -0
  66. data/spec/asciidoctor/rfc/v3/comments_spec.rb +308 -0
  67. data/spec/asciidoctor/rfc/v3/crossref_spec.rb +269 -0
  68. data/spec/asciidoctor/rfc/v3/date_spec.rb +149 -0
  69. data/spec/asciidoctor/rfc/v3/dlist_spec.rb +121 -0
  70. data/spec/asciidoctor/rfc/v3/document_spec.rb +109 -0
  71. data/spec/asciidoctor/rfc/v3/example_spec.rb +34 -0
  72. data/spec/asciidoctor/rfc/v3/front_spec.rb +43 -0
  73. data/spec/asciidoctor/rfc/v3/image_spec.rb +81 -0
  74. data/spec/asciidoctor/rfc/v3/indexterm_spec.rb +69 -0
  75. data/spec/asciidoctor/rfc/v3/inline_formatting_spec.rb +319 -0
  76. data/spec/asciidoctor/rfc/v3/keyword_spec.rb +33 -0
  77. data/spec/asciidoctor/rfc/v3/link_spec.rb +34 -0
  78. data/spec/asciidoctor/rfc/v3/listing_spec.rb +59 -0
  79. data/spec/asciidoctor/rfc/v3/literal_spec.rb +51 -0
  80. data/spec/asciidoctor/rfc/v3/olist_spec.rb +168 -0
  81. data/spec/asciidoctor/rfc/v3/paragraph_spec.rb +73 -0
  82. data/spec/asciidoctor/rfc/v3/preamble_spec.rb +112 -0
  83. data/spec/asciidoctor/rfc/v3/quote_spec.rb +91 -0
  84. data/spec/asciidoctor/rfc/v3/references_spec.rb +147 -0
  85. data/spec/asciidoctor/rfc/v3/section_spec.rb +198 -0
  86. data/spec/asciidoctor/rfc/v3/series_info_spec.rb +151 -0
  87. data/spec/asciidoctor/rfc/v3/sidebar_spec.rb +30 -0
  88. data/spec/asciidoctor/rfc/v3/table_spec.rb +275 -0
  89. data/spec/asciidoctor/rfc/v3/ulist_spec.rb +74 -0
  90. data/spec/asciidoctor/rfc/v3/workgroup_spec.rb +33 -0
  91. data/spec/examples/davies-template-bare-06.adoc +361 -0
  92. data/spec/examples/davies-template-bare-06.xml.orig +426 -0
  93. data/spec/examples/example-v2.adoc +181 -0
  94. data/spec/examples/example-v2.xml +675 -0
  95. data/spec/examples/example-v3.adoc +185 -0
  96. data/spec/examples/example-v3.xml +1009 -0
  97. data/spec/examples/mib-doc-template-xml-06.adoc +596 -0
  98. data/spec/examples/mib-doc-template-xml-06.xml.orig +654 -0
  99. data/spec/examples/rfc1149.md +76 -0
  100. data/spec/examples/rfc1149.md.2.xml +94 -0
  101. data/spec/examples/rfc1149.md.3.xml +93 -0
  102. data/spec/examples/rfc1149.md.adoc +65 -0
  103. data/spec/examples/rfc2100.md +149 -0
  104. data/spec/examples/rfc2100.md.2.xml +169 -0
  105. data/spec/examples/rfc2100.md.3.xml +163 -0
  106. data/spec/examples/rfc2100.md.adoc +136 -0
  107. data/spec/examples/rfc3514.md +203 -0
  108. data/spec/examples/rfc3514.md.2.xml +238 -0
  109. data/spec/examples/rfc3514.md.3.xml +258 -0
  110. data/spec/examples/rfc3514.md.adoc +324 -0
  111. data/spec/examples/rfc5841.md +342 -0
  112. data/spec/examples/rfc5841.md.2.xml +393 -0
  113. data/spec/examples/rfc5841.md.3.xml +449 -0
  114. data/spec/examples/rfc5841.md.adoc +414 -0
  115. data/spec/examples/rfc6350.adoc +3499 -0
  116. data/spec/examples/rfc6350.bib +763 -0
  117. data/spec/examples/rfc748.md +79 -0
  118. data/spec/examples/rfc748.md.2.xml +116 -0
  119. data/spec/examples/rfc748.md.3.xml +109 -0
  120. data/spec/examples/rfc748.md.adoc +80 -0
  121. data/spec/examples/rfc7511.md +257 -0
  122. data/spec/examples/rfc7511.md.2.xml +300 -0
  123. data/spec/examples/rfc7511.md.3.xml +347 -0
  124. data/spec/examples/rfc7511.md.adoc +417 -0
  125. data/spec/spec_helper.rb +115 -5
  126. metadata +274 -9
  127. data/.hound.yml +0 -3
  128. data/README.md +0 -84
  129. data/lib/asciidoctor/rfc.rb +0 -7
  130. data/spec/asciidoctor-rfc/.keep +0 -0
@@ -0,0 +1,426 @@
1
+ <?xml version="1.0" encoding="US-ASCII"?>
2
+ <!-- This template is for creating an Internet Draft using xml2rfc,
3
+ which is available here: http://xml.resource.org. -->
4
+ <!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
5
+ <!-- One method to get references from the online citation libraries.
6
+ There has to be one entity for each item to be referenced.
7
+ An alternate method (rfc include) is described in the references. -->
8
+
9
+ <!ENTITY RFC2119 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
10
+ <!ENTITY RFC2629 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2629.xml">
11
+ <!ENTITY RFC3552 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.3552.xml">
12
+ <!ENTITY RFC5226 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5226.xml">
13
+ ]>
14
+ <?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
15
+ <!-- used by XSLT processors -->
16
+ <!-- For a complete list and description of processing instructions (PIs),
17
+ please see http://xml.resource.org/authoring/README.html. -->
18
+ <!-- Below are generally applicable Processing Instructions (PIs) that most I-Ds might want to use.
19
+ (Here they are set differently than their defaults in xml2rfc v1.32) -->
20
+ <?rfc strict="yes" ?>
21
+ <!-- give errors regarding ID-nits and DTD validation -->
22
+ <!-- control the table of contents (ToC) -->
23
+ <?rfc toc="yes"?>
24
+ <!-- generate a ToC -->
25
+ <?rfc tocdepth="4"?>
26
+ <!-- the number of levels of subsections in ToC. default: 3 -->
27
+ <!-- control references -->
28
+ <?rfc symrefs="yes"?>
29
+ <!-- use symbolic references tags, i.e, [RFC2119] instead of [1] -->
30
+ <?rfc sortrefs="yes" ?>
31
+ <!-- sort the reference entries alphabetically -->
32
+ <!-- control vertical white space
33
+ (using these PIs as follows is recommended by the RFC Editor) -->
34
+ <?rfc compact="yes" ?>
35
+ <!-- do not start each main section on a new page -->
36
+ <?rfc subcompact="no" ?>
37
+ <!-- keep one blank line between list items -->
38
+ <!-- end of list of popular I-D processing instructions -->
39
+ <rfc category="info" docName="draft-ietf-xml2rfc-template-06" ipr="trust200902">
40
+ <!-- category values: std, bcp, info, exp, and historic
41
+ ipr values: trust200902, noModificationTrust200902, noDerivativesTrust200902,
42
+ or pre5378Trust200902
43
+ you can add the attributes updates="NNNN" and obsoletes="NNNN"
44
+ they will automatically be output with "(if approved)" -->
45
+
46
+ <!-- ***** FRONT MATTER ***** -->
47
+
48
+ <front>
49
+ <!-- The abbreviated title is used in the page header - it is only necessary if the
50
+ full title is longer than 39 characters -->
51
+
52
+ <title abbrev="Abbreviated Title">Put Your Internet Draft Title
53
+ Here</title>
54
+
55
+ <!-- add 'role="editor"' below for the editors if appropriate -->
56
+
57
+ <!-- Another author who claims to be an editor -->
58
+
59
+ <author fullname="Elwyn Davies" initials="E.B." role="editor"
60
+ surname="Davies">
61
+ <organization>Folly Consulting</organization>
62
+
63
+ <address>
64
+ <postal>
65
+ <street></street>
66
+
67
+ <!-- Reorder these if your country does things differently -->
68
+
69
+ <city>Soham</city>
70
+
71
+ <region></region>
72
+
73
+ <code></code>
74
+
75
+ <country>UK</country>
76
+ </postal>
77
+
78
+ <phone>+44 7889 488 335</phone>
79
+
80
+ <email>elwynd@dial.pipex.com</email>
81
+
82
+ <!-- uri and facsimile elements may also be added -->
83
+ </address>
84
+ </author>
85
+
86
+ <date year="2010" month="April" day="1"/>
87
+
88
+ <!-- If the month and year are both specified and are the current ones, xml2rfc will fill
89
+ in the current day for you. If only the current year is specified, xml2rfc will fill
90
+ in the current day and month for you. If the year is not the current one, it is
91
+ necessary to specify at least a month (xml2rfc assumes day="1" if not specified for the
92
+ purpose of calculating the expiry date). With drafts it is normally sufficient to
93
+ specify just the year. -->
94
+
95
+ <!-- Meta-data Declarations -->
96
+
97
+ <area>General</area>
98
+
99
+ <workgroup>Internet Engineering Task Force</workgroup>
100
+
101
+ <!-- WG name at the upperleft corner of the doc,
102
+ IETF is fine for individual submissions.
103
+ If this element is not present, the default is "Network Working Group",
104
+ which is used by the RFC Editor as a nod to the history of the IETF. -->
105
+
106
+ <keyword>template</keyword>
107
+
108
+ <!-- Keywords will be incorporated into HTML output
109
+ files in a meta tag but they have no effect on text or nroff
110
+ output. If you submit your draft to the RFC Editor, the
111
+ keywords will be used for the search engine. -->
112
+
113
+ <abstract>
114
+ <t>Insert an abstract: MANDATORY. This template is for creating an
115
+ Internet Draft.</t>
116
+ </abstract>
117
+ </front>
118
+
119
+ <middle>
120
+ <section title="Introduction">
121
+ <t>The original specification of xml2rfc format is in <xref
122
+ target="RFC2629">RFC&nbsp;2629</xref>.</t>
123
+
124
+ <section title="Requirements Language">
125
+ <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
126
+ "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
127
+ document are to be interpreted as described in <xref
128
+ target="RFC2119">RFC 2119</xref>.</t>
129
+ </section>
130
+ </section>
131
+
132
+ <section anchor="simple_list" title="Simple List">
133
+ <t>List styles: 'empty', 'symbols', 'letters', 'numbers', 'hanging',
134
+ 'format'.</t>
135
+
136
+ <t><list style="symbols">
137
+ <t>First bullet</t>
138
+
139
+ <t>Second bullet</t>
140
+ </list> You can write text here as well.</t>
141
+ </section>
142
+
143
+ <section title="Figures">
144
+ <t>Figures should not exceed 69 characters wide to allow for the indent
145
+ of sections.</t>
146
+
147
+ <figure align="center" anchor="xml_happy">
148
+ <preamble>Preamble text - can be omitted or empty.</preamble>
149
+
150
+ <artwork align="left"><![CDATA[
151
+ +-----------------------+
152
+ | Use XML, be Happy :-) |
153
+ |_______________________|
154
+ ]]></artwork>
155
+
156
+ <postamble>Cross-references allowed in pre- and postamble. <xref
157
+ target="min_ref" />.</postamble>
158
+ </figure>
159
+
160
+ <t>The CDATA means you don't need to escape meta-characters (especially
161
+ &lt;&nbsp;(&amp;lt;) and &amp;&nbsp;(&amp;amp;)) but is not essential.
162
+ Figures may also have a title attribute but it won't be displayed unless
163
+ there is also an anchor. White space, both horizontal and vertical, is
164
+ significant in figures even if you don't use CDATA.</t>
165
+ </section>
166
+
167
+ <!-- This PI places the pagebreak correctly (before the section title) in the text output. -->
168
+
169
+ <?rfc needLines="8" ?>
170
+
171
+ <section title="Subsections and Tables">
172
+ <section title="A Subsection">
173
+ <t>By default 3 levels of nesting show in table of contents but that
174
+ can be adjusted with the value of the "tocdepth" processing
175
+ instruction.</t>
176
+ </section>
177
+
178
+ <section title="Tables">
179
+ <t>.. are very similar to figures:</t>
180
+
181
+ <texttable anchor="table_example" title="A Very Simple Table">
182
+ <preamble>Tables use ttcol to define column headers and widths.
183
+ Every cell then has a "c" element for its content.</preamble>
184
+
185
+ <ttcol align="center">ttcol #1</ttcol>
186
+
187
+ <ttcol align="center">ttcol #2</ttcol>
188
+
189
+ <c>c #1</c>
190
+
191
+ <c>c #2</c>
192
+
193
+ <c>c #3</c>
194
+
195
+ <c>c #4</c>
196
+
197
+ <c>c #5</c>
198
+
199
+ <c>c #6</c>
200
+
201
+ <postamble>which is a very simple example.</postamble>
202
+ </texttable>
203
+ </section>
204
+ </section>
205
+
206
+ <section anchor="nested_lists" title="More about Lists">
207
+ <t>Lists with 'hanging labels': the list item is indented the amount of
208
+ the hangIndent: <list hangIndent="8" style="hanging">
209
+ <t hangText="short">With a label shorter than the hangIndent.</t>
210
+
211
+ <t hangText="fantastically long label">With a label longer than the
212
+ hangIndent.</t>
213
+
214
+ <t hangText="vspace_trick"><vspace blankLines="0" />Forces the new
215
+ item to start on a new line.</t>
216
+ </list></t>
217
+
218
+ <!-- It would be nice to see the next piece (12 lines) all on one page. -->
219
+
220
+ <?rfc needLines="12" ?>
221
+
222
+ <t>Simulating more than one paragraph in a list item using
223
+ &lt;vspace&gt;: <list style="letters">
224
+ <t>First, a short item.</t>
225
+
226
+ <t>Second, a longer list item.<vspace blankLines="1" /> And
227
+ something that looks like a separate pararaph..</t>
228
+ </list></t>
229
+
230
+ <t>Simple indented paragraph using the "empty" style: <list
231
+ hangIndent="10" style="empty">
232
+ <t>The quick, brown fox jumped over the lazy dog and lived to fool
233
+ many another hunter in the great wood in the west.</t>
234
+ </list></t>
235
+
236
+ <section title="Numbering Lists across Lists and Sections">
237
+ <t>Numbering items continuously although they are in separate
238
+ &lt;list&gt; elements, maybe in separate sections using the "format"
239
+ style and a "counter" variable.</t>
240
+
241
+ <t>First list: <list counter="reqs" hangIndent="4" style="format R%d">
242
+ <t>#1</t>
243
+
244
+ <t>#2</t>
245
+
246
+ <t>#3</t>
247
+ </list> Specify the indent explicitly so that all the items line up
248
+ nicely.</t>
249
+
250
+ <t>Second list: <list counter="reqs" hangIndent="4" style="format R%d">
251
+ <t>#4</t>
252
+
253
+ <t>#5</t>
254
+
255
+ <t>#6</t>
256
+ </list></t>
257
+ </section>
258
+
259
+ <section title="Where the List Numbering Continues">
260
+ <t>List continues here.</t>
261
+
262
+ <t>Third list: <list counter="reqs" hangIndent="4" style="format R%d">
263
+ <t>#7</t>
264
+
265
+ <t>#8</t>
266
+
267
+ <t>#9</t>
268
+
269
+ <t>#10</t>
270
+ </list> The end of the list.</t>
271
+ </section>
272
+ </section>
273
+
274
+ <section anchor="codeExample"
275
+ title="Example of Code or MIB Module To Be Extracted">
276
+ <figure>
277
+ <preamble>The &lt;artwork&gt; element has a number of extra attributes
278
+ that can be used to substitute a more aesthetically pleasing rendition
279
+ into HTML output while continuing to use the ASCII art version in the
280
+ text and nroff outputs (see the xml2rfc README for details). It also
281
+ has a "type" attribute. This is currently ignored except in the case
282
+ 'type="abnf"'. In this case the "artwork" is expected to contain a
283
+ piece of valid Augmented Backus-Naur Format (ABNF) grammar. This will
284
+ be syntax checked by xml2rfc and any errors will cause a fatal error
285
+ if the "strict" processing instruction is set to "yes". The ABNF will
286
+ also be colorized in HTML output to highlight the syntactic
287
+ components. Checking of additional "types" may be provided in future
288
+ versions of xml2rfc.</preamble>
289
+
290
+ <artwork><![CDATA[
291
+
292
+ /**** an example C program */
293
+
294
+ #include <stdio.h>
295
+
296
+ void
297
+ main(int argc, char *argv[])
298
+ {
299
+ int i;
300
+
301
+ printf("program arguments are:\n");
302
+ for (i = 0; i < argc; i++) {
303
+ printf("%d: \"%s\"\n", i, argv[i]);
304
+ }
305
+
306
+ exit(0);
307
+ } /* main */
308
+
309
+ /* end of file */
310
+
311
+ ]]></artwork>
312
+ </figure>
313
+ </section>
314
+
315
+ <section anchor="Acknowledgements" title="Acknowledgements">
316
+ <t>This template was derived from an initial version written by Pekka
317
+ Savola and contributed by him to the xml2rfc project.</t>
318
+
319
+ <t>This document is part of a plan to make xml2rfc indispensable <xref
320
+ target="DOMINATION"></xref>.</t>
321
+ </section>
322
+
323
+ <!-- Possibly a 'Contributors' section ... -->
324
+
325
+ <section anchor="IANA" title="IANA Considerations">
326
+ <t>This memo includes no request to IANA.</t>
327
+
328
+ <t>All drafts are required to have an IANA considerations section (see
329
+ <xref target="RFC5226">Guidelines for Writing an IANA Considerations Section in RFCs</xref> for a guide). If the draft does not require IANA to do
330
+ anything, the section contains an explicit statement that this is the
331
+ case (as above). If there are no requirements for IANA, the section will
332
+ be removed during conversion into an RFC by the RFC Editor.</t>
333
+ </section>
334
+
335
+ <section anchor="Security" title="Security Considerations">
336
+ <t>All drafts are required to have a security considerations section.
337
+ See <xref target="RFC3552">RFC 3552</xref> for a guide.</t>
338
+ </section>
339
+ </middle>
340
+
341
+ <!-- *****BACK MATTER ***** -->
342
+
343
+ <back>
344
+ <!-- References split into informative and normative -->
345
+
346
+ <!-- There are 2 ways to insert reference entries from the citation libraries:
347
+ 1. define an ENTITY at the top, and use "ampersand character"RFC2629; here (as shown)
348
+ 2. simply use a PI "less than character"?rfc include="reference.RFC.2119.xml"?> here
349
+ (for I-Ds: include="reference.I-D.narten-iana-considerations-rfc2434bis.xml")
350
+
351
+ Both are cited textually in the same manner: by using xref elements.
352
+ If you use the PI option, xml2rfc will, by default, try to find included files in the same
353
+ directory as the including file. You can also define the XML_LIBRARY environment variable
354
+ with a value containing a set of directories to search. These can be either in the local
355
+ filing system or remote ones accessed by http (http://domain/dir/... ).-->
356
+
357
+ <references title="Normative References">
358
+ <!--?rfc include="http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml"?-->
359
+ &RFC2119;
360
+
361
+ <reference anchor="min_ref">
362
+ <!-- the following is the minimum to make xml2rfc happy -->
363
+
364
+ <front>
365
+ <title>Minimal Reference</title>
366
+
367
+ <author initials="authInitials" surname="authSurName">
368
+ <organization></organization>
369
+ </author>
370
+
371
+ <date year="2006" />
372
+ </front>
373
+ </reference>
374
+ </references>
375
+
376
+ <references title="Informative References">
377
+ <!-- Here we use entities that we defined at the beginning. -->
378
+
379
+ &RFC2629;
380
+
381
+ &RFC3552;
382
+
383
+ &RFC5226;
384
+
385
+ <!-- A reference written by by an organization not a person. -->
386
+
387
+ <reference anchor="DOMINATION"
388
+ target="http://www.example.com/dominator.html">
389
+ <front>
390
+ <title>Ultimate Plan for Taking Over the World</title>
391
+
392
+ <author>
393
+ <organization>Mad Dominators, Inc.</organization>
394
+ </author>
395
+
396
+ <date year="1984" />
397
+ </front>
398
+ </reference>
399
+ </references>
400
+
401
+ <section anchor="app-additional" title="Additional Stuff">
402
+ <t>This becomes an Appendix.</t>
403
+ </section>
404
+
405
+ <!-- Change Log
406
+
407
+ v00 2006-03-15 EBD Initial version
408
+
409
+ v01 2006-04-03 EBD Moved PI location back to position 1 -
410
+ v3.1 of XMLmind is better with them at this location.
411
+ v02 2007-03-07 AH removed extraneous nested_list attribute,
412
+ other minor corrections
413
+ v03 2007-03-09 EBD Added comments on null IANA sections and fixed heading capitalization.
414
+ Modified comments around figure to reflect non-implementation of
415
+ figure indent control. Put in reference using anchor="DOMINATION".
416
+ Fixed up the date specification comments to reflect current truth.
417
+ v04 2007-03-09 AH Major changes: shortened discussion of PIs,
418
+ added discussion of rfc include.
419
+ v05 2007-03-10 EBD Added preamble to C program example to tell about ABNF and alternative
420
+ images. Removed meta-characters from comments (causes problems).
421
+
422
+ v06 2010-04-01 TT Changed ipr attribute values to latest ones. Changed date to
423
+ year only, to be consistent with the comments. Updated the
424
+ IANA guidelines reference from the I-D to the finished RFC. -->
425
+ </back>
426
+ </rfc>
@@ -0,0 +1,181 @@
1
+ = RFC XML v2 Example: A Standard for the Transmission of IP Datagrams on Avian Carriers
2
+ David Waitzman <dwaitzman@BBN.COM>; Nick Nicholas <opoudjis@gmail.com>
3
+ :doctype: rfc
4
+ :abbrev: IP Datagrams on Avian Carriers
5
+ :obsoletes: 10, 120
6
+ :updates: 2010, 2120
7
+ :status: info
8
+ :name: rfc-1149
9
+ :ipr: trust200902
10
+ :area: Internet
11
+ :workgroup: Network Working Group
12
+ :keyword: this, that
13
+ :revdate: 1990-04-01T00:00:00Z
14
+ :organization: BBN STC
15
+ :phone: (617) 873-4323
16
+ :uri: http://bbn.com
17
+ :street: 10 Moulton Street
18
+ :city: Cambridge
19
+ :code: MA 02238
20
+ :organization_2: BBN STC
21
+ :phone_2: (617) 873-4323
22
+ :street_2: 10 Moulton Street
23
+ :city_2: Cambridge
24
+ :code_2: MA 02238
25
+ :uri_2: http://opoudjis.net
26
+
27
+ [abstract]
28
+ Avian carriers can provide high delay, low throughput, and low
29
+ altitude service. The connection topology is limited to a single
30
+ point-to-point path for each carrier, used with standard carriers,
31
+ but many carriers can be used without significant interference with
32
+ each other, outside of early spring. This is because of the 3D ether
33
+ space available to the carriers, in contrast to the 1D ether used by
34
+ IEEE802.3. The carriers have an intrinsic collision avoidance
35
+ system, which increases availability. Unlike some network
36
+ technologies, such as packet radio, communication is not limited to
37
+ line-of-sight distance. Connection oriented service is available in
38
+ some cities, usually based upon a central hub topology.
39
+
40
+ NOTE: Yes, this is an April Fool's RFC.
41
+
42
+ [[frame]]
43
+ == Frame Format
44
+
45
+ The IP _datagram_ is *printed*, on a small scroll of paper, in
46
+ hexadecimal, with each octet separated by whitestuff and blackstuff.
47
+ The scroll of paper is wrapped around one leg of the avian carrier.
48
+ A band of duct tape is used to secure the datagram's edges. The
49
+ bandwidth is limited to the leg length. The MTU is variable, and
50
+ paradoxically, generally increases with increased carrier age. A
51
+ typical MTU is 256 milligrams. Some datagram padding may be needed.<<RFC7253,alt>>
52
+
53
+ Upon receipt, the duct tape is removed and the paper copy of the
54
+ datagram is optically scanned into a electronically transmittable
55
+ form.<<RFC7253>>
56
+
57
+ This document extends OpenPGP and its ECC extension to support SM2, SM3 and SM4:
58
+
59
+ * support the SM3 hash algorithm for data validation purposes
60
+ * support signatures utilizing the combination of SM3 with other digital
61
+ signing algorithms, such as RSA, ECDSA and SM2
62
+ * support the SM2 asymmetric encryption algorithm for public key
63
+ operations
64
+ * support usage of SM2 in combination with supported hash algorithms, such as
65
+ SHA-256 and SM3
66
+ * support the SM4 symmetric encryption algorithm for data protection purposes
67
+ * defines the OpenPGP profile "OSCCA-SM234" to enable usage of OpenPGP
68
+ in an OSCCA-compliant manner.
69
+
70
+ Algorithm-Specific Fields for SM2DSA keys:
71
+
72
+ * a variable-length field containing a curve OID, formatted
73
+ as follows:
74
+ .. a one-octet size of the following field; values 0 and
75
+ 0xFF are reserved for future extensions
76
+ .. octets representing a curve OID.
77
+ * MPI of an EC point representing a public key
78
+
79
+
80
+ === Definitions
81
+
82
+ OSCCA-compliant:: All cryptographic algorithms used are compliant with OSCCA regulations.
83
+ SM2DSA:: The elliptic curve digital signature algorithm. <<ISO.IEC.10118-3>>
84
+ SM2KEP:: The elliptic curve key exchange protocol.
85
+ SM2PKE:: The public key encryption algorithm.
86
+
87
+ ==== Elliptic Curve Formula
88
+
89
+ [stem]
90
+ ++++
91
+ y^2 = x^3 + ax + b
92
+ ++++
93
+
94
+ ==== Curve Parameters
95
+
96
+ [[curveparam1]]
97
+ .Curve Parameters Listing
98
+ ====
99
+ ....
100
+ p = FFFFFFFE FFFFFFFF FFFFFFFF FFFFFFFF
101
+ FFFFFFFF 00000000 FFFFFFFF FFFFFFFF
102
+ a = FFFFFFFE FFFFFFFF FFFFFFFF FFFFFFFF
103
+ FFFFFFFF 00000000 FFFFFFFF FFFFFFFC
104
+ b = 28E9FA9E 9D9F5E34 4D5A9E4B CF6509A7
105
+ F39789F5 15AB8F92 DDBCBD41 4D940E93
106
+ n = FFFFFFFE FFFFFFFF FFFFFFFF FFFFFFFF
107
+ 7203DF6B 21C6052B 53BBF409 39D54123
108
+ x_G = 32C4AE2C 1F198119 5F990446 6A39C994
109
+ 8FE30BBF F2660BE1 715A4589 334C74C7
110
+ y_G = BC3736A2 F4F6779C 59BDCEE3 6B692153
111
+ D0A9877C C62A4740 02DF32E5 2139F0A0
112
+ ....
113
+ ====
114
+
115
+ == Supported Algorithms
116
+
117
+ === Public Key Algorithms
118
+
119
+ The SM2 algorithm is supported with the following extension.
120
+
121
+ NOTE: ECDH is defined in Section 8 of this document.
122
+
123
+ The following public key algorithm IDs are added to expand Section
124
+ 9.1 of RFC4880, "Public-Key Algorithms":
125
+
126
+ .Table 2
127
+ |===
128
+ |ID | Description of Algorithm
129
+
130
+ |TBD | SM2
131
+ |===
132
+
133
+
134
+
135
+ == Security Considerations
136
+
137
+ Security is not generally a problem in normal operation, but special +
138
+ measures **MUST** be taken (such as data encryption) when avian carriers
139
+ are used in a tactical environment.<<RFC7253>>, <<ISO.IEC.10118-3>>
140
+
141
+ [bibliography]
142
+ == References
143
+ ++++
144
+ <reference anchor='ISO.IEC.10118-3' target='https://www.iso.org/standard/67116.html'>
145
+ <front>
146
+ <title>ISO/IEC FDIS 10118-3 -- Information technology -- Security techniques -- Hash-functions -- Part 3: Dedicated hash-functions</title>
147
+ <author>
148
+ <organization>International Organization for Standardization</organization>
149
+ <address>
150
+ <postal>
151
+ <street>BIBC II</street>
152
+ <street>Chemin de Blandonnet 8</street>
153
+ <street>CP 401</street>
154
+ <city>Vernier</city>
155
+ <region>Geneva</region>
156
+ <code>1214</code>
157
+ <country>Switzerland</country>
158
+ </postal>
159
+ <phone>+41 22 749 01 11</phone>
160
+ <email>central@iso.org</email>
161
+ <uri>https://www.iso.org/</uri>
162
+ </address>
163
+ </author>
164
+ <date day='15' month='September' year='2017'/>
165
+ </front>
166
+ </reference>
167
+
168
+ <reference anchor='RFC7253' target='https://tools.ietf.org/html/rfc7253'>
169
+ <front>
170
+ <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
171
+ <author initials="T." surname="Krovetz">
172
+ <organization>Sacramento State</organization>
173
+ </author>
174
+ <author initials="P." surname="Rogaway">
175
+ <organization>UC Davis</organization>
176
+ </author>
177
+ <date month='May' year='2014'/>
178
+ </front>
179
+ <seriesInfo name="RFC" value="7253"/>
180
+ </reference>
181
+ ++++