diff options
-rw-r--r-- | debian/control | 5 | ||||
-rwxr-xr-x | debian/rules | 5 | ||||
-rwxr-xr-x | doc/dmidump.py (renamed from doc/example.py) | 0 | ||||
-rwxr-xr-x | examples/dmidump.py | 54 | ||||
-rw-r--r-- | src/dmidecodemodule.c | 7 |
5 files changed, 64 insertions, 7 deletions
diff --git a/debian/control b/debian/control index 12336a8..e682d7f 100644 --- a/debian/control +++ b/debian/control @@ -1,15 +1,14 @@ Source: dmidecode Section: utils -Priority: extra +Priority: optional Maintainer: Nima Talebi <nima@autonomy.net.au> Build-Depends: debhelper (>= 5) Standards-Version: 3.7.2 XB-Python-Version: ${python:Versions} XS-Python-Version: current - Package: python2.4-dmidecode -Architecture: any +Architecture: i386 Depends: ${shlibs:Depends}, ${misc:Depends}, ${python:Depends} Description: <insert up to 60 chars description> <insert long description, indented with spaces> diff --git a/debian/rules b/debian/rules index baba0ee..2c60a2c 100755 --- a/debian/rules +++ b/debian/rules @@ -77,8 +77,7 @@ binary-arch: build install # dh_installemacsen # dh_installpam # dh_installmime - dh_pysupport - dh_python +# dh_python # dh_installinit # dh_installcron # dh_installinfo @@ -91,6 +90,8 @@ binary-arch: build install # dh_makeshlibs dh_installdeb dh_shlibdeps + dh_pysupport + dh_pycentral dh_gencontrol dh_md5sums dh_builddeb diff --git a/doc/example.py b/doc/dmidump.py index a6c7bf7..a6c7bf7 100755 --- a/doc/example.py +++ b/doc/dmidump.py diff --git a/examples/dmidump.py b/examples/dmidump.py new file mode 100755 index 0000000..a6c7bf7 --- /dev/null +++ b/examples/dmidump.py @@ -0,0 +1,54 @@ +#!/usr/bin/env python2.4 +import dmidecode +import sys +from pprint import pprint + +#. Test all functions using /dev/mem... +print "*** bios ***\n"; dmidecode.bios() +print "*** system ***\n"; dmidecode.system() +print "*** system ***\n"; dmidecode.system() +print "*** baseboard ***\n"; dmidecode.baseboard() +print "*** chassis ***\n"; dmidecode.chassis() +print "*** processor ***\n"; dmidecode.processor() +print "*** memory ***\n"; dmidecode.memory() +print "*** cache ***\n"; dmidecode.cache() +print "*** connector ***\n"; dmidecode.connector() +print "*** slot ***\n"; dmidecode.slot() + +#. Now test get/set of memory device file... +print dmidecode.get_dev() +print dmidecode.set_dev("private/mem-XXX"); +print dmidecode.get_dev() + +#. Test taking a dump... +print dmidecode.dump() + +#. Test reading the dump... +print "*** bios ***\n"; pprint(dmidecode.bios()) +print "*** system ***\n"; pprint(dmidecode.system()) +print "*** system ***\n"; pprint(dmidecode.system()) +print "*** baseboard ***\n"; pprint(dmidecode.baseboard()) +print "*** chassis ***\n"; pprint(dmidecode.chassis()) +print "*** processor ***\n"; pprint(dmidecode.processor()) +print "*** memory ***\n"; pprint(dmidecode.memory()) +print "*** cache ***\n"; pprint(dmidecode.cache()) +print "*** connector ***\n"; pprint(dmidecode.connector()) +print "*** slot ***\n"; pprint(dmidecode.slot()) + +sys.exit(0) +print "*** bios ***\n"; pprint(dmidecode.bios()) +print "*** system ***\n"; pprint(dmidecode.system()) +print "*** baseboard ***\n"; pprint(dmidecode.baseboard()) +print "*** chassis ***\n"; pprint(dmidecode.chassis()) +print "*** processor ***\n"; pprint(dmidecode.processor()) +print "*** memory ***\n"; pprint(dmidecode.memory()) +print "*** cache ***\n"; pprint(dmidecode.cache()) +print "*** connector ***\n"; pprint(dmidecode.connector()) +print "*** slot ***\n"; pprint(dmidecode.slot()) + +for v in dmidecode.memory().values(): + if type(v) == dict and v['dmi_type'] == 17: + pprint(v['data']['Size']), + +pprint(dmidecode.type('3')) +pprint(dmidecode.type('bios')) diff --git a/src/dmidecodemodule.c b/src/dmidecodemodule.c index 5ede36e..7871a89 100644 --- a/src/dmidecodemodule.c +++ b/src/dmidecodemodule.c @@ -148,9 +148,12 @@ static PyObject* dmidecode_get_cache(PyObject *self, PyObject *args) { retur static PyObject* dmidecode_get_connector(PyObject *self, PyObject *args) { return dmidecode_get(self, "connector"); } static PyObject* dmidecode_get_slot(PyObject *self, PyObject *args) { return dmidecode_get(self, "slot"); } static PyObject* dmidecode_get_type(PyObject *self, PyObject *args) { - const char *s; - if(PyArg_ParseTuple(args, (char *)"s", &s)) + long unsigned int lu; + if(PyArg_ParseTuple(args, (char *)"i", &lu)) { + char s[8]; + sprintf(s, "%lu", lu); return dmidecode_get(self, s); + } return Py_None; } |