AppendPemData (Stringlist subroutine): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (minor cleanup)
m (add example)
Line 1: Line 1:
{{Template:Stringlist:AppendPemData subtitle}}
{{Template:Stringlist:AppendPemData subtitle}}
The PEM (Privacy Enhanced Mail) protocol uses base64 encoding for binary data that needs to be transferred and stored as text. <var>AppendPemData</var> lets you store such data in a <var>[[Stringlist class|Stringlist]]</var>.
The PEM (Privacy Enhanced Mail) protocol uses base64 encoding for binary data that needs to be transferred and stored as text. <var>AppendPemData</var> lets you store PEM data as a series of base64 encoded <var>[[Stringlist class|Stringlist]]</var> items within beginning and ending text marker items.


==Syntax==
==Syntax==
Line 11: Line 11:


<tr><th><var>Data</var></th>
<tr><th><var>Data</var></th>
<td>The base64 encoded <var>Longstring</var> or <var>String</var> you are appending to the data stored in <var class="term">sl</var>. </td></tr>
<td>The <var>Longstring</var> or <var>String</var> you are appending to the data stored in <var class="term">sl</var>. </td></tr>


<tr><th><var>label</var></th>
<tr><th><var>label</var></th>
<td>The string that identifies the base64 encoded data you are appending. The data will be contained within <var class="term">sl</var> items that are the text markers <code>-----BEGIN <i>label</i>-----</code> and <code>-----END <i>label</i>-----</code>.
<td>The string that identifies the base64 encoded data you are appending. The data is stored as a series of <var class="term">sl</var> items contained within items that are the text markers <code>-----BEGIN <i>label</i>-----</code> and <code>-----END <i>label</i>-----</code>.
<p>
<p>
This is a required, case-sensitive, value. </p></td></tr>
This is a required, case-sensitive, value. </p></td></tr>
Line 25: Line 25:


==Examples==
==Examples==
<p class="code">b
%ls    is longstring
%sl    is object stringlist
%ls = 'My PEM-structured content'
%sl:Appendpemdata(%ls, 'SSL SESSION PARAMETERS')
printtext {~} = {%sl:print}
end
</p>
<p>
The result is: </p>
<p class="output"><nowiki>%sl:print = -----BEGIN SSL SESSION PARAMETERS-----
1KhA18XUYKKjmaSDo6SZhYRAg5aVo4WVow==
-----END SSL SESSION PARAMETERS-----
</nowiki></p>
If you apply the <var>Base64toString</var> method to the string within the begin and end markers in the preceding result, that is:
<p class="code">printtext {~} = {'1KhA18XUYKKjmaSDo6SZhYRAg5aVo4WVow==':base64tostring}
</p>
The result is:
<p class="output">'1KhA18XUYKKjmaSDo6SZhYRAg5aVo4WVow==':base64tostring = My PEM-structured content </p>


==See also==
==See also==

Revision as of 20:41, 18 March 2016

Append PEM encoded string to a Stringlist (Stringlist class)

[Introduced in Model 204 7.5]

The PEM (Privacy Enhanced Mail) protocol uses base64 encoding for binary data that needs to be transferred and stored as text. AppendPemData lets you store PEM data as a series of base64 encoded Stringlist items within beginning and ending text marker items.

Syntax

sl:AppendPemData( [Data=] string, [label=] string)

Syntax terms

sl A Stringlist object that contains labeled, base64 encoded data.
Data The Longstring or String you are appending to the data stored in sl.
label The string that identifies the base64 encoded data you are appending. The data is stored as a series of sl items contained within items that are the text markers -----BEGIN label----- and -----END label-----.

This is a required, case-sensitive, value.

Usage notes

  • The appended data is retrievable with the PemToString method.

Examples

b %ls is longstring %sl is object stringlist %ls = 'My PEM-structured content' %sl:Appendpemdata(%ls, 'SSL SESSION PARAMETERS') printtext {~} = {%sl:print} end

The result is:

%sl:print = -----BEGIN SSL SESSION PARAMETERS----- 1KhA18XUYKKjmaSDo6SZhYRAg5aVo4WVow== -----END SSL SESSION PARAMETERS-----

If you apply the Base64toString method to the string within the begin and end markers in the preceding result, that is:

printtext {~} = {'1KhA18XUYKKjmaSDo6SZhYRAg5aVo4WVow==':base64tostring}

The result is:

'1KhA18XUYKKjmaSDo6SZhYRAg5aVo4WVow==':base64tostring = My PEM-structured content

See also

Stringlist methods:

String methods:

System methods:

Socket methods:

Background information: