summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/xine-utils/xine_check.c72
-rw-r--r--src/xine-utils/xine_check.h16
2 files changed, 36 insertions, 52 deletions
diff --git a/src/xine-utils/xine_check.c b/src/xine-utils/xine_check.c
index 946e5c7eb..1755d5ac6 100644
--- a/src/xine-utils/xine_check.c
+++ b/src/xine-utils/xine_check.c
@@ -65,57 +65,37 @@
xine_health_check_t*
-xine_health_check (xine_health_check_t* hc) {
-
-#if 0
- if (xine_health_check_os() < 0) {
- retval = -1;
+xine_health_check (xine_health_check_t* hc, int check_num) {
+
+ switch(check_num) {
+ case CHECK_KERNEL:
+ hc = xine_health_check_kernel (hc);
+ break;
+ case CHECK_MTRR:
+ hc = xine_health_check_mtrr (hc);
+ break;
+ case CHECK_CDROM:
+ hc = xine_health_check_cdrom (hc);
+ break;
+ case CHECK_DVDROM:
+ hc = xine_health_check_dvdrom (hc);
+ break;
+ case CHECK_DMA:
+ hc = xine_health_check_dma (hc);
+ break;
+ case CHECK_X:
+ hc = xine_health_check_x (hc);
+ break;
+ case CHECK_XV:
+ hc = xine_health_check_xv (hc);
+ break;
+ default:
+ hc->status = XINE_HEALTH_CHECK_NO_SUCH_CHECK;
}
-#endif
-
- hc = xine_health_check_kernel (hc);
- if (hc->status == XINE_HEALTH_CHECK_FAIL) {
- return hc;
- }
-
-#ifdef ARCH_X86
- hc = xine_health_check_mtrr (hc);
- if (hc->status == XINE_HEALTH_CHECK_FAIL) {
- return hc;
- }
-#endif /* ARCH_X86 */
-
- hc = xine_health_check_cdrom (hc);
- if (hc->status == XINE_HEALTH_CHECK_FAIL) {
- return hc;
- }
-
- hc = xine_health_check_dvdrom (hc);
- if (hc->status == XINE_HEALTH_CHECK_FAIL) {
- return hc;
- }
-
- hc = xine_health_check_dma (hc);
- if (hc->status == XINE_HEALTH_CHECK_FAIL) {
- return hc;
- }
-
- hc = xine_health_check_x (hc);
- if (hc->status == XINE_HEALTH_CHECK_FAIL) {
- return hc;
- }
-
- hc = xine_health_check_xv (hc);
return hc;
}
-int
-xine_health_check_os(void)
-{
- return 0;
-}
-
xine_health_check_t*
xine_health_check_kernel (xine_health_check_t* hc) {
struct utsname kernel;
diff --git a/src/xine-utils/xine_check.h b/src/xine-utils/xine_check.h
index 8a3e4cc66..150ee3b89 100644
--- a/src/xine-utils/xine_check.h
+++ b/src/xine-utils/xine_check.h
@@ -6,6 +6,15 @@
#define XINE_HEALTH_CHECK_OK 0
#define XINE_HEALTH_CHECK_FAIL 1
#define XINE_HEALTH_CHECK_UNSUPPORTED 2
+#define XINE_HEALTH_CHECK_NO_SUCH_CHECK 3
+
+#define CHECK_KERNEL 0
+#define CHECK_MTRR 1
+#define CHECK_CDROM 2
+#define CHECK_DVDROM 3
+#define CHECK_DMA 4
+#define CHECK_X 5
+#define CHECK_XV 6
struct xine_health_check_s {
int status;
@@ -30,12 +39,7 @@ typedef struct {
* cdrom_dev = Name of the device link for the cdrom drive (e.g. /dev/cdrom)
* dvd_dev = Name of the device link for the dvd drive (e.g. /dev/dvd)
*/
-xine_health_check_t* xine_health_check(xine_health_check_t*);
-
-#if 0
-/* Get OS information */
-xine_health_check_t* xine_health_check_os(void);
-#endif
+xine_health_check_t* xine_health_check(xine_health_check_t*, int check_num);
/* Get Kernel information */
xine_health_check_t* xine_health_check_kernel(xine_health_check_t*);