The IESG is providing this guidance to align current practice with RFC 5377, RFC 5378, and the resulting IETF Trust Legal Provisions (TLP) (http://trustee.ietf.org/license-info).
IETF Contributions and IETF Documents often include code components that are intended to be directly processed by a computer. Examples of such code components include ABNF definitions, XML Schemas, XML DTDs, XML RelaxNG definitions, tables of values, MIBs, PIBs, ASN.1, and classical programming source code. The IETF Trust maintains a list of code component types. A link to this list can be found on this web page: http://trustee.ietf.org/license-info.
In addition to the code component types listed, any text found between the markers <CODE BEGINS> and <CODE ENDS> shall be considered a code component. Authors may wish to use these markers as clear delimiters of code components.
Authors are encouraged to collect code into a separate section or appendix.
The TLP requires copyright notice in IETF Documents, but not necessarily in each code component within an IETF Document. Authors may choose to include a copyright notice as a comment when a significant amount of code is collected together. For example, authors may include a copyright notice in a comment as part of an ASN.1 module or a representation of a classical programming language file. If IETF Document authors choose to include a code component copyright notice comment, they must follow the guidance in Section 6.d of the TLP. Implementors that extract any code component from the IETF Document must include the BSD license text as described in Section 4.e of the TLP.