Lines Matching refs:self
432 EVP_hash(EVPobject *self, const void *vp, Py_ssize_t len)
441 if (!EVP_DigestUpdate(self->ctx, (const void*)cp, process)) {
454 EVP_dealloc(EVPobject *self)
456 PyTypeObject *tp = Py_TYPE(self);
457 if (self->lock != NULL)
458 PyThread_free_lock(self->lock);
459 EVP_MD_CTX_free(self->ctx);
460 PyObject_Free(self);
465 locked_EVP_MD_CTX_copy(EVP_MD_CTX *new_ctx_p, EVPobject *self)
468 ENTER_HASHLIB(self);
469 result = EVP_MD_CTX_copy(new_ctx_p, self->ctx);
470 LEAVE_HASHLIB(self);
483 EVP_copy_impl(EVPobject *self)
488 if ((newobj = newEVPobject(Py_TYPE(self))) == NULL)
491 if (!locked_EVP_MD_CTX_copy(newobj->ctx, self)) {
505 EVP_digest_impl(EVPobject *self)
519 if (!locked_EVP_MD_CTX_copy(temp_ctx, self)) {
540 EVP_hexdigest_impl(EVPobject *self)
554 if (!locked_EVP_MD_CTX_copy(temp_ctx, self)) {
578 EVP_update(EVPobject *self, PyObject *obj)
586 if (self->lock == NULL && view.len >= HASHLIB_GIL_MINSIZE) {
587 self->lock = PyThread_allocate_lock();
591 if (self->lock != NULL) {
593 PyThread_acquire_lock(self->lock, 1);
594 result = EVP_hash(self, view.buf, view.len);
595 PyThread_release_lock(self->lock);
598 result = EVP_hash(self, view.buf, view.len);
617 EVP_get_block_size(EVPobject *self, void *closure)
620 block_size = EVP_MD_CTX_block_size(self->ctx);
625 EVP_get_digest_size(EVPobject *self, void *closure)
628 size = EVP_MD_CTX_size(self->ctx);
633 EVP_get_name(EVPobject *self, void *closure)
635 return py_digest_name(EVP_MD_CTX_md(self->ctx));
656 EVP_repr(EVPobject *self)
659 name_obj = py_digest_name(EVP_MD_CTX_md(self->ctx));
664 name_obj, Py_TYPE(self)->tp_name, self);
715 EVPXOF_digest_impl(EVPobject *self, Py_ssize_t length)
732 if (!locked_EVP_MD_CTX_copy(temp_ctx, self)) {
759 EVPXOF_hexdigest_impl(EVPobject *self, Py_ssize_t length)
780 if (!locked_EVP_MD_CTX_copy(temp_ctx, self)) {
807 EVPXOF_get_digest_size(EVPobject *self, void *closure)
863 EVPobject *self = NULL;
882 self = newEVPobject(type);
883 if (self == NULL) {
891 EVP_MD_CTX_set_flags(self->ctx, EVP_MD_CTX_FLAG_NON_FIPS_ALLOW);
895 int result = EVP_DigestInit_ex(self->ctx, digest, NULL);
898 Py_CLEAR(self);
905 result = EVP_hash(self, view.buf, view.len);
908 result = EVP_hash(self, view.buf, view.len);
911 Py_CLEAR(self);
924 return (PyObject *)self;
1498 HMACobject *self = NULL;
1536 self = (HMACobject *)PyObject_New(HMACobject, type);
1537 if (self == NULL) {
1541 self->ctx = ctx;
1542 self->lock = NULL;
1545 if (!_hmac_update(self, msg_obj))
1549 return (PyObject*)self;
1553 if (self) PyObject_Free(self);
1559 locked_HMAC_CTX_copy(HMAC_CTX *new_ctx_p, HMACobject *self)
1562 ENTER_HASHLIB(self);
1563 result = HMAC_CTX_copy(new_ctx_p, self->ctx);
1564 LEAVE_HASHLIB(self);
1569 _hmac_digest_size(HMACobject *self)
1571 unsigned int digest_size = EVP_MD_size(HMAC_CTX_get_md(self->ctx));
1577 _hmac_update(HMACobject *self, PyObject *obj)
1584 if (self->lock == NULL && view.len >= HASHLIB_GIL_MINSIZE) {
1585 self->lock = PyThread_allocate_lock();
1589 if (self->lock != NULL) {
1591 PyThread_acquire_lock(self->lock, 1);
1592 r = HMAC_Update(self->ctx, (const unsigned char*)view.buf, view.len);
1593 PyThread_release_lock(self->lock);
1596 r = HMAC_Update(self->ctx, (const unsigned char*)view.buf, view.len);
1615 _hashlib_HMAC_copy_impl(HMACobject *self)
1624 if (!locked_HMAC_CTX_copy(ctx, self)) {
1629 retval = (HMACobject *)PyObject_New(HMACobject, Py_TYPE(self));
1641 _hmac_dealloc(HMACobject *self)
1643 PyTypeObject *tp = Py_TYPE(self);
1644 if (self->lock != NULL) {
1645 PyThread_free_lock(self->lock);
1647 HMAC_CTX_free(self->ctx);
1648 PyObject_Free(self);
1653 _hmac_repr(HMACobject *self)
1655 PyObject *digest_name = py_digest_name(HMAC_CTX_get_md(self->ctx));
1660 "<%U HMAC object @ %p>", digest_name, self
1674 _hashlib_HMAC_update_impl(HMACobject *self, PyObject *msg)
1677 if (!_hmac_update(self, msg)) {
1684 _hmac_digest(HMACobject *self, unsigned char *buf, unsigned int len)
1691 if (!locked_HMAC_CTX_copy(temp_ctx, self)) {
1710 _hashlib_HMAC_digest_impl(HMACobject *self)
1714 unsigned int digest_size = _hmac_digest_size(self);
1718 int r = _hmac_digest(self, digest, digest_size);
1735 _hashlib_HMAC_hexdigest_impl(HMACobject *self)
1739 unsigned int digest_size = _hmac_digest_size(self);
1743 int r = _hmac_digest(self, digest, digest_size);
1751 _hashlib_hmac_get_digest_size(HMACobject *self, void *closure)
1753 unsigned int digest_size = _hmac_digest_size(self);
1761 _hashlib_hmac_get_block_size(HMACobject *self, void *closure)
1763 const EVP_MD *md = HMAC_CTX_get_md(self->ctx);
1771 _hashlib_hmac_get_name(HMACobject *self, void *closure)
1773 PyObject *digest_name = py_digest_name(HMAC_CTX_get_md(self->ctx));