]> Cypherpunks.ru repositories - pyderasn.git/blobdiff - doc/examples.rst
BER pprinting
[pyderasn.git] / doc / examples.rst
index bdc8faf8229ddd620cb485413d6fab8045bf43ec..e95369c84f3f1f9155329e36fdb814fb6fd1fad9 100644 (file)
@@ -218,21 +218,27 @@ There is huge output. Let's pretty print it::
 
 Let's parse that output, human::
 
-       10-2 [1,1,   1]  . . version: [0] EXPLICIT Version INTEGER v3 OPTIONAL
-       ^  ^  ^ ^    ^   ^   ^        ^            ^       ^       ^  ^
-       0  1  2 3    4   5   6        7            8       9       10 11
+       10-2 [1,1,   1]    . . version: [0] EXPLICIT Version INTEGER v3 OPTIONAL
+       ^  ^  ^ ^    ^     ^   ^        ^            ^       ^       ^  ^
+       0  1  2 3    4     5   6        7            8       9       10 11
 
 ::
 
-       20   [1,1,   9]  . . . algorithm: OBJECT IDENTIFIER 1.2.840.113549.1.1.5
-       ^     ^ ^    ^   ^     ^          ^                 ^
-       0     2 3    4   5     6          9                 10
+       20   [1,1,   9]    . . . algorithm: OBJECT IDENTIFIER 1.2.840.113549.1.1.5
+       ^     ^ ^    ^     ^     ^          ^                 ^
+       0     2 3    4     5     6          9                 10
 
 ::
 
-       33   [0,0, 278]  . . issuer: Name CHOICE rdnSequence
-       ^     ^ ^    ^   ^   ^       ^    ^      ^
-       0     2 3    4   5   6       8    9      10
+       33   [0,0, 278]    . . issuer: Name CHOICE rdnSequence
+       ^     ^ ^    ^     ^   ^       ^    ^      ^
+       0     2 3    4     5   6       8    9      10
+
+::
+
+       52-2 [1,1,1054]-4  . . . . eContent: [0] EXPLICIT BER OCTET STRING 1046 bytes
+                       ^                                 ^   ^            ^
+                      12                                13   9            10
 
 :0:
  Offset of the object, where its DER encoding begins.
@@ -265,6 +271,19 @@ Let's parse that output, human::
 :11:
  Possible other flags like OPTIONAL and DEFAULT, if value equals to the
  default one, specified in the schema.
+:12:
+ Only applicable to BER encoded data. If object has indefinite length
+ encoding, then subtract 2 bytes EOC from its length. If object has
+ explicit tag with indefinite length, then subtract another EOC bytes.
+ In example above, ``eContent`` field has both indefinite field encoding
+ and indefinite length explicit tag. ``BIT STRING``, ``OCTET STRING``
+ (and its derivatives), ``SEQUENCE``, ``SET``, ``SEQUENCE OF``, ``SET
+ OF``, ``ANY`` could have indefinite length coding.
+:13:
+ Only applicable to BER encoded data. If object has BER-specific
+ encoding, then ``BER`` will be shown. It does not depend on indefinite
+ length encoding. ``BOOLEAN``, ``BIT STRING``, ``OCTET STRING`` (and its
+ derivatives) could be BERed.
 
 As command line utility
 -----------------------