# This file was automatically generated by SWIG (http://www.swig.org).
# Version 3.0.12
#
# Do not make changes to this file unless you know what you are doing--modify
# the SWIG interface file instead.

from sys import version_info as _swig_python_version_info
if _swig_python_version_info >= (3, 0, 0):
    new_instancemethod = lambda func, inst, cls: _capi.SWIG_PyInstanceMethod_New(func)
else:
    from new import instancemethod as new_instancemethod
if _swig_python_version_info >= (2, 7, 0):
    def swig_import_helper():
        import importlib
        pkg = __name__.rpartition('.')[0]
        mname = '.'.join((pkg, '_capi')).lstrip('.')
        try:
            return importlib.import_module(mname)
        except ImportError:
            return importlib.import_module('_capi')
    _capi = swig_import_helper()
    del swig_import_helper
elif _swig_python_version_info >= (2, 6, 0):
    def swig_import_helper():
        from os.path import dirname
        import imp
        fp = None
        try:
            fp, pathname, description = imp.find_module('_capi', [dirname(__file__)])
        except ImportError:
            import _capi
            return _capi
        try:
            _mod = imp.load_module('_capi', fp, pathname, description)
        finally:
            if fp is not None:
                fp.close()
        return _mod
    _capi = swig_import_helper()
    del swig_import_helper
else:
    import _capi
del _swig_python_version_info

try:
    _swig_property = property
except NameError:
    pass  # Python < 2.2 doesn't have 'property'.

try:
    import builtins as __builtin__
except ImportError:
    import __builtin__

def _swig_setattr_nondynamic(self, class_type, name, value, static=1):
    if (name == "thisown"):
        return self.this.own(value)
    if (name == "this"):
        if type(value).__name__ == 'SwigPyObject':
            self.__dict__[name] = value
            return
    method = class_type.__swig_setmethods__.get(name, None)
    if method:
        return method(self, value)
    if (not static):
        object.__setattr__(self, name, value)
    else:
        raise AttributeError("You cannot add attributes to %s" % self)


def _swig_setattr(self, class_type, name, value):
    return _swig_setattr_nondynamic(self, class_type, name, value, 0)


def _swig_getattr(self, class_type, name):
    if (name == "thisown"):
        return self.this.own()
    method = class_type.__swig_getmethods__.get(name, None)
    if method:
        return method(self)
    raise AttributeError("'%s' object has no attribute '%s'" % (class_type.__name__, name))


def _swig_repr(self):
    try:
        strthis = "proxy of " + self.this.__repr__()
    except __builtin__.Exception:
        strthis = ""
    return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)


def _swig_setattr_nondynamic_method(set):
    def set_attr(self, name, value):
        if (name == "thisown"):
            return self.this.own(value)
        if hasattr(self, name) or (name == "this"):
            set(self, name, value)
        else:
            raise AttributeError("You cannot add attributes to %s" % self)
    return set_attr



def genl_ctrl_alloc_cache(arg1, o_cache):
    return _capi.genl_ctrl_alloc_cache(arg1, o_cache)
genl_ctrl_alloc_cache = _capi.genl_ctrl_alloc_cache

def genl_ctrl_search(arg1, arg2):
    return _capi.genl_ctrl_search(arg1, arg2)
genl_ctrl_search = _capi.genl_ctrl_search

def genl_ctrl_search_by_name(arg1, arg2):
    return _capi.genl_ctrl_search_by_name(arg1, arg2)
genl_ctrl_search_by_name = _capi.genl_ctrl_search_by_name

def genl_ctrl_resolve(arg1, arg2):
    return _capi.genl_ctrl_resolve(arg1, arg2)
genl_ctrl_resolve = _capi.genl_ctrl_resolve

def genl_ctrl_resolve_grp(sk, family, grp):
    return _capi.genl_ctrl_resolve_grp(sk, family, grp)
genl_ctrl_resolve_grp = _capi.genl_ctrl_resolve_grp

def genl_family_alloc():
    return _capi.genl_family_alloc()
genl_family_alloc = _capi.genl_family_alloc

def genl_family_put(arg1):
    return _capi.genl_family_put(arg1)
genl_family_put = _capi.genl_family_put

def genl_family_get_id(arg1):
    return _capi.genl_family_get_id(arg1)
genl_family_get_id = _capi.genl_family_get_id

def genl_family_set_id(arg1, arg2):
    return _capi.genl_family_set_id(arg1, arg2)
genl_family_set_id = _capi.genl_family_set_id

def genl_family_get_name(arg1):
    return _capi.genl_family_get_name(arg1)
genl_family_get_name = _capi.genl_family_get_name

def genl_family_set_name(arg1, name):
    return _capi.genl_family_set_name(arg1, name)
genl_family_set_name = _capi.genl_family_set_name

def genl_family_get_version(arg1):
    return _capi.genl_family_get_version(arg1)
genl_family_get_version = _capi.genl_family_get_version

def genl_family_set_version(arg1, arg2):
    return _capi.genl_family_set_version(arg1, arg2)
genl_family_set_version = _capi.genl_family_set_version

def genl_family_get_hdrsize(arg1):
    return _capi.genl_family_get_hdrsize(arg1)
genl_family_get_hdrsize = _capi.genl_family_get_hdrsize

def genl_family_set_hdrsize(arg1, arg2):
    return _capi.genl_family_set_hdrsize(arg1, arg2)
genl_family_set_hdrsize = _capi.genl_family_set_hdrsize

def genl_family_get_maxattr(arg1):
    return _capi.genl_family_get_maxattr(arg1)
genl_family_get_maxattr = _capi.genl_family_get_maxattr

def genl_family_set_maxattr(arg1, arg2):
    return _capi.genl_family_set_maxattr(arg1, arg2)
genl_family_set_maxattr = _capi.genl_family_set_maxattr

def genl_family_add_op(arg1, arg2, arg3):
    return _capi.genl_family_add_op(arg1, arg2, arg3)
genl_family_add_op = _capi.genl_family_add_op

def genl_family_add_grp(arg1, arg2, arg3):
    return _capi.genl_family_add_grp(arg1, arg2, arg3)
genl_family_add_grp = _capi.genl_family_add_grp
class genlmsghdr(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr
    cmd = _swig_property(_capi.genlmsghdr_cmd_get, _capi.genlmsghdr_cmd_set)
    version = _swig_property(_capi.genlmsghdr_version_get, _capi.genlmsghdr_version_set)
    reserved = _swig_property(_capi.genlmsghdr_reserved_get, _capi.genlmsghdr_reserved_set)
    __swig_destroy__ = _capi.delete_genlmsghdr
genlmsghdr_swigregister = _capi.genlmsghdr_swigregister
genlmsghdr_swigregister(genlmsghdr)


def genl_connect(arg1):
    return _capi.genl_connect(arg1)
genl_connect = _capi.genl_connect

def genlmsg_hdr(arg1):
    return _capi.genlmsg_hdr(arg1)
genlmsg_hdr = _capi.genlmsg_hdr

def genlmsg_put(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8):
    return _capi.genlmsg_put(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8)
genlmsg_put = _capi.genlmsg_put
class nlattr(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr
    __swig_destroy__ = _capi.delete_nlattr
nlattr_swigregister = _capi.nlattr_swigregister
nlattr_swigregister(nlattr)

class nla_policy(object):
    thisown = _swig_property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc='The membership flag')

    def __init__(self, *args, **kwargs):
        raise AttributeError("No constructor defined")
    __repr__ = _swig_repr
    type = _swig_property(_capi.nla_policy_type_get, _capi.nla_policy_type_set)
    minlen = _swig_property(_capi.nla_policy_minlen_get, _capi.nla_policy_minlen_set)
    maxlen = _swig_property(_capi.nla_policy_maxlen_get, _capi.nla_policy_maxlen_set)
    __swig_destroy__ = _capi.delete_nla_policy
nla_policy_swigregister = _capi.nla_policy_swigregister
nla_policy_swigregister(nla_policy)


def py_genlmsg_parse(nlh, uhl, max, p):
    return _capi.py_genlmsg_parse(nlh, uhl, max, p)
py_genlmsg_parse = _capi.py_genlmsg_parse


