diff options
author | Alex Gaynor <alex.gaynor@gmail.com> | 2014-01-10 22:05:01 -0800 |
---|---|---|
committer | Alex Gaynor <alex.gaynor@gmail.com> | 2014-01-10 22:05:01 -0800 |
commit | 2a8114ff02f7a9234b818e8e324068bdda54b456 (patch) | |
tree | c958a3bfe57cec8fafc34b403951abcf71d66166 | |
parent | 51d0794459e5476174f6cad58c4b88338945bb54 (diff) | |
parent | c54c762c93eb5bc23c36ccfe511344f2cd499364 (diff) | |
download | cryptography-2a8114ff02f7a9234b818e8e324068bdda54b456.tar.gz cryptography-2a8114ff02f7a9234b818e8e324068bdda54b456.tar.bz2 cryptography-2a8114ff02f7a9234b818e8e324068bdda54b456.zip |
Merge pull request #460 from reaperhulk/common-crypto-hmac-bindings
CommonCrypto HMAC (Bindings Only)
-rw-r--r-- | cryptography/hazmat/bindings/commoncrypto/binding.py | 1 | ||||
-rw-r--r-- | cryptography/hazmat/bindings/commoncrypto/common_hmac.py | 46 |
2 files changed, 47 insertions, 0 deletions
diff --git a/cryptography/hazmat/bindings/commoncrypto/binding.py b/cryptography/hazmat/bindings/commoncrypto/binding.py index e0cd61f7..9c1af40a 100644 --- a/cryptography/hazmat/bindings/commoncrypto/binding.py +++ b/cryptography/hazmat/bindings/commoncrypto/binding.py @@ -25,6 +25,7 @@ class Binding(object): _module_prefix = "cryptography.hazmat.bindings.commoncrypto." _modules = [ "common_digest", + "common_hmac", ] ffi = None diff --git a/cryptography/hazmat/bindings/commoncrypto/common_hmac.py b/cryptography/hazmat/bindings/commoncrypto/common_hmac.py new file mode 100644 index 00000000..a4bf9009 --- /dev/null +++ b/cryptography/hazmat/bindings/commoncrypto/common_hmac.py @@ -0,0 +1,46 @@ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +INCLUDES = """ +#include <CommonCrypto/CommonHMAC.h> +""" + +TYPES = """ +typedef struct { + ...; +} CCHmacContext; +enum { + kCCHmacAlgSHA1, + kCCHmacAlgMD5, + kCCHmacAlgSHA256, + kCCHmacAlgSHA384, + kCCHmacAlgSHA512, + kCCHmacAlgSHA224 +}; +typedef uint32_t CCHmacAlgorithm; +""" + +FUNCTIONS = """ +void CCHmacInit(CCHmacContext *, CCHmacAlgorithm, const void *, size_t); +void CCHmacUpdate(CCHmacContext *, const void *, size_t); +void CCHmacFinal(CCHmacContext *, void *); + +""" + +MACROS = """ +""" + +CUSTOMIZATIONS = """ +""" + +CONDITIONAL_NAMES = {} |