| |
| # |
| # Copyright 2018,2020 NXP |
| # SPDX-License-Identifier: Apache-2.0 |
| # |
| # |
| |
| |
| # Begin preamble |
| |
| import ctypes, os, sys |
| from ctypes import * |
| |
| _int_types = (c_int16, c_int32) |
| if hasattr(ctypes, 'c_int64'): |
| # Some builds of ctypes apparently do not have c_int64 |
| # defined; it's a pretty good bet that these builds do not |
| # have 64-bit pointers. |
| _int_types += (c_int64,) |
| for t in _int_types: |
| if sizeof(t) == sizeof(c_size_t): |
| c_ptrdiff_t = t |
| del t |
| del _int_types |
| |
| class c_void(Structure): |
| # c_void_p is a buggy return type, converting to int, so |
| # POINTER(None) == c_void_p is actually written as |
| # POINTER(c_void), so it can be treated as a real pointer. |
| _fields_ = [('dummy', c_int)] |
| |
| def POINTER(obj): |
| p = ctypes.POINTER(obj) |
| |
| # Convert None to a real NULL pointer to work around bugs |
| # in how ctypes handles None on 64-bit platforms |
| if not isinstance(p.from_param, classmethod): |
| def from_param(cls, x): |
| if x is None: |
| return cls() |
| else: |
| return x |
| p.from_param = classmethod(from_param) |
| |
| return p |
| |
| class UserString: |
| def __init__(self, seq): |
| if isinstance(seq, str): |
| self.data = seq |
| elif isinstance(seq, UserString): |
| self.data = seq.data[:] |
| else: |
| self.data = str(seq) |
| def __str__(self): return str(self.data) |
| def __repr__(self): return repr(self.data) |
| def __int__(self): return int(self.data) |
| def __long__(self): return int(self.data) |
| def __float__(self): return float(self.data) |
| def __complex__(self): return complex(self.data) |
| def __hash__(self): return hash(self.data) |
| |
| def __cmp__(self, string): |
| if isinstance(string, UserString): |
| return cmp(self.data, string.data) |
| else: |
| return cmp(self.data, string) |
| def __contains__(self, char): |
| return char in self.data |
| |
| def __len__(self): return len(self.data) |
| def __getitem__(self, index): return self.__class__(self.data[index]) |
| def __getslice__(self, start, end): |
| start = max(start, 0); end = max(end, 0) |
| return self.__class__(self.data[start:end]) |
| |
| def __add__(self, other): |
| if isinstance(other, UserString): |
| return self.__class__(self.data + other.data) |
| elif isinstance(other, str): |
| return self.__class__(self.data + other) |
| else: |
| return self.__class__(self.data + str(other)) |
| def __radd__(self, other): |
| if isinstance(other, str): |
| return self.__class__(other + self.data) |
| else: |
| return self.__class__(str(other) + self.data) |
| def __mul__(self, n): |
| return self.__class__(self.data*n) |
| __rmul__ = __mul__ |
| def __mod__(self, args): |
| return self.__class__(self.data % args) |
| |
| # the following methods are defined in alphabetical order: |
| def capitalize(self): return self.__class__(self.data.capitalize()) |
| def center(self, width, *args): |
| return self.__class__(self.data.center(width, *args)) |
| def count(self, sub, start=0, end=sys.maxsize): |
| return self.data.count(sub, start, end) |
| def decode(self, encoding=None, errors=None): # XXX improve this? |
| if encoding: |
| if errors: |
| return self.__class__(self.data.decode(encoding, errors)) |
| else: |
| return self.__class__(self.data.decode(encoding)) |
| else: |
| return self.__class__(self.data.decode()) |
| def encode(self, encoding=None, errors=None): # XXX improve this? |
| if encoding: |
| if errors: |
| return self.__class__(self.data.encode(encoding, errors)) |
| else: |
| return self.__class__(self.data.encode(encoding)) |
| else: |
| return self.__class__(self.data.encode()) |
| def endswith(self, suffix, start=0, end=sys.maxsize): |
| return self.data.endswith(suffix, start, end) |
| def expandtabs(self, tabsize=8): |
| return self.__class__(self.data.expandtabs(tabsize)) |
| def find(self, sub, start=0, end=sys.maxsize): |
| return self.data.find(sub, start, end) |
| def index(self, sub, start=0, end=sys.maxsize): |
| return self.data.index(sub, start, end) |
| def isalpha(self): return self.data.isalpha() |
| def isalnum(self): return self.data.isalnum() |
| def isdecimal(self): return self.data.isdecimal() |
| def isdigit(self): return self.data.isdigit() |
| def islower(self): return self.data.islower() |
| def isnumeric(self): return self.data.isnumeric() |
| def isspace(self): return self.data.isspace() |
| def istitle(self): return self.data.istitle() |
| def isupper(self): return self.data.isupper() |
| def join(self, seq): return self.data.join(seq) |
| def ljust(self, width, *args): |
| return self.__class__(self.data.ljust(width, *args)) |
| def lower(self): return self.__class__(self.data.lower()) |
| def lstrip(self, chars=None): return self.__class__(self.data.lstrip(chars)) |
| def partition(self, sep): |
| return self.data.partition(sep) |
| def replace(self, old, new, maxsplit=-1): |
| return self.__class__(self.data.replace(old, new, maxsplit)) |
| def rfind(self, sub, start=0, end=sys.maxsize): |
| return self.data.rfind(sub, start, end) |
| def rindex(self, sub, start=0, end=sys.maxsize): |
| return self.data.rindex(sub, start, end) |
| def rjust(self, width, *args): |
| return self.__class__(self.data.rjust(width, *args)) |
| def rpartition(self, sep): |
| return self.data.rpartition(sep) |
| def rstrip(self, chars=None): return self.__class__(self.data.rstrip(chars)) |
| def split(self, sep=None, maxsplit=-1): |
| return self.data.split(sep, maxsplit) |
| def rsplit(self, sep=None, maxsplit=-1): |
| return self.data.rsplit(sep, maxsplit) |
| def splitlines(self, keepends=0): return self.data.splitlines(keepends) |
| def startswith(self, prefix, start=0, end=sys.maxsize): |
| return self.data.startswith(prefix, start, end) |
| def strip(self, chars=None): return self.__class__(self.data.strip(chars)) |
| def swapcase(self): return self.__class__(self.data.swapcase()) |
| def title(self): return self.__class__(self.data.title()) |
| def translate(self, *args): |
| return self.__class__(self.data.translate(*args)) |
| def upper(self): return self.__class__(self.data.upper()) |
| def zfill(self, width): return self.__class__(self.data.zfill(width)) |
| |
| class MutableString(UserString): |
| """mutable string objects |
| |
| Python strings are immutable objects. This has the advantage, that |
| strings may be used as dictionary keys. If this property isn't needed |
| and you insist on changing string values in place instead, you may cheat |
| and use MutableString. |
| |
| But the purpose of this class is an educational one: to prevent |
| people from inventing their own mutable string class derived |
| from UserString and than forget thereby to remove (override) the |
| __hash__ method inherited from UserString. This would lead to |
| errors that would be very hard to track down. |
| |
| A faster and better solution is to rewrite your program using lists.""" |
| def __init__(self, string=""): |
| self.data = string |
| def __hash__(self): |
| raise TypeError("unhashable type (it is mutable)") |
| def __setitem__(self, index, sub): |
| if index < 0: |
| index += len(self.data) |
| if index < 0 or index >= len(self.data): raise IndexError |
| self.data = self.data[:index] + sub + self.data[index+1:] |
| def __delitem__(self, index): |
| if index < 0: |
| index += len(self.data) |
| if index < 0 or index >= len(self.data): raise IndexError |
| self.data = self.data[:index] + self.data[index+1:] |
| def __setslice__(self, start, end, sub): |
| start = max(start, 0); end = max(end, 0) |
| if isinstance(sub, UserString): |
| self.data = self.data[:start]+sub.data+self.data[end:] |
| elif isinstance(sub, str): |
| self.data = self.data[:start]+sub+self.data[end:] |
| else: |
| self.data = self.data[:start]+str(sub)+self.data[end:] |
| def __delslice__(self, start, end): |
| start = max(start, 0); end = max(end, 0) |
| self.data = self.data[:start] + self.data[end:] |
| def immutable(self): |
| return UserString(self.data) |
| def __iadd__(self, other): |
| if isinstance(other, UserString): |
| self.data += other.data |
| elif isinstance(other, str): |
| self.data += other |
| else: |
| self.data += str(other) |
| return self |
| def __imul__(self, n): |
| self.data *= n |
| return self |
| |
| class String(MutableString, Union): |
| |
| _fields_ = [('raw', POINTER(c_char)), |
| ('data', c_char_p)] |
| |
| def __init__(self, obj=""): |
| if isinstance(obj, (str, UserString)): |
| self.data = str(obj) |
| else: |
| self.raw = obj |
| |
| def __len__(self): |
| return self.data and len(self.data) or 0 |
| |
| def from_param(cls, obj): |
| # Convert None or 0 |
| if obj is None or obj == 0: |
| return cls(POINTER(c_char)()) |
| |
| # Convert from String |
| elif isinstance(obj, String): |
| return obj |
| |
| # Convert from str |
| elif isinstance(obj, str): |
| return cls(obj) |
| |
| # Convert from c_char_p |
| elif isinstance(obj, c_char_p): |
| return obj |
| |
| # Convert from POINTER(c_char) |
| elif isinstance(obj, POINTER(c_char)): |
| return obj |
| |
| # Convert from raw pointer |
| elif isinstance(obj, int): |
| return cls(cast(obj, POINTER(c_char))) |
| |
| # Convert from object |
| else: |
| return String.from_param(obj._as_parameter_) |
| from_param = classmethod(from_param) |
| |
| def ReturnString(obj, func=None, arguments=None): |
| return String.from_param(obj) |
| |
| # As of ctypes 1.0, ctypes does not support custom error-checking |
| # functions on callbacks, nor does it support custom datatypes on |
| # callbacks, so we must ensure that all callbacks return |
| # primitive datatypes. |
| # |
| # Non-primitive return values wrapped with UNCHECKED won't be |
| # typechecked, and will be converted to c_void_p. |
| def UNCHECKED(type): |
| if (hasattr(type, "_type_") and isinstance(type._type_, str) |
| and type._type_ != "P"): |
| return type |
| else: |
| return c_void_p |
| |
| # ctypes doesn't have direct support for variadic functions, so we have to write |
| # our own wrapper class |
| class _variadic_function(object): |
| def __init__(self,func,restype,argtypes): |
| self.func=func |
| self.func.restype=restype |
| self.argtypes=argtypes |
| def _as_parameter_(self): |
| # So we can pass this variadic function as a function pointer |
| return self.func |
| def __call__(self,*args): |
| fixed_args=[] |
| i=0 |
| for argtype in self.argtypes: |
| # Typecheck what we can |
| fixed_args.append(argtype.from_param(args[i])) |
| i+=1 |
| return self.func(*fixed_args+list(args[i:])) |
| |
| # End preamble |
| |
| _libs = {} |
| _libdirs = ['/usr/local/lib'] |
| |
| # Begin loader |
| |
| # ---------------------------------------------------------------------------- |
| # Copyright (c) 2008 David James |
| # Copyright (c) 2006-2008 Alex Holkner |
| # |
| # Redistribution and use in source and binary forms, with or without |
| # modification, are permitted provided that the following conditions |
| # are met: |
| # |
| # * Redistributions of source code must retain the above copyright |
| # notice, this list of conditions and the following disclaimer. |
| # * Redistributions in binary form must reproduce the above copyright |
| # notice, this list of conditions and the following disclaimer in |
| # the documentation and/or other materials provided with the |
| # distribution. |
| # * Neither the name of pyglet nor the names of its |
| # contributors may be used to endorse or promote products |
| # derived from this software without specific prior written |
| # permission. |
| # |
| # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
| # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
| # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS |
| # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE |
| # COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, |
| # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, |
| # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; |
| # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER |
| # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT |
| # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN |
| # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
| # POSSIBILITY OF SUCH DAMAGE. |
| # ---------------------------------------------------------------------------- |
| |
| import os.path, re, sys, glob |
| import platform |
| import ctypes |
| import logging |
| import ctypes.util |
| log = logging.getLogger(__name__) |
| |
| def _environ_path(name): |
| if name in os.environ: |
| return os.environ[name].split(":") |
| else: |
| return [] |
| |
| class LibraryLoader(object): |
| def __init__(self): |
| self.other_dirs=[] |
| |
| def load_library(self,libname): |
| """Given the name of a library, load it.""" |
| paths = self.getpaths(libname) |
| |
| for path in paths: |
| if os.path.exists(path): |
| log.debug("loading library from path: %s" % path) |
| return self.load(path) |
| |
| raise ImportError("%s not found." % libname) |
| |
| def load(self,path): |
| """Given a path to a library, load it.""" |
| try: |
| # Darwin requires dlopen to be called with mode RTLD_GLOBAL instead |
| # of the default RTLD_LOCAL. Without this, you end up with |
| # libraries not being loadable, resulting in "Symbol not found" |
| # errors |
| if sys.platform == 'darwin': |
| return ctypes.CDLL(path, ctypes.RTLD_GLOBAL) |
| else: |
| return ctypes.cdll.LoadLibrary(path) |
| except OSError as e: |
| raise ImportError(e) |
| |
| def getpaths(self,libname): |
| """Return a list of paths where the library might be found.""" |
| if os.path.isabs(libname): |
| yield libname |
| else: |
| # FIXME / TODO return '.' and os.path.dirname(__file__) |
| for path in self.getplatformpaths(libname): |
| yield path |
| |
| path = ctypes.util.find_library(libname) |
| if path: yield path |
| |
| def getplatformpaths(self, libname): |
| return [] |
| |
| # Darwin (Mac OS X) |
| |
| class DarwinLibraryLoader(LibraryLoader): |
| name_formats = ["lib%s.dylib", "lib%s.so", "lib%s.bundle", "%s.dylib", |
| "%s.so", "%s.bundle", "%s"] |
| |
| def getplatformpaths(self,libname): |
| if os.path.pathsep in libname: |
| names = [libname] |
| else: |
| names = [format % libname for format in self.name_formats] |
| |
| for dir in self.getdirs(libname): |
| for name in names: |
| yield os.path.join(dir,name) |
| |
| def getdirs(self,libname): |
| '''Implements the dylib search as specified in Apple documentation: |
| |
| http://developer.apple.com/documentation/DeveloperTools/Conceptual/ |
| DynamicLibraries/Articles/DynamicLibraryUsageGuidelines.html |
| |
| Before commencing the standard search, the method first checks |
| the bundle's ``Frameworks`` directory if the application is running |
| within a bundle (OS X .app). |
| ''' |
| |
| dyld_fallback_library_path = _environ_path("DYLD_FALLBACK_LIBRARY_PATH") |
| if not dyld_fallback_library_path: |
| dyld_fallback_library_path = [os.path.expanduser('~/lib'), |
| '/usr/local/lib', '/usr/lib'] |
| |
| dirs = [] |
| |
| if '/' in libname: |
| dirs.extend(_environ_path("DYLD_LIBRARY_PATH")) |
| else: |
| dirs.extend(_environ_path("LD_LIBRARY_PATH")) |
| dirs.extend(_environ_path("DYLD_LIBRARY_PATH")) |
| |
| dirs.extend(self.other_dirs) |
| dirs.append(".") |
| dirs.append(os.path.dirname(__file__)) |
| |
| if hasattr(sys, 'frozen') and sys.frozen == 'macosx_app': |
| dirs.append(os.path.join( |
| os.environ['RESOURCEPATH'], |
| '..', |
| 'Frameworks')) |
| |
| dirs.extend(dyld_fallback_library_path) |
| |
| return dirs |
| |
| # Posix |
| |
| class PosixLibraryLoader(LibraryLoader): |
| _ld_so_cache = None |
| |
| def _create_ld_so_cache(self): |
| # Recreate search path followed by ld.so. This is going to be |
| # slow to build, and incorrect (ld.so uses ld.so.cache, which may |
| # not be up-to-date). Used only as fallback for distros without |
| # /sbin/ldconfig. |
| # |
| # We assume the DT_RPATH and DT_RUNPATH binary sections are omitted. |
| |
| directories = [] |
| for name in ("LD_LIBRARY_PATH", |
| "SHLIB_PATH", # HPUX |
| "LIBPATH", # OS/2, AIX |
| "LIBRARY_PATH", # BE/OS |
| ): |
| if name in os.environ: |
| directories.extend(os.environ[name].split(os.pathsep)) |
| directories.extend("/usr/local/lib") |
| directories.extend(self.other_dirs) |
| directories.append(".") |
| directories.append(os.path.dirname(__file__)) |
| |
| try: directories.extend([dir.strip() for dir in open('/etc/ld.so.conf')]) |
| except IOError: pass |
| |
| unix_lib_dirs_list = ['/lib', '/usr/lib', '/lib64', '/usr/lib64'] |
| if sys.platform.startswith('linux'): |
| # Try and support multiarch work in Ubuntu |
| # https://wiki.ubuntu.com/MultiarchSpec |
| bitage = platform.architecture()[0] |
| if bitage.startswith('32'): |
| # Assume Intel/AMD x86 compat |
| unix_lib_dirs_list += ['/lib/i386-linux-gnu', '/usr/lib/i386-linux-gnu'] |
| elif bitage.startswith('64'): |
| # Assume Intel/AMD x86 compat |
| unix_lib_dirs_list += ['/lib/x86_64-linux-gnu', '/usr/lib/x86_64-linux-gnu'] |
| else: |
| # guess... |
| unix_lib_dirs_list += glob.glob('/lib/*linux-gnu') |
| directories.extend(unix_lib_dirs_list) |
| |
| cache = {} |
| lib_re = re.compile(r'lib(.*)\.s[ol]') |
| ext_re = re.compile(r'\.s[ol]$') |
| for dir in directories: |
| try: |
| for path in glob.glob("%s/*.s[ol]*" % dir): |
| file = os.path.basename(path) |
| |
| # Index by filename |
| if file not in cache: |
| cache[file] = path |
| |
| # Index by library name |
| match = lib_re.match(file) |
| if match: |
| library = match.group(1) |
| if library not in cache: |
| cache[library] = path |
| except OSError: |
| pass |
| |
| self._ld_so_cache = cache |
| |
| def getplatformpaths(self, libname): |
| if self._ld_so_cache is None: |
| self._create_ld_so_cache() |
| |
| result = self._ld_so_cache.get(libname) |
| if result: yield result |
| |
| path = ctypes.util.find_library(libname) |
| if path: yield os.path.join("/lib",path) |
| |
| # Windows |
| |
| class _WindowsLibrary(object): |
| def __init__(self, path): |
| self.cdll = ctypes.cdll.LoadLibrary(path) |
| self.windll = ctypes.windll.LoadLibrary(path) |
| |
| def __getattr__(self, name): |
| try: return getattr(self.cdll,name) |
| except AttributeError: |
| try: return getattr(self.windll,name) |
| except AttributeError: |
| raise |
| |
| class WindowsLibraryLoader(LibraryLoader): |
| name_formats = ["%s.dll", "lib%s.dll", "%slib.dll"] |
| |
| def load_library(self, libname): |
| try: |
| result = LibraryLoader.load_library(self, libname) |
| except ImportError: |
| result = None |
| if os.path.sep not in libname: |
| for name in self.name_formats: |
| try: |
| result = getattr(ctypes.cdll, name % libname) |
| if result: |
| break |
| except OSError: |
| result = None |
| if result is None: |
| try: |
| result = getattr(ctypes.cdll, libname) |
| except OSError: |
| result = None |
| if result is None: |
| raise ImportError("%s not found." % libname) |
| return result |
| |
| def load(self, path): |
| return _WindowsLibrary(path) |
| |
| def getplatformpaths(self, libname): |
| if os.path.sep not in libname: |
| for name in self.name_formats: |
| dll_in_current_dir = os.path.abspath(name % libname) |
| if os.path.exists(dll_in_current_dir): |
| yield dll_in_current_dir |
| path = ctypes.util.find_library(name % libname) |
| if path: |
| yield path |
| |
| # Platform switching |
| |
| # If your value of sys.platform does not appear in this dict, please contact |
| # the Ctypesgen maintainers. |
| |
| loaderclass = { |
| "darwin": DarwinLibraryLoader, |
| "cygwin": WindowsLibraryLoader, |
| "win32": WindowsLibraryLoader |
| } |
| |
| loader = loaderclass.get(sys.platform, PosixLibraryLoader)() |
| |
| def add_library_search_dirs(other_dirs): |
| loader.other_dirs = other_dirs |
| |
| load_library = loader.load_library |
| |
| del loaderclass |
| |
| # End loader |
| |
| add_library_search_dirs(['/usr/local/lib']) |
| |
| # Begin libraries |
| |
| _libs["sssapisw"] = load_library("sssapisw") |
| |
| # 1 libraries |
| # End libraries |
| |
| # No modules |
| |
| U8 = c_uint8# ../../hostlib/hostLib/libCommon/infra/sm_types.h |
| |
| U16 = c_uint16 |
| U32 = c_uint32 |
| enum_anon_6 = c_int # ../../sss/inc/fsl_sss_policy.h |
| |
| KPolicy_None = 0 |
| |
| KPolicy_Session = (KPolicy_None + 1) |
| |
| KPolicy_Sym_Key = (KPolicy_Session + 1) |
| |
| KPolicy_Asym_Key = (KPolicy_Sym_Key + 1) |
| |
| KPolicy_UserID = (KPolicy_Asym_Key + 1) |
| |
| KPolicy_File = (KPolicy_UserID + 1) |
| |
| KPolicy_Counter = (KPolicy_File + 1) |
| |
| KPolicy_PCR = (KPolicy_Counter + 1) |
| |
| KPolicy_Common = (KPolicy_PCR + 1) |
| |
| KPolicy_Common_PCR_Value = (KPolicy_Common + 1) |
| |
| sss_policy_type_u = enum_anon_6 |
| class struct_anon_7(Structure): |
| pass |
| |
| |
| struct_anon_7.__slots__ = [ |
| 'maxOperationsInSession', |
| 'maxDurationOfSession_sec', |
| 'has_MaxOperationsInSession', |
| 'has_MaxDurationOfSession_sec', |
| 'allowRefresh', |
| ] |
| struct_anon_7._fields_ = [ |
| ('maxOperationsInSession', c_uint16), |
| ('maxDurationOfSession_sec', c_uint16), |
| ('has_MaxOperationsInSession', c_uint8, 1), |
| ('has_MaxDurationOfSession_sec', c_uint8, 1), |
| ('allowRefresh', c_uint8, 1), |
| ] |
| |
| sss_policy_session_u = struct_anon_7 |
| class struct_anon_8(Structure): |
| pass |
| |
| |
| struct_anon_8.__slots__ = [ |
| 'can_Sign', |
| 'can_Verify', |
| 'can_Encrypt', |
| 'can_Decrypt', |
| 'can_KD', |
| 'can_Wrap', |
| 'can_Write', |
| 'can_Gen', |
| 'can_Desfire_Auth', |
| 'can_Desfire_Dump', |
| 'can_Import_Export', |
| 'forbid_Derived_Output', |
| 'allow_kdf_ext_rnd', |
| ] |
| struct_anon_8._fields_ = [ |
| ('can_Sign', c_uint8, 1), |
| ('can_Verify', c_uint8, 1), |
| ('can_Encrypt', c_uint8, 1), |
| ('can_Decrypt', c_uint8, 1), |
| ('can_KD', c_uint8, 1), |
| ('can_Wrap', c_uint8, 1), |
| ('can_Write', c_uint8, 1), |
| ('can_Gen', c_uint8, 1), |
| ('can_Desfire_Auth', c_uint8, 1), |
| ('can_Desfire_Dump', c_uint8, 1), |
| ('can_Import_Export', c_uint8, 1), |
| ('forbid_Derived_Output', c_uint8, 1), |
| ('allow_kdf_ext_rnd', c_uint8, 1), |
| ] |
| |
| sss_policy_sym_key_u = struct_anon_8 |
| class struct_anon_9(Structure): |
| pass |
| |
| |
| struct_anon_9.__slots__ = [ |
| 'can_Sign', |
| 'can_Verify', |
| 'can_Encrypt', |
| 'can_Decrypt', |
| 'can_KD', |
| 'can_Wrap', |
| 'can_Write', |
| 'can_Gen', |
| 'can_Import_Export', |
| 'can_KA', |
| 'can_Read', |
| 'can_Attest', |
| 'forbid_Derived_Output', |
| ] |
| struct_anon_9._fields_ = [ |
| ('can_Sign', c_uint8, 1), |
| ('can_Verify', c_uint8, 1), |
| ('can_Encrypt', c_uint8, 1), |
| ('can_Decrypt', c_uint8, 1), |
| ('can_KD', c_uint8, 1), |
| ('can_Wrap', c_uint8, 1), |
| ('can_Write', c_uint8, 1), |
| ('can_Gen', c_uint8, 1), |
| ('can_Import_Export', c_uint8, 1), |
| ('can_KA', c_uint8, 1), |
| ('can_Read', c_uint8, 1), |
| ('can_Attest', c_uint8, 1), |
| ('forbid_Derived_Output', c_uint8, 1), |
| ] |
| |
| sss_policy_asym_key_u = struct_anon_9 |
| class struct_anon_10(Structure): |
| pass |
| |
| |
| struct_anon_10.__slots__ = [ |
| 'can_Write', |
| 'can_Read', |
| ] |
| struct_anon_10._fields_ = [ |
| ('can_Write', c_uint8, 1), |
| ('can_Read', c_uint8, 1), |
| ] |
| |
| sss_policy_file_u = struct_anon_10 |
| class struct_anon_11(Structure): |
| pass |
| |
| |
| struct_anon_11.__slots__ = [ |
| 'can_Write', |
| 'can_Read', |
| ] |
| struct_anon_11._fields_ = [ |
| ('can_Write', c_uint8, 1), |
| ('can_Read', c_uint8, 1), |
| ] |
| |
| sss_policy_counter_u = struct_anon_11 |
| class struct_anon_12(Structure): |
| pass |
| |
| |
| struct_anon_12.__slots__ = [ |
| 'can_Write', |
| 'can_Read', |
| ] |
| struct_anon_12._fields_ = [ |
| ('can_Write', c_uint8, 1), |
| ('can_Read', c_uint8, 1), |
| ] |
| |
| sss_policy_pcr_u = struct_anon_12 |
| class struct_anon_13(Structure): |
| pass |
| |
| |
| struct_anon_13.__slots__ = [ |
| 'can_Write', |
| ] |
| struct_anon_13._fields_ = [ |
| ('can_Write', c_uint8, 1), |
| ] |
| |
| sss_policy_userid_u = struct_anon_13 |
| class struct_anon_14(Structure): |
| pass |
| |
| |
| struct_anon_14.__slots__ = [ |
| 'forbid_All', |
| 'can_Delete', |
| 'req_Sm', |
| ] |
| struct_anon_14._fields_ = [ |
| ('forbid_All', c_uint8, 1), |
| ('can_Delete', c_uint8, 1), |
| ('req_Sm', c_uint8, 1), |
| ] |
| |
| sss_policy_common_u = struct_anon_14 |
| class struct_anon_15(Structure): |
| pass |
| |
| |
| struct_anon_15.__slots__ = [ |
| 'pcrObjId', |
| 'pcrExpectedValue', |
| ] |
| struct_anon_15._fields_ = [ |
| ('pcrObjId', c_uint32), |
| ('pcrExpectedValue', c_uint8 * 32), |
| ] |
| |
| sss_policy_common_pcr_value_u = struct_anon_15 |
| class union_anon_16(Union): |
| pass |
| |
| |
| union_anon_16.__slots__ = [ |
| 'file', |
| 'counter', |
| 'pcr', |
| 'symmkey', |
| 'asymmkey', |
| 'pin', |
| 'common', |
| 'common_pcr_value', |
| 'session', |
| ] |
| union_anon_16._fields_ = [ |
| ('file', sss_policy_file_u), |
| ('counter', sss_policy_counter_u), |
| ('pcr', sss_policy_pcr_u), |
| ('symmkey', sss_policy_sym_key_u), |
| ('asymmkey', sss_policy_asym_key_u), |
| ('pin', sss_policy_userid_u), |
| ('common', sss_policy_common_u), |
| ('common_pcr_value', sss_policy_common_pcr_value_u), |
| ('session', sss_policy_session_u), |
| ] |
| |
| class struct_anon_17(Structure): |
| pass |
| |
| |
| struct_anon_17.__slots__ = [ |
| 'type', |
| 'auth_obj_id', |
| 'policy', |
| ] |
| struct_anon_17._fields_ = [ |
| ('type', sss_policy_type_u), |
| ('auth_obj_id', c_uint32), |
| ('policy', union_anon_16), |
| ] |
| |
| sss_policy_u = struct_anon_17 |
| class struct_anon_18(Structure): |
| pass |
| |
| |
| struct_anon_18.__slots__ = [ |
| 'policies', |
| 'nPolicies', |
| ] |
| struct_anon_18._fields_ = [ |
| ('policies', POINTER(sss_policy_u) * 10), |
| ('nPolicies', c_size_t), |
| ] |
| |
| sss_policy_t = struct_anon_18 |
| enum_anon_19 = c_int # ../../sss/inc/fsl_sss_api.h |
| |
| kStatus_SSS_Success = 1515870810 |
| |
| kStatus_SSS_Fail = 1010565120 |
| |
| kStatus_SSS_InvalidArgument = 1010565121 |
| |
| kStatus_SSS_ResourceBusy = 1010565122 |
| |
| sss_status_t = enum_anon_19 |
| enum_anon_20 = c_int |
| kType_SSS_SubSystem_NONE = 0 |
| |
| kType_SSS_Software = ((1 << 8) | 0) |
| |
| kType_SSS_mbedTLS = (kType_SSS_Software | 1) |
| |
| kType_SSS_OpenSSL = (kType_SSS_Software | 2) |
| |
| kType_SSS_HW = ((2 << 8) | 0) |
| |
| kType_SSS_SECO = (kType_SSS_HW | 1) |
| |
| kType_SSS_Isolated_HW = ((4 << 8) | 0) |
| |
| kType_SSS_Sentinel = (kType_SSS_Isolated_HW | 1) |
| |
| kType_SSS_Sentinel200 = (kType_SSS_Isolated_HW | 2) |
| |
| kType_SSS_Sentinel300 = (kType_SSS_Isolated_HW | 3) |
| |
| kType_SSS_Sentinel400 = (kType_SSS_Isolated_HW | 4) |
| |
| kType_SSS_Sentinel500 = (kType_SSS_Isolated_HW | 5) |
| |
| kType_SSS_SecureElement = ((8 << 8) | 0) |
| |
| kType_SSS_SE_A71CH = (kType_SSS_SecureElement | 1) |
| |
| kType_SSS_SE_A71CL = (kType_SSS_SecureElement | 2) |
| |
| kType_SSS_SE_SE05x = (kType_SSS_SecureElement | 3) |
| |
| kType_SSS_SubSystem_LAST = (kType_SSS_SE_SE05x + 1) |
| |
| sss_type_t = enum_anon_20 |
| enum_anon_21 = c_int |
| kSSS_ConnectionType_Plain = 0 |
| |
| kSSS_ConnectionType_Password = (kSSS_ConnectionType_Plain + 1) |
| |
| kSSS_ConnectionType_Encrypted = (kSSS_ConnectionType_Password + 1) |
| |
| sss_connection_type_t = enum_anon_21 |
| enum_anon_22 = c_int |
| kAlgorithm_None = 0 |
| |
| kAlgorithm_SSS_AES_ECB = ((0 << 8) | 1) |
| |
| kAlgorithm_SSS_AES_CBC = ((0 << 8) | 2) |
| |
| kAlgorithm_SSS_AES_CTR = ((0 << 8) | 3) |
| |
| kAlgorithm_SSS_AES_GCM = ((0 << 8) | 4) |
| |
| kAlgorithm_SSS_AES_CCM = ((0 << 8) | 5) |
| |
| kAlgorithm_SSS_AES_GCM_INT_IV = ((0 << 8) | 6) |
| |
| kAlgorithm_SSS_CHACHA_POLY = ((1 << 8) | 1) |
| |
| kAlgorithm_SSS_DES_ECB = ((2 << 8) | 1) |
| |
| kAlgorithm_SSS_DES_CBC = ((2 << 8) | 2) |
| |
| kAlgorithm_SSS_DES3_ECB = ((2 << 8) | 3) |
| |
| kAlgorithm_SSS_DES3_CBC = ((2 << 8) | 4) |
| |
| kAlgorithm_SSS_SHA1 = ((3 << 8) | 1) |
| |
| kAlgorithm_SSS_SHA224 = ((3 << 8) | 2) |
| |
| kAlgorithm_SSS_SHA256 = ((3 << 8) | 3) |
| |
| kAlgorithm_SSS_SHA384 = ((3 << 8) | 4) |
| |
| kAlgorithm_SSS_SHA512 = ((3 << 8) | 5) |
| |
| kAlgorithm_SSS_CMAC_AES = ((4 << 8) | 1) |
| |
| kAlgorithm_SSS_HMAC_SHA1 = ((4 << 8) | 2) |
| |
| kAlgorithm_SSS_HMAC_SHA224 = ((4 << 8) | 3) |
| |
| kAlgorithm_SSS_HMAC_SHA256 = ((4 << 8) | 4) |
| |
| kAlgorithm_SSS_HMAC_SHA384 = ((4 << 8) | 5) |
| |
| kAlgorithm_SSS_HMAC_SHA512 = ((4 << 8) | 6) |
| |
| kAlgorithm_SSS_DH = ((5 << 8) | 1) |
| |
| kAlgorithm_SSS_ECDH = ((5 << 8) | 2) |
| |
| kAlgorithm_SSS_DSA_SHA1 = ((6 << 8) | 1) |
| |
| kAlgorithm_SSS_DSA_SHA224 = ((6 << 8) | 2) |
| |
| kAlgorithm_SSS_DSA_SHA256 = ((6 << 8) | 3) |
| |
| kAlgorithm_SSS_RSASSA_PKCS1_V1_5_NO_HASH = ((7 << 8) | 1) |
| |
| kAlgorithm_SSS_RSASSA_PKCS1_V1_5_SHA1 = ((7 << 8) | 2) |
| |
| kAlgorithm_SSS_RSASSA_PKCS1_V1_5_SHA224 = ((7 << 8) | 3) |
| |
| kAlgorithm_SSS_RSASSA_PKCS1_V1_5_SHA256 = ((7 << 8) | 4) |
| |
| kAlgorithm_SSS_RSASSA_PKCS1_V1_5_SHA384 = ((7 << 8) | 5) |
| |
| kAlgorithm_SSS_RSASSA_PKCS1_V1_5_SHA512 = ((7 << 8) | 6) |
| |
| kAlgorithm_SSS_RSASSA_PKCS1_PSS_MGF1_SHA1 = ((8 << 8) | 1) |
| |
| kAlgorithm_SSS_RSASSA_PKCS1_PSS_MGF1_SHA224 = ((8 << 8) | 2) |
| |
| kAlgorithm_SSS_RSASSA_PKCS1_PSS_MGF1_SHA256 = ((8 << 8) | 3) |
| |
| kAlgorithm_SSS_RSASSA_PKCS1_PSS_MGF1_SHA384 = ((8 << 8) | 4) |
| |
| kAlgorithm_SSS_RSASSA_PKCS1_PSS_MGF1_SHA512 = ((8 << 8) | 5) |
| |
| kAlgorithm_SSS_RSAES_PKCS1_OAEP_SHA1 = ((9 << 8) | 1) |
| |
| kAlgorithm_SSS_RSAES_PKCS1_OAEP_SHA224 = ((9 << 8) | 2) |
| |
| kAlgorithm_SSS_RSAES_PKCS1_OAEP_SHA256 = ((9 << 8) | 3) |
| |
| kAlgorithm_SSS_RSAES_PKCS1_OAEP_SHA384 = ((9 << 8) | 4) |
| |
| kAlgorithm_SSS_RSAES_PKCS1_OAEP_SHA512 = ((9 << 8) | 5) |
| |
| kAlgorithm_SSS_RSAES_PKCS1_V1_5 = ((10 << 8) | 1) |
| |
| kAlgorithm_SSS_RSASSA_NO_PADDING = ((11 << 8) | 1) |
| |
| kAlgorithm_SSS_ECDSA_SHA1 = ((12 << 8) | 1) |
| |
| kAlgorithm_SSS_ECDSA_SHA224 = ((12 << 8) | 2) |
| |
| kAlgorithm_SSS_ECDSA_SHA256 = ((12 << 8) | 3) |
| |
| kAlgorithm_SSS_ECDSA_SHA384 = ((12 << 8) | 4) |
| |
| kAlgorithm_SSS_ECDSA_SHA512 = ((12 << 8) | 5) |
| |
| kAlgorithm_SSS_ECDAA = ((13 << 8) | 1) |
| |
| sss_algorithm_t = enum_anon_22 |
| enum_anon_23 = c_int |
| kMode_SSS_Encrypt = 1 |
| |
| kMode_SSS_Decrypt = 2 |
| |
| kMode_SSS_Sign = 3 |
| |
| kMode_SSS_Verify = 4 |
| |
| kMode_SSS_ComputeSharedSecret = 5 |
| |
| kMode_SSS_Digest = 6 |
| |
| kMode_SSS_Mac = 7 |
| |
| kMode_SSS_HKDF_ExpandOnly = 9 |
| |
| sss_mode_t = enum_anon_23 |
| enum_anon_24 = c_int |
| kAccessPermission_SSS_Read = (1 << 0) |
| |
| kAccessPermission_SSS_Write = (1 << 1) |
| |
| kAccessPermission_SSS_Use = (1 << 2) |
| |
| kAccessPermission_SSS_Delete = (1 << 3) |
| |
| kAccessPermission_SSS_ChangeAttributes = (1 << 4) |
| |
| sss_access_permission_t = enum_anon_24 |
| enum_anon_25 = c_int |
| kKeyObject_Mode_None = 0 |
| |
| kKeyObject_Mode_Persistent = 1 |
| |
| kKeyObject_Mode_Transient = 2 |
| |
| sss_key_object_mode_t = enum_anon_25 |
| enum_anon_26 = c_int |
| kSSS_KeyPart_NONE = 0 |
| |
| kSSS_KeyPart_Default = 1 |
| |
| kSSS_KeyPart_Public = 2 |
| |
| kSSS_KeyPart_Private = 3 |
| |
| kSSS_KeyPart_Pair = 4 |
| |
| sss_key_part_t = enum_anon_26 |
| enum_anon_27 = c_int |
| kSSS_CipherType_NONE = 0 |
| |
| kSSS_CipherType_AES = 10 |
| |
| kSSS_CipherType_DES = 12 |
| |
| kSSS_CipherType_CMAC = 20 |
| |
| kSSS_CipherType_HMAC = 21 |
| |
| kSSS_CipherType_MAC = 30 |
| |
| kSSS_CipherType_RSA = 31 |
| |
| kSSS_CipherType_RSA_CRT = 32 |
| |
| kSSS_CipherType_EC_NIST_P = 40 |
| |
| kSSS_CipherType_EC_NIST_K = 41 |
| |
| kSSS_CipherType_EC_MONTGOMERY = 50 |
| |
| kSSS_CipherType_EC_TWISTED_ED = 51 |
| |
| kSSS_CipherType_EC_BRAINPOOL = 52 |
| |
| kSSS_CipherType_EC_BARRETO_NAEHRIG = 53 |
| |
| kSSS_CipherType_UserID = 70 |
| |
| kSSS_CipherType_Certificate = 71 |
| |
| kSSS_CipherType_Binary = 72 |
| |
| kSSS_CipherType_Count = 73 |
| |
| kSSS_CipherType_PCR = 74 |
| |
| kSSS_CipherType_ReservedPin = 75 |
| |
| sss_cipher_type_t = enum_anon_27 |
| class struct_anon_28(Structure): |
| pass |
| |
| |
| struct_anon_28.__slots__ = [ |
| 'X', |
| 'Y', |
| ] |
| struct_anon_28._fields_ = [ |
| ('X', POINTER(c_uint8)), |
| ('Y', POINTER(c_uint8)), |
| ] |
| |
| sss_ecc_point_t = struct_anon_28 |
| class struct_anon_29(Structure): |
| pass |
| |
| |
| struct_anon_29.__slots__ = [ |
| 'p', |
| 'a', |
| 'b', |
| 'G', |
| 'n', |
| 'h', |
| ] |
| struct_anon_29._fields_ = [ |
| ('p', POINTER(c_uint8)), |
| ('a', POINTER(c_uint8)), |
| ('b', POINTER(c_uint8)), |
| ('G', POINTER(sss_ecc_point_t)), |
| ('n', POINTER(c_uint8)), |
| ('h', POINTER(c_uint8)), |
| ] |
| |
| sss_eccgfp_group_t = struct_anon_29 |
| enum_anon_30 = c_int |
| kSSS_SessionProp_u32_NA = 0 |
| |
| kSSS_SessionProp_VerMaj = (kSSS_SessionProp_u32_NA + 1) |
| |
| kSSS_SessionProp_VerMin = (kSSS_SessionProp_VerMaj + 1) |
| |
| kSSS_SessionProp_VerDev = (kSSS_SessionProp_VerMin + 1) |
| |
| kSSS_SessionProp_UIDLen = (kSSS_SessionProp_VerDev + 1) |
| |
| kSSS_SessionProp_u32_Optional_Start = 16777215 |
| |
| kSSS_KeyStoreProp_FreeMem_Persistant = (kSSS_SessionProp_u32_Optional_Start + 1) |
| |
| kSSS_KeyStoreProp_FreeMem_Transient = (kSSS_KeyStoreProp_FreeMem_Persistant + 1) |
| |
| kSSS_SessionProp_u32_Proprietary_Start = 33554431 |
| |
| sss_session_prop_u32_t = enum_anon_30 |
| enum_anon_31 = c_int |
| kSSS_SessionProp_au8_NA = 0 |
| |
| kSSS_SessionProp_szName = (kSSS_SessionProp_au8_NA + 1) |
| |
| kSSS_SessionProp_UID = (kSSS_SessionProp_szName + 1) |
| |
| kSSS_SessionProp_au8_Optional_Start = 16777215 |
| |
| kSSS_SessionProp_au8_Proprietary_Start = 33554431 |
| |
| sss_session_prop_au8_t = enum_anon_31 |
| class struct_anon_32(Structure): |
| pass |
| |
| |
| struct_anon_32.__slots__ = [ |
| 'data', |
| ] |
| struct_anon_32._fields_ = [ |
| ('data', c_uint8 * ((((0 + (1 * sizeof(POINTER(None)))) + (1 * sizeof(POINTER(None)))) + (8 * sizeof(POINTER(None)))) + 16)), |
| ] |
| |
| class struct_anon_33(Structure): |
| pass |
| |
| |
| struct_anon_33.__slots__ = [ |
| 'subsystem', |
| 'extension', |
| ] |
| struct_anon_33._fields_ = [ |
| ('subsystem', sss_type_t), |
| ('extension', struct_anon_32), |
| ] |
| |
| sss_session_t = struct_anon_33 |
| class struct_anon_34(Structure): |
| pass |
| |
| |
| struct_anon_34.__slots__ = [ |
| 'data', |
| ] |
| struct_anon_34._fields_ = [ |
| ('data', c_uint8 * (((0 + (1 * sizeof(POINTER(None)))) + (4 * sizeof(POINTER(None)))) + 16)), |
| ] |
| |
| class struct_anon_35(Structure): |
| pass |
| |
| |
| struct_anon_35.__slots__ = [ |
| 'session', |
| 'extension', |
| ] |
| struct_anon_35._fields_ = [ |
| ('session', POINTER(sss_session_t)), |
| ('extension', struct_anon_34), |
| ] |
| |
| sss_key_store_t = struct_anon_35 |
| enum_anon_36 = c_int |
| kSSS_KeyStoreProp_au8_Optional_Start = 16777215 |
| |
| sss_key_store_prop_au8_t = enum_anon_36 |
| enum_anon_37 = c_int |
| kSSS_TunnelDest_None = 0 |
| |
| kSSS_TunnelType_Se05x_Iot_applet = (kSSS_TunnelDest_None + 1) |
| |
| sss_tunnel_dest_t = enum_anon_37 |
| class struct_anon_38(Structure): |
| pass |
| |
| |
| struct_anon_38.__slots__ = [ |
| 'data', |
| ] |
| struct_anon_38._fields_ = [ |
| ('data', c_uint8 * ((((0 + (1 * sizeof(POINTER(None)))) + (2 * sizeof(c_int))) + (4 * sizeof(POINTER(None)))) + 16)), |
| ] |
| |
| class struct_anon_39(Structure): |
| pass |
| |
| |
| struct_anon_39.__slots__ = [ |
| 'keyStore', |
| 'objectType', |
| 'cipherType', |
| 'keyId', |
| 'extension', |
| ] |
| struct_anon_39._fields_ = [ |
| ('keyStore', POINTER(sss_key_store_t)), |
| ('objectType', c_uint32), |
| ('cipherType', c_uint32), |
| ('keyId', c_uint32), |
| ('extension', struct_anon_38), |
| ] |
| |
| sss_object_t = struct_anon_39 |
| class struct_anon_40(Structure): |
| pass |
| |
| |
| struct_anon_40.__slots__ = [ |
| 'data', |
| ] |
| struct_anon_40._fields_ = [ |
| ('data', c_uint8 * ((((((0 + (2 * sizeof(POINTER(None)))) + (2 * sizeof(c_int))) + (2 * sizeof(POINTER(None)))) + 16) + 4) + 16)), |
| ] |
| |
| class struct_anon_41(Structure): |
| pass |
| |
| |
| struct_anon_41.__slots__ = [ |
| 'session', |
| 'keyObject', |
| 'algorithm', |
| 'mode', |
| 'extension', |
| ] |
| struct_anon_41._fields_ = [ |
| ('session', POINTER(sss_session_t)), |
| ('keyObject', POINTER(sss_object_t)), |
| ('algorithm', sss_algorithm_t), |
| ('mode', sss_mode_t), |
| ('extension', struct_anon_40), |
| ] |
| |
| sss_symmetric_t = struct_anon_41 |
| class struct_anon_42(Structure): |
| pass |
| |
| |
| struct_anon_42.__slots__ = [ |
| 'data', |
| ] |
| struct_anon_42._fields_ = [ |
| ('data', c_uint8 * ((((0 + (5 * sizeof(POINTER(None)))) + (6 * sizeof(c_int))) + (5 * sizeof(POINTER(None)))) + 16)), |
| ] |
| |
| class struct_anon_43(Structure): |
| pass |
| |
| |
| struct_anon_43.__slots__ = [ |
| 'session', |
| 'keyObject', |
| 'algorithm', |
| 'mode', |
| 'extension', |
| ] |
| struct_anon_43._fields_ = [ |
| ('session', POINTER(sss_session_t)), |
| ('keyObject', POINTER(sss_object_t)), |
| ('algorithm', sss_algorithm_t), |
| ('mode', sss_mode_t), |
| ('extension', struct_anon_42), |
| ] |
| |
| sss_aead_t = struct_anon_43 |
| class struct_anon_44(Structure): |
| pass |
| |
| |
| struct_anon_44.__slots__ = [ |
| 'data', |
| ] |
| struct_anon_44._fields_ = [ |
| ('data', c_uint8 * ((((0 + (1 * sizeof(POINTER(None)))) + (3 * sizeof(c_int))) + (2 * sizeof(POINTER(None)))) + 16)), |
| ] |
| |
| class struct_anon_45(Structure): |
| pass |
| |
| |
| struct_anon_45.__slots__ = [ |
| 'session', |
| 'algorithm', |
| 'mode', |
| 'digestFullLen', |
| 'extension', |
| ] |
| struct_anon_45._fields_ = [ |
| ('session', POINTER(sss_session_t)), |
| ('algorithm', sss_algorithm_t), |
| ('mode', sss_mode_t), |
| ('digestFullLen', c_size_t), |
| ('extension', struct_anon_44), |
| ] |
| |
| sss_digest_t = struct_anon_45 |
| class struct_anon_46(Structure): |
| pass |
| |
| |
| struct_anon_46.__slots__ = [ |
| 'data', |
| ] |
| struct_anon_46._fields_ = [ |
| ('data', c_uint8 * ((((0 + (2 * sizeof(POINTER(None)))) + (2 * sizeof(c_int))) + (2 * sizeof(POINTER(None)))) + 32)), |
| ] |
| |
| class struct_anon_47(Structure): |
| pass |
| |
| |
| struct_anon_47.__slots__ = [ |
| 'session', |
| 'keyObject', |
| 'algorithm', |
| 'mode', |
| 'extension', |
| ] |
| struct_anon_47._fields_ = [ |
| ('session', POINTER(sss_session_t)), |
| ('keyObject', POINTER(sss_object_t)), |
| ('algorithm', sss_algorithm_t), |
| ('mode', sss_mode_t), |
| ('extension', struct_anon_46), |
| ] |
| |
| sss_mac_t = struct_anon_47 |
| class struct_anon_48(Structure): |
| pass |
| |
| |
| struct_anon_48.__slots__ = [ |
| 'data', |
| ] |
| struct_anon_48._fields_ = [ |
| ('data', c_uint8 * ((((0 + (2 * sizeof(POINTER(None)))) + (3 * sizeof(c_int))) + (2 * sizeof(POINTER(None)))) + 16)), |
| ] |
| |
| class struct_anon_49(Structure): |
| pass |
| |
| |
| struct_anon_49.__slots__ = [ |
| 'session', |
| 'keyObject', |
| 'algorithm', |
| 'mode', |
| 'extension', |
| ] |
| struct_anon_49._fields_ = [ |
| ('session', POINTER(sss_session_t)), |
| ('keyObject', POINTER(sss_object_t)), |
| ('algorithm', sss_algorithm_t), |
| ('mode', sss_mode_t), |
| ('extension', struct_anon_48), |
| ] |
| |
| sss_asymmetric_t = struct_anon_49 |
| class struct_anon_50(Structure): |
| pass |
| |
| |
| struct_anon_50.__slots__ = [ |
| 'hdr', |
| ] |
| struct_anon_50._fields_ = [ |
| ('hdr', c_uint8 * ((((0 + 1) + 1) + 1) + 1)), |
| ] |
| |
| tlvHeader_t = struct_anon_50 |
| class struct_anon_51(Structure): |
| pass |
| |
| |
| struct_anon_51.__slots__ = [ |
| 'data', |
| ] |
| struct_anon_51._fields_ = [ |
| ('data', c_uint8 * ((((0 + (1 * sizeof(POINTER(None)))) + (2 * sizeof(c_int))) + (2 * sizeof(POINTER(None)))) + 16)), |
| ] |
| |
| class struct_anon_52(Structure): |
| pass |
| |
| |
| struct_anon_52.__slots__ = [ |
| 'session', |
| 'tunnelType', |
| 'extension', |
| ] |
| struct_anon_52._fields_ = [ |
| ('session', POINTER(sss_session_t)), |
| ('tunnelType', c_uint32), |
| ('extension', struct_anon_51), |
| ] |
| |
| sss_tunnel_t = struct_anon_52 |
| class struct_anon_53(Structure): |
| pass |
| |
| |
| struct_anon_53.__slots__ = [ |
| 'data', |
| ] |
| struct_anon_53._fields_ = [ |
| ('data', c_uint8 * ((((0 + (2 * sizeof(POINTER(None)))) + (2 * sizeof(c_int))) + (2 * sizeof(POINTER(None)))) + 16)), |
| ] |
| |
| class struct_anon_54(Structure): |
| pass |
| |
| |
| struct_anon_54.__slots__ = [ |
| 'session', |
| 'keyObject', |
| 'algorithm', |
| 'mode', |
| 'extension', |
| ] |
| struct_anon_54._fields_ = [ |
| ('session', POINTER(sss_session_t)), |
| ('keyObject', POINTER(sss_object_t)), |
| ('algorithm', sss_algorithm_t), |
| ('mode', sss_mode_t), |
| ('extension', struct_anon_53), |
| ] |
| |
| sss_derive_key_t = struct_anon_54 |
| class struct_anon_55(Structure): |
| pass |
| |
| |
| struct_anon_55.__slots__ = [ |
| 'data', |
| ] |
| struct_anon_55._fields_ = [ |
| ('data', c_uint8 * (((0 + (1 * sizeof(POINTER(None)))) + (2 * sizeof(POINTER(None)))) + 16)), |
| ] |
| |
| class struct_anon_56(Structure): |
| pass |
| |
| |
| struct_anon_56.__slots__ = [ |
| 'session', |
| 'context', |
| ] |
| struct_anon_56._fields_ = [ |
| ('session', POINTER(sss_session_t)), |
| ('context', struct_anon_55), |
| ] |
| |
| sss_rng_context_t = struct_anon_56 |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_session_create'): |
| continue |
| sss_session_create = _lib.sss_session_create |
| sss_session_create.argtypes = [POINTER(sss_session_t), sss_type_t, c_uint32, sss_connection_type_t, POINTER(None)] |
| sss_session_create.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_session_open'): |
| continue |
| sss_session_open = _lib.sss_session_open |
| sss_session_open.argtypes = [POINTER(sss_session_t), sss_type_t, c_uint32, sss_connection_type_t, POINTER(None)] |
| sss_session_open.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_session_prop_get_u32'): |
| continue |
| sss_session_prop_get_u32 = _lib.sss_session_prop_get_u32 |
| sss_session_prop_get_u32.argtypes = [POINTER(sss_session_t), c_uint32, POINTER(c_uint32)] |
| sss_session_prop_get_u32.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_session_prop_get_au8'): |
| continue |
| sss_session_prop_get_au8 = _lib.sss_session_prop_get_au8 |
| sss_session_prop_get_au8.argtypes = [POINTER(sss_session_t), c_uint32, POINTER(c_uint8), POINTER(c_size_t)] |
| sss_session_prop_get_au8.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_session_close'): |
| continue |
| sss_session_close = _lib.sss_session_close |
| sss_session_close.argtypes = [POINTER(sss_session_t)] |
| sss_session_close.restype = None |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_session_delete'): |
| continue |
| sss_session_delete = _lib.sss_session_delete |
| sss_session_delete.argtypes = [POINTER(sss_session_t)] |
| sss_session_delete.restype = None |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_store_context_init'): |
| continue |
| sss_key_store_context_init = _lib.sss_key_store_context_init |
| sss_key_store_context_init.argtypes = [POINTER(sss_key_store_t), POINTER(sss_session_t)] |
| sss_key_store_context_init.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_store_allocate'): |
| continue |
| sss_key_store_allocate = _lib.sss_key_store_allocate |
| sss_key_store_allocate.argtypes = [POINTER(sss_key_store_t), c_uint32] |
| sss_key_store_allocate.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_store_save'): |
| continue |
| sss_key_store_save = _lib.sss_key_store_save |
| sss_key_store_save.argtypes = [POINTER(sss_key_store_t)] |
| sss_key_store_save.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_store_load'): |
| continue |
| sss_key_store_load = _lib.sss_key_store_load |
| sss_key_store_load.argtypes = [POINTER(sss_key_store_t)] |
| sss_key_store_load.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_store_set_key'): |
| continue |
| sss_key_store_set_key = _lib.sss_key_store_set_key |
| sss_key_store_set_key.argtypes = [POINTER(sss_key_store_t), POINTER(sss_object_t), POINTER(c_uint8), c_size_t, c_size_t, POINTER(None), c_size_t] |
| sss_key_store_set_key.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_store_generate_key'): |
| continue |
| sss_key_store_generate_key = _lib.sss_key_store_generate_key |
| sss_key_store_generate_key.argtypes = [POINTER(sss_key_store_t), POINTER(sss_object_t), c_size_t, POINTER(None)] |
| sss_key_store_generate_key.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_store_get_key'): |
| continue |
| sss_key_store_get_key = _lib.sss_key_store_get_key |
| sss_key_store_get_key.argtypes = [POINTER(sss_key_store_t), POINTER(sss_object_t), POINTER(c_uint8), POINTER(c_size_t), POINTER(c_size_t)] |
| sss_key_store_get_key.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_store_open_key'): |
| continue |
| sss_key_store_open_key = _lib.sss_key_store_open_key |
| sss_key_store_open_key.argtypes = [POINTER(sss_key_store_t), POINTER(sss_object_t)] |
| sss_key_store_open_key.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_store_freeze_key'): |
| continue |
| sss_key_store_freeze_key = _lib.sss_key_store_freeze_key |
| sss_key_store_freeze_key.argtypes = [POINTER(sss_key_store_t), POINTER(sss_object_t)] |
| sss_key_store_freeze_key.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_store_erase_key'): |
| continue |
| sss_key_store_erase_key = _lib.sss_key_store_erase_key |
| sss_key_store_erase_key.argtypes = [POINTER(sss_key_store_t), POINTER(sss_object_t)] |
| sss_key_store_erase_key.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_store_context_free'): |
| continue |
| sss_key_store_context_free = _lib.sss_key_store_context_free |
| sss_key_store_context_free.argtypes = [POINTER(sss_key_store_t)] |
| sss_key_store_context_free.restype = None |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_object_init'): |
| continue |
| sss_key_object_init = _lib.sss_key_object_init |
| sss_key_object_init.argtypes = [POINTER(sss_object_t), POINTER(sss_key_store_t)] |
| sss_key_object_init.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_object_allocate_handle'): |
| continue |
| sss_key_object_allocate_handle = _lib.sss_key_object_allocate_handle |
| sss_key_object_allocate_handle.argtypes = [POINTER(sss_object_t), c_uint32, sss_key_part_t, sss_cipher_type_t, c_size_t, c_uint32] |
| sss_key_object_allocate_handle.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_object_get_handle'): |
| continue |
| sss_key_object_get_handle = _lib.sss_key_object_get_handle |
| sss_key_object_get_handle.argtypes = [POINTER(sss_object_t), c_uint32] |
| sss_key_object_get_handle.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_object_set_user'): |
| continue |
| sss_key_object_set_user = _lib.sss_key_object_set_user |
| sss_key_object_set_user.argtypes = [POINTER(sss_object_t), c_uint32, c_uint32] |
| sss_key_object_set_user.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_object_set_purpose'): |
| continue |
| sss_key_object_set_purpose = _lib.sss_key_object_set_purpose |
| sss_key_object_set_purpose.argtypes = [POINTER(sss_object_t), sss_mode_t, c_uint32] |
| sss_key_object_set_purpose.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_object_set_access'): |
| continue |
| sss_key_object_set_access = _lib.sss_key_object_set_access |
| sss_key_object_set_access.argtypes = [POINTER(sss_object_t), c_uint32, c_uint32] |
| sss_key_object_set_access.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_object_set_eccgfp_group'): |
| continue |
| sss_key_object_set_eccgfp_group = _lib.sss_key_object_set_eccgfp_group |
| sss_key_object_set_eccgfp_group.argtypes = [POINTER(sss_object_t), POINTER(sss_eccgfp_group_t)] |
| sss_key_object_set_eccgfp_group.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_object_get_user'): |
| continue |
| sss_key_object_get_user = _lib.sss_key_object_get_user |
| sss_key_object_get_user.argtypes = [POINTER(sss_object_t), POINTER(c_uint32)] |
| sss_key_object_get_user.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_object_get_purpose'): |
| continue |
| sss_key_object_get_purpose = _lib.sss_key_object_get_purpose |
| sss_key_object_get_purpose.argtypes = [POINTER(sss_object_t), POINTER(sss_mode_t)] |
| sss_key_object_get_purpose.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_object_get_access'): |
| continue |
| sss_key_object_get_access = _lib.sss_key_object_get_access |
| sss_key_object_get_access.argtypes = [POINTER(sss_object_t), POINTER(c_uint32)] |
| sss_key_object_get_access.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_key_object_free'): |
| continue |
| sss_key_object_free = _lib.sss_key_object_free |
| sss_key_object_free.argtypes = [POINTER(sss_object_t)] |
| sss_key_object_free.restype = None |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_symmetric_context_init'): |
| continue |
| sss_symmetric_context_init = _lib.sss_symmetric_context_init |
| sss_symmetric_context_init.argtypes = [POINTER(sss_symmetric_t), POINTER(sss_session_t), POINTER(sss_object_t), sss_algorithm_t, sss_mode_t] |
| sss_symmetric_context_init.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_cipher_one_go'): |
| continue |
| sss_cipher_one_go = _lib.sss_cipher_one_go |
| sss_cipher_one_go.argtypes = [POINTER(sss_symmetric_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), POINTER(c_uint8), c_size_t] |
| sss_cipher_one_go.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_cipher_init'): |
| continue |
| sss_cipher_init = _lib.sss_cipher_init |
| sss_cipher_init.argtypes = [POINTER(sss_symmetric_t), POINTER(c_uint8), c_size_t] |
| sss_cipher_init.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_cipher_update'): |
| continue |
| sss_cipher_update = _lib.sss_cipher_update |
| sss_cipher_update.argtypes = [POINTER(sss_symmetric_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), POINTER(c_size_t)] |
| sss_cipher_update.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_cipher_finish'): |
| continue |
| sss_cipher_finish = _lib.sss_cipher_finish |
| sss_cipher_finish.argtypes = [POINTER(sss_symmetric_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), POINTER(c_size_t)] |
| sss_cipher_finish.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_cipher_crypt_ctr'): |
| continue |
| sss_cipher_crypt_ctr = _lib.sss_cipher_crypt_ctr |
| sss_cipher_crypt_ctr.argtypes = [POINTER(sss_symmetric_t), POINTER(c_uint8), POINTER(c_uint8), c_size_t, POINTER(c_uint8), POINTER(c_uint8), POINTER(c_size_t)] |
| sss_cipher_crypt_ctr.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_symmetric_context_free'): |
| continue |
| sss_symmetric_context_free = _lib.sss_symmetric_context_free |
| sss_symmetric_context_free.argtypes = [POINTER(sss_symmetric_t)] |
| sss_symmetric_context_free.restype = None |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_aead_context_init'): |
| continue |
| sss_aead_context_init = _lib.sss_aead_context_init |
| sss_aead_context_init.argtypes = [POINTER(sss_aead_t), POINTER(sss_session_t), POINTER(sss_object_t), sss_algorithm_t, sss_mode_t] |
| sss_aead_context_init.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_aead_one_go'): |
| continue |
| sss_aead_one_go = _lib.sss_aead_one_go |
| sss_aead_one_go.argtypes = [POINTER(sss_aead_t), POINTER(c_uint8), POINTER(c_uint8), c_size_t, POINTER(c_uint8), c_size_t, POINTER(c_uint8), c_size_t, POINTER(c_uint8), POINTER(c_size_t)] |
| sss_aead_one_go.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_aead_init'): |
| continue |
| sss_aead_init = _lib.sss_aead_init |
| sss_aead_init.argtypes = [POINTER(sss_aead_t), POINTER(c_uint8), c_size_t, c_size_t, c_size_t, c_size_t] |
| sss_aead_init.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_aead_update_aad'): |
| continue |
| sss_aead_update_aad = _lib.sss_aead_update_aad |
| sss_aead_update_aad.argtypes = [POINTER(sss_aead_t), POINTER(c_uint8), c_size_t] |
| sss_aead_update_aad.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_aead_update'): |
| continue |
| sss_aead_update = _lib.sss_aead_update |
| sss_aead_update.argtypes = [POINTER(sss_aead_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), POINTER(c_size_t)] |
| sss_aead_update.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_aead_finish'): |
| continue |
| sss_aead_finish = _lib.sss_aead_finish |
| sss_aead_finish.argtypes = [POINTER(sss_aead_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), POINTER(c_size_t), POINTER(c_uint8), POINTER(c_size_t)] |
| sss_aead_finish.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_aead_context_free'): |
| continue |
| sss_aead_context_free = _lib.sss_aead_context_free |
| sss_aead_context_free.argtypes = [POINTER(sss_aead_t)] |
| sss_aead_context_free.restype = None |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_digest_context_init'): |
| continue |
| sss_digest_context_init = _lib.sss_digest_context_init |
| sss_digest_context_init.argtypes = [POINTER(sss_digest_t), POINTER(sss_session_t), sss_algorithm_t, sss_mode_t] |
| sss_digest_context_init.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_digest_one_go'): |
| continue |
| sss_digest_one_go = _lib.sss_digest_one_go |
| sss_digest_one_go.argtypes = [POINTER(sss_digest_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), POINTER(c_size_t)] |
| sss_digest_one_go.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_digest_init'): |
| continue |
| sss_digest_init = _lib.sss_digest_init |
| sss_digest_init.argtypes = [POINTER(sss_digest_t)] |
| sss_digest_init.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_digest_update'): |
| continue |
| sss_digest_update = _lib.sss_digest_update |
| sss_digest_update.argtypes = [POINTER(sss_digest_t), POINTER(c_uint8), c_size_t] |
| sss_digest_update.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_digest_finish'): |
| continue |
| sss_digest_finish = _lib.sss_digest_finish |
| sss_digest_finish.argtypes = [POINTER(sss_digest_t), POINTER(c_uint8), POINTER(c_size_t)] |
| sss_digest_finish.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_digest_context_free'): |
| continue |
| sss_digest_context_free = _lib.sss_digest_context_free |
| sss_digest_context_free.argtypes = [POINTER(sss_digest_t)] |
| sss_digest_context_free.restype = None |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_mac_context_init'): |
| continue |
| sss_mac_context_init = _lib.sss_mac_context_init |
| sss_mac_context_init.argtypes = [POINTER(sss_mac_t), POINTER(sss_session_t), POINTER(sss_object_t), sss_algorithm_t, sss_mode_t] |
| sss_mac_context_init.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_mac_one_go'): |
| continue |
| sss_mac_one_go = _lib.sss_mac_one_go |
| sss_mac_one_go.argtypes = [POINTER(sss_mac_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), POINTER(c_size_t)] |
| sss_mac_one_go.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_mac_init'): |
| continue |
| sss_mac_init = _lib.sss_mac_init |
| sss_mac_init.argtypes = [POINTER(sss_mac_t)] |
| sss_mac_init.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_mac_update'): |
| continue |
| sss_mac_update = _lib.sss_mac_update |
| sss_mac_update.argtypes = [POINTER(sss_mac_t), POINTER(c_uint8), c_size_t] |
| sss_mac_update.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_mac_finish'): |
| continue |
| sss_mac_finish = _lib.sss_mac_finish |
| sss_mac_finish.argtypes = [POINTER(sss_mac_t), POINTER(c_uint8), POINTER(c_size_t)] |
| sss_mac_finish.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_mac_context_free'): |
| continue |
| sss_mac_context_free = _lib.sss_mac_context_free |
| sss_mac_context_free.argtypes = [POINTER(sss_mac_t)] |
| sss_mac_context_free.restype = None |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_asymmetric_context_init'): |
| continue |
| sss_asymmetric_context_init = _lib.sss_asymmetric_context_init |
| sss_asymmetric_context_init.argtypes = [POINTER(sss_asymmetric_t), POINTER(sss_session_t), POINTER(sss_object_t), sss_algorithm_t, sss_mode_t] |
| sss_asymmetric_context_init.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_asymmetric_encrypt'): |
| continue |
| sss_asymmetric_encrypt = _lib.sss_asymmetric_encrypt |
| sss_asymmetric_encrypt.argtypes = [POINTER(sss_asymmetric_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), POINTER(c_size_t)] |
| sss_asymmetric_encrypt.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_asymmetric_decrypt'): |
| continue |
| sss_asymmetric_decrypt = _lib.sss_asymmetric_decrypt |
| sss_asymmetric_decrypt.argtypes = [POINTER(sss_asymmetric_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), POINTER(c_size_t)] |
| sss_asymmetric_decrypt.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_asymmetric_sign_digest'): |
| continue |
| sss_asymmetric_sign_digest = _lib.sss_asymmetric_sign_digest |
| sss_asymmetric_sign_digest.argtypes = [POINTER(sss_asymmetric_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), POINTER(c_size_t)] |
| sss_asymmetric_sign_digest.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_asymmetric_verify_digest'): |
| continue |
| sss_asymmetric_verify_digest = _lib.sss_asymmetric_verify_digest |
| sss_asymmetric_verify_digest.argtypes = [POINTER(sss_asymmetric_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), c_size_t] |
| sss_asymmetric_verify_digest.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_asymmetric_context_free'): |
| continue |
| sss_asymmetric_context_free = _lib.sss_asymmetric_context_free |
| sss_asymmetric_context_free.argtypes = [POINTER(sss_asymmetric_t)] |
| sss_asymmetric_context_free.restype = None |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_derive_key_context_init'): |
| continue |
| sss_derive_key_context_init = _lib.sss_derive_key_context_init |
| sss_derive_key_context_init.argtypes = [POINTER(sss_derive_key_t), POINTER(sss_session_t), POINTER(sss_object_t), sss_algorithm_t, sss_mode_t] |
| sss_derive_key_context_init.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_derive_key_go'): |
| continue |
| sss_derive_key_go = _lib.sss_derive_key_go |
| sss_derive_key_go.argtypes = [POINTER(sss_derive_key_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), c_size_t, POINTER(sss_object_t), c_uint16, POINTER(c_uint8), POINTER(c_size_t)] |
| sss_derive_key_go.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_derive_key_one_go'): |
| continue |
| sss_derive_key_one_go = _lib.sss_derive_key_one_go |
| sss_derive_key_one_go.argtypes = [POINTER(sss_derive_key_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), c_size_t, POINTER(sss_object_t), c_uint16] |
| sss_derive_key_one_go.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_derive_key_sobj_one_go'): |
| continue |
| sss_derive_key_sobj_one_go = _lib.sss_derive_key_sobj_one_go |
| sss_derive_key_sobj_one_go.argtypes = [POINTER(sss_derive_key_t), POINTER(sss_object_t), POINTER(c_uint8), c_size_t, POINTER(sss_object_t), c_uint16] |
| sss_derive_key_sobj_one_go.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_derive_key_dh'): |
| continue |
| sss_derive_key_dh = _lib.sss_derive_key_dh |
| sss_derive_key_dh.argtypes = [POINTER(sss_derive_key_t), POINTER(sss_object_t), POINTER(sss_object_t)] |
| sss_derive_key_dh.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_derive_key_context_free'): |
| continue |
| sss_derive_key_context_free = _lib.sss_derive_key_context_free |
| sss_derive_key_context_free.argtypes = [POINTER(sss_derive_key_t)] |
| sss_derive_key_context_free.restype = None |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_rng_context_init'): |
| continue |
| sss_rng_context_init = _lib.sss_rng_context_init |
| sss_rng_context_init.argtypes = [POINTER(sss_rng_context_t), POINTER(sss_session_t)] |
| sss_rng_context_init.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_rng_get_random'): |
| continue |
| sss_rng_get_random = _lib.sss_rng_get_random |
| sss_rng_get_random.argtypes = [POINTER(sss_rng_context_t), POINTER(c_uint8), c_size_t] |
| sss_rng_get_random.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_rng_context_free'): |
| continue |
| sss_rng_context_free = _lib.sss_rng_context_free |
| sss_rng_context_free.argtypes = [POINTER(sss_rng_context_t)] |
| sss_rng_context_free.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_tunnel_context_init'): |
| continue |
| sss_tunnel_context_init = _lib.sss_tunnel_context_init |
| sss_tunnel_context_init.argtypes = [POINTER(sss_tunnel_t), POINTER(sss_session_t)] |
| sss_tunnel_context_init.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_tunnel'): |
| continue |
| sss_tunnel = _lib.sss_tunnel |
| sss_tunnel.argtypes = [POINTER(sss_tunnel_t), POINTER(c_uint8), c_size_t, POINTER(sss_object_t), c_uint32, c_uint32] |
| sss_tunnel.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_tunnel_context_free'): |
| continue |
| sss_tunnel_context_free = _lib.sss_tunnel_context_free |
| sss_tunnel_context_free.argtypes = [POINTER(sss_tunnel_t)] |
| sss_tunnel_context_free.restype = None |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_status_sz'): |
| continue |
| sss_status_sz = _lib.sss_status_sz |
| sss_status_sz.argtypes = [sss_status_t] |
| if sizeof(c_int) == sizeof(c_void_p): |
| sss_status_sz.restype = ReturnString |
| else: |
| sss_status_sz.restype = String |
| sss_status_sz.errcheck = ReturnString |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_cipher_type_sz'): |
| continue |
| sss_cipher_type_sz = _lib.sss_cipher_type_sz |
| sss_cipher_type_sz.argtypes = [sss_cipher_type_t] |
| if sizeof(c_int) == sizeof(c_void_p): |
| sss_cipher_type_sz.restype = ReturnString |
| else: |
| sss_cipher_type_sz.restype = String |
| sss_cipher_type_sz.errcheck = ReturnString |
| break |
| |
| SST_Index_t = U8# hostlib/hostLib/inc/a71ch_api.h |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_GetCredentialInfo'): |
| continue |
| A71_GetCredentialInfo = _lib.A71_GetCredentialInfo |
| A71_GetCredentialInfo.argtypes = [POINTER(U8), POINTER(U16)] |
| A71_GetCredentialInfo.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_GetModuleInfo'): |
| continue |
| A71_GetModuleInfo = _lib.A71_GetModuleInfo |
| A71_GetModuleInfo.argtypes = [POINTER(U16), POINTER(U8), POINTER(U8), POINTER(U8), POINTER(U8), POINTER(U8), POINTER(U16)] |
| A71_GetModuleInfo.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_GetRandom'): |
| continue |
| A71_GetRandom = _lib.A71_GetRandom |
| A71_GetRandom.argtypes = [POINTER(U8), U8] |
| A71_GetRandom.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_CreateClientHelloRandom'): |
| continue |
| A71_CreateClientHelloRandom = _lib.A71_CreateClientHelloRandom |
| A71_CreateClientHelloRandom.argtypes = [POINTER(U8), U8] |
| A71_CreateClientHelloRandom.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_GetRestrictedKeyPairInfo'): |
| continue |
| A71_GetRestrictedKeyPairInfo = _lib.A71_GetRestrictedKeyPairInfo |
| A71_GetRestrictedKeyPairInfo.argtypes = [POINTER(U8), POINTER(U16), POINTER(U8), POINTER(U16)] |
| A71_GetRestrictedKeyPairInfo.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_GetSha256'): |
| continue |
| A71_GetSha256 = _lib.A71_GetSha256 |
| A71_GetSha256.argtypes = [POINTER(U8), U16, POINTER(U8), POINTER(U16)] |
| A71_GetSha256.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_Sha256Init'): |
| continue |
| A71_Sha256Init = _lib.A71_Sha256Init |
| A71_Sha256Init.argtypes = [] |
| A71_Sha256Init.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_Sha256Update'): |
| continue |
| A71_Sha256Update = _lib.A71_Sha256Update |
| A71_Sha256Update.argtypes = [POINTER(U8), U16] |
| A71_Sha256Update.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_Sha256Final'): |
| continue |
| A71_Sha256Final = _lib.A71_Sha256Final |
| A71_Sha256Final.argtypes = [POINTER(U8), POINTER(U16)] |
| A71_Sha256Final.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_GetUniqueID'): |
| continue |
| A71_GetUniqueID = _lib.A71_GetUniqueID |
| A71_GetUniqueID.argtypes = [POINTER(U8), POINTER(U16)] |
| A71_GetUniqueID.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_GetCertUid'): |
| continue |
| A71_GetCertUid = _lib.A71_GetCertUid |
| A71_GetCertUid.argtypes = [POINTER(U8), POINTER(U16)] |
| A71_GetCertUid.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_GetKeyPairChallenge'): |
| continue |
| A71_GetKeyPairChallenge = _lib.A71_GetKeyPairChallenge |
| A71_GetKeyPairChallenge.argtypes = [POINTER(U8), POINTER(U16)] |
| A71_GetKeyPairChallenge.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_GetPublicKeyChallenge'): |
| continue |
| A71_GetPublicKeyChallenge = _lib.A71_GetPublicKeyChallenge |
| A71_GetPublicKeyChallenge.argtypes = [POINTER(U8), POINTER(U16)] |
| A71_GetPublicKeyChallenge.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_GetUnlockChallenge'): |
| continue |
| A71_GetUnlockChallenge = _lib.A71_GetUnlockChallenge |
| A71_GetUnlockChallenge.argtypes = [POINTER(U8), POINTER(U16)] |
| A71_GetUnlockChallenge.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_InjectLock'): |
| continue |
| A71_InjectLock = _lib.A71_InjectLock |
| A71_InjectLock.argtypes = [] |
| A71_InjectLock.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_LockModule'): |
| continue |
| A71_LockModule = _lib.A71_LockModule |
| A71_LockModule.argtypes = [] |
| A71_LockModule.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_UnlockModule'): |
| continue |
| A71_UnlockModule = _lib.A71_UnlockModule |
| A71_UnlockModule.argtypes = [POINTER(U8), U16] |
| A71_UnlockModule.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_SetTlsLabel'): |
| continue |
| A71_SetTlsLabel = _lib.A71_SetTlsLabel |
| A71_SetTlsLabel.argtypes = [POINTER(U8), U16] |
| A71_SetTlsLabel.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_EccVerifyWithKey'): |
| continue |
| A71_EccVerifyWithKey = _lib.A71_EccVerifyWithKey |
| A71_EccVerifyWithKey.argtypes = [POINTER(U8), U16, POINTER(U8), U16, POINTER(U8), U16, POINTER(U8)] |
| A71_EccVerifyWithKey.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_GenerateEccKeyPair'): |
| continue |
| A71_GenerateEccKeyPair = _lib.A71_GenerateEccKeyPair |
| A71_GenerateEccKeyPair.argtypes = [SST_Index_t] |
| A71_GenerateEccKeyPair.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_GenerateEccKeyPairWithChallenge'): |
| continue |
| A71_GenerateEccKeyPairWithChallenge = _lib.A71_GenerateEccKeyPairWithChallenge |
| A71_GenerateEccKeyPairWithChallenge.argtypes = [SST_Index_t, POINTER(U8), U16] |
| A71_GenerateEccKeyPairWithChallenge.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_GenerateEccKeyPairWithCode'): |
| continue |
| A71_GenerateEccKeyPairWithCode = _lib.A71_GenerateEccKeyPairWithCode |
| A71_GenerateEccKeyPairWithCode.argtypes = [SST_Index_t, POINTER(U8), U16] |
| A71_GenerateEccKeyPairWithCode.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_SetEccKeyPair'): |
| continue |
| A71_SetEccKeyPair = _lib.A71_SetEccKeyPair |
| A71_SetEccKeyPair.argtypes = [SST_Index_t, POINTER(U8), U16, POINTER(U8), U16] |
| A71_SetEccKeyPair.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_GetPublicKeyEccKeyPair'): |
| continue |
| A71_GetPublicKeyEccKeyPair = _lib.A71_GetPublicKeyEccKeyPair |
| A71_GetPublicKeyEccKeyPair.argtypes = [SST_Index_t, POINTER(U8), POINTER(U16)] |
| A71_GetPublicKeyEccKeyPair.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_GetEccKeyPairUsage'): |
| continue |
| A71_GetEccKeyPairUsage = _lib.A71_GetEccKeyPairUsage |
| A71_GetEccKeyPairUsage.argtypes = [SST_Index_t, POINTER(U8), POINTER(U16), POINTER(U16)] |
| A71_GetEccKeyPairUsage.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_EccSign'): |
| continue |
| A71_EccSign = _lib.A71_EccSign |
| A71_EccSign.argtypes = [SST_Index_t, POINTER(U8), U16, POINTER(U8), POINTER(U16)] |
| A71_EccSign.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_EccNormalizedAsnSign'): |
| continue |
| A71_EccNormalizedAsnSign = _lib.A71_EccNormalizedAsnSign |
| A71_EccNormalizedAsnSign.argtypes = [SST_Index_t, POINTER(U8), U16, POINTER(U8), POINTER(U16)] |
| A71_EccNormalizedAsnSign.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_EccRestrictedSign'): |
| continue |
| A71_EccRestrictedSign = _lib.A71_EccRestrictedSign |
| A71_EccRestrictedSign.argtypes = [SST_Index_t, POINTER(U8), U16, POINTER(U8)] |
| A71_EccRestrictedSign.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_EcdhGetSharedSecret'): |
| continue |
| A71_EcdhGetSharedSecret = _lib.A71_EcdhGetSharedSecret |
| A71_EcdhGetSharedSecret.argtypes = [U8, POINTER(U8), U16, POINTER(U8), POINTER(U16)] |
| A71_EcdhGetSharedSecret.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_FreezeEccKeyPair'): |
| continue |
| A71_FreezeEccKeyPair = _lib.A71_FreezeEccKeyPair |
| A71_FreezeEccKeyPair.argtypes = [SST_Index_t] |
| A71_FreezeEccKeyPair.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_FreezeEccKeyPairWithChallenge'): |
| continue |
| A71_FreezeEccKeyPairWithChallenge = _lib.A71_FreezeEccKeyPairWithChallenge |
| A71_FreezeEccKeyPairWithChallenge.argtypes = [SST_Index_t, POINTER(U8), U16] |
| A71_FreezeEccKeyPairWithChallenge.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_FreezeEccKeyPairWithCode'): |
| continue |
| A71_FreezeEccKeyPairWithCode = _lib.A71_FreezeEccKeyPairWithCode |
| A71_FreezeEccKeyPairWithCode.argtypes = [SST_Index_t, POINTER(U8), U16] |
| A71_FreezeEccKeyPairWithCode.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_EraseEccKeyPair'): |
| continue |
| A71_EraseEccKeyPair = _lib.A71_EraseEccKeyPair |
| A71_EraseEccKeyPair.argtypes = [SST_Index_t] |
| A71_EraseEccKeyPair.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_EraseEccKeyPairWithChallenge'): |
| continue |
| A71_EraseEccKeyPairWithChallenge = _lib.A71_EraseEccKeyPairWithChallenge |
| A71_EraseEccKeyPairWithChallenge.argtypes = [SST_Index_t, POINTER(U8), U16] |
| A71_EraseEccKeyPairWithChallenge.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_EraseEccKeyPairWithCode'): |
| continue |
| A71_EraseEccKeyPairWithCode = _lib.A71_EraseEccKeyPairWithCode |
| A71_EraseEccKeyPairWithCode.argtypes = [SST_Index_t, POINTER(U8), U16] |
| A71_EraseEccKeyPairWithCode.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_SetEccPublicKey'): |
| continue |
| A71_SetEccPublicKey = _lib.A71_SetEccPublicKey |
| A71_SetEccPublicKey.argtypes = [SST_Index_t, POINTER(U8), U16] |
| A71_SetEccPublicKey.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_GetEccPublicKey'): |
| continue |
| A71_GetEccPublicKey = _lib.A71_GetEccPublicKey |
| A71_GetEccPublicKey.argtypes = [SST_Index_t, POINTER(U8), POINTER(U16)] |
| A71_GetEccPublicKey.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_FreezeEccPublicKey'): |
| continue |
| A71_FreezeEccPublicKey = _lib.A71_FreezeEccPublicKey |
| A71_FreezeEccPublicKey.argtypes = [SST_Index_t] |
| A71_FreezeEccPublicKey.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_FreezeEccPublicKeyWithChallenge'): |
| continue |
| A71_FreezeEccPublicKeyWithChallenge = _lib.A71_FreezeEccPublicKeyWithChallenge |
| A71_FreezeEccPublicKeyWithChallenge.argtypes = [SST_Index_t, POINTER(U8), U16] |
| A71_FreezeEccPublicKeyWithChallenge.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_FreezeEccPublicKeyWithCode'): |
| continue |
| A71_FreezeEccPublicKeyWithCode = _lib.A71_FreezeEccPublicKeyWithCode |
| A71_FreezeEccPublicKeyWithCode.argtypes = [SST_Index_t, POINTER(U8), U16] |
| A71_FreezeEccPublicKeyWithCode.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_EraseEccPublicKey'): |
| continue |
| A71_EraseEccPublicKey = _lib.A71_EraseEccPublicKey |
| A71_EraseEccPublicKey.argtypes = [SST_Index_t] |
| A71_EraseEccPublicKey.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_EraseEccPublicKeyWithChallenge'): |
| continue |
| A71_EraseEccPublicKeyWithChallenge = _lib.A71_EraseEccPublicKeyWithChallenge |
| A71_EraseEccPublicKeyWithChallenge.argtypes = [SST_Index_t, POINTER(U8), U16] |
| A71_EraseEccPublicKeyWithChallenge.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_EraseEccPublicKeyWithCode'): |
| continue |
| A71_EraseEccPublicKeyWithCode = _lib.A71_EraseEccPublicKeyWithCode |
| A71_EraseEccPublicKeyWithCode.argtypes = [SST_Index_t, POINTER(U8), U16] |
| A71_EraseEccPublicKeyWithCode.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_EccVerify'): |
| continue |
| A71_EccVerify = _lib.A71_EccVerify |
| A71_EccVerify.argtypes = [SST_Index_t, POINTER(U8), U16, POINTER(U8), U16, POINTER(U8)] |
| A71_EccVerify.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_SetSymKey'): |
| continue |
| A71_SetSymKey = _lib.A71_SetSymKey |
| A71_SetSymKey.argtypes = [SST_Index_t, POINTER(U8), U16] |
| A71_SetSymKey.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_SetRfc3394WrappedAesKey'): |
| continue |
| A71_SetRfc3394WrappedAesKey = _lib.A71_SetRfc3394WrappedAesKey |
| A71_SetRfc3394WrappedAesKey.argtypes = [SST_Index_t, POINTER(U8), U16] |
| A71_SetRfc3394WrappedAesKey.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_FreezeSymKey'): |
| continue |
| A71_FreezeSymKey = _lib.A71_FreezeSymKey |
| A71_FreezeSymKey.argtypes = [SST_Index_t] |
| A71_FreezeSymKey.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_EraseSymKey'): |
| continue |
| A71_EraseSymKey = _lib.A71_EraseSymKey |
| A71_EraseSymKey.argtypes = [SST_Index_t] |
| A71_EraseSymKey.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_GetHmacSha256'): |
| continue |
| A71_GetHmacSha256 = _lib.A71_GetHmacSha256 |
| A71_GetHmacSha256.argtypes = [SST_Index_t, U8, POINTER(U8), U16, POINTER(U8), POINTER(U16)] |
| A71_GetHmacSha256.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_HmacSha256Init'): |
| continue |
| A71_HmacSha256Init = _lib.A71_HmacSha256Init |
| A71_HmacSha256Init.argtypes = [SST_Index_t, U8] |
| A71_HmacSha256Init.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_HmacSha256Update'): |
| continue |
| A71_HmacSha256Update = _lib.A71_HmacSha256Update |
| A71_HmacSha256Update.argtypes = [SST_Index_t, U8, POINTER(U8), U16] |
| A71_HmacSha256Update.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_HmacSha256Final'): |
| continue |
| A71_HmacSha256Final = _lib.A71_HmacSha256Final |
| A71_HmacSha256Final.argtypes = [SST_Index_t, U8, POINTER(U8), POINTER(U16)] |
| A71_HmacSha256Final.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_HkdfExpandSymKey'): |
| continue |
| A71_HkdfExpandSymKey = _lib.A71_HkdfExpandSymKey |
| A71_HkdfExpandSymKey.argtypes = [SST_Index_t, U8, POINTER(U8), U16, POINTER(U8), U16] |
| A71_HkdfExpandSymKey.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_HkdfSymKey'): |
| continue |
| A71_HkdfSymKey = _lib.A71_HkdfSymKey |
| A71_HkdfSymKey.argtypes = [SST_Index_t, U8, POINTER(U8), U16, POINTER(U8), U16, POINTER(U8), U16] |
| A71_HkdfSymKey.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_PskDeriveMasterSecret'): |
| continue |
| A71_PskDeriveMasterSecret = _lib.A71_PskDeriveMasterSecret |
| A71_PskDeriveMasterSecret.argtypes = [SST_Index_t, U8, POINTER(U8), U16, POINTER(U8)] |
| A71_PskDeriveMasterSecret.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_SetGpData'): |
| continue |
| A71_SetGpData = _lib.A71_SetGpData |
| A71_SetGpData.argtypes = [U16, POINTER(U8), U16] |
| A71_SetGpData.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_SetGpDataWithLockCheck'): |
| continue |
| A71_SetGpDataWithLockCheck = _lib.A71_SetGpDataWithLockCheck |
| A71_SetGpDataWithLockCheck.argtypes = [U16, POINTER(U8), U16] |
| A71_SetGpDataWithLockCheck.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_GetGpData'): |
| continue |
| A71_GetGpData = _lib.A71_GetGpData |
| A71_GetGpData.argtypes = [U16, POINTER(U8), U16] |
| A71_GetGpData.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_FreezeGpData'): |
| continue |
| A71_FreezeGpData = _lib.A71_FreezeGpData |
| A71_FreezeGpData.argtypes = [U16, U16] |
| A71_FreezeGpData.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_IncrementCounter'): |
| continue |
| A71_IncrementCounter = _lib.A71_IncrementCounter |
| A71_IncrementCounter.argtypes = [SST_Index_t] |
| A71_IncrementCounter.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_SetCounter'): |
| continue |
| A71_SetCounter = _lib.A71_SetCounter |
| A71_SetCounter.argtypes = [SST_Index_t, U32] |
| A71_SetCounter.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_GetCounter'): |
| continue |
| A71_GetCounter = _lib.A71_GetCounter |
| A71_GetCounter.argtypes = [SST_Index_t, POINTER(U32)] |
| A71_GetCounter.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_EcdhPskDeriveMasterSecret'): |
| continue |
| A71_EcdhPskDeriveMasterSecret = _lib.A71_EcdhPskDeriveMasterSecret |
| A71_EcdhPskDeriveMasterSecret.argtypes = [SST_Index_t, POINTER(U8), U16, SST_Index_t, U8, POINTER(U8), U16, POINTER(U8)] |
| A71_EcdhPskDeriveMasterSecret.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_SetConfigKey'): |
| continue |
| A71_SetConfigKey = _lib.A71_SetConfigKey |
| A71_SetConfigKey.argtypes = [SST_Index_t, POINTER(U8), U16] |
| A71_SetConfigKey.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'A71_SetRfc3394WrappedConfigKey'): |
| continue |
| A71_SetRfc3394WrappedConfigKey = _lib.A71_SetRfc3394WrappedConfigKey |
| A71_SetRfc3394WrappedConfigKey.argtypes = [SST_Index_t, POINTER(U8), U16] |
| A71_SetRfc3394WrappedConfigKey.restype = U16 |
| break |
| |
| HLSE_RET_CODE = U16# hostlib/hostLib/inc/HLSETypes.h |
| |
| HLSE_TYPE = U32 |
| HLSE_OBJECT_HANDLE = HLSE_TYPE |
| # hostlib/hostLib/inc/HLSEMisc.h |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'HLSE_DisablePlainInjectionMode'): |
| continue |
| HLSE_DisablePlainInjectionMode = _lib.HLSE_DisablePlainInjectionMode |
| HLSE_DisablePlainInjectionMode.argtypes = [] |
| HLSE_DisablePlainInjectionMode.restype = HLSE_RET_CODE |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'HLSE_ResetContents'): |
| continue |
| HLSE_ResetContents = _lib.HLSE_ResetContents |
| HLSE_ResetContents.argtypes = [] |
| HLSE_ResetContents.restype = HLSE_RET_CODE |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'HLSE_DbgDisableDebug'): |
| continue |
| HLSE_DbgDisableDebug = _lib.HLSE_DbgDisableDebug |
| HLSE_DbgDisableDebug.argtypes = [] |
| HLSE_DbgDisableDebug.restype = HLSE_RET_CODE |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'HLSE_DbgReflect'): |
| continue |
| HLSE_DbgReflect = _lib.HLSE_DbgReflect |
| HLSE_DbgReflect.argtypes = [POINTER(U8), U16, POINTER(U8), POINTER(U16)] |
| HLSE_DbgReflect.restype = HLSE_RET_CODE |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'HLSE_DbgReset'): |
| continue |
| HLSE_DbgReset = _lib.HLSE_DbgReset |
| HLSE_DbgReset.argtypes = [] |
| HLSE_DbgReset.restype = HLSE_RET_CODE |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'HLSE_NormalizeECCSignature'): |
| continue |
| HLSE_NormalizeECCSignature = _lib.HLSE_NormalizeECCSignature |
| HLSE_NormalizeECCSignature.argtypes = [POINTER(U8), U16, POINTER(U8), POINTER(U16)] |
| HLSE_NormalizeECCSignature.restype = HLSE_RET_CODE |
| break |
| |
| enum_anon_78 = c_int # ../../hostlib/hostLib/libCommon/infra/sm_api.h |
| |
| kType_SE_Conn_Type_NONE = 0 |
| |
| kType_SE_Conn_Type_SCII2C = (0 + 2) |
| |
| kType_SE_Conn_Type_VCOM = (0 + 3) |
| |
| kType_SE_Conn_Type_JRCP_V1 = (0 + 4) |
| |
| kType_SE_Conn_Type_JRCP_V2 = (0 + 5) |
| |
| kType_SE_Conn_Type_T1oI2C = (0 + 6) |
| |
| kType_SE_Conn_Type_NFC = (0 + 7) |
| |
| kType_SE_Conn_Type_Channel = (0 + 8) |
| |
| kType_SE_Conn_Type_PCSC = (0 + 9) |
| |
| kType_SE_Conn_Type_LAST = (kType_SE_Conn_Type_PCSC + 1) |
| |
| kType_SE_Conn_Type_SIZE = 32767 |
| |
| SSS_Conn_Type_t = enum_anon_78 |
| class struct_anon_79(Structure): |
| pass |
| |
| |
| struct_anon_79.__slots__ = [ |
| 'connType', |
| 'param1', |
| 'param2', |
| 'hostLibVersion', |
| 'appletVersion', |
| 'sbVersion', |
| 'select', |
| ] |
| struct_anon_79._fields_ = [ |
| ('connType', U16), |
| ('param1', U16), |
| ('param2', U16), |
| ('hostLibVersion', U16), |
| ('appletVersion', U32), |
| ('sbVersion', U16), |
| ('select', U8), |
| ] |
| |
| SmCommState_t = struct_anon_79 |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'SM_Close'): |
| continue |
| SM_Close = _lib.SM_Close |
| SM_Close.argtypes = [POINTER(None), U8] |
| SM_Close.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'SM_Connect'): |
| continue |
| SM_Connect = _lib.SM_Connect |
| SM_Connect.argtypes = [POINTER(None), POINTER(SmCommState_t), POINTER(U8), POINTER(U16)] |
| SM_Connect.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'SM_ConnectWithAID'): |
| continue |
| SM_ConnectWithAID = _lib.SM_ConnectWithAID |
| SM_ConnectWithAID.argtypes = [POINTER(SmCommState_t), POINTER(U8), U16, POINTER(U8), POINTER(U16)] |
| SM_ConnectWithAID.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'SM_RjctConnect'): |
| continue |
| SM_RjctConnect = _lib.SM_RjctConnect |
| SM_RjctConnect.argtypes = [POINTER(POINTER(None)), String, POINTER(SmCommState_t), POINTER(U8), POINTER(U16)] |
| SM_RjctConnect.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'SM_RjctConnectWithAID'): |
| continue |
| SM_RjctConnectWithAID = _lib.SM_RjctConnectWithAID |
| SM_RjctConnectWithAID.argtypes = [String, POINTER(SmCommState_t), POINTER(U8), U16, POINTER(U8), POINTER(U16)] |
| SM_RjctConnectWithAID.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'SM_I2CConnect'): |
| continue |
| SM_I2CConnect = _lib.SM_I2CConnect |
| SM_I2CConnect.argtypes = [POINTER(POINTER(None)), POINTER(SmCommState_t), POINTER(U8), POINTER(U16), String] |
| SM_I2CConnect.restype = U16 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'SM_SendAPDU'): |
| continue |
| SM_SendAPDU = _lib.SM_SendAPDU |
| SM_SendAPDU.argtypes = [POINTER(U8), U16, POINTER(U8), POINTER(U16)] |
| SM_SendAPDU.restype = U16 |
| break |
| |
| sscp_status_t = c_uint32# ../../sss/inc/fsl_sscp.h |
| |
| class struct__sscp_context(Structure): |
| pass |
| |
| |
| sscp_context_t = struct__sscp_context |
| class struct__sscp_operation(Structure): |
| pass |
| |
| |
| sscp_operation_t = struct__sscp_operation |
| fn_sscp_invoke_command_t = CFUNCTYPE(UNCHECKED(sscp_status_t), POINTER(sscp_context_t), c_uint32, POINTER(sscp_operation_t), POINTER(c_uint32)) |
| class struct_anon_80(Structure): |
| pass |
| |
| |
| struct_anon_80.__slots__ = [ |
| 'data', |
| ] |
| struct_anon_80._fields_ = [ |
| ('data', c_uint8 * sizeof(POINTER(None))), |
| ] |
| |
| struct__sscp_context.__slots__ = [ |
| 'invoke', |
| 'context', |
| ] |
| struct__sscp_context._fields_ = [ |
| ('invoke', fn_sscp_invoke_command_t), |
| ('context', struct_anon_80), |
| ] |
| |
| class struct__sscp_memref(Structure): |
| pass |
| |
| |
| struct__sscp_memref.__slots__ = [ |
| 'buffer', |
| 'size', |
| ] |
| struct__sscp_memref._fields_ = [ |
| ('buffer', POINTER(None)), |
| ('size', c_size_t), |
| ] |
| |
| sscp_memref_t = struct__sscp_memref |
| class struct__sscp_value(Structure): |
| pass |
| |
| |
| struct__sscp_value.__slots__ = [ |
| 'a', |
| 'b', |
| ] |
| struct__sscp_value._fields_ = [ |
| ('a', c_uint32), |
| ('b', c_uint32), |
| ] |
| |
| sscp_value_t = struct__sscp_value |
| class struct__sscp_aggregate_operation(Structure): |
| pass |
| |
| |
| struct__sscp_aggregate_operation.__slots__ = [ |
| 'op', |
| ] |
| struct__sscp_aggregate_operation._fields_ = [ |
| ('op', POINTER(sscp_operation_t)), |
| ] |
| |
| sscp_aggregate_operation_t = struct__sscp_aggregate_operation |
| class struct__sscp_context_operation(Structure): |
| pass |
| |
| |
| struct__sscp_context_operation.__slots__ = [ |
| 'ptr', |
| 'type', |
| ] |
| struct__sscp_context_operation._fields_ = [ |
| ('ptr', POINTER(None)), |
| ('type', c_uint32), |
| ] |
| |
| sscp_context_reference_t = struct__sscp_context_operation |
| class union__sscp_parameter(Union): |
| pass |
| |
| |
| union__sscp_parameter.__slots__ = [ |
| 'value', |
| 'memref', |
| 'aggregate', |
| 'context', |
| ] |
| union__sscp_parameter._fields_ = [ |
| ('value', sscp_value_t), |
| ('memref', sscp_memref_t), |
| ('aggregate', sscp_aggregate_operation_t), |
| ('context', sscp_context_reference_t), |
| ] |
| |
| sscp_parameter_t = union__sscp_parameter |
| struct__sscp_operation.__slots__ = [ |
| 'paramTypes', |
| 'params', |
| ] |
| struct__sscp_operation._fields_ = [ |
| ('paramTypes', c_uint32), |
| ('params', sscp_parameter_t * 7), |
| ] |
| |
| fn_sscp_close_t = CFUNCTYPE(UNCHECKED(None), )# ../../sss/inc/fsl_sss_sscp.h |
| |
| class struct__sss_sscp_session(Structure): |
| pass |
| |
| |
| struct__sss_sscp_session.__slots__ = [ |
| 'subsystem', |
| 'sscp_context', |
| 'mem_sscp_ctx', |
| 'sessionId', |
| 'fp_closeConnection', |
| ] |
| struct__sss_sscp_session._fields_ = [ |
| ('subsystem', sss_type_t), |
| ('sscp_context', POINTER(sscp_context_t)), |
| ('mem_sscp_ctx', sscp_context_t), |
| ('sessionId', c_uint32), |
| ('fp_closeConnection', fn_sscp_close_t), |
| ] |
| |
| sss_sscp_session_t = struct__sss_sscp_session |
| # ../../sss/inc/fsl_sss_keyid_map.h |
| class struct_anon_87(Structure): |
| pass |
| |
| |
| struct_anon_87.__slots__ = [ |
| 'extKeyId', |
| 'keyPart', |
| 'accessPermission', |
| 'cipherType', |
| 'keyIntIndex', |
| ] |
| struct_anon_87._fields_ = [ |
| ('extKeyId', c_uint32), |
| ('keyPart', c_uint8), |
| ('accessPermission', c_uint8), |
| ('cipherType', c_uint8), |
| ('keyIntIndex', c_uint8), |
| ] |
| |
| keyIdAndTypeIndexLookup_t = struct_anon_87 |
| class struct__keyStoreTable_t(Structure): |
| pass |
| |
| |
| struct__keyStoreTable_t.__slots__ = [ |
| 'magic', |
| 'version', |
| 'maxEntries', |
| 'entries', |
| ] |
| struct__keyStoreTable_t._fields_ = [ |
| ('magic', c_uint32), |
| ('version', c_uint16), |
| ('maxEntries', c_uint16), |
| ('entries', POINTER(keyIdAndTypeIndexLookup_t)), |
| ] |
| |
| keyStoreTable_t = struct__keyStoreTable_t |
| # ../../sss/inc/fsl_sscp_a71ch.h |
| class struct__sss_a71ch_key_store(Structure): |
| pass |
| |
| |
| struct__sss_a71ch_key_store.__slots__ = [ |
| 'session', |
| 'keystore_shadow', |
| 'shadow_handle', |
| ] |
| struct__sss_a71ch_key_store._fields_ = [ |
| ('session', POINTER(sss_sscp_session_t)), |
| ('keystore_shadow', POINTER(keyStoreTable_t)), |
| ('shadow_handle', HLSE_OBJECT_HANDLE), |
| ] |
| |
| sss_a71ch_key_store_t = struct__sss_a71ch_key_store |
| class struct__sscp_a71ch_context(Structure): |
| pass |
| |
| |
| struct__sscp_a71ch_context.__slots__ = [ |
| 'invoke', |
| 'keyStore', |
| ] |
| struct__sscp_a71ch_context._fields_ = [ |
| ('invoke', fn_sscp_invoke_command_t), |
| ('keyStore', POINTER(sss_a71ch_key_store_t)), |
| ] |
| |
| sscp_a71ch_context_t = struct__sscp_a71ch_context |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sscp_a71ch_init'): |
| continue |
| sscp_a71ch_init = _lib.sscp_a71ch_init |
| sscp_a71ch_init.argtypes = [POINTER(sscp_a71ch_context_t), POINTER(sss_a71ch_key_store_t)] |
| sscp_a71ch_init.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sscp_a71ch_free'): |
| continue |
| sscp_a71ch_free = _lib.sscp_a71ch_free |
| sscp_a71ch_free.argtypes = [POINTER(sscp_a71ch_context_t)] |
| sscp_a71ch_free.restype = None |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sscp_a71ch_invoke_command'): |
| continue |
| sscp_a71ch_invoke_command = _lib.sscp_a71ch_invoke_command |
| sscp_a71ch_invoke_command.argtypes = [POINTER(sscp_context_t), c_uint32, POINTER(sscp_operation_t), POINTER(c_uint32)] |
| sscp_a71ch_invoke_command.restype = sscp_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sscp_a71ch_openSession'): |
| continue |
| sscp_a71ch_openSession = _lib.sscp_a71ch_openSession |
| sscp_a71ch_openSession.argtypes = [POINTER(None), POINTER(sss_sscp_session_t)] |
| sscp_a71ch_openSession.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sscp_a71chkey_store_context_free'): |
| continue |
| sscp_a71chkey_store_context_free = _lib.sscp_a71chkey_store_context_free |
| sscp_a71chkey_store_context_free.argtypes = [POINTER(sss_a71ch_key_store_t)] |
| sscp_a71chkey_store_context_free.restype = None |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sscp_a71ch_closeSession'): |
| continue |
| sscp_a71ch_closeSession = _lib.sscp_a71ch_closeSession |
| sscp_a71ch_closeSession.argtypes = [POINTER(sss_sscp_session_t)] |
| sscp_a71ch_closeSession.restype = None |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sscp_a71ch_closeConnect'): |
| continue |
| sscp_a71ch_closeConnect = _lib.sscp_a71ch_closeConnect |
| sscp_a71ch_closeConnect.argtypes = [] |
| sscp_a71ch_closeConnect.restype = None |
| break |
| |
| enum_anon_88 = c_int # hostlib/hostLib/inc/nxScp03_Types.h |
| |
| kSSS_AuthType_None = 0 |
| |
| kSSS_AuthType_SCP03 = 1 |
| |
| kSSS_AuthType_ID = 2 |
| |
| kSSS_AuthType_AESKey = 3 |
| |
| kSSS_AuthType_ECKey = 4 |
| |
| kSSS_AuthType_INT_ECKey_Counter = 20 |
| |
| kSSS_SIZE = 2147483647 |
| |
| SE_AuthType_t = enum_anon_88 |
| class struct_anon_89(Structure): |
| pass |
| |
| |
| struct_anon_89.__slots__ = [ |
| 'Enc', |
| 'Mac', |
| 'Rmac', |
| 'MCV', |
| 'cCounter', |
| 'SecurityLevel', |
| 'authType', |
| ] |
| struct_anon_89._fields_ = [ |
| ('Enc', sss_object_t), |
| ('Mac', sss_object_t), |
| ('Rmac', sss_object_t), |
| ('MCV', c_uint8 * 16), |
| ('cCounter', c_uint8 * 16), |
| ('SecurityLevel', c_uint8), |
| ('authType', SE_AuthType_t), |
| ] |
| |
| NXSCP03_DynCtx_t = struct_anon_89 |
| class struct_anon_90(Structure): |
| pass |
| |
| |
| struct_anon_90.__slots__ = [ |
| 'keyVerNo', |
| 'Enc', |
| 'Mac', |
| 'Dek', |
| ] |
| struct_anon_90._fields_ = [ |
| ('keyVerNo', c_uint8), |
| ('Enc', sss_object_t), |
| ('Mac', sss_object_t), |
| ('Dek', sss_object_t), |
| ] |
| |
| NXSCP03_StaticCtx_t = struct_anon_90 |
| class struct_anon_91(Structure): |
| pass |
| |
| |
| struct_anon_91.__slots__ = [ |
| 'pStatic_ctx', |
| 'pDyn_ctx', |
| ] |
| struct_anon_91._fields_ = [ |
| ('pStatic_ctx', POINTER(NXSCP03_StaticCtx_t)), |
| ('pDyn_ctx', POINTER(NXSCP03_DynCtx_t)), |
| ] |
| |
| NXSCP03_AuthCtx_t = struct_anon_91 |
| class struct_anon_92(Structure): |
| pass |
| |
| |
| struct_anon_92.__slots__ = [ |
| 'HostEcdsaObj', |
| 'HostEcKeypair', |
| 'SeEcPubKey', |
| 'masterSec', |
| ] |
| struct_anon_92._fields_ = [ |
| ('HostEcdsaObj', sss_object_t), |
| ('HostEcKeypair', sss_object_t), |
| ('SeEcPubKey', sss_object_t), |
| ('masterSec', sss_object_t), |
| ] |
| |
| NXECKey03_StaticCtx_t = struct_anon_92 |
| class struct_anon_93(Structure): |
| pass |
| |
| |
| struct_anon_93.__slots__ = [ |
| 'pStatic_ctx', |
| 'pDyn_ctx', |
| ] |
| struct_anon_93._fields_ = [ |
| ('pStatic_ctx', POINTER(NXECKey03_StaticCtx_t)), |
| ('pDyn_ctx', POINTER(NXSCP03_DynCtx_t)), |
| ] |
| |
| SE05x_AuthCtx_ECKey_t = struct_anon_93 |
| class struct_anon_94(Structure): |
| pass |
| |
| |
| struct_anon_94.__slots__ = [ |
| 'pObj', |
| ] |
| struct_anon_94._fields_ = [ |
| ('pObj', POINTER(sss_object_t)), |
| ] |
| |
| SE05x_AuthCtx_ID_t = struct_anon_94 |
| class struct_anon_95(Structure): |
| pass |
| |
| |
| struct_anon_95.__slots__ = [ |
| 'pKeyEnc', |
| 'pKeyMac', |
| 'pKeyDek', |
| ] |
| struct_anon_95._fields_ = [ |
| ('pKeyEnc', sss_object_t), |
| ('pKeyMac', sss_object_t), |
| ('pKeyDek', sss_object_t), |
| ] |
| |
| SM_SECURE_SCP03_KEYOBJ = struct_anon_95 |
| class struct_anon_96(Structure): |
| pass |
| |
| |
| struct_anon_96.__slots__ = [ |
| 'data', |
| ] |
| struct_anon_96._fields_ = [ |
| ('data', c_uint8 * ((0 + (3 * sizeof(POINTER(None)))) + 8)), |
| ] |
| |
| class union_anon_97(Union): |
| pass |
| |
| |
| union_anon_97.__slots__ = [ |
| 'scp03', |
| 'eckey', |
| 'idobj', |
| 'a71chAuthKeys', |
| 'extension', |
| ] |
| union_anon_97._fields_ = [ |
| ('scp03', NXSCP03_AuthCtx_t), |
| ('eckey', SE05x_AuthCtx_ECKey_t), |
| ('idobj', SE05x_AuthCtx_ID_t), |
| ('a71chAuthKeys', SM_SECURE_SCP03_KEYOBJ), |
| ('extension', struct_anon_96), |
| ] |
| |
| class struct__SE_AuthCtx(Structure): |
| pass |
| |
| |
| struct__SE_AuthCtx.__slots__ = [ |
| 'authType', |
| 'ctx', |
| ] |
| struct__SE_AuthCtx._fields_ = [ |
| ('authType', SE_AuthType_t), |
| ('ctx', union_anon_97), |
| ] |
| |
| SE_AuthCtx_t = struct__SE_AuthCtx |
| class struct_anon_98(Structure): |
| pass |
| |
| |
| struct_anon_98.__slots__ = [ |
| 'sizeOfStucture', |
| 'auth', |
| 'session_policy', |
| 'tunnelCtx', |
| 'connType', |
| 'portName', |
| 'i2cAddress', |
| 'refresh_session', |
| 'skip_select_applet', |
| ] |
| struct_anon_98._fields_ = [ |
| ('sizeOfStucture', c_uint16), |
| ('auth', SE_AuthCtx_t), |
| ('session_policy', POINTER(sss_policy_session_u)), |
| ('tunnelCtx', POINTER(sss_tunnel_t)), |
| ('connType', SSS_Conn_Type_t), |
| ('portName', String), |
| ('i2cAddress', U32), |
| ('refresh_session', c_uint8, 1), |
| ('skip_select_applet', c_uint8, 1), |
| ] |
| |
| SE_Connect_Ctx_t = struct_anon_98 |
| class struct_anon_99(Structure): |
| pass |
| |
| |
| struct_anon_99.__slots__ = [ |
| 'data', |
| ] |
| struct_anon_99._fields_ = [ |
| ('data', c_uint8 * ((0 + (4 * sizeof(POINTER(None)))) + 8)), |
| ] |
| |
| class struct_anon_100(Structure): |
| pass |
| |
| |
| struct_anon_100.__slots__ = [ |
| 'sizeOfStucture', |
| 'auth', |
| 'session_policy', |
| 'extension', |
| ] |
| struct_anon_100._fields_ = [ |
| ('sizeOfStucture', c_uint16), |
| ('auth', SE_AuthCtx_t), |
| ('session_policy', POINTER(sss_policy_session_u)), |
| ('extension', struct_anon_99), |
| ] |
| |
| sss_connect_ctx_t = struct_anon_100 |
| enum_Se05x_SYMM_CIPHER_MODES = c_int # hostlib/hostLib/inc/se05x_const.h |
| |
| Se05x_SYMM_MODE_NONE = 0 |
| |
| Se05x_SYMM_CBC = 1 |
| |
| Se05x_SYMM_EBC = 2 |
| |
| Se05x_SYMM_CTR = 8 |
| |
| enum_Se05x_AES_PADDING = c_int |
| Se05x_AES_PADDING_NONE = 0 |
| |
| Se05x_AES_PAD_NOPAD = 1 |
| |
| Se05x_AES_PAD_ISO9797_M1 = 2 |
| |
| Se05x_AES_PAD_ISO9797_M2 = 3 |
| |
| enum_Se05x_SHA_TYPE = c_int |
| Se05x_SHA_1 = 0 |
| |
| Se05x_SHA_256 = 4 |
| |
| Se05x_SHA_384 = 5 |
| |
| Se05x_SHA_512 = 6 |
| |
| enum_Se05x_MAC_TYPE = c_int |
| Se05x_CMAC = 10 |
| |
| enum_Se05x_MAC_Sign_verify = c_int |
| Se05x_MAC_Sign = 0 |
| |
| Se05x_MAC_Verify = 1 |
| |
| enum_Se05x_I2CM_RESULT_TYPE = c_int |
| Se05x_I2CM_RESULT_SUCCESS = 165 |
| |
| Se05x_I2CM_RESULT_FAILURE = 150 |
| |
| enum_anon_101 = c_int # hostlib/hostLib/inc/se05x_enums.h |
| |
| kSE05x_AppletResID_NA = 0 |
| |
| kSE05x_AppletResID_TRANSPORT = 2147418624 |
| |
| kSE05x_AppletResID_KP_ECKEY_USER = 2147418625 |
| |
| kSE05x_AppletResID_KP_ECKEY_IMPORT = 2147418626 |
| |
| kSE05x_AppletResID_FEATURE = 2147418628 |
| |
| kSE05x_AppletResID_FACTORY_RESET = 2147418629 |
| |
| kSE05x_AppletResID_UNIQUE_ID = 2147418630 |
| |
| kSE05x_AppletResID_PLATFORM_SCP = 2147418631 |
| |
| kSE05x_AppletResID_I2CM_ACCESS = 2147418632 |
| |
| kSE05x_AppletResID_RESTRICT = 2147418634 |
| |
| SE05x_AppletResID_t = enum_anon_101 |
| enum_anon_102 = c_int |
| kSE05x_SW12_NA = 0 |
| |
| kSE05x_SW12_NO_ERROR = 36864 |
| |
| kSE05x_SW12_CONDITIONS_NOT_SATISFIED = 27013 |
| |
| kSE05x_SW12_SECURITY_STATUS = 27010 |
| |
| kSE05x_SW12_WRONG_DATA = 27264 |
| |
| kSE05x_SW12_DATA_INVALID = 27012 |
| |
| kSE05x_SW12_COMMAND_NOT_ALLOWED = 27014 |
| |
| SE05x_SW12_t = enum_anon_102 |
| enum_anon_103 = c_int |
| kSE05x_INS_NA = 0 |
| |
| kSE05x_INS_MASK_INS_CHAR = 224 |
| |
| kSE05x_INS_MASK_INSTRUCTION = 31 |
| |
| kSE05x_INS_TRANSIENT = 128 |
| |
| kSE05x_INS_AUTH_OBJECT = 64 |
| |
| kSE05x_INS_ATTEST = 32 |
| |
| kSE05x_INS_WRITE = 1 |
| |
| kSE05x_INS_READ = 2 |
| |
| kSE05x_INS_CRYPTO = 3 |
| |
| kSE05x_INS_MGMT = 4 |
| |
| kSE05x_INS_PROCESS = 5 |
| |
| SE05x_INS_t = enum_anon_103 |
| enum_anon_104 = c_int |
| kSE05x_P1_NA = 0 |
| |
| kSE05x_P1_UNUSED = 128 |
| |
| kSE05x_P1_MASK_KEY_TYPE = 96 |
| |
| kSE05x_P1_MASK_CRED_TYPE = 31 |
| |
| kSE05x_P1_KEY_PAIR = 96 |
| |
| kSE05x_P1_PRIVATE = 64 |
| |
| kSE05x_P1_PUBLIC = 32 |
| |
| kSE05x_P1_DEFAULT = 0 |
| |
| kSE05x_P1_EC = 1 |
| |
| kSE05x_P1_RSA = 2 |
| |
| kSE05x_P1_AES = 3 |
| |
| kSE05x_P1_DES = 4 |
| |
| kSE05x_P1_HMAC = 5 |
| |
| kSE05x_P1_BINARY = 6 |
| |
| kSE05x_P1_UserID = 7 |
| |
| kSE05x_P1_COUNTER = 8 |
| |
| kSE05x_P1_PCR = 9 |
| |
| kSE05x_P1_CURVE = 11 |
| |
| kSE05x_P1_SIGNATURE = 12 |
| |
| kSE05x_P1_MAC = 13 |
| |
| kSE05x_P1_CIPHER = 14 |
| |
| kSE05x_P1_TLS = 15 |
| |
| kSE05x_P1_CRYPTO_OBJ = 16 |
| |
| kSE05x_P1_AEAD = 17 |
| |
| kSE05x_P1_AEAD_SP800_38D = 18 |
| |
| SE05x_P1_t = enum_anon_104 |
| enum_anon_105 = c_int |
| kSE05x_P2_DEFAULT = 0 |
| |
| kSE05x_P2_GENERATE = 3 |
| |
| kSE05x_P2_CREATE = 4 |
| |
| kSE05x_P2_SIZE = 7 |
| |
| kSE05x_P2_SIGN = 9 |
| |
| kSE05x_P2_VERIFY = 10 |
| |
| kSE05x_P2_INIT = 11 |
| |
| kSE05x_P2_UPDATE = 12 |
| |
| kSE05x_P2_FINAL = 13 |
| |
| kSE05x_P2_ONESHOT = 14 |
| |
| kSE05x_P2_DH = 15 |
| |
| kSE05x_P2_DIVERSIFY = 16 |
| |
| kSE05x_P2_AUTH_FIRST_PART2 = 18 |
| |
| kSE05x_P2_AUTH_NONFIRST_PART2 = 19 |
| |
| kSE05x_P2_DUMP_KEY = 20 |
| |
| kSE05x_P2_CHANGE_KEY_PART1 = 21 |
| |
| kSE05x_P2_CHANGE_KEY_PART2 = 22 |
| |
| kSE05x_P2_KILL_AUTH = 23 |
| |
| kSE05x_P2_IMPORT = 24 |
| |
| kSE05x_P2_EXPORT = 25 |
| |
| kSE05x_P2_SESSION_CREATE = 27 |
| |
| kSE05x_P2_SESSION_CLOSE = 28 |
| |
| kSE05x_P2_SESSION_REFRESH = 30 |
| |
| kSE05x_P2_SESSION_POLICY = 31 |
| |
| kSE05x_P2_VERSION = 32 |
| |
| kSE05x_P2_VERSION_EXT = 33 |
| |
| kSE05x_P2_MEMORY = 34 |
| |
| kSE05x_P2_LIST = 37 |
| |
| kSE05x_P2_TYPE = 38 |
| |
| kSE05x_P2_EXIST = 39 |
| |
| kSE05x_P2_DELETE_OBJECT = 40 |
| |
| kSE05x_P2_DELETE_ALL = 42 |
| |
| kSE05x_P2_SESSION_UserID = 44 |
| |
| kSE05x_P2_HKDF = 45 |
| |
| kSE05x_P2_PBKDF = 46 |
| |
| kSE05x_P2_HKDF_EXPAND_ONLY = 47 |
| |
| kSE05x_P2_I2CM = 48 |
| |
| kSE05x_P2_I2CM_ATTESTED = 49 |
| |
| kSE05x_P2_MAC = 50 |
| |
| kSE05x_P2_UNLOCK_CHALLENGE = 51 |
| |
| kSE05x_P2_CURVE_LIST = 52 |
| |
| kSE05x_P2_SIGN_ECDAA = 53 |
| |
| kSE05x_P2_ID = 54 |
| |
| kSE05x_P2_ENCRYPT_ONESHOT = 55 |
| |
| kSE05x_P2_DECRYPT_ONESHOT = 56 |
| |
| kSE05x_P2_ATTEST = 58 |
| |
| kSE05x_P2_ATTRIBUTES = 59 |
| |
| kSE05x_P2_CPLC = 60 |
| |
| kSE05x_P2_TIME = 61 |
| |
| kSE05x_P2_TRANSPORT = 62 |
| |
| kSE05x_P2_VARIANT = 63 |
| |
| kSE05x_P2_PARAM = 64 |
| |
| kSE05x_P2_DELETE_CURVE = 65 |
| |
| kSE05x_P2_ENCRYPT = 66 |
| |
| kSE05x_P2_DECRYPT = 67 |
| |
| kSE05x_P2_VALIDATE = 68 |
| |
| kSE05x_P2_GENERATE_ONESHOT = 69 |
| |
| kSE05x_P2_VALIDATE_ONESHOT = 70 |
| |
| kSE05x_P2_CRYPTO_LIST = 71 |
| |
| kSE05x_P2_RANDOM = 73 |
| |
| kSE05x_P2_TLS_PMS = 74 |
| |
| kSE05x_P2_TLS_PRF_CLI_HELLO = 75 |
| |
| kSE05x_P2_TLS_PRF_SRV_HELLO = 76 |
| |
| kSE05x_P2_TLS_PRF_CLI_RND = 77 |
| |
| kSE05x_P2_TLS_PRF_SRV_RND = 78 |
| |
| kSE05x_P2_TLS_PRF_BOTH = 90 |
| |
| kSE05x_P2_RAW = 79 |
| |
| kSE05x_P2_IMPORT_EXT = 81 |
| |
| kSE05x_P2_SCP = 82 |
| |
| kSE05x_P2_AUTH_FIRST_PART1 = 83 |
| |
| kSE05x_P2_AUTH_NONFIRST_PART1 = 84 |
| |
| kSE05x_P2_CM_COMMAND = 85 |
| |
| kSE05x_P2_MODE_OF_OPERATION = 86 |
| |
| kSE05x_P2_RESTRICT = 87 |
| |
| kSE05x_P2_SANITY = 88 |
| |
| kSE05x_P2_DH_REVERSE = 89 |
| |
| kSE05x_P2_READ_STATE = 91 |
| |
| SE05x_P2_t = enum_anon_105 |
| enum_anon_106 = c_int |
| kSE05x_MemoryType_NA = 0 |
| |
| kSE05x_MemoryType_PERSISTENT = 1 |
| |
| kSE05x_MemoryType_TRANSIENT_RESET = 2 |
| |
| kSE05x_MemoryType_TRANSIENT_DESELECT = 3 |
| |
| SE05x_MemoryType_t = enum_anon_106 |
| enum_anon_107 = c_int |
| kSE05x_Origin_NA = 0 |
| |
| kSE05x_Origin_EXTERNAL = 1 |
| |
| kSE05x_Origin_INTERNAL = 2 |
| |
| kSE05x_Origin_PROVISIONED = 3 |
| |
| SE05x_Origin_t = enum_anon_107 |
| enum_anon_108 = c_int |
| kSE05x_TAG_NA = 0 |
| |
| kSE05x_TAG_SESSION_ID = 16 |
| |
| kSE05x_TAG_POLICY = 17 |
| |
| kSE05x_TAG_MAX_ATTEMPTS = 18 |
| |
| kSE05x_TAG_IMPORT_AUTH_DATA = 19 |
| |
| kSE05x_TAG_IMPORT_AUTH_KEY_ID = 20 |
| |
| kSE05x_TAG_POLICY_CHECK = 21 |
| |
| kSE05x_TAG_1 = 65 |
| |
| kSE05x_TAG_2 = 66 |
| |
| kSE05x_TAG_3 = 67 |
| |
| kSE05x_TAG_4 = 68 |
| |
| kSE05x_TAG_5 = 69 |
| |
| kSE05x_TAG_6 = 70 |
| |
| kSE05x_TAG_7 = 71 |
| |
| kSE05x_TAG_8 = 72 |
| |
| kSE05x_TAG_9 = 73 |
| |
| kSE05x_TAG_10 = 74 |
| |
| kSE05x_TAG_11 = 75 |
| |
| kSE05x_GP_TAG_CONTRL_REF_PARM = 166 |
| |
| kSE05x_GP_TAG_AID = 79 |
| |
| kSE05x_GP_TAG_KEY_TYPE = 128 |
| |
| kSE05x_GP_TAG_KEY_LEN = 129 |
| |
| kSE05x_GP_TAG_GET_DATA = 131 |
| |
| kSE05x_GP_TAG_DR_SE = 133 |
| |
| kSE05x_GP_TAG_RECEIPT = 134 |
| |
| kSE05x_GP_TAG_SCP_PARMS = 144 |
| |
| SE05x_TAG_t = enum_anon_108 |
| enum_anon_109 = c_int |
| kSE05x_ECSignatureAlgo_NA = 0 |
| |
| kSE05x_ECSignatureAlgo_PLAIN = 9 |
| |
| kSE05x_ECSignatureAlgo_SHA = 17 |
| |
| kSE05x_ECSignatureAlgo_SHA_224 = 37 |
| |
| kSE05x_ECSignatureAlgo_SHA_256 = 33 |
| |
| kSE05x_ECSignatureAlgo_SHA_384 = 34 |
| |
| kSE05x_ECSignatureAlgo_SHA_512 = 38 |
| |
| SE05x_ECSignatureAlgo_t = enum_anon_109 |
| enum_anon_110 = c_int |
| kSE05x_EDSignatureAlgo_NA = 0 |
| |
| kSE05x_EDSignatureAlgo_ED25519PURE_SHA_512 = 163 |
| |
| SE05x_EDSignatureAlgo_t = enum_anon_110 |
| enum_anon_111 = c_int |
| kSE05x_ECDAASignatureAlgo_NA = 0 |
| |
| kSE05x_ECDAASignatureAlgo_ECDAA = 244 |
| |
| SE05x_ECDAASignatureAlgo_t = enum_anon_111 |
| enum_anon_112 = c_int |
| kSE05x_RSASignatureAlgo_NA = 0 |
| |
| kSE05x_RSASignatureAlgo_SHA1_PKCS1_PSS = 21 |
| |
| kSE05x_RSASignatureAlgo_SHA224_PKCS1_PSS = 43 |
| |
| kSE05x_RSASignatureAlgo_SHA256_PKCS1_PSS = 44 |
| |
| kSE05x_RSASignatureAlgo_SHA384_PKCS1_PSS = 45 |
| |
| kSE05x_RSASignatureAlgo_SHA512_PKCS1_PSS = 46 |
| |
| kSE05x_RSASignatureAlgo_SHA1_PKCS1 = 10 |
| |
| kSE05x_RSASignatureAlgo_SHA_224_PKCS1 = 39 |
| |
| kSE05x_RSASignatureAlgo_SHA_256_PKCS1 = 40 |
| |
| kSE05x_RSASignatureAlgo_SHA_384_PKCS1 = 41 |
| |
| kSE05x_RSASignatureAlgo_SHA_512_PKCS1 = 42 |
| |
| SE05x_RSASignatureAlgo_t = enum_anon_112 |
| enum_anon_113 = c_int |
| kSE05x_RSAEncryptionAlgo_NA = 0 |
| |
| kSE05x_RSAEncryptionAlgo_NO_PAD = 12 |
| |
| kSE05x_RSAEncryptionAlgo_PKCS1 = 10 |
| |
| kSE05x_RSAEncryptionAlgo_PKCS1_OAEP = 15 |
| |
| SE05x_RSAEncryptionAlgo_t = enum_anon_113 |
| enum_anon_114 = c_int |
| kSE05x_RSABitLength_NA = 0 |
| |
| kSE05x_RSABitLength_512 = 512 |
| |
| kSE05x_RSABitLength_1024 = 1024 |
| |
| kSE05x_RSABitLength_1152 = 1152 |
| |
| kSE05x_RSABitLength_2048 = 2048 |
| |
| kSE05x_RSABitLength_3072 = 3072 |
| |
| kSE05x_RSABitLength_4096 = 4096 |
| |
| SE05x_RSABitLength_t = enum_anon_114 |
| enum_anon_115 = c_int |
| kSE05x_RSAKeyComponent_NA = 255 |
| |
| kSE05x_RSAKeyComponent_MOD = 0 |
| |
| kSE05x_RSAKeyComponent_PUB_EXP = 1 |
| |
| kSE05x_RSAKeyComponent_PRIV_EXP = 2 |
| |
| kSE05x_RSAKeyComponent_P = 3 |
| |
| kSE05x_RSAKeyComponent_Q = 4 |
| |
| kSE05x_RSAKeyComponent_DP = 5 |
| |
| kSE05x_RSAKeyComponent_DQ = 6 |
| |
| kSE05x_RSAKeyComponent_INVQ = 7 |
| |
| SE05x_RSAKeyComponent_t = enum_anon_115 |
| enum_anon_116 = c_int |
| kSE05x_DigestMode_NA = 0 |
| |
| kSE05x_DigestMode_NO_HASH = 0 |
| |
| kSE05x_DigestMode_SHA = 1 |
| |
| kSE05x_DigestMode_SHA224 = 7 |
| |
| kSE05x_DigestMode_SHA256 = 4 |
| |
| kSE05x_DigestMode_SHA384 = 5 |
| |
| kSE05x_DigestMode_SHA512 = 6 |
| |
| SE05x_DigestMode_t = enum_anon_116 |
| enum_anon_117 = c_int |
| kSE05x_MACAlgo_NA = 0 |
| |
| kSE05x_MACAlgo_HMAC_SHA1 = 24 |
| |
| kSE05x_MACAlgo_HMAC_SHA256 = 25 |
| |
| kSE05x_MACAlgo_HMAC_SHA384 = 26 |
| |
| kSE05x_MACAlgo_HMAC_SHA512 = 27 |
| |
| kSE05x_MACAlgo_CMAC_128 = 49 |
| |
| SE05x_MACAlgo_t = enum_anon_117 |
| enum_anon_118 = c_int |
| kSE05x_AeadAlgo_NA = 0 |
| |
| kSE05x_AeadGCMAlgo = 176 |
| |
| kSE05x_AeadGCM_IVAlgo = 243 |
| |
| kSE05x_AeadCCMAlgo = 244 |
| |
| SE05x_AeadAlgo_t = enum_anon_118 |
| enum_anon_119 = c_int |
| kSE05x_HkdfMode_NA = 0 |
| |
| kSE05x_HkdfMode_ExtractExpand = 1 |
| |
| kSE05x_HkdfMode_ExpandOnly = 2 |
| |
| SE05x_HkdfMode_t = enum_anon_119 |
| enum_anon_120 = c_int |
| kSE05x_ECCurve_NA = 0 |
| |
| kSE05x_ECCurve_NIST_P192 = 1 |
| |
| kSE05x_ECCurve_NIST_P224 = 2 |
| |
| kSE05x_ECCurve_NIST_P256 = 3 |
| |
| kSE05x_ECCurve_NIST_P384 = 4 |
| |
| kSE05x_ECCurve_NIST_P521 = 5 |
| |
| kSE05x_ECCurve_Brainpool160 = 6 |
| |
| kSE05x_ECCurve_Brainpool192 = 7 |
| |
| kSE05x_ECCurve_Brainpool224 = 8 |
| |
| kSE05x_ECCurve_Brainpool256 = 9 |
| |
| kSE05x_ECCurve_Brainpool320 = 10 |
| |
| kSE05x_ECCurve_Brainpool384 = 11 |
| |
| kSE05x_ECCurve_Brainpool512 = 12 |
| |
| kSE05x_ECCurve_Secp160k1 = 13 |
| |
| kSE05x_ECCurve_Secp192k1 = 14 |
| |
| kSE05x_ECCurve_Secp224k1 = 15 |
| |
| kSE05x_ECCurve_Secp256k1 = 16 |
| |
| kSE05x_ECCurve_TPM_ECC_BN_P256 = 17 |
| |
| kSE05x_ECCurve_ECC_ED_25519 = 64 |
| |
| kSE05x_ECCurve_ECC_MONT_DH_25519 = 65 |
| |
| kSE05x_ECCurve_ECC_MONT_DH_448 = 67 |
| |
| SE05x_ECCurve_t = enum_anon_120 |
| enum_anon_121 = c_int |
| kSE05x_ECCurveParam_NA = 0 |
| |
| kSE05x_ECCurveParam_PARAM_A = 1 |
| |
| kSE05x_ECCurveParam_PARAM_B = 2 |
| |
| kSE05x_ECCurveParam_PARAM_G = 4 |
| |
| kSE05x_ECCurveParam_PARAM_N = 8 |
| |
| kSE05x_ECCurveParam_PARAM_PRIME = 16 |
| |
| SE05x_ECCurveParam_t = enum_anon_121 |
| enum_anon_122 = c_int |
| kSE05x_CipherMode_NA = 0 |
| |
| kSE05x_CipherMode_DES_CBC_NOPAD = 1 |
| |
| kSE05x_CipherMode_DES_CBC_ISO9797_M1 = 2 |
| |
| kSE05x_CipherMode_DES_CBC_ISO9797_M2 = 3 |
| |
| kSE05x_CipherMode_DES_CBC_PKCS5 = 4 |
| |
| kSE05x_CipherMode_DES_ECB_NOPAD = 5 |
| |
| kSE05x_CipherMode_DES_ECB_ISO9797_M1 = 6 |
| |
| kSE05x_CipherMode_DES_ECB_ISO9797_M2 = 7 |
| |
| kSE05x_CipherMode_DES_ECB_PKCS5 = 8 |
| |
| kSE05x_CipherMode_AES_ECB_NOPAD = 14 |
| |
| kSE05x_CipherMode_AES_CBC_NOPAD = 13 |
| |
| kSE05x_CipherMode_AES_CBC_ISO9797_M1 = 22 |
| |
| kSE05x_CipherMode_AES_CBC_ISO9797_M2 = 23 |
| |
| kSE05x_CipherMode_AES_CBC_PKCS5 = 24 |
| |
| kSE05x_CipherMode_AES_GCM = 176 |
| |
| kSE05x_CipherMode_AES_CTR = 240 |
| |
| kSE05x_CipherMode_AES_GCM_INT_IV = 243 |
| |
| kSE05x_CipherMode_AES_CCM = 244 |
| |
| SE05x_CipherMode_t = enum_anon_122 |
| enum_anon_123 = c_int |
| kSE05x_AppletConfig_NA = 0 |
| |
| kSE05x_AppletConfig_ECDAA = 1 |
| |
| kSE05x_AppletConfig_ECDSA_ECDH_ECDHE = 2 |
| |
| kSE05x_AppletConfig_EDDSA = 4 |
| |
| kSE05x_AppletConfig_DH_MONT = 8 |
| |
| kSE05x_AppletConfig_HMAC = 16 |
| |
| kSE05x_AppletConfig_RSA_PLAIN = 32 |
| |
| kSE05x_AppletConfig_RSA_CRT = 64 |
| |
| kSE05x_AppletConfig_AES = 128 |
| |
| kSE05x_AppletConfig_DES = 256 |
| |
| kSE05x_AppletConfig_PBKDF = 512 |
| |
| kSE05x_AppletConfig_TLS = 1024 |
| |
| kSE05x_AppletConfig_MIFARE = 2048 |
| |
| kSE05x_AppletConfig_RFU1 = 4096 |
| |
| kSE05x_AppletConfig_I2CM = 8192 |
| |
| kSE05x_AppletConfig_RFU2 = 16384 |
| |
| SE05x_AppletConfig_t = enum_anon_123 |
| enum_anon_124 = c_int |
| kSE05x_LockIndicator_NA = 0 |
| |
| kSE05x_LockIndicator_TRANSIENT_LOCK = 1 |
| |
| kSE05x_LockIndicator_PERSISTENT_LOCK = 2 |
| |
| SE05x_LockIndicator_t = enum_anon_124 |
| enum_anon_125 = c_int |
| kSE05x_RestrictMode_NA = 0 |
| |
| kSE05x_RestrictMode_RESTRICT_NEW = 1 |
| |
| kSE05x_RestrictMode_RESTRICT_ALL = 2 |
| |
| SE05x_RestrictMode_t = enum_anon_125 |
| enum_anon_126 = c_int |
| kSE05x_LockState_NA = 0 |
| |
| kSE05x_LockState_LOCKED = 1 |
| |
| SE05x_LockState_t = enum_anon_126 |
| enum_anon_127 = c_int |
| kSE05x_CryptoContext_NA = 0 |
| |
| kSE05x_CryptoContext_DIGEST = 1 |
| |
| kSE05x_CryptoContext_CIPHER = 2 |
| |
| kSE05x_CryptoContext_SIGNATURE = 3 |
| |
| kSE05x_CryptoContext_AEAD = 4 |
| |
| SE05x_CryptoContext_t = enum_anon_127 |
| enum_anon_128 = c_int |
| kSE05x_Result_NA = 0 |
| |
| kSE05x_Result_SUCCESS = 1 |
| |
| kSE05x_Result_FAILURE = 2 |
| |
| SE05x_Result_t = enum_anon_128 |
| enum_anon_129 = c_int |
| kSE05x_TransientIndicator_NA = 0 |
| |
| kSE05x_TransientIndicator_PERSISTENT = 1 |
| |
| kSE05x_TransientIndicator_TRANSIENT = 2 |
| |
| SE05x_TransientIndicator_t = enum_anon_129 |
| enum_anon_130 = c_int |
| kSE05x_SetIndicator_NA = 0 |
| |
| kSE05x_SetIndicator_NOT_SET = 1 |
| |
| kSE05x_SetIndicator_SET = 2 |
| |
| SE05x_SetIndicator_t = enum_anon_130 |
| enum_anon_131 = c_int |
| kSE05x_MoreIndicator_NA = 0 |
| |
| kSE05x_MoreIndicator_NO_MORE = 1 |
| |
| kSE05x_MoreIndicator_MORE = 2 |
| |
| SE05x_MoreIndicator_t = enum_anon_131 |
| enum_anon_132 = c_int |
| kSE05x_HealthCheckMode_NA = 0 |
| |
| kSE05x_HealthCheckMode_FIPS = 63750 |
| |
| kSE05x_HealthCheckMode_CODE_SIGNATURE = 65025 |
| |
| kSE05x_HealthCheckMode_DYNAMIC_FLASH_INTEGRITY = 64770 |
| |
| kSE05x_HealthCheckMode_SHIELDING = 64260 |
| |
| kSE05x_HealthCheckMode_SENSOR = 64005 |
| |
| kSE05x_HealthCheckMode_SFR_CHECK = 64515 |
| |
| SE05x_HealthCheckMode_t = enum_anon_132 |
| enum_anon_133 = c_int |
| kSE05x_PlatformSCPRequest_NA = 0 |
| |
| kSE05x_PlatformSCPRequest_REQUIRED = 1 |
| |
| kSE05x_PlatformSCPRequest_NOT_REQUIRED = 2 |
| |
| SE05x_PlatformSCPRequest_t = enum_anon_133 |
| enum_anon_134 = c_int |
| kSE05x_CryptoObject_NA = 0 |
| |
| kSE05x_CryptoObject_DIGEST_SHA = (kSE05x_CryptoObject_NA + 1) |
| |
| kSE05x_CryptoObject_DIGEST_SHA224 = (kSE05x_CryptoObject_DIGEST_SHA + 1) |
| |
| kSE05x_CryptoObject_DIGEST_SHA256 = (kSE05x_CryptoObject_DIGEST_SHA224 + 1) |
| |
| kSE05x_CryptoObject_DIGEST_SHA384 = (kSE05x_CryptoObject_DIGEST_SHA256 + 1) |
| |
| kSE05x_CryptoObject_DIGEST_SHA512 = (kSE05x_CryptoObject_DIGEST_SHA384 + 1) |
| |
| kSE05x_CryptoObject_DES_CBC_NOPAD = (kSE05x_CryptoObject_DIGEST_SHA512 + 1) |
| |
| kSE05x_CryptoObject_DES_CBC_ISO9797_M1 = (kSE05x_CryptoObject_DES_CBC_NOPAD + 1) |
| |
| kSE05x_CryptoObject_DES_CBC_ISO9797_M2 = (kSE05x_CryptoObject_DES_CBC_ISO9797_M1 + 1) |
| |
| kSE05x_CryptoObject_DES_CBC_PKCS5 = (kSE05x_CryptoObject_DES_CBC_ISO9797_M2 + 1) |
| |
| kSE05x_CryptoObject_DES_ECB_NOPAD = (kSE05x_CryptoObject_DES_CBC_PKCS5 + 1) |
| |
| kSE05x_CryptoObject_DES_ECB_ISO9797_M1 = (kSE05x_CryptoObject_DES_ECB_NOPAD + 1) |
| |
| kSE05x_CryptoObject_DES_ECB_ISO9797_M2 = (kSE05x_CryptoObject_DES_ECB_ISO9797_M1 + 1) |
| |
| kSE05x_CryptoObject_DES_ECB_PKCS5 = (kSE05x_CryptoObject_DES_ECB_ISO9797_M2 + 1) |
| |
| kSE05x_CryptoObject_AES_ECB_NOPAD = (kSE05x_CryptoObject_DES_ECB_PKCS5 + 1) |
| |
| kSE05x_CryptoObject_AES_CBC_NOPAD = (kSE05x_CryptoObject_AES_ECB_NOPAD + 1) |
| |
| kSE05x_CryptoObject_AES_CBC_ISO9797_M1 = (kSE05x_CryptoObject_AES_CBC_NOPAD + 1) |
| |
| kSE05x_CryptoObject_AES_CBC_ISO9797_M2 = (kSE05x_CryptoObject_AES_CBC_ISO9797_M1 + 1) |
| |
| kSE05x_CryptoObject_AES_CBC_PKCS5 = (kSE05x_CryptoObject_AES_CBC_ISO9797_M2 + 1) |
| |
| kSE05x_CryptoObject_AES_CTR = (kSE05x_CryptoObject_AES_CBC_PKCS5 + 1) |
| |
| kSE05x_CryptoObject_HMAC_SHA1 = (kSE05x_CryptoObject_AES_CTR + 1) |
| |
| kSE05x_CryptoObject_HMAC_SHA256 = (kSE05x_CryptoObject_HMAC_SHA1 + 1) |
| |
| kSE05x_CryptoObject_HMAC_SHA384 = (kSE05x_CryptoObject_HMAC_SHA256 + 1) |
| |
| kSE05x_CryptoObject_HMAC_SHA512 = (kSE05x_CryptoObject_HMAC_SHA384 + 1) |
| |
| kSE05x_CryptoObject_CMAC_128 = (kSE05x_CryptoObject_HMAC_SHA512 + 1) |
| |
| kSE05x_CryptoObject_AES_GCM = (kSE05x_CryptoObject_CMAC_128 + 1) |
| |
| kSE05x_CryptoObject_AES_GCM_INT_IV = (kSE05x_CryptoObject_AES_GCM + 1) |
| |
| kSE05x_CryptoObject_AES_CCM = (kSE05x_CryptoObject_AES_GCM_INT_IV + 1) |
| |
| SE05x_CryptoObject_t = enum_anon_134 |
| enum_anon_135 = c_int |
| kSE05x_SecObjTyp_EC_KEY_PAIR = 1 |
| |
| kSE05x_SecObjTyp_EC_PRIV_KEY = 2 |
| |
| kSE05x_SecObjTyp_EC_PUB_KEY = 3 |
| |
| kSE05x_SecObjTyp_RSA_KEY_PAIR = 4 |
| |
| kSE05x_SecObjTyp_RSA_KEY_PAIR_CRT = 5 |
| |
| kSE05x_SecObjTyp_RSA_PRIV_KEY = 6 |
| |
| kSE05x_SecObjTyp_RSA_PRIV_KEY_CRT = 7 |
| |
| kSE05x_SecObjTyp_RSA_PUB_KEY = 8 |
| |
| kSE05x_SecObjTyp_AES_KEY = 9 |
| |
| kSE05x_SecObjTyp_DES_KEY = 10 |
| |
| kSE05x_SecObjTyp_BINARY_FILE = 11 |
| |
| kSE05x_SecObjTyp_UserID = 12 |
| |
| kSE05x_SecObjTyp_COUNTER = 13 |
| |
| kSE05x_SecObjTyp_PCR = 15 |
| |
| kSE05x_SecObjTyp_CURVE = 16 |
| |
| kSE05x_SecObjTyp_HMAC_KEY = 17 |
| |
| SE05x_SecObjTyp_t = enum_anon_135 |
| SE05x_SecureObjectType_t = SE05x_SecObjTyp_t |
| enum_anon_136 = c_int |
| kSE05x_MemTyp_TRANSIENT_RESET = 1 |
| |
| kSE05x_MemTyp_TRANSIENT_DESELECT = 2 |
| |
| kSE05x_MemTyp_PERSISTENT = 3 |
| |
| SE05x_MemTyp_t = enum_anon_136 |
| enum_anon_137 = c_int |
| kSE05x_RSASignAlgo_NA = 0 |
| |
| kSE05x_RSASignAlgo_SHA1_PKCS1_PSS = 21 |
| |
| kSE05x_RSASignAlgo_SHA224_PKCS1_PSS = 43 |
| |
| kSE05x_RSASignAlgo_SHA256_PKCS1_PSS = 44 |
| |
| kSE05x_RSASignAlgo_SHA384_PKCS1_PSS = 45 |
| |
| kSE05x_RSASignAlgo_SHA512_PKCS1_PSS = 46 |
| |
| kSE05x_RSASignAlgo_SHA_224_PKCS1 = 39 |
| |
| kSE05x_RSASignAlgo_SHA_256_PKCS1 = 40 |
| |
| kSE05x_RSASignAlgo_SHA_384_PKCS1 = 41 |
| |
| kSE05x_RSASignAlgo_SHA_512_PKCS1 = 42 |
| |
| SE05x_RSASignAlgo_t = enum_anon_137 |
| enum_anon_138 = c_int |
| kSE05x_RSAPubKeyComp_NA = 0 |
| |
| kSE05x_RSAPubKeyComp_MOD = kSE05x_RSAKeyComponent_MOD |
| |
| kSE05x_RSAPubKeyComp_PUB_EXP = kSE05x_RSAKeyComponent_PUB_EXP |
| |
| SE05x_RSAPubKeyComp_t = enum_anon_138 |
| class union_anon_139(Union): |
| pass |
| |
| |
| union_anon_139.__slots__ = [ |
| 'digest', |
| 'cipher', |
| 'mac', |
| 'aead', |
| 'union_8bit', |
| ] |
| union_anon_139._fields_ = [ |
| ('digest', SE05x_DigestMode_t), |
| ('cipher', SE05x_CipherMode_t), |
| ('mac', SE05x_MACAlgo_t), |
| ('aead', SE05x_AeadAlgo_t), |
| ('union_8bit', c_uint8), |
| ] |
| |
| SE05x_CryptoModeSubType_t = union_anon_139 |
| enum_anon_140 = c_int |
| kSE05x_TAG_I2CM_Config = 1 |
| |
| kSE05x_TAG_I2CM_Write = 3 |
| |
| kSE05x_TAG_I2CM_Read = 4 |
| |
| SE05x_I2CM_TAG_t = enum_anon_140 |
| enum_anon_141 = c_int |
| kSE05x_TransientType_Persistent = 0 |
| |
| kSE05x_TransientType_Transient = kSE05x_INS_TRANSIENT |
| |
| SE05x_TransientType_t = enum_anon_141 |
| enum_anon_142 = c_int |
| kSE05x_KeyPart_NA = kSE05x_P1_DEFAULT |
| |
| kSE05x_KeyPart_Pair = kSE05x_P1_KEY_PAIR |
| |
| kSE05x_KeyPart_Private = kSE05x_P1_PRIVATE |
| |
| kSE05x_KeyPart_Public = kSE05x_P1_PUBLIC |
| |
| SE05x_KeyPart_t = enum_anon_142 |
| enum_anon_143 = c_int |
| kSE05x_Cipher_Oper_NA = 0 |
| |
| kSE05x_Cipher_Oper_Encrypt = kSE05x_P2_ENCRYPT |
| |
| kSE05x_Cipher_Oper_Decrypt = kSE05x_P2_DECRYPT |
| |
| SE05x_Cipher_Oper_t = enum_anon_143 |
| enum_anon_144 = c_int |
| kSE05x_Cipher_Oper_OneShot_NA = 0 |
| |
| kSE05x_Cipher_Oper_OneShot_Encrypt = kSE05x_P2_ENCRYPT_ONESHOT |
| |
| kSE05x_Cipher_Oper_OneShot_Decrypt = kSE05x_P2_DECRYPT_ONESHOT |
| |
| SE05x_Cipher_Oper_OneShot_t = enum_anon_144 |
| enum_anon_145 = c_int |
| kSE05x_Mac_Oper_NA = 0 |
| |
| kSE05x_Mac_Oper_Generate = kSE05x_P2_GENERATE |
| |
| kSE05x_Mac_Oper_Validate = kSE05x_P2_VALIDATE |
| |
| SE05x_Mac_Oper_t = enum_anon_145 |
| enum_anon_146 = c_int |
| kSE05x_AttestationType_None = 0 |
| |
| kSE05x_AttestationType_AUTH = kSE05x_INS_AUTH_OBJECT |
| |
| SE05x_AttestationType_t = enum_anon_146 |
| enum_anon_147 = c_int |
| kSE05x_SymmKeyType_AES = kSE05x_P1_AES |
| |
| kSE05x_SymmKeyType_DES = kSE05x_P1_DES |
| |
| kSE05x_SymmKeyType_HMAC = kSE05x_P1_HMAC |
| |
| kSE05x_SymmKeyType_CMAC = kSE05x_P1_AES |
| |
| SE05x_SymmKeyType_t = enum_anon_147 |
| SE05x_Variant_t = SE05x_AppletConfig_t |
| enum_anon_148 = c_int |
| kSE05x_TLS_PRF_NA = 0 |
| |
| kSE05x_TLS_PRF_CLI_HELLO = kSE05x_P2_TLS_PRF_CLI_HELLO |
| |
| kSE05x_TLS_PRF_SRV_HELLO = kSE05x_P2_TLS_PRF_SRV_HELLO |
| |
| kSE05x_TLS_PRF_CLI_RND = kSE05x_P2_TLS_PRF_CLI_RND |
| |
| kSE05x_TLS_PRF_SRV_RND = kSE05x_P2_TLS_PRF_SRV_RND |
| |
| kSE05x_TLS_PRF_BOTH = kSE05x_P2_TLS_PRF_BOTH |
| |
| SE05x_TLSPerformPRFType_t = enum_anon_148 |
| enum_anon_149 = c_int |
| kSE05x_AttestationAlgo_NA = 0 |
| |
| kSE05x_AttestationAlgo_EC_PLAIN = kSE05x_ECSignatureAlgo_PLAIN |
| |
| kSE05x_AttestationAlgo_EC_SHA = kSE05x_ECSignatureAlgo_SHA |
| |
| kSE05x_AttestationAlgo_EC_SHA_224 = kSE05x_ECSignatureAlgo_SHA_224 |
| |
| kSE05x_AttestationAlgo_EC_SHA_256 = kSE05x_ECSignatureAlgo_SHA_256 |
| |
| kSE05x_AttestationAlgo_EC_SHA_384 = kSE05x_ECSignatureAlgo_SHA_384 |
| |
| kSE05x_AttestationAlgo_EC_SHA_512 = kSE05x_ECSignatureAlgo_SHA_512 |
| |
| kSE05x_AttestationAlgo_ED25519PURE_SHA_512 = kSE05x_EDSignatureAlgo_ED25519PURE_SHA_512 |
| |
| kSE05x_AttestationAlgo_ECDAA = kSE05x_ECDAASignatureAlgo_ECDAA |
| |
| kSE05x_AttestationAlgo_RSA_SHA1_PKCS1_PSS = kSE05x_RSASignatureAlgo_SHA1_PKCS1_PSS |
| |
| kSE05x_AttestationAlgo_RSA_SHA224_PKCS1_PSS = kSE05x_RSASignatureAlgo_SHA224_PKCS1_PSS |
| |
| kSE05x_AttestationAlgo_RSA_SHA256_PKCS1_PSS = kSE05x_RSASignatureAlgo_SHA256_PKCS1_PSS |
| |
| kSE05x_AttestationAlgo_RSA_SHA384_PKCS1_PSS = kSE05x_RSASignatureAlgo_SHA384_PKCS1_PSS |
| |
| kSE05x_AttestationAlgo_RSA_SHA512_PKCS1_PSS = kSE05x_RSASignatureAlgo_SHA512_PKCS1_PSS |
| |
| kSE05x_AttestationAlgo_RSA_SHA_224_PKCS1 = kSE05x_RSASignatureAlgo_SHA_224_PKCS1 |
| |
| kSE05x_AttestationAlgo_RSA_SHA_256_PKCS1 = kSE05x_RSASignatureAlgo_SHA_256_PKCS1 |
| |
| kSE05x_AttestationAlgo_RSA_SHA_384_PKCS1 = kSE05x_RSASignatureAlgo_SHA_384_PKCS1 |
| |
| kSE05x_AttestationAlgo_RSA_SHA_512_PKCS1 = kSE05x_RSASignatureAlgo_SHA_512_PKCS1 |
| |
| SE05x_AttestationAlgo_t = enum_anon_149 |
| enum_anon_150 = c_int |
| kSE05x_RSAKeyFormat_CRT = kSE05x_P2_DEFAULT |
| |
| kSE05x_RSAKeyFormat_RAW = kSE05x_P2_RAW |
| |
| SE05x_RSAKeyFormat_t = enum_anon_150 |
| SE05x_MacOperation_t = SE05x_MACAlgo_t |
| SE05x_KeyID_t = c_uint32 |
| SE05x_MaxAttemps_t = c_uint16 |
| enum_anon_151 = c_int # ../../hostlib/hostLib/inc/se05x_tlv.h |
| |
| smStatus_t = enum_anon_151 |
| class struct_Se05xSession(Structure): |
| pass |
| |
| |
| # sss/inc/fsl_sss_se05x_types.h |
| class struct__sss_se05x_tunnel_context(Structure): |
| pass |
| |
| |
| struct_Se05xSession.__slots__ = [ |
| 'value', |
| 'hasSession', |
| 'authType', |
| 'fp_TXn', |
| 'fp_Transform', |
| 'fp_DeCrypt', |
| 'fp_RawTXn', |
| 'pChannelCtx', |
| 'fp_Transmit', |
| 'pdynScp03Ctx', |
| 'conn_ctx', |
| ] |
| struct_Se05xSession._fields_ = [ |
| ('value', c_uint8 * 8), |
| ('hasSession', c_uint8, 1), |
| ('authType', SE_AuthType_t), |
| ('fp_TXn', CFUNCTYPE(UNCHECKED(smStatus_t), POINTER(struct_Se05xSession), POINTER(tlvHeader_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), POINTER(c_size_t), c_uint8)), |
| ('fp_Transform', CFUNCTYPE(UNCHECKED(smStatus_t), POINTER(struct_Se05xSession), POINTER(tlvHeader_t), POINTER(c_uint8), c_size_t, POINTER(tlvHeader_t), POINTER(c_uint8), POINTER(c_size_t), c_uint8)), |
| ('fp_DeCrypt', CFUNCTYPE(UNCHECKED(smStatus_t), POINTER(struct_Se05xSession), c_size_t, POINTER(c_uint8), POINTER(c_size_t), c_uint8)), |
| ('fp_RawTXn', CFUNCTYPE(UNCHECKED(smStatus_t), POINTER(None), POINTER(struct__sss_se05x_tunnel_context), SE_AuthType_t, POINTER(tlvHeader_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), POINTER(c_size_t), c_uint8)), |
| ('pChannelCtx', POINTER(struct__sss_se05x_tunnel_context)), |
| ('fp_Transmit', CFUNCTYPE(UNCHECKED(smStatus_t), SE_AuthType_t, POINTER(tlvHeader_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), POINTER(c_size_t), c_uint8)), |
| ('pdynScp03Ctx', POINTER(NXSCP03_DynCtx_t)), |
| ('conn_ctx', POINTER(None)), |
| ] |
| |
| Se05xSession_t = struct_Se05xSession# ../../hostlib/hostLib/inc/se05x_tlv.h |
| |
| class struct_anon_154(Structure): |
| pass |
| |
| |
| struct_anon_154.__slots__ = [ |
| 'value', |
| 'value_len', |
| ] |
| struct_anon_154._fields_ = [ |
| ('value', POINTER(c_uint8)), |
| ('value_len', c_size_t), |
| ] |
| |
| Se05xPolicy_t = struct_anon_154 |
| class struct_anon_155(Structure): |
| pass |
| |
| |
| struct_anon_155.__slots__ = [ |
| 'ts', |
| ] |
| struct_anon_155._fields_ = [ |
| ('ts', c_uint8 * 12), |
| ] |
| |
| SE05x_TimeStamp_t = struct_anon_155 |
| pSe05xSession_t = POINTER(Se05xSession_t) |
| pSe05xPolicy_t = POINTER(Se05xPolicy_t) |
| # sss/inc/fsl_sss_se05x_types.h |
| class struct__sss_se05x_session(Structure): |
| pass |
| |
| |
| struct__sss_se05x_tunnel_context.__slots__ = [ |
| 'se05x_session', |
| 'tunnelDest', |
| ] |
| struct__sss_se05x_tunnel_context._fields_ = [ |
| ('se05x_session', POINTER(struct__sss_se05x_session)), |
| ('tunnelDest', sss_tunnel_dest_t), |
| ] |
| |
| sss_se05x_tunnel_context_t = struct__sss_se05x_tunnel_context |
| struct__sss_se05x_session.__slots__ = [ |
| 'subsystem', |
| 's_ctx', |
| 'ptun_ctx', |
| ] |
| struct__sss_se05x_session._fields_ = [ |
| ('subsystem', sss_type_t), |
| ('s_ctx', Se05xSession_t), |
| ('ptun_ctx', POINTER(sss_se05x_tunnel_context_t)), |
| ] |
| |
| sss_se05x_session_t = struct__sss_se05x_session |
| class struct__sss_se05x_object(Structure): |
| pass |
| |
| |
| class struct_anon_158(Structure): |
| pass |
| |
| |
| struct_anon_158.__slots__ = [ |
| 'session', |
| 'kekKey', |
| ] |
| struct_anon_158._fields_ = [ |
| ('session', POINTER(sss_se05x_session_t)), |
| ('kekKey', POINTER(struct__sss_se05x_object)), |
| ] |
| |
| sss_se05x_key_store_t = struct_anon_158 |
| struct__sss_se05x_object.__slots__ = [ |
| 'keyStore', |
| 'objectType', |
| 'cipherType', |
| 'keyId', |
| 'curve_id', |
| 'isPersistant', |
| ] |
| struct__sss_se05x_object._fields_ = [ |
| ('keyStore', POINTER(sss_se05x_key_store_t)), |
| ('objectType', c_uint32), |
| ('cipherType', c_uint32), |
| ('keyId', c_uint32), |
| ('curve_id', SE05x_ECCurve_t), |
| ('isPersistant', c_uint8, 1), |
| ] |
| |
| sss_se05x_object_t = struct__sss_se05x_object |
| class struct_anon_159(Structure): |
| pass |
| |
| |
| struct_anon_159.__slots__ = [ |
| 'session', |
| 'keyObject', |
| 'algorithm', |
| 'mode', |
| ] |
| struct_anon_159._fields_ = [ |
| ('session', POINTER(sss_se05x_session_t)), |
| ('keyObject', POINTER(sss_se05x_object_t)), |
| ('algorithm', sss_algorithm_t), |
| ('mode', sss_mode_t), |
| ] |
| |
| sss_se05x_derive_key_t = struct_anon_159 |
| class struct_anon_160(Structure): |
| pass |
| |
| |
| struct_anon_160.__slots__ = [ |
| 'session', |
| 'keyObject', |
| 'algorithm', |
| 'mode', |
| ] |
| struct_anon_160._fields_ = [ |
| ('session', POINTER(sss_se05x_session_t)), |
| ('keyObject', POINTER(sss_se05x_object_t)), |
| ('algorithm', sss_algorithm_t), |
| ('mode', sss_mode_t), |
| ] |
| |
| sss_se05x_asymmetric_t = struct_anon_160 |
| class struct_anon_161(Structure): |
| pass |
| |
| |
| struct_anon_161.__slots__ = [ |
| 'session', |
| 'keyObject', |
| 'algorithm', |
| 'mode', |
| 'cryptoObjectId', |
| 'cache_data', |
| 'cache_data_len', |
| ] |
| struct_anon_161._fields_ = [ |
| ('session', POINTER(sss_se05x_session_t)), |
| ('keyObject', POINTER(sss_se05x_object_t)), |
| ('algorithm', sss_algorithm_t), |
| ('mode', sss_mode_t), |
| ('cryptoObjectId', SE05x_CryptoObject_t), |
| ('cache_data', c_uint8 * 16), |
| ('cache_data_len', c_size_t), |
| ] |
| |
| sss_se05x_symmetric_t = struct_anon_161 |
| class struct_anon_162(Structure): |
| pass |
| |
| |
| struct_anon_162.__slots__ = [ |
| 'session', |
| 'keyObject', |
| 'algorithm', |
| 'mode', |
| 'cryptoObjectId', |
| ] |
| struct_anon_162._fields_ = [ |
| ('session', POINTER(sss_se05x_session_t)), |
| ('keyObject', POINTER(sss_se05x_object_t)), |
| ('algorithm', sss_algorithm_t), |
| ('mode', sss_mode_t), |
| ('cryptoObjectId', SE05x_CryptoObject_t), |
| ] |
| |
| sss_se05x_mac_t = struct_anon_162 |
| class struct_anon_163(Structure): |
| pass |
| |
| |
| struct_anon_163.__slots__ = [ |
| 'session', |
| 'keyObject', |
| 'algorithm', |
| 'mode', |
| 'cryptoObjectId', |
| 'cache_data', |
| 'cache_data_len', |
| ] |
| struct_anon_163._fields_ = [ |
| ('session', POINTER(sss_se05x_session_t)), |
| ('keyObject', POINTER(sss_se05x_object_t)), |
| ('algorithm', sss_algorithm_t), |
| ('mode', sss_mode_t), |
| ('cryptoObjectId', SE05x_CryptoObject_t), |
| ('cache_data', c_uint8 * 16), |
| ('cache_data_len', c_size_t), |
| ] |
| |
| sss_se05x_aead_t = struct_anon_163 |
| class struct_anon_164(Structure): |
| pass |
| |
| |
| struct_anon_164.__slots__ = [ |
| 'session', |
| 'algorithm', |
| 'mode', |
| 'digestFullLen', |
| 'cryptoObjectId', |
| ] |
| struct_anon_164._fields_ = [ |
| ('session', POINTER(sss_se05x_session_t)), |
| ('algorithm', sss_algorithm_t), |
| ('mode', sss_mode_t), |
| ('digestFullLen', c_size_t), |
| ('cryptoObjectId', SE05x_CryptoObject_t), |
| ] |
| |
| sss_se05x_digest_t = struct_anon_164 |
| class struct_anon_165(Structure): |
| pass |
| |
| |
| struct_anon_165.__slots__ = [ |
| 'session', |
| ] |
| struct_anon_165._fields_ = [ |
| ('session', POINTER(sss_se05x_session_t)), |
| ] |
| |
| sss_se05x_rng_context_t = struct_anon_165 |
| enum_anon_166 = c_int |
| kSSS_SE05x_SessionProp_CertUID = (kSSS_SessionProp_au8_Proprietary_Start + 1) |
| |
| sss_s05x_sesion_prop_au8_t = enum_anon_166 |
| enum_anon_167 = c_int |
| kSSS_SE05x_SessionProp_CertUIDLen = (kSSS_SessionProp_u32_Optional_Start + 1) |
| |
| sss_s05x_sesion_prop_u32_t = enum_anon_167 |
| class struct_anon_168(Structure): |
| pass |
| |
| |
| struct_anon_168.__slots__ = [ |
| 'AppletConfig_ECDAA', |
| 'AppletConfig_ECDSA_ECDH_ECDHE', |
| 'AppletConfig_EDDSA', |
| 'AppletConfig_DH_MONT', |
| 'AppletConfig_HMAC', |
| 'AppletConfig_RSA_PLAIN', |
| 'AppletConfig_RSA_CRT', |
| 'AppletConfig_AES', |
| 'AppletConfig_DES', |
| 'AppletConfig_PBKDF', |
| 'AppletConfig_TLS', |
| 'AppletConfig_MIFARE', |
| 'AppletConfig_RFU1', |
| 'AppletConfig_I2CM', |
| 'AppletConfig_RFU21', |
| ] |
| struct_anon_168._fields_ = [ |
| ('AppletConfig_ECDAA', c_uint8, 1), |
| ('AppletConfig_ECDSA_ECDH_ECDHE', c_uint8, 1), |
| ('AppletConfig_EDDSA', c_uint8, 1), |
| ('AppletConfig_DH_MONT', c_uint8, 1), |
| ('AppletConfig_HMAC', c_uint8, 1), |
| ('AppletConfig_RSA_PLAIN', c_uint8, 1), |
| ('AppletConfig_RSA_CRT', c_uint8, 1), |
| ('AppletConfig_AES', c_uint8, 1), |
| ('AppletConfig_DES', c_uint8, 1), |
| ('AppletConfig_PBKDF', c_uint8, 1), |
| ('AppletConfig_TLS', c_uint8, 1), |
| ('AppletConfig_MIFARE', c_uint8, 1), |
| ('AppletConfig_RFU1', c_uint8, 1), |
| ('AppletConfig_I2CM', c_uint8, 1), |
| ('AppletConfig_RFU21', c_uint8, 1), |
| ] |
| |
| SE05x_Applet_Feature_t = struct_anon_168 |
| class struct_anon_169(Structure): |
| pass |
| |
| |
| struct_anon_169.__slots__ = [ |
| 'EXTCFG_FORBID_ECDH', |
| 'EXTCFG_FORBID_ECDAA', |
| 'EXTCFG_FORBID_RSA_LT_2K', |
| 'EXTCFG_FORBID_RSA_SHA1', |
| 'EXTCFG_FORBID_AES_GCM', |
| 'EXTCFG_FORBID_AES_GCM_EXT_IV', |
| 'EXTCFG_FORBID_HKDF_EXTRACT', |
| ] |
| struct_anon_169._fields_ = [ |
| ('EXTCFG_FORBID_ECDH', c_uint8, 1), |
| ('EXTCFG_FORBID_ECDAA', c_uint8, 1), |
| ('EXTCFG_FORBID_RSA_LT_2K', c_uint8, 1), |
| ('EXTCFG_FORBID_RSA_SHA1', c_uint8, 1), |
| ('EXTCFG_FORBID_AES_GCM', c_uint8, 1), |
| ('EXTCFG_FORBID_AES_GCM_EXT_IV', c_uint8, 1), |
| ('EXTCFG_FORBID_HKDF_EXTRACT', c_uint8, 1), |
| ] |
| |
| SE05x_Applet_Feature_Disable_t = struct_anon_169 |
| class struct_anon_170(Structure): |
| pass |
| |
| |
| struct_anon_170.__slots__ = [ |
| 'outrandom', |
| 'outrandomLen', |
| 'timeStamp', |
| 'timeStampLen', |
| 'chipId', |
| 'chipIdLen', |
| 'attribute', |
| 'attributeLen', |
| 'signature', |
| 'signatureLen', |
| ] |
| struct_anon_170._fields_ = [ |
| ('outrandom', c_uint8 * 16), |
| ('outrandomLen', c_size_t), |
| ('timeStamp', SE05x_TimeStamp_t), |
| ('timeStampLen', c_size_t), |
| ('chipId', c_uint8 * 18), |
| ('chipIdLen', c_size_t), |
| ('attribute', c_uint8 * (256 + 15)), |
| ('attributeLen', c_size_t), |
| ('signature', c_uint8 * 512), |
| ('signatureLen', c_size_t), |
| ] |
| |
| sss_se05x_attst_comp_data_t = struct_anon_170 |
| class struct_anon_171(Structure): |
| pass |
| |
| |
| struct_anon_171.__slots__ = [ |
| 'data', |
| 'valid_number', |
| ] |
| struct_anon_171._fields_ = [ |
| ('data', sss_se05x_attst_comp_data_t * 2), |
| ('valid_number', c_uint8), |
| ] |
| |
| sss_se05x_attst_data_t = struct_anon_171 |
| enum_anon_172 = c_int |
| kSE05x_I2CM_None = 0 |
| |
| kSE05x_I2CM_Configure = (kSE05x_I2CM_None + 1) |
| |
| kSE05x_I2CM_Write = 3 |
| |
| kSE05x_I2CM_Read = (kSE05x_I2CM_Write + 1) |
| |
| kSE05x_I2CM_StructuralIssue = 255 |
| |
| SE05x_I2CM_TLV_type_t = enum_anon_172 |
| enum_anon_173 = c_int |
| kSE05x_I2CM_Success = 90 |
| |
| kSE05x_I2CM_I2C_Nack_Fail = 1 |
| |
| kSE05x_I2CM_I2C_Write_Error = 2 |
| |
| kSE05x_I2CM_I2C_Read_Error = 3 |
| |
| kSE05x_I2CM_I2C_Time_Out_Error = 5 |
| |
| kSE05x_I2CM_Invalid_Tag = 17 |
| |
| kSE05x_I2CM_Invalid_Length = 18 |
| |
| kSE05x_I2CM_Invalid_Length_Encode = 19 |
| |
| kSE05x_I2CM_I2C_Config = 33 |
| |
| SE05x_I2CM_status_t = enum_anon_173 |
| enum_anon_174 = c_int |
| kSE05x_Security_None = 0 |
| |
| kSE05x_Sign_Request = (kSE05x_Security_None + 1) |
| |
| kSE05x_Sign_Enc_Request = (kSE05x_Sign_Request + 1) |
| |
| SE05x_I2CM_securityReq_t = enum_anon_174 |
| enum_anon_175 = c_int |
| kSE05x_I2CM_Baud_Rate_100Khz = 0 |
| |
| kSE05x_I2CM_Baud_Rate_400Khz = (kSE05x_I2CM_Baud_Rate_100Khz + 1) |
| |
| SE05x_I2CM_Baud_Rate_t = enum_anon_175 |
| class struct_anon_176(Structure): |
| pass |
| |
| |
| struct_anon_176.__slots__ = [ |
| 'I2C_addr', |
| 'I2C_baudRate', |
| 'status', |
| ] |
| struct_anon_176._fields_ = [ |
| ('I2C_addr', c_uint8), |
| ('I2C_baudRate', SE05x_I2CM_Baud_Rate_t), |
| ('status', SE05x_I2CM_status_t), |
| ] |
| |
| SE05x_I2CM_configData_t = struct_anon_176 |
| class struct_anon_177(Structure): |
| pass |
| |
| |
| struct_anon_177.__slots__ = [ |
| 'operation', |
| 'keyObject', |
| ] |
| struct_anon_177._fields_ = [ |
| ('operation', SE05x_I2CM_securityReq_t), |
| ('keyObject', c_uint32), |
| ] |
| |
| SE05x_I2CM_securityData_t = struct_anon_177 |
| class struct_anon_178(Structure): |
| pass |
| |
| |
| struct_anon_178.__slots__ = [ |
| 'writeLength', |
| 'wrStatus', |
| 'writebuf', |
| ] |
| struct_anon_178._fields_ = [ |
| ('writeLength', c_uint8), |
| ('wrStatus', SE05x_I2CM_status_t), |
| ('writebuf', POINTER(c_uint8)), |
| ] |
| |
| SE05x_I2CM_writeData_t = struct_anon_178 |
| class struct_anon_179(Structure): |
| pass |
| |
| |
| struct_anon_179.__slots__ = [ |
| 'readLength', |
| 'rdStatus', |
| 'rdBuf', |
| ] |
| struct_anon_179._fields_ = [ |
| ('readLength', c_uint16), |
| ('rdStatus', SE05x_I2CM_status_t), |
| ('rdBuf', POINTER(c_uint8)), |
| ] |
| |
| SE05x_I2CM_readData_t = struct_anon_179 |
| class struct_anon_180(Structure): |
| pass |
| |
| |
| struct_anon_180.__slots__ = [ |
| 'issueStatus', |
| ] |
| struct_anon_180._fields_ = [ |
| ('issueStatus', SE05x_I2CM_status_t), |
| ] |
| |
| SE05x_I2CM_structuralIssue_t = struct_anon_180 |
| class union_anon_181(Union): |
| pass |
| |
| |
| union_anon_181.__slots__ = [ |
| 'cfg', |
| 'sec', |
| 'w', |
| 'rd', |
| 'issue', |
| ] |
| union_anon_181._fields_ = [ |
| ('cfg', SE05x_I2CM_configData_t), |
| ('sec', SE05x_I2CM_securityData_t), |
| ('w', SE05x_I2CM_writeData_t), |
| ('rd', SE05x_I2CM_readData_t), |
| ('issue', SE05x_I2CM_structuralIssue_t), |
| ] |
| |
| SE05x_I2CM_INS_type_t = union_anon_181 |
| class struct__SE05x_I2CM_cmd(Structure): |
| pass |
| |
| |
| struct__SE05x_I2CM_cmd.__slots__ = [ |
| 'type', |
| 'cmd', |
| ] |
| struct__SE05x_I2CM_cmd._fields_ = [ |
| ('type', SE05x_I2CM_TLV_type_t), |
| ('cmd', SE05x_I2CM_INS_type_t), |
| ] |
| |
| SE05x_I2CM_cmd_t = struct__SE05x_I2CM_cmd |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_se05x_mac_validate_one_go'): |
| continue |
| sss_se05x_mac_validate_one_go = _lib.sss_se05x_mac_validate_one_go |
| sss_se05x_mac_validate_one_go.argtypes = [POINTER(sss_se05x_mac_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), c_size_t] |
| sss_se05x_mac_validate_one_go.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_se05x_asymmetric_sign'): |
| continue |
| sss_se05x_asymmetric_sign = _lib.sss_se05x_asymmetric_sign |
| sss_se05x_asymmetric_sign.argtypes = [POINTER(sss_se05x_asymmetric_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), POINTER(c_size_t)] |
| sss_se05x_asymmetric_sign.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_se05x_asymmetric_verify'): |
| continue |
| sss_se05x_asymmetric_verify = _lib.sss_se05x_asymmetric_verify |
| sss_se05x_asymmetric_verify.argtypes = [POINTER(sss_se05x_asymmetric_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), c_size_t] |
| sss_se05x_asymmetric_verify.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_se05x_key_store_get_key_attst'): |
| continue |
| sss_se05x_key_store_get_key_attst = _lib.sss_se05x_key_store_get_key_attst |
| sss_se05x_key_store_get_key_attst.argtypes = [POINTER(sss_se05x_key_store_t), POINTER(sss_se05x_object_t), POINTER(c_uint8), POINTER(c_size_t), POINTER(c_size_t), POINTER(sss_se05x_object_t), sss_algorithm_t, POINTER(c_uint8), c_size_t, POINTER(sss_se05x_attst_data_t)] |
| sss_se05x_key_store_get_key_attst.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'se05x_sssKeyTypeLenToCurveId'): |
| continue |
| se05x_sssKeyTypeLenToCurveId = _lib.se05x_sssKeyTypeLenToCurveId |
| se05x_sssKeyTypeLenToCurveId.argtypes = [sss_cipher_type_t, c_size_t] |
| se05x_sssKeyTypeLenToCurveId.restype = c_uint32 |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'Se05x_i2c_master_txn'): |
| continue |
| Se05x_i2c_master_txn = _lib.Se05x_i2c_master_txn |
| Se05x_i2c_master_txn.argtypes = [POINTER(sss_session_t), POINTER(SE05x_I2CM_cmd_t), c_uint8] |
| Se05x_i2c_master_txn.restype = smStatus_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'Se05x_i2c_master_attst_txn'): |
| continue |
| Se05x_i2c_master_attst_txn = _lib.Se05x_i2c_master_attst_txn |
| Se05x_i2c_master_attst_txn.argtypes = [POINTER(sss_session_t), POINTER(sss_object_t), POINTER(SE05x_I2CM_cmd_t), POINTER(c_uint8), c_size_t, SE05x_AttestationAlgo_t, POINTER(SE05x_TimeStamp_t), POINTER(c_size_t), POINTER(c_uint8), POINTER(c_size_t), POINTER(c_uint8), POINTER(c_size_t), POINTER(c_uint8), POINTER(c_size_t), c_uint8] |
| Se05x_i2c_master_attst_txn.restype = smStatus_t |
| break |
| |
| # pycli/scripts/fsl_sss_python_export.h |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'Se05x_API_DeleteAll_Iterative'): |
| continue |
| Se05x_API_DeleteAll_Iterative = _lib.Se05x_API_DeleteAll_Iterative |
| Se05x_API_DeleteAll_Iterative.argtypes = [pSe05xSession_t] |
| Se05x_API_DeleteAll_Iterative.restype = smStatus_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'Se05x_API_WritePCR'): |
| continue |
| Se05x_API_WritePCR = _lib.Se05x_API_WritePCR |
| Se05x_API_WritePCR.argtypes = [pSe05xSession_t, pSe05xPolicy_t, c_uint32, POINTER(c_uint8), c_size_t, POINTER(c_uint8), c_size_t] |
| Se05x_API_WritePCR.restype = smStatus_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'Se05x_API_ReadIDList'): |
| continue |
| Se05x_API_ReadIDList = _lib.Se05x_API_ReadIDList |
| Se05x_API_ReadIDList.argtypes = [pSe05xSession_t, c_uint16, c_uint8, POINTER(c_uint8), POINTER(c_uint8), POINTER(c_size_t)] |
| Se05x_API_ReadIDList.restype = smStatus_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'Se05x_API_ReadSize'): |
| continue |
| Se05x_API_ReadSize = _lib.Se05x_API_ReadSize |
| Se05x_API_ReadSize.argtypes = [pSe05xSession_t, c_uint32, POINTER(c_uint16)] |
| Se05x_API_ReadSize.restype = smStatus_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'Se05x_API_ReadCryptoObjectList'): |
| continue |
| Se05x_API_ReadCryptoObjectList = _lib.Se05x_API_ReadCryptoObjectList |
| Se05x_API_ReadCryptoObjectList.argtypes = [pSe05xSession_t, POINTER(c_uint8), POINTER(c_size_t)] |
| Se05x_API_ReadCryptoObjectList.restype = smStatus_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_util_openssl_write_pkcs12'): |
| continue |
| sss_util_openssl_write_pkcs12 = _lib.sss_util_openssl_write_pkcs12 |
| sss_util_openssl_write_pkcs12.argtypes = [POINTER(sss_session_t), POINTER(sss_key_store_t), POINTER(sss_object_t), String, String, String, c_long, String, String] |
| sss_util_openssl_write_pkcs12.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_util_openssl_read_pkcs12'): |
| continue |
| sss_util_openssl_read_pkcs12 = _lib.sss_util_openssl_read_pkcs12 |
| sss_util_openssl_read_pkcs12.argtypes = [String, String, POINTER(c_uint8), POINTER(c_uint8)] |
| sss_util_openssl_read_pkcs12.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'Se05x_API_WriteSymmKey'): |
| continue |
| Se05x_API_WriteSymmKey = _lib.Se05x_API_WriteSymmKey |
| Se05x_API_WriteSymmKey.argtypes = [pSe05xSession_t, pSe05xPolicy_t, SE05x_MaxAttemps_t, c_uint32, SE05x_KeyID_t, POINTER(c_uint8), c_size_t, SE05x_INS_t, SE05x_SymmKeyType_t] |
| Se05x_API_WriteSymmKey.restype = smStatus_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'Se05x_API_WriteECKey'): |
| continue |
| Se05x_API_WriteECKey = _lib.Se05x_API_WriteECKey |
| Se05x_API_WriteECKey.argtypes = [pSe05xSession_t, pSe05xPolicy_t, SE05x_MaxAttemps_t, c_uint32, SE05x_ECCurve_t, POINTER(c_uint8), c_size_t, POINTER(c_uint8), c_size_t, SE05x_INS_t, SE05x_KeyPart_t] |
| Se05x_API_WriteECKey.restype = smStatus_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_se05x_create_object_policy_buffer'): |
| continue |
| sss_se05x_create_object_policy_buffer = _lib.sss_se05x_create_object_policy_buffer |
| sss_se05x_create_object_policy_buffer.argtypes = [POINTER(sss_policy_t), POINTER(c_uint8), POINTER(c_size_t)] |
| sss_se05x_create_object_policy_buffer.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_se05x_refresh_session'): |
| continue |
| sss_se05x_refresh_session = _lib.sss_se05x_refresh_session |
| sss_se05x_refresh_session.argtypes = [POINTER(sss_se05x_session_t), POINTER(None)] |
| sss_se05x_refresh_session.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_se05x_asymmetric_sign'): |
| continue |
| sss_se05x_asymmetric_sign = _lib.sss_se05x_asymmetric_sign |
| sss_se05x_asymmetric_sign.argtypes = [POINTER(sss_se05x_asymmetric_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), POINTER(c_size_t)] |
| sss_se05x_asymmetric_sign.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'sss_se05x_asymmetric_verify'): |
| continue |
| sss_se05x_asymmetric_verify = _lib.sss_se05x_asymmetric_verify |
| sss_se05x_asymmetric_verify.argtypes = [POINTER(sss_se05x_asymmetric_t), POINTER(c_uint8), c_size_t, POINTER(c_uint8), c_size_t] |
| sss_se05x_asymmetric_verify.restype = sss_status_t |
| break |
| |
| for _lib in list(_libs.values()): |
| if not hasattr(_lib, 'Se05x_API_GetVersion'): |
| continue |
| Se05x_API_GetVersion = _lib.Se05x_API_GetVersion |
| Se05x_API_GetVersion.argtypes = [pSe05xSession_t, POINTER(c_uint8), POINTER(c_size_t)] |
| Se05x_API_GetVersion.restype = smStatus_t |
| break |
| |
| # ../../sss/inc/fsl_sss_api.h |
| try: |
| SSS_API_VERSION = 1 |
| except: |
| pass |
| |
| try: |
| SSS_AES_BLOCK_SIZE = 16 |
| except: |
| pass |
| |
| try: |
| SSS_DES_BLOCK_SIZE = 8 |
| except: |
| pass |
| |
| try: |
| SSS_DES_KEY_SIZE = 8 |
| except: |
| pass |
| |
| try: |
| SSS_DES_IV_SIZE = 8 |
| except: |
| pass |
| |
| def SSS_ENUM(GROUP, |
| INDEX): return (GROUP | INDEX) |
| |
| try: |
| SSS_ALGORITHM_START_AES = 0 |
| except: |
| pass |
| |
| try: |
| SSS_ALGORITHM_START_CHACHA = 1 |
| except: |
| pass |
| |
| try: |
| SSS_ALGORITHM_START_DES = 2 |
| except: |
| pass |
| |
| try: |
| SSS_ALGORITHM_START_SHA = 3 |
| except: |
| pass |
| |
| try: |
| SSS_ALGORITHM_START_MAC = 4 |
| except: |
| pass |
| |
| try: |
| SSS_ALGORITHM_START_DH = 5 |
| except: |
| pass |
| |
| try: |
| SSS_ALGORITHM_START_DSA = 6 |
| except: |
| pass |
| |
| try: |
| SSS_ALGORITHM_START_RSASSA_PKCS1_V1_5 = 7 |
| except: |
| pass |
| |
| try: |
| SSS_ALGORITHM_START_RSASSA_PKCS1_PSS_MGF1 = 8 |
| except: |
| pass |
| |
| try: |
| SSS_ALGORITHM_START_RSAES_PKCS1_OAEP = 9 |
| except: |
| pass |
| |
| try: |
| SSS_ALGORITHM_START_RSAES_PKCS1_V1_5 = 10 |
| except: |
| pass |
| |
| try: |
| SSS_ALGORITHM_START_RSASSA_NO_PADDING = 11 |
| except: |
| pass |
| |
| try: |
| SSS_ALGORITHM_START_ECDSA = 12 |
| except: |
| pass |
| |
| try: |
| SSS_ALGORITHM_START_ECDAA = 13 |
| except: |
| pass |
| |
| try: |
| kAlgorithm_SSS_RSASSA_PKCS1_OEAP_SHA1 = kAlgorithm_SSS_RSAES_PKCS1_OAEP_SHA1 |
| except: |
| pass |
| |
| try: |
| kAlgorithm_SSS_RSASSA_PKCS1_OEAP_SHA224 = kAlgorithm_SSS_RSAES_PKCS1_OAEP_SHA224 |
| except: |
| pass |
| |
| try: |
| kAlgorithm_SSS_RSASSA_PKCS1_OEAP_SHA256 = kAlgorithm_SSS_RSAES_PKCS1_OAEP_SHA256 |
| except: |
| pass |
| |
| try: |
| kAlgorithm_SSS_RSASSA_PKCS1_OEAP_SHA384 = kAlgorithm_SSS_RSAES_PKCS1_OAEP_SHA384 |
| except: |
| pass |
| |
| try: |
| kAlgorithm_SSS_RSASSA_PKCS1_OEAP_SHA512 = kAlgorithm_SSS_RSAES_PKCS1_OAEP_SHA512 |
| except: |
| pass |
| |
| try: |
| kAlgorithm_SSS_RSAES_PKCS1_V1_5_SHA1 = kAlgorithm_SSS_RSAES_PKCS1_V1_5 |
| except: |
| pass |
| |
| try: |
| kAlgorithm_SSS_RSAES_PKCS1_V1_5_SHA224 = kAlgorithm_SSS_RSAES_PKCS1_V1_5 |
| except: |
| pass |
| |
| try: |
| kAlgorithm_SSS_RSAES_PKCS1_V1_5_SHA256 = kAlgorithm_SSS_RSAES_PKCS1_V1_5 |
| except: |
| pass |
| |
| try: |
| kAlgorithm_SSS_RSAES_PKCS1_V1_5_SHA384 = kAlgorithm_SSS_RSAES_PKCS1_V1_5 |
| except: |
| pass |
| |
| try: |
| kAlgorithm_SSS_RSAES_PKCS1_V1_5_SHA512 = kAlgorithm_SSS_RSAES_PKCS1_V1_5 |
| except: |
| pass |
| |
| # hostlib/hostLib/inc/a71ch_api.h |
| try: |
| A71CH_INJECT_LOCK_STATE_LOCKED = 1 |
| except: |
| pass |
| |
| try: |
| A71CH_INJECT_LOCK_STATE_UNLOCKED = 2 |
| except: |
| pass |
| |
| try: |
| A71CH_TRANSPORT_LOCK_STATE_LOCKED = 1 |
| except: |
| pass |
| |
| try: |
| A71CH_TRANSPORT_LOCK_STATE_UNLOCKED = 2 |
| except: |
| pass |
| |
| try: |
| A71CH_TRANSPORT_LOCK_STATE_ALLOW_LOCK = 3 |
| except: |
| pass |
| |
| try: |
| A71CH_NO_RESTRICTED_KP = 15 |
| except: |
| pass |
| |
| try: |
| A71CH_KEY_PAIR_0 = 0 |
| except: |
| pass |
| |
| try: |
| A71CH_KEY_PAIR_1 = 1 |
| except: |
| pass |
| |
| try: |
| A71CH_KEY_PAIR_2 = 2 |
| except: |
| pass |
| |
| try: |
| A71CH_KEY_PAIR_3 = 3 |
| except: |
| pass |
| |
| try: |
| A71CH_PUBLIC_KEY_0 = 0 |
| except: |
| pass |
| |
| try: |
| A71CH_PUBLIC_KEY_1 = 1 |
| except: |
| pass |
| |
| try: |
| A71CH_PUBLIC_KEY_2 = 2 |
| except: |
| pass |
| |
| try: |
| A71CH_SYM_KEY_0 = 0 |
| except: |
| pass |
| |
| try: |
| A71CH_SYM_KEY_1 = 1 |
| except: |
| pass |
| |
| try: |
| A71CH_SYM_KEY_2 = 2 |
| except: |
| pass |
| |
| try: |
| A71CH_SYM_KEY_3 = 3 |
| except: |
| pass |
| |
| try: |
| A71CH_SYM_KEY_4 = 4 |
| except: |
| pass |
| |
| try: |
| A71CH_SYM_KEY_5 = 5 |
| except: |
| pass |
| |
| try: |
| A71CH_SYM_KEY_6 = 6 |
| except: |
| pass |
| |
| try: |
| A71CH_SYM_KEY_7 = 7 |
| except: |
| pass |
| |
| try: |
| A71CH_COUNTER_0 = 0 |
| except: |
| pass |
| |
| try: |
| A71CH_COUNTER_1 = 1 |
| except: |
| pass |
| |
| try: |
| A71CH_CFG_KEY_IDX_MODULE_LOCK = 0 |
| except: |
| pass |
| |
| try: |
| A71CH_CFG_KEY_IDX_PRIVATE_KEYS = 1 |
| except: |
| pass |
| |
| try: |
| A71CH_CFG_KEY_IDX_PUBLIC_KEYS = 2 |
| except: |
| pass |
| |
| try: |
| A71CH_SYM_KEY_COMBINED_MAX = 4 |
| except: |
| pass |
| |
| try: |
| A71CH_MAP_SIZE_MAX = 203 |
| except: |
| pass |
| |
| try: |
| A71CH_MAX_CMD_PAYLOAD_SIZE = 255 |
| except: |
| pass |
| |
| try: |
| A71CH_SCP03_MAX_PAYLOAD_SIZE = 239 |
| except: |
| pass |
| |
| try: |
| A71CH_GP_STORAGE_SIZE_A = 1024 |
| except: |
| pass |
| |
| try: |
| A71CH_GP_STORAGE_SIZE_B = 4096 |
| except: |
| pass |
| |
| try: |
| A71CH_GP_STORAGE_GRANULARITY = 32 |
| except: |
| pass |
| |
| try: |
| A71CH_GP_STORAGE_MAX_DATA_CHUNK = A71CH_SCP03_MAX_PAYLOAD_SIZE |
| except: |
| pass |
| |
| try: |
| DERIVE_KEYDATA_FROM_SHARED_SECRET_MAX_INFO = 192 |
| except: |
| pass |
| |
| try: |
| DERIVE_KEYDATA_FROM_SHARED_SECRET_MAX_DERIVED_DATA = 255 |
| except: |
| pass |
| |
| try: |
| A71CH_HKDF_MAX_SALT = 32 |
| except: |
| pass |
| |
| try: |
| A71CH_HMAC_SHA256_MAX_DATA_CHUNK = A71CH_SCP03_MAX_PAYLOAD_SIZE |
| except: |
| pass |
| |
| try: |
| A71CH_SHA256_MAX_DATA_CHUNK = A71CH_SCP03_MAX_PAYLOAD_SIZE |
| except: |
| pass |
| |
| try: |
| A71CH_TLS_MAX_LABEL = 24 |
| except: |
| pass |
| |
| try: |
| A71CH_MODULE_UNLOCK_CHALLENGE_LEN = 16 |
| except: |
| pass |
| |
| try: |
| A71CH_MODULE_UNIQUE_ID_LEN = 18 |
| except: |
| pass |
| |
| try: |
| A71CH_MODULE_CERT_UID_LEN = 10 |
| except: |
| pass |
| |
| try: |
| A71CH_WRAPPED_KEY_LEN = 24 |
| except: |
| pass |
| |
| try: |
| A71CH_PUB_KEY_LEN = 65 |
| except: |
| pass |
| |
| try: |
| AX_SHA256_LEN = 32 |
| except: |
| pass |
| |
| try: |
| AX_TLS_PSK_MASTER_SECRET_LEN = 48 |
| except: |
| pass |
| |
| try: |
| AX_TLS_PSK_HELLO_RANDOM_LEN = 32 |
| except: |
| pass |
| |
| try: |
| SESSION_ID_LEN = 4 |
| except: |
| pass |
| |
| try: |
| MONOTONIC_COUNTER_BYTE_COUNT = 4 |
| except: |
| pass |
| |
| try: |
| A71CH_SCP_MANDATORY = 1 |
| except: |
| pass |
| |
| try: |
| A71CH_SCP_NOT_SET_UP = 2 |
| except: |
| pass |
| |
| try: |
| A71CH_SCP_KEYS_SET = 3 |
| except: |
| pass |
| |
| try: |
| A71CH_SCP_CHANNEL_STATE_UNKNOWN = 15 |
| except: |
| pass |
| |
| try: |
| A71CH_UID_IC_TYPE_OFFSET = 2 |
| except: |
| pass |
| |
| try: |
| A71CH_UID_IC_FABRICATION_DATA_OFFSET = 8 |
| except: |
| pass |
| |
| try: |
| A71CH_UID_IC_SERIAL_NR_OFFSET = 10 |
| except: |
| pass |
| |
| try: |
| A71CH_UID_IC_BATCH_ID_OFFSET = 13 |
| except: |
| pass |
| |
| try: |
| MAX_CHUNK_LENGTH_LINK = 256 |
| except: |
| pass |
| |
| # ../../hostlib/hostLib/inc/PlugAndTrust_HostLib_Ver.h |
| try: |
| PLUGANDTRUST_HOSTLIB_VER_MAJOR = 3 |
| except: |
| pass |
| |
| try: |
| PLUGANDTRUST_HOSTLIB_VER_MINOR = 1 |
| except: |
| pass |
| |
| # ../../hostlib/hostLib/libCommon/infra/sm_api.h |
| try: |
| AX_HOST_LIB_MAJOR = PLUGANDTRUST_HOSTLIB_VER_MAJOR |
| except: |
| pass |
| |
| try: |
| AX_HOST_LIB_MINOR = PLUGANDTRUST_HOSTLIB_VER_MINOR |
| except: |
| pass |
| |
| try: |
| SE_CONNECT_TYPE_START = 0 |
| except: |
| pass |
| |
| try: |
| SELECT_APPLET = 0 |
| except: |
| pass |
| |
| try: |
| SELECT_NONE = 1 |
| except: |
| pass |
| |
| try: |
| SELECT_SSD = 2 |
| except: |
| pass |
| |
| # hostlib/hostLib/inc/nxScp03_Types.h |
| try: |
| kSSS_AuthType_INT_FastSCP_Counter = kSSS_AuthType_INT_ECKey_Counter |
| except: |
| pass |
| |
| try: |
| kSSS_AuthType_FastSCP_Counter = kSSS_AuthType_INT_ECKey_Counter |
| except: |
| pass |
| |
| try: |
| kSSS_AuthType_FastSCP = kSSS_AuthType_ECKey |
| except: |
| pass |
| |
| try: |
| kSSS_AuthType_AppletSCP03 = kSSS_AuthType_AESKey |
| except: |
| pass |
| |
| SE05x_AuthCtx_t = SE_AuthCtx_t |
| try: |
| kSE05x_AuthType_None = kSSS_AuthType_None |
| except: |
| pass |
| |
| try: |
| kSE05x_AuthType_SCP03 = kSSS_AuthType_SCP03 |
| except: |
| pass |
| |
| try: |
| kSE05x_AuthType_UserID = kSSS_AuthType_ID |
| except: |
| pass |
| |
| try: |
| kSE05x_AuthType_AESKey = kSSS_AuthType_AESKey |
| except: |
| pass |
| |
| try: |
| kSE05x_AuthType_ECKey = kSSS_AuthType_ECKey |
| except: |
| pass |
| |
| SE05x_AuthType_t = SE_AuthType_t |
| # hostlib/hostLib/inc/se05x_const.h |
| try: |
| SE05X_SESSIONID_LEN = 8 |
| except: |
| pass |
| |
| try: |
| SE05X_MAX_BUF_SIZE_CMD = 1024 |
| except: |
| pass |
| |
| try: |
| SE05X_MAX_BUF_SIZE_RSP = 1024 |
| except: |
| pass |
| |
| try: |
| SE050_MODULE_UNIQUE_ID_LEN = 18 |
| except: |
| pass |
| |
| try: |
| SE05X_I2CM_MAX_BUF_SIZE_CMD = 271 |
| except: |
| pass |
| |
| try: |
| SE05X_I2CM_MAX_BUF_SIZE_RSP = 271 |
| except: |
| pass |
| |
| try: |
| SE05X_I2CM_MAX_TIMESTAMP_SIZE = 12 |
| except: |
| pass |
| |
| try: |
| SE05X_I2CM_MAX_FRESHNESS_SIZE = 16 |
| except: |
| pass |
| |
| try: |
| SE05X_I2CM_MAX_CHIP_ID_SIZE = 18 |
| except: |
| pass |
| |
| try: |
| SE05X_MAX_ATTST_DATA = 2 |
| except: |
| pass |
| |
| try: |
| START_SE05X_ID_CURVE_START = 0 |
| except: |
| pass |
| |
| try: |
| CIPHER_BLOCK_SIZE = 16 |
| except: |
| pass |
| |
| try: |
| AEAD_BLOCK_SIZE = 16 |
| except: |
| pass |
| |
| try: |
| BINARY_WRITE_MAX_LEN = 500 |
| except: |
| pass |
| |
| try: |
| MAX_OBJ_PCR_VALUE_SIZE = 32 |
| except: |
| pass |
| |
| try: |
| MAX_POLICY_BUFFER_SIZE = 256 |
| except: |
| pass |
| |
| try: |
| MAX_OBJ_POLICY_SIZE = 47 |
| except: |
| pass |
| |
| try: |
| MAX_OBJ_POLICY_TYPES = 6 |
| except: |
| pass |
| |
| try: |
| DEFAULT_OBJECT_POLICY_SIZE = 8 |
| except: |
| pass |
| |
| try: |
| OBJ_POLICY_HEADER_OFFSET = 5 |
| except: |
| pass |
| |
| try: |
| OBJ_POLICY_LENGTH_OFFSET = 0 |
| except: |
| pass |
| |
| try: |
| OBJ_POLICY_AUTHID_OFFSET = 1 |
| except: |
| pass |
| |
| try: |
| OBJ_POLICY_EXT_OFFSET = 9 |
| except: |
| pass |
| |
| try: |
| OBJ_POLICY_PCR_DATA_SIZE = (4 + MAX_OBJ_PCR_VALUE_SIZE) |
| except: |
| pass |
| |
| try: |
| OBJ_POLICY_AUTH_DATA_SIZE = 2 |
| except: |
| pass |
| |
| try: |
| SESSION_POLICY_LENGTH_OFFSET = 0 |
| except: |
| pass |
| |
| try: |
| SESSION_POLICY_AR_HEADER_OFFSET = 1 |
| except: |
| pass |
| |
| try: |
| DEFAULT_SESSION_POLICY_SIZE = 3 |
| except: |
| pass |
| |
| try: |
| POLICY_OBJ_FORBID_ALL = 536870912 |
| except: |
| pass |
| |
| try: |
| POLICY_OBJ_ALLOW_SIGN = 268435456 |
| except: |
| pass |
| |
| try: |
| POLICY_OBJ_ALLOW_VERIFY = 134217728 |
| except: |
| pass |
| |
| try: |
| POLICY_OBJ_ALLOW_KA = 67108864 |
| except: |
| pass |
| |
| try: |
| POLICY_OBJ_ALLOW_ENC = 33554432 |
| except: |
| pass |
| |
| try: |
| POLICY_OBJ_ALLOW_DEC = 16777216 |
| except: |
| pass |
| |
| try: |
| POLICY_OBJ_ALLOW_KDF = 8388608 |
| except: |
| pass |
| |
| try: |
| POLICY_OBJ_ALLOW_WRAP = 4194304 |
| except: |
| pass |
| |
| try: |
| POLICY_OBJ_ALLOW_READ = 2097152 |
| except: |
| pass |
| |
| try: |
| POLICY_OBJ_ALLOW_WRITE = 1048576 |
| except: |
| pass |
| |
| try: |
| POLICY_OBJ_ALLOW_GEN = 524288 |
| except: |
| pass |
| |
| try: |
| POLICY_OBJ_ALLOW_DELETE = 262144 |
| except: |
| pass |
| |
| try: |
| POLICY_OBJ_REQUIRE_SM = 131072 |
| except: |
| pass |
| |
| try: |
| POLICY_OBJ_REQUIRE_PCR_VALUE = 65536 |
| except: |
| pass |
| |
| try: |
| POLICY_OBJ_ALLOW_ATTESTATION = 32768 |
| except: |
| pass |
| |
| try: |
| POLICY_OBJ_ALLOW_DESFIRE_AUTHENTICATION = 16384 |
| except: |
| pass |
| |
| try: |
| POLICY_OBJ_ALLOW_DESFIRE_DUMP_SESSION_KEYS = 8192 |
| except: |
| pass |
| |
| try: |
| POLICY_OBJ_ALLOW_IMPORT_EXPORT = 4096 |
| except: |
| pass |
| |
| try: |
| POLICY_OBJ_FORBID_DERIVED_OUTPUT = 2048 |
| except: |
| pass |
| |
| try: |
| POLICY_OBJ_ALLOW_KDF_EXT_RANDOM = 1024 |
| except: |
| pass |
| |
| try: |
| POLICY_SESSION_MAX_APDU = 32768 |
| except: |
| pass |
| |
| try: |
| POLICY_SESSION_MAX_TIME = 16384 |
| except: |
| pass |
| |
| try: |
| POLICY_SESSION_ALLOW_REFRESH = 8192 |
| except: |
| pass |
| |
| # hostlib/hostLib/inc/se05x_enums.h |
| try: |
| kSE05x_TAG_GP_CONTRL_REF_PARM = kSE05x_GP_TAG_CONTRL_REF_PARM |
| except: |
| pass |
| |
| try: |
| kSE05x_ECCurve_RESERVED_ID_ECC_ED_25519 = kSE05x_ECCurve_ECC_ED_25519 |
| except: |
| pass |
| |
| try: |
| kSE05x_ECCurve_RESERVED_ID_ECC_MONT_DH_25519 = kSE05x_ECCurve_ECC_MONT_DH_25519 |
| except: |
| pass |
| |
| try: |
| kSE05x_ECCurve_RESERVED_ID_ECC_MONT_DH_448 = kSE05x_ECCurve_ECC_MONT_DH_448 |
| except: |
| pass |
| |
| try: |
| kSE05x_ECCurve_Total_Weierstrass_Curves = kSE05x_ECCurve_TPM_ECC_BN_P256 |
| except: |
| pass |
| |
| SE05x_CryptoObjectID_t = SE05x_CryptoObject_t |
| try: |
| SE050_MAX_NUMBER_OF_SESSIONS = 2 |
| except: |
| pass |
| |
| try: |
| SE050_OBJECT_IDENTIFIER_SIZE = 4 |
| except: |
| pass |
| |
| try: |
| SE050_MAX_I2CM_COMMAND_LENGTH = 255 |
| except: |
| pass |
| |
| try: |
| SE050_MAX_APDU_PAYLOAD_LENGTH = 896 |
| except: |
| pass |
| |
| try: |
| SE050_INS_MASK_INS_CHAR = 224 |
| except: |
| pass |
| |
| try: |
| SE050_INS_MASK_INSTRUCTION = 31 |
| except: |
| pass |
| |
| try: |
| SE05x_KeyID_KEK_NONE = 0 |
| except: |
| pass |
| |
| try: |
| SE05x_KeyID_MFDF_NONE = 0 |
| except: |
| pass |
| |
| try: |
| SE05x_MaxAttemps_UNLIMITED = 0 |
| except: |
| pass |
| |
| try: |
| SE05x_MaxAttemps_NA = 0 |
| except: |
| pass |
| |
| try: |
| kSE05x_INS_READ_With_Attestation = (kSE05x_INS_READ | kSE05x_INS_ATTEST) |
| except: |
| pass |
| |
| try: |
| kSE05x_INS_I2CM_Attestation = (kSE05x_INS_CRYPTO | kSE05x_INS_ATTEST) |
| except: |
| pass |
| |
| # sss/inc/fsl_sss_se05x_types.h |
| def SSS_SUBSYSTEM_TYPE_IS_SE05X(subsystem): return (subsystem == kType_SSS_SE_SE05x) |
| |
| def SSS_SESSION_TYPE_IS_SE05X(session): return (session and (SSS_SUBSYSTEM_TYPE_IS_SE05X ((session.contents.subsystem)))) |
| |
| def SSS_KEY_STORE_TYPE_IS_SE05X(keyStore): return (keyStore and (SSS_SESSION_TYPE_IS_SE05X ((keyStore.contents.session)))) |
| |
| def SSS_OBJECT_TYPE_IS_SE05X(pObject): return (pObject and (SSS_KEY_STORE_TYPE_IS_SE05X ((pObject.contents.keyStore)))) |
| |
| def SSS_ASYMMETRIC_TYPE_IS_SE05X(context): return (context and (SSS_SESSION_TYPE_IS_SE05X ((context.contents.session)))) |
| |
| def SSS_DERIVE_KEY_TYPE_IS_SE05X(context): return (context and (SSS_SESSION_TYPE_IS_SE05X ((context.contents.session)))) |
| |
| def SSS_SYMMETRIC_TYPE_IS_SE05X(context): return (context and (SSS_SESSION_TYPE_IS_SE05X ((context.contents.session)))) |
| |
| def SSS_MAC_TYPE_IS_SE05X(context): return (context and (SSS_SESSION_TYPE_IS_SE05X ((context.contents.session)))) |
| |
| def SSS_RNG_CONTEXT_TYPE_IS_SE05X(context): return (context and (SSS_SESSION_TYPE_IS_SE05X ((context.contents.session)))) |
| |
| def SSS_DIGEST_TYPE_IS_SE05X(context): return (context and (SSS_SESSION_TYPE_IS_SE05X ((context.contents.session)))) |
| |
| def SSS_AEAD_TYPE_IS_SE05X(context): return (context and (SSS_SESSION_TYPE_IS_SE05X ((context.contents.session)))) |
| |
| def SSS_TUNNEL_CONTEXT_TYPE_IS_SE05X(context): return (context and (SSS_SESSION_TYPE_IS_SE05X ((context.contents.session)))) |
| |
| def SSS_TUNNEL_TYPE_IS_SE05X(context): return (context and (SSS_SESSION_TYPE_IS_SE05X ((context.contents.session)))) |
| |
| SE05x_Connect_Ctx_t = SE_Connect_Ctx_t |
| se05x_auth_context_t = SE_Connect_Ctx_t |
| _sss_a71ch_key_store = struct__sss_a71ch_key_store# ../../sss/inc/fsl_sscp_a71ch.h |
| |
| _sscp_a71ch_context = struct__sscp_a71ch_context |
| _SE_AuthCtx = struct__SE_AuthCtx# hostlib/hostLib/inc/nxScp03_Types.h |
| |
| _sss_se05x_tunnel_context = struct__sss_se05x_tunnel_context# sss/inc/fsl_sss_se05x_types.h |
| |
| _sss_se05x_session = struct__sss_se05x_session |
| _sss_se05x_object = struct__sss_se05x_object |
| _SE05x_I2CM_cmd = struct__SE05x_I2CM_cmd |
| # No inserted files |
| |