Commit graph

28 commits

Author SHA1 Message Date
adam
abbb30096f py-asn1: updated to 0.4.8
Revision 0.4.8:
- Added ability of combining `SingleValueConstraint` and
  `PermittedAlphabetConstraint` objects into one for proper modeling
  `FROM ... EXCEPT ...` ASN.1 clause.
2019-11-18 10:52:39 +00:00
adam
76f0ddf94d py-asn1: updated to 0.4.7
Revision 0.4.7:

- Added `isInconsistent` property to all constructed types. This property
  conceptually replaces `verifySizeSpec` method to serve a more general
  purpose e.g. ensuring all required fields are in a good shape. By default
  this check invokes subtype constraints verification and is run by codecs
  on value de/serialisation.
- Deprecate `subtypeSpec` attributes and keyword argument. It is now
  recommended to pass `ValueSizeConstraint`, as well as all other constraints,
  to `subtypeSpec`.
- Fixed a design bug in a way of how the items assigned to constructed
  types are verified. Now if `Asn1Type`-based object is assigned, its
  compatibility is verified based on having all tags and constraint
  objects as the type in field definition. When a bare Python value is
  assigned, then field type object is cloned and initialized with the
  bare value (constraints verificaton would run at this moment).
- Added `WithComponentsConstraint` along with related
  `ComponentPresentConstraint` and `ComponentAbsentConstraint` classes
  to be used with `Sequence`/`Set` types representing
  `SET ... WITH COMPONENTS ...` like ASN.1 constructs.
2019-09-02 07:00:38 +00:00
adam
31b494dd42 py-asn1: updated to 0.4.6
Revision 0.4.6:
- Added previously missing SET OF ANY construct encoding/decoding support.
- Added omitEmptyOptionals option which is respected by Sequence
  and Set encoders. When omitEmptyOptionals is set to True, empty
  initialized optional components are not encoded. Default is False.
- New elements to SequenceOf/SetOf objects can now be added at any
  position - the requirement for the new elements to reside at the end
  of the existing ones (i.e. s[len(s)] = 123) is removed.
- List-like slicing support added to SequenceOf/SetOf objects.
- Removed default initializer from SequenceOf/SetOf types to ensure
  consistent behaviour with the rest of ASN.1 types. Before this change,
  SequenceOf/SetOf instances immediately become value objects behaving
  like an empty list. With this change, SequenceOf/SetOf objects
  remain schema objects unless a component is added or .clear() is
  called.
  This change can potentially cause incompatibilities with existing
  pyasn1 objects which assume SequenceOf/SetOf instances are value
  objects right upon instantiation.
  The behaviour of Sequence/Set types depends on the componentType
  initializer: if on componentType is given, the behaviour is the
  same as SequenceOf/SetOf have. IF componentType is given, but
  neither optional nor defaulted components are present, the created
  instance remains schema object, If, however, either optional or
  defaulted component isi present, the created instance immediately
  becomes a value object.
- Added .reset() method to all constructed types to turn value object
  into a schema object.
- Added PyAsn1UnicodeDecodeError/PyAsn1UnicodeDecodeError exceptions
  to help the caller treating unicode errors happening internally
  to pyasn1 at the upper layers.
- Added support for subseconds CER/DER encoding edge cases in
  GeneralizedTime codec.
- Fixed 3-digit fractional seconds value CER/DER encoding of
  GeneralizedTime.
- Fixed AnyDecoder to accept possible TagMap as asn1Spec
  to make dumping raw value operational
2019-08-03 04:36:59 +00:00
adam
589c36f4ff py-asn1: updated to 0.4.5
Revision 0.4.5:
- Debug logging refactored for more efficiency when disabled and
  for more functionality when in use. Specifically, the global
  LOG object can easily be used from any function/method, not just
  from codec main loop as it used to be.
- More debug logging added to BER family of codecs to ease encoding
  problems troubleshooting.
- Copyright notice extended to the year 2019
- Fixed defaulted constructed SEQUENCE component initialization.
2018-12-31 11:22:15 +00:00
adam
ce6a2acccb py-asn1: updated to 0.4.4
Revision 0.4.4:
- Fixed native encoder type map to include all ASN.1 types
  rather than just ambiguous ones
- Fixed crash in .prettyPrint of Sequence and Set occurring
  at OPTIONAL components
2018-08-06 19:21:51 +00:00
adam
4e175d4017 py-asn1: updated to 0.4.3
0.4.3:
Copyright notice extended to the year 2018
Fixed GeneralizedTime.asDateTime to perform milliseconds conversion correctly
2018-05-24 07:20:47 +00:00
adam
1de52f5415 py-asn1: updated to 0.4.2
Revision 0.4.2:
---------------
- Fixed explicit tag splitting in chunked encoding mode at
  OctetString and BitString encoders

Revision 0.4.1:
---------------
- ANY DEFINED BY clause support implemented
- Encoders refactored to take either a value (as ASN.1 object)
  or a Python value plus ASN.1 schema
- BitString decoder optimised for better performance when running on
  constructed encoding
- Constructed types' .getComponentBy*() methods accept the default
  parameter to return instead if schema object is to be returned
- Constructed types' .getComponentBy*() methods accept the instantiate
  parameter to disable automatic inner component instantiation
- The ASN.1 types' __repr__ implementation reworked for better readability
  at the cost of not being eval-compliant
- Most ASN.1 types' __str__ magic methods (except for OctetString and
  character types) reworked to call .prettyPrint() rather than
  .prettyPrint calling __str__ as it was before. The intention is
  to eventually deprecate .prettyPrint() in favor of str().
  The other related change is that str() of enumerations and boolean
  types will return string label instead of number.
- Fixed Choice.clear() to fully reset internal state of the object
- Sphinx documentation rearranged, simplified and reworded
- The isValue singleton is now the only way to indicate ASN.1 schema
  as opposed to ASN.1 schema instance. The legacy None initializer
  support has been removed.
- Changed Null object initialization behaviour: previous default
  value ('') is not set anymore. Thus Null() call produces a
  ASN.1 schema object, while Null('') - value object.
- Migrated all docs and references from SourceForge
- Imports PEP8'ed
- Fixed ASN.1 encoder not to omit empty substrate produced for inner
  component if the inner component belongs to the simple class (as
  opposed to constructed class)
- Fixed CER/DER encoders to respect tagged CHOICE when ordering
  SET components
- Fixed ASN.1 types not to interfere with the Pickle protocol
- Fixed Sequence/SequenceOf types decoding heuristics in schema-less
  decoding mode
2017-11-28 09:14:34 +00:00
adam
61c24d5d5b py-asn1: update to 0.3.7
Revision 0.3.7:
Fixed ASN.1 time types pickling/deepcopy'ing
2017-10-06 06:34:36 +00:00
adam
f5b291c774 py-asn1: update to 0.3.6
Revision 0.3.6:
* End-of-octets encoding optimized at ASN.1 encoders
* The __getitem__/__setitem__ behavior of Set/Sequence and SetOf/SequenceOf objects aligned with the canonical Mapping and Sequence protocols in part
* Fixed crash in ASN.1 encoder when encoding an explicitly tagged component of a Sequence
2017-09-30 15:12:30 +00:00
adam
1a8def38d3 py-asn1: update to 0.3.5
Revision 0.3.5:
Codecs signatures unified and pass the options kwargs through the call chain
Explicit tag encoding optimized to avoid unnecessary copying
End-of-octets sentinel encoding optimized
Refactored ASN.1 codecs properties to silently enforce proper length and chunk size encoding modes
Fixed DER encoder to always produce primitive encoding
Fixed crash at SequenceOf native decoder
Fixed Real.prettyPrint() to fail gracefully on overflow
Fixed a couple of crashes when debug mode is enabled
2017-09-17 10:18:41 +00:00
adam
9d4a5067ad Revision 0.3.4:
- Fixed Native encoder to handle SEQUENCE/SET objects without
  the componentType property
- Added missing component-less SEQUENCE/SET objects dict duck-typing support
- Fixed unnecessary duplicate tags detection at NamesType.tagMap
- Fixed crash at SEQUENCE and SEQUENCE OF CER encoder when running
  in schemaless mode
- Fixed Character types instantiation from OctetString type -- double
  unicode decoding may have scrambled the data
2017-09-08 07:28:31 +00:00
adam
fd4a896b4b PLIST update 2017-09-04 04:50:26 +00:00
adam
e04d4e7adb Revision 0.3.3:
Improved ASN.1 types instantiation performance
Improved BER/CER/DER decoder performance by not unconditionally casting substrate into str/bytes.
Fixed exponential index size growth bug when building ambiguous NamedTypes tree
Fixed constructed types decoding failure at BER codec if running in schema-less mode
Fixed crash on prettyPrint'ing a SEQUENCE with no defined components
Fixed SetOf ordering at CER/DER encoder
Fixed crash on conditional binascii module import
Fix to TagSet hash value build
2017-08-31 08:48:24 +00:00
adam
6b4dc32ecb Revision 0.3.2:
- Fixed SequenceOf/SetOf types initialization syntax to remain
  backward compatible with pyasn1 0.2.*
- Rectified thread safety issues by moving lazy, run-time computation
  into object initializer.
- Fixed .isValue property to return True for empty SetOf/SequenceOf
  objects
- Fixed GeneralizedTime/UTCTime CER/DER codecs to actually get invoked
- Fixed DER/CER encoders handling optional SEQUENCE/SET fields containing
  nested SEQUENCE/SET with optional fields.
- Fixed crash in SequenceOf/SetOf pretty printing and decoding (in some
  cases)
- Fixed documentation markup issues.
2017-08-06 19:25:45 +00:00
adam
4ec67214c1 Revision 0.3.1:
- ASN.1 types __init__(), .clone() and .subtype() signatures
  refactored into keyword arguments to simplify their signatures.
- ASN.1 types initialization refactored to minimize the use of
  relatively expensive isNoValue() call
- Lazily pre-populate list of values of Sequence/Set/Choice types
- NamedTypes comparison made more efficient
- More efficient constraints computation and code clean up
- The __getitem__() implementation of some ASN.1 types & tag object
  refactored for better performance
- BER/CER/DER value encoders refactored to produce either tuple of
  bytes or octet-stream depending on what is more optimal
- Reduced the frequency of expensive isinstance() calls
- Tag-related classes optimized, refactored into properties and
  documented.
- The NamedValues implementation refactored to mimic Python dict, its use
  in ASN.1 types refactored into properties and better documented.
  WARNING: this change introduces a deviation from original API.
- NamedType family of classes overhauled, optimized and documented.
- The `componentType` attribute of constructed ASN.1 types turned
  read-only on instances.
- Sequence/Set DER/CER/DER decoder optimized to skip the case of
  reordered components handling when not necessary.
- Tags and constraints-related getter methods refactored into read-only
  instance attributes.
- The .hasValue() method refactored into .isValue property. All ASN.1
  objects now support them, not just scalars.
- The Real.{isInfinity, isPlusInfinity, isMinusInfinity} methods
  refactored into properties and renamed into IsInf, IsPlusInf and isMinusInf
- The end-of-octets type refactored to ensure it is a singleton. Codecs
  changed to rely on that for better performance.
- Codecs lookup made more efficient at BER/CER/DER decoder main loop by
  assigning `typeId` to every ASN.1 type, not just ambiguous ones.
- The .getComponent*() methods of constructed ASN.1 types changed
  to lazily instantiate underlying type rather than return `None`.
  This should simplify its API as initialization like `X[0][1] = 2` becomes
  possible.
  WARNING: this change introduces a deviation from the original API.
- The .setComponent*() methods of SetOf/SequenceOf types changed not
  to allow uninitialized "holes" inside the sequences of their components.
  They now behave similarly to Python lists.
  WARNING: this change introduces a deviation from the original API.
- Default and optional components en/decoding of Constructed type
  refactored towards better efficiency and more control.
- OctetsString and Any decoder optimized to avoid creating ASN.1
  objects for chunks of substrate. Instead they now join substrate
  chunks together and create ASN.1 object from it just once.
- The GeneralizedTime and UTCTime types now support to/from Python
  datetime object conversion.
- Unit tests added for the `compat` sub-package.
- Fixed BitString named bits initialization bug.
- Fixed non-functional tag cache (when running Python 2) at DER decoder.
- Fixed chunked encoding restriction on DER encoder.
- Fixed SET components ordering at DER encoder.
- Fixed BIT STRING & OCTET STRING encoding to be always non-chunked (e.g.
  primitive) at DER encoder
- Fixed `compat.integer.from_bytes()` behaviour on empty input.
2017-07-27 18:36:10 +00:00
jperkin
ac4dcc786d Reset MAINTAINER after tonnerre resigned. 2017-04-19 11:24:36 +00:00
wiz
79d7b149c6 Remove variables that have default values. 2017-04-08 13:37:47 +00:00
adam
40c1a98cb6 Revision 0.2.3, released 25-02-2017
-----------------------------------
- Improved SEQUENCE/SET/CHOICE decoding performance by maintaining a single shared
  NamedType object for all instances of SEQUENCE/SET object.
- Improved INTEGER encoding/decoding by switching to Python's built-in
  integer serialization functions.
- Improved BitString performance by rebasing it onto Python int type and leveraging
  fast Integer serialization functions.
- BitString type usability improved in many ways: for example bitshifting and
  numeric operation on BitString is now possible.
- Minor ObjectIdentifier type performance optimization.
- ASN.1 character types refactored to keep unicode contents internally
  (rather than serialized octet stream) and duck-type it directly.
- ASN.1 OctetString initialized from a Python object performs bytes()
  on it when running on Python 3 (used to do str() which is probably
  less logical).
- Missing support for NoValue.__sizeof__ added.
- Added checks to make sure SEQUENCE/SET components being assigned
  match the prototypes.
- Setter methods for constructed types consistently accept matchTags
  and matchConstraints flags to control the strictness of inner
  components compatibility verification. Previously, these checks
  were tied to verifyConstraints flag, now they are all independent.
- General documentation improvements here and there.
- Fix to __reversed__() magic to make it returning an iterator.
- Test suite simplified and unified.
- The __all__ variable added to most of the Python modules.
- The "test" directory renamed into "tests" not to collide with
  the "test" module.
2017-04-08 11:25:11 +00:00
leot
6931807169 Update security/py-asn1 to 0.1.9.
Changes:
Revision 0.1.9, released 28-09-2015
-----------------------------------
- Wheel distribution format now supported.
- Extensions added to text files, CVS attic flushed.
- Fix to make uninitilaized pyasn1 objects failing properly on hash().
- Fix to ObjectIdentifier initialization from unicode string.
- Fix to CER/DER Boolean decoder - fail on non single-octet payload.
2015-12-30 15:00:27 +00:00
agc
5293710fb4 Add SHA512 digests for distfiles for security category
Problems found locating distfiles:
	Package f-prot-antivirus6-fs-bin: missing distfile fp-NetBSD.x86.32-fs-6.2.3.tar.gz
	Package f-prot-antivirus6-ws-bin: missing distfile fp-NetBSD.x86.32-ws-6.2.3.tar.gz
	Package libidea: missing distfile libidea-0.8.2b.tar.gz
	Package openssh: missing distfile openssh-7.1p1-hpn-20150822.diff.bz2
	Package uvscan: missing distfile vlp4510e.tar.Z

Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden).  All existing
SHA1 digests retained for now as an audit trail.
2015-11-04 01:17:40 +00:00
wiz
7eb65df0f6 Update to 0.1.8:
Revision 0.1.8
--------------

- ObjectIdentifier codec fixed to work properly with arc 0 and arc 2 values.
- Explicit limit on ObjectIdentifier arc value size removed.
- Unicode initializer support added to OctetString type and derivatives.
- New prettyPrintType() abstract method implemented to base pyasn1 types
  to facilitate encoding errors analisys.
- The __str__() method implemented to Tag, TagSet and TagMap classes to
  ease encoding errors troubleshooting.
  easing encoding errors
- Fix to SEQUENCE and SET types to give them their private componentTypes
  collection (which is a NamedTypes object) so that they won't collide in
  a MT execution environment.
- Missing T61String,ISO646String character types and ObjectDescriptor useful
  type added.
- Distribute is gone, switched to setuptools completely.
- Missing NamedValues.__repr__() added.
- The base.NoValue() class, that indicates uninitialized ASN.1 object,
  made public.
- The base.NoValue() class instances now support __repr__() what makes
  possible to perform repr() on uninitialized pyasn1 types objects.
- When comparing ASN.1 types, by-tag and/or by-constraints matching
  can now be performed with the isSuperTypeOf()/isSameTypeWith() optional
  flags.
- Constructed types now verify their consistency by invoking
  isSameTypeWith(matchTags=True, matchConstraints=False) and
  isSuperTypeOf(matchTags=False, matchConstraints=True) for each of their
  components rather than isSuperTypeOf() as it used to be. Constriants check
  could be enforced to isSameTypeWith() with the strictConstraints=True
  constructed classes attribute.
- Constructed types can now be initialized with new .setComponents() method
  which accepts both var-args and keyword-args. Default repr() modified to
  reflect this change.
- NamedTypes() and NamedValues() made comparable.
- Test coverage extended to cover pyasn1 types __repr__() function.
- The abs(Integer()) & abs(Real()) operation now returns respective pyasn1
  type, not a Python type.
- More Python magic methods implementations added to Integer & Real classes
  (e.g.  __pos__, __neg__, __round__, __floor__, __ceil__, __trunc__)
- The Integer.__invert__ Python magic method implemented.
- The OctetString.__int__() and .__float__() magic methods implemented.
- Handle the case of null writer at Debug printer.
- BitString encoder/decoder performance improved.
- Built-in debugging is now based on Python logging module.
- Fix to NamedType.__repr__() to work properly.
- Fixes to __repr__() implementation of many built-in ASN.1 types to take into
  account all of their initializers such as tagSet, subtypeSpec etc.
- String typed float initializer to REAL type now supported.
- Float typed mantissa initializer to REAL type for base 2 added.
- Encoding bases 8 and 16 support for REAL type binary encoder added.
- More strict CER/DER encoders added for GeneralizedTime and UTCTime types.
- Asn1Item.hasValue() added to easily distinguish initalized ASN.1 objects
  from uninitialized ones (e.g. pure types).
- Fix to REAL type binary decoder to handle different bases and scale factor.
- Fix to TagSet.repr() to include [obsolete] baseTag information.
- Fix to broken REAL type decoding handling.
- Fix to BitString and OctetString decoders dealing with constructed
  encoding -- it used to be possible to embed other types in substrate.
- Fix to end-of-octest sentinel handling:
  * require strict two-zeros sentinel encoding
  * recognize EOO sentinel only when explicitly requested by caller
    of the decoder via allowEoo=True parameter (warning: API change)
- DER codec hardened not to tolerate indefinite length encoding/decoding.
2015-07-01 13:54:22 +00:00
wiz
00ac4333cc Update to 0.1.7:
Revision 0.1.7
--------------

- License updated to vanilla BSD 2-Clause to ease package use
  (http://opensource.org/licenses/BSD-2-Clause).
- Test suite made discoverable by unittest/unittest2 discovery feature.
- Fix to decoder working on indefinite length substrate -- end-of-octets
  marker is now detected by both tag and value. Otherwise zero values may
  interfere with end-of-octets marker.
- Fix to decoder to fail in cases where tagFormat indicates inappropriate
  format for the type (e.g. BOOLEAN is always PRIMITIVE, SET is always
  CONSTRUCTED and OCTET STRING is either of the two)
- Fix to REAL type encoder to force primitive encoding form encoding.
- Fix to CHOICE decoder to handle explicitly tagged, indefinite length
  mode encoding
- Fix to REAL type decoder to handle negative REAL values correctly. Test
  case added.

Revision 0.1.6
--------------

- The compact (valueless) way of encoding zero INTEGERs introduced in
  0.1.5 seems to fail miserably as the world is filled with broken
  BER decoders. So we had to back off the *encoder* for a while.
  There's still the IntegerEncoder.supportCompactZero flag which
  enables compact encoding form whenever it evaluates to True.
- Report package version on debugging code initialization.

Revision 0.1.5
--------------

- Documentation updated and split into chapters to better match
  web-site contents.
- Make prettyPrint() working for non-initialized pyasn1 data objects. It
  used to throw an exception.
- Fix to encoder to produce empty-payload INTEGER values for zeros
- Fix to decoder to support empty-payload INTEGER and REAL values
- Fix to unit test suites imports to be able to run each from
  their current directory

Revision 0.1.4
--------------

- Built-in codec debugging facility added
- Added some more checks to ObjectIdentifier BER encoder catching
  posible 2^8 overflow condition by two leading sub-OIDs
- Implementations overriding the AbstractDecoder.valueDecoder method
  changed to return the rest of substrate behind the item being processed
  rather than the unprocessed substrate within the item (which is usually
  empty).
- Decoder's recursiveFlag feature generalized as a user callback function
  which is passed an uninitialized object recovered from substrate and
  its uninterpreted payload.
- Catch inappropriate substrate type passed to decoder.
- Expose tagMap/typeMap/Decoder objects at DER decoder to uniform API.
- Obsolete __init__.MajorVersionId replaced with __init__.__version__
  which is now in-sync with distutils.
- Package classifiers updated.
- The __init__.py's made non-empty (rumors are that they may be optimized
  out by package managers).
- Bail out gracefully whenever Python version is older than 2.4.
- Fix to Real codec exponent encoding (should be in 2's complement form),
  some more test cases added.
- Fix in Boolean truth testing built-in methods
- Fix to substrate underrun error handling at ObjectIdentifier BER decoder
- Fix to BER Boolean decoder that allows other pre-computed
  values besides 0 and 1
- Fix to leading 0x80 octet handling in DER/CER/DER ObjectIdentifier decoder.
  See http://www.cosic.esat.kuleuven.be/publications/article-1432.pdf

Revision 0.1.3
--------------

- Include class name into asn1 value constraint violation exception.
- Fix to OctetString.prettyOut() method that looses leading zero when
  building hex string.

Revision 0.1.2
--------------

- Fix to __long__() to actually return longs on py2k
- Fix to OctetString.__str__() workings of a non-initialized object.
- Fix to quote initializer of OctetString.__repr__()
- Minor fix towards ObjectIdentifier.prettyIn() reliability
- ObjectIdentifier.__str__() is aliased to prettyPrint()
- Exlicit repr() calls replaced with '%r'

Revision 0.1.1
--------------

- Hex/bin string initializer to OctetString object reworked
  (in a backward-incompatible manner)
- Fixed float() infinity compatibility issue (affects 2.5 and earlier)
- Fixed a bug/typo at Boolean CER encoder.
- Major overhawl for Python 2.4 -- 3.2 compatibility:
  + get rid of old-style types
  + drop string module usage
  + switch to rich comparation
  + drop explicit long integer type use
  + map()/filter() replaced with list comprehension
  + apply() replaced with */**args
  + switched to use 'key' sort() callback function
  + support both __nonzero__() and __bool__() methods
  + modified not to use py3k-incompatible exception syntax
  + getslice() operator fully replaced with getitem()
  + dictionary operations made 2K/3K compatible
  + base type for encoding substrate and OctetString-based types
    is now 'bytes' when running py3k and 'str' otherwise
  + OctetString and derivatives now unicode compliant.
  + OctetString now supports two python-neutral getters: asOcts() & asInts()
  + print OctetString content in hex whenever it is not printable otherwise
  + in test suite, implicit relative import replaced with the absolute one
  + in test suite, string constants replaced with numerics

Revision 0.0.13
---------------

- Fix to base10 normalization function that loops on univ.Real(0)

Revision 0.0.13b
----------------

- ASN.1 Real type is now supported properly.
- Objects of Constructed types now support __setitem__()
- Set/Sequence objects can now be addressed by their field names (string index)
  and position (integer index).
- Typo fix to ber.SetDecoder code that prevented guided decoding operation.
- Fix to explicitly tagged items decoding support.
- Fix to OctetString.prettyPrint() to better handle non-printable content.
- Fix to repr() workings of Choice objects.

Revision 0.0.13a
----------------

- Major codec re-design.
- Documentation significantly improved.
- ASN.1 Any type is now supported.
- All example ASN.1 modules moved to separate pyasn1-modules package.
- Fix to initial sub-OID overflow condition detection an encoder.
- BitString initialization value verification improved.
- The Set/Sequence.getNameByPosition() method implemented.
- Fix to proper behaviour of PermittedAlphabetConstraint object.
- Fix to improper Boolean substrate handling at CER/DER decoders.
- Changes towards performance improvement:
  + all dict.has_key() & dict.get() invocations replaced with modern syntax
    (this breaks compatibility with Python 2.1 and older).
  + tag and tagset caches introduced to decoder
  + decoder code improved to prevent unnecessary pyasn1 objects creation
  + allow disabling components verification when setting components to
    structured types, this is used by decoder whilst running in guided mode.
  + BER decoder for integer values now looks up a small set of pre-computed
    substrate values to save on decoding.
  + a few pre-computed values configured to ObjectIdentifier BER encoder.
  + ChoiceDecoder split-off SequenceOf one to save on unnecessary checks.
  + replace slow hasattr()/getattr() calls with isinstance() introspection.
  + track the number of initialized components of Constructed types to save
    on default/optional components initialization.
  + added a shortcut ObjectIdentifier.asTuple() to be used instead of
    __getitem__() in hotspots.
  + use Tag.asTuple() and pure integers at tag encoder.
  + introduce and use in decoder the baseTagSet attribute of the built-in
    ASN.1 types.

Revision 0.0.12a
----------------

- The individual tag/length/value processing methods of
  encoder.AbstractItemEncoder renamed (leading underscore stripped)
  to promote overloading in cases where partial substrate processing
  is required.
- The ocsp.py, ldap.py example scripts added.
- Fix to univ.ObjectIdentifier input value handler to disallow negative
  sub-IDs.
2013-05-15 22:25:22 +00:00
asau
1a433eae91 Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days. 2012-10-23 18:16:19 +00:00
tonnerre
7280a8807a Upgrade py-asn1 to version 0.0.11a.
Changes since 0.0.8a:

- Decoder can now treat values of unknown types as opaque OctetString.
- Fix to Set/SetOf type decoder to handle uninitialized scalar SetOf
  components correctly.
- API versioning mechanics retired (pyasn1.v1 -> pyasn1) what makes
  it possible to zip-import pyasn1 sources (used by egg and py2exe).
- Allow any non-zero values in Boolean type BER decoder, as it's in
  accordnance with the standard.
2010-05-01 17:23:36 +00:00
joerg
f0bbd1517d Remove @dirrm entries from PLISTs 2009-06-14 18:13:25 +00:00
joerg
25a80fb4ab Remove PYBINMODULE. All it did was mark some packages as not available
on some platforms that lacked shared library support in the past. The
list hasn't been maintained at all and the gain is very limited, so just
get rid of it.
2009-03-05 18:51:26 +00:00
tonnerre
08696d8ad4 Add .py files to PLIST (Why haven't they been there in the first place? Hm.) 2008-11-05 10:53:42 +00:00
tonnerre
7ffda7dc56 Import the ASN1 Python module to pkgsrc. This module allows to dissect
ASN1-encoded files (DER, BER, PER, etc.) in Python. ASN1 is the Abstract
Syntax Notation version 1, as defined by the International Telecommunication
Union (ITU).
2008-10-22 16:33:55 +00:00