Skip to content

Conversation

@embhorn
Copy link
Member

@embhorn embhorn commented Jan 14, 2026

Summary of Changes

  1. wolfcrypt/utils.py - Updated t2b() function
    The t2b() function now passes through bytes, bytearray, and memoryview types unchanged, instead of only accepting bytes. This allows interfaces throughout the codebase that use t2b() to automatically support these additional buffer types.
    Also dropped Python 2 compatibility code since it's no longer needed.
  2. wolfcrypt/ciphers.py - Fixed ChaCha20Poly1305 class
    The ChaCha20Poly1305 class needed to wrap input arguments in _ffi.from_buffer() when passing them to C functions. This is required because CFFI's from_buffer() converts Python buffer objects (including memoryview and bytearray) to C-compatible pointers.
    These changes allow memoryview and bytearray types to be used with MlKemPublic.decode_key(), ChaCha20Poly1305.decrypt(), and other interfaces that accept binary data.

Cursor assisted PR

Fixes #81

@embhorn embhorn self-assigned this Jan 14, 2026
@embhorn embhorn requested a review from lealem47 January 14, 2026 14:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Does not support memoryviews or bytearrays

1 participant