| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
| |
* cleaned up source of des_crypt variants and DES util functions
* DES utils functions now have tighter input validation, full UT coverage
|
| |
|
|
|
|
|
| |
* test os_crypt backend has functional fallback
* test handler methods accept all unicode/bytes combinations for secret & hash
* fixed some incorrect error messages & types being caught & raised
* other minor cleanups
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
passlib.tests
-------------
* deprecated support for unittest 1... accumulated too many backports,
planning to require unittest2 in next release.
* case_prefix renamed to shortDescription
* test case now archives & clears warning registry state in addition
to warning filter state
passlib.utils.compat
--------------------
* a bunch of the bytes-related functions were renamed for clarity
* NativeStringIO alias added
* trange alias merged into irange
|
| |
|
|
| |
reliably
|
| |
|
|
| |
other small tweaks
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* studied crypt_blowfish's 8bit bug
- verified none of passlib's backends were affected
- added recognition (but not support) for crypt_blowfish's $2x$ hash prefix
- added support for crypt_blowfish's $2y$ hash prefix
- note in docs about Passlib's current handling of crypt_blowfish 8bit issues.
* refactored bcrypt's salt-unused-bits repair code into Base64Engine.repair_unused(),
making the code cleaner and more isolated. a bunch more tests.
* added bcrypt64 (bcrypt-base64 variant) to utils
* added LazyBase64Engine to reduce memory / startup time
|
| | |
|
| |
|
|
|
|
|
| |
* safe_crypt() improved - accepts unicode/bytes for salt, checks for NULL, returns None on failure
* added test_crypt() wrapper to simplify backend checks.
* removed native=True from most to_string() implementations, unused now.
* updated UTs
|
| |
|
|
|
|
|
|
|
| |
* added str_to_[ub]ascii to wrap hexdigest() calls
* fixed some h64big calls I missed
* some py3 fixes
* removed utils.compat.aliases, using overlay
to replace real compat module instead
(to agree w/ imports already in code)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* moved bytes compat functions from utils to utils.compat
(bord, bjoin, bjoin_ints, bjoin_elems, ujoin)
* renamed bord -> belem_ord for clarify
* a bunch of to_native_str() always use ascii, and
have fixed input types (always bytes or always unicode).
these don't need overhead of to_native_str(), so replaced
those calls with two new funcs: compat.bascii_to_str() /
compat.uascii_to_str()
* cleaned up a lot of imports from utils/utils.compat to
pull from correct module
* simplified the to_string() logic of a bunch of handlers
to reduce unicode<->byte transitions
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
* new utils.Base64Engine() provides flexible class for encoding arbitrary base64 charmaps.
it should also be a bit faster than the old h64 module.
* predefined 'h64' instance has mostly the same methods as the old h64 module
which it takes the place off - so imports should be unaffected.
(the only the exception of the xxx_dc_xxx methods, which now use the 'h64big' instance)
* replaced utils._blowfish base64 encoding with custom Base64Engine instance
to reduce code duplication.
* more through unittests for Base64Engine.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
handler
-------
* added 'scram' to default registry list
* handler 'algs' keyword now parsed & validated correctly
* digest names normalized -> IANA spec
* saslprep() integrated into code
* added config string format
related
-------
* added documentation (still needs cleaning up though)
* added majority of UTs, still need to add a few edge cases
other
-----
* redid context->handler deprecation link - code now looks for
handler._deprecated_detector(settings) to generate a callable,
should be more efficient, and allow errors to be throw at bind-time
instead of call-time.
* pbkdf2() function now treats keylen = -1 as request for
keylen = PRF digest size.
|
| | |
|
| | |
|
| |
|
|
|
|
| |
decided that to_hash_str will always return native string,
feature of hashes being returned as unicode under python 2
is better done through a CryptContext option.
|
| | |
|
| |\ |
|
| | |
| |
| |
| | |
still have to work it into Context object
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
compat.u
|
| | |
| |
| |
| |
| |
| |
| |
| | |
this distinguishes the types, so that for isinstance() tests...
* 'unicode' always means the unicode type
* 'bytes' always means the bytes type
* 'str' always means the native string type
|
| | | |
|
| | | |
|
| |/
|
|
|
|
|
|
|
| |
exports specialized range & map aliases, and some dict helpers
* all dict.iteritems() calls replaced with compat.iteritems(dict)
* all xrange() calls replaced with compat.irange()
* all range() calls replaced with compat.trange() and compat.lrange() as appropriate
* all map() calls replaced with compat.lmap()
|
| |
|
|
| |
CHANGELOG for details)
|
| |
|
|
| |
warnings
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
* typo in safe_os_crypt UT
* typo in has_backend UT
* typo in HasManyBackends HandlerCase UT
* fixed inverted has_backend() test in HasManyBackends.set_backend()
* ensure all safe_os_crypt backend checks return boolean
* BSDiCrypt - fixed os_crypt backend, was passing incomplete string to os_crypt
* workaround for Jython object.__new__() behavior in test 'UnsaltedHash' UT
* added passlib.utils.jython_vm flag for detecting jython
|
| | |
|
| |
|
|
| |
use UT2 class-level SkipTest if available
|
| |
|
|
|
| |
* also reworked some parallel features to operate in a UT2 compatible way
* still rely on nose for discovery purposes.
|
| | |
|
| |
|
|
|
|
|
| |
* kdfs, md4, and utils proper
* updated UTs
* added to_native_str helper
* added some UTs for new to_bytes / to_unicode etc methods
|
| | |
|
| |
|
|
|
|
|
| |
* rewrote internals a bit
* added some more utils helpers to deal w/ bytes elements beings ints, not just bytes-slices
* added 'bytes' type checks to most h64 funcs
* updated H64 UTs till they pass
|
| | |
|
| |
|
|
|
|
|
| |
* renamed _resolve_prf() to get_prf(), documented interface
* added pbkdf1 support
* added 'encoding' kwd to pbkdf1 & pbkdf2, for easier handling of unicode inputs
*
|
| | |
|
| | |
|
| |
|
|
| |
removed
|
| | |
|
| |
|
|
| |
and probably never will be.
|
| |
|
|
| |
little to do with eachother
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
============================
* now at 99% coverage
* changed some error types
* bugfix to min_verify_time code
* tests for registry, some cryptcontext border cases
* ldap hash tests
* tests for rest of utils
* tests for skeleton hash classes in passlib.utils.drivers
* moved validate_class code from skeleton hash classes to HandlerCase
main things still needing testing:
* category support for CryptContext/Policy
* some bits of registry
|