Use Cython's libc.errno for EEXIST.
authorW. Trevor King <wking@tremily.us>
Fri, 19 Oct 2012 04:50:21 +0000 (00:50 -0400)
committerW. Trevor King <wking@tremily.us>
Fri, 19 Oct 2012 04:50:21 +0000 (00:50 -0400)
Signed-off-by: W. Trevor King <wking@tremily.us>
kmod/_libkmod_h.pxd
kmod/module.pyx

index ef948dd0c85b6ebd1181e4731febd5376410960f..0153ac024af888283a1b5f2d0520d08fe308b1d1 100644 (file)
@@ -18,10 +18,6 @@ cdef extern from *:
     ctypedef void* const_void_ptr 'const void *'
 
 
-cdef extern from 'errno.h':
-    enum: EEXIST
-
-
 cdef extern from 'stdbool.h':
     ctypedef struct bool:
         pass
index 379a75d020128bf1e40150a3e1a7718dfde34c14..7c84eb840035fb9e2e442bd29a6a0d5c45893057 100644 (file)
@@ -9,6 +9,8 @@
 # along with this program; if not, write to the Free Software Foundation,
 # Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 
+cimport libc.errno as _errno
+
 cimport _libkmod_h
 from error import KmodError as _KmodError
 cimport list as _list
@@ -103,7 +105,7 @@ cdef class Module (object):
         # TODO: convert callbacks and data from Python object to C types
         err = _libkmod_h.kmod_module_probe_insert_module(
             self.module, flags, opt, install, d, print_action)
-        if err == -_libkmod_h.EEXIST:
+        if err == -_errno.EEXIST:
             raise _KmodError('Module already loaded')
         elif err < 0:
             raise _KmodError('Could not load module')