From 2343c69ba224db0f6c7cca4be5496ce1f3382baf Mon Sep 17 00:00:00 2001 From: nima Date: Thu, 18 Dec 2008 13:45:37 +0000 Subject: The dmidecode.type() call not takes ints, not strings. Adding an example directory. git-svn-id: svn://svn.autonomy.net.au/python-dmidecode@115 abc39116-655e-4be6-ad55-d661dc543056 --- debian/control | 5 ++--- debian/rules | 5 +++-- doc/dmidump.py | 54 +++++++++++++++++++++++++++++++++++++++++++++++++++ doc/example.py | 54 --------------------------------------------------- examples/dmidump.py | 54 +++++++++++++++++++++++++++++++++++++++++++++++++++ src/dmidecodemodule.c | 7 +++++-- 6 files changed, 118 insertions(+), 61 deletions(-) create mode 100755 doc/dmidump.py delete mode 100755 doc/example.py create mode 100755 examples/dmidump.py 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 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: 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/dmidump.py b/doc/dmidump.py new file mode 100755 index 0000000..a6c7bf7 --- /dev/null +++ b/doc/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/doc/example.py b/doc/example.py deleted file mode 100755 index a6c7bf7..0000000 --- a/doc/example.py +++ /dev/null @@ -1,54 +0,0 @@ -#!/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/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; } -- cgit