summaryrefslogtreecommitdiffstats
path: root/isys/isys.c
diff options
context:
space:
mode:
authorErik Troan <ewt@redhat.com>1999-07-23 01:15:23 +0000
committerErik Troan <ewt@redhat.com>1999-07-23 01:15:23 +0000
commitdd141b96a739d5829293f092237b3bbbcf3d4de6 (patch)
tree07ca930e80f8dcc108c42f34c2e75b029c944280 /isys/isys.c
parenta4b8608fe3580b16a13671b11c01055a09a1692a (diff)
downloadanaconda-dd141b96a739d5829293f092237b3bbbcf3d4de6.tar.gz
anaconda-dd141b96a739d5829293f092237b3bbbcf3d4de6.tar.xz
anaconda-dd141b96a739d5829293f092237b3bbbcf3d4de6.zip
changed mod info stuff to not use global variables (though isys.c does
still for no particularly good reason)
Diffstat (limited to 'isys/isys.c')
-rw-r--r--isys/isys.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/isys/isys.c b/isys/isys.c
index 1ca2ba45b..65d83e889 100644
--- a/isys/isys.c
+++ b/isys/isys.c
@@ -12,6 +12,9 @@
#include "pci/pciprobe.h"
#include "smp.h"
+/* FIXME: this is such a hack -- moduleInfoList ought to be a proper object */
+moduleInfoSet modInfoList;
+
static PyObject * doFindModInfo(PyObject * s, PyObject * args);
static PyObject * doInsmod(PyObject * s, PyObject * args);
static PyObject * doMount(PyObject * s, PyObject * args);
@@ -100,7 +103,7 @@ static PyObject * getModuleList(PyObject * s, PyObject * args) {
return NULL;
}
- modules = isysGetModuleList(major);
+ modules = isysGetModuleList(modInfoList, major);
if (!modules) {
Py_INCREF(Py_None);
return Py_None;
@@ -187,7 +190,7 @@ static PyObject * doFindModInfo(PyObject * s, PyObject * args) {
if (!PyArg_ParseTuple(args, "s", &mod)) return NULL;
- mi = isysFindModuleInfo(mod);
+ mi = isysFindModuleInfo(modInfoList, mod);
if (!mi) {
Py_INCREF(Py_None);
return Py_None;
@@ -201,7 +204,7 @@ static PyObject * doReadModInfo(PyObject * s, PyObject * args) {
if (!PyArg_ParseTuple(args, "s", &fn)) return NULL;
- if (isysReadModuleInfo(fn)) {
+ if (isysReadModuleInfo(fn, modInfoList)) {
PyErr_SetFromErrno(PyExc_IOError);
return NULL;
}
@@ -277,6 +280,8 @@ static PyObject * smpAvailable(PyObject * s, PyObject * args) {
}
void init_isys(void) {
+ modInfoList = isysNewModuleInfoSet();
+
Py_InitModule("_isys", isysModuleMethods);
}