and though bugs are the bane of my existence, rest assured the wretched thing will get the best of care here

...
 
Commits (2)
#------------------------------------------------------------------------------
# $File$
# $File: citrus,v 1.5 2021/01/04 19:48:31 christos Exp $
# citrus locale declaration
#
0 string RuneCT Citrus locale declaration for LC_CTYPE
0 string CtrsME Citrus locale declaration for LC_MESSAGES
0 string CtrsMO Citrus locale declaration for LC_MONETARY
0 string CtrsNU Citrus locale declaration for LC_NUMERIC
0 string CtrsTI Citrus locale declaration for LC_TIME
......@@ -50,6 +50,14 @@ MAGIC_NO_CHECK_ENCODING = NO_CHECK_ENCODING = 2097152
MAGIC_NO_CHECK_BUILTIN = NO_CHECK_BUILTIN = 4173824
MAGIC_PARAM_INDIR_MAX = PARAM_INDIR_MAX = 0
MAGIC_PARAM_NAME_MAX = PARAM_NAME_MAX = 1
MAGIC_PARAM_ELF_PHNUM_MAX = PARAM_ELF_PHNUM_MAX = 2
MAGIC_PARAM_ELF_SHNUM_MAX = PARAM_ELF_SHNUM_MAX = 3
MAGIC_PARAM_ELF_NOTES_MAX = PARAM_ELF_NOTES_MAX = 4
MAGIC_PARAM_REGEX_MAX = PARAM_REGEX_MAX = 5
MAGIC_PARAM_BYTES_MAX = PARAM_BYTES_MAX = 6
FileMagic = namedtuple('FileMagic', ('mime_type', 'encoding', 'name'))
......@@ -106,6 +114,14 @@ _errno = _libraries['magic'].magic_errno
_errno.restype = c_int
_errno.argtypes = [magic_t]
_getparam = _libraries['magic'].magic_getparam
_getparam.restype = c_int
_getparam.argtypes = [magic_t, c_int, c_void_p]
_setparam = _libraries['magic'].magic_setparam
_setparam.restype = c_int
_setparam.argtypes = [magic_t, c_int, c_void_p]
class Magic(object):
def __init__(self, ms):
......@@ -231,6 +247,24 @@ class Magic(object):
"""
return _errno(self._magic_t)
def getparam(self, param):
"""
Returns the param value if successful and -1 if the parameter
was unknown.
"""
v = c_int()
i = _getparam(self._magic_t, param, byref(v))
if i == -1:
return -1
return v.value
def setparam(self, param, value):
"""
Returns 0 if successful and -1 if the parameter was unknown.
"""
v = c_int(value)
return _setparam(self._magic_t, param, byref(v))
def open(flags):
"""
......