From 30be0d757c53542e62b80101278589c0b2a8d67b Mon Sep 17 00:00:00 2001 From: reinelt <> Date: Mon, 12 Apr 2004 11:12:26 +0000 Subject: [lcd4linux @ 2004-04-12 11:12:24 by reinelt] added plugin_isdn, removed old ISDN client fixed some real bad bugs in the evaluator --- isdn.c | 203 ----------------------------------------------------------------- 1 file changed, 203 deletions(-) delete mode 100644 isdn.c (limited to 'isdn.c') diff --git a/isdn.c b/isdn.c deleted file mode 100644 index 38ed66d..0000000 --- a/isdn.c +++ /dev/null @@ -1,203 +0,0 @@ -/* $Id: isdn.c,v 1.13 2004/01/29 04:40:02 reinelt Exp $ - * - * ISDN specific functions - * - * Copyright 1999, 2000 Michael Reinelt - * - * This file is part of LCD4Linux. - * - * LCD4Linux is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. - * - * LCD4Linux is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - * - * $Log: isdn.c,v $ - * Revision 1.13 2004/01/29 04:40:02 reinelt - * every .c file includes "config.h" now - * - * Revision 1.12 2003/11/24 11:34:54 reinelt - * - * 'Fixed' Rows which do not scroll by Lars Kempe - * temporary workaround for debian kernel-header bug - * - * Revision 1.11 2003/10/05 17:58:50 reinelt - * libtool junk; copyright messages cleaned up - * - * Revision 1.10 2003/06/21 05:46:18 reinelt - * DVB client integrated - * - * Revision 1.9 2001/05/27 07:19:28 reinelt - * - * fixed a warning in pixmap.c - * temporarily fixed a bug in isdn.c (ISDN_MAX_CHANNELS is no longer defined?) - * fixed a bug in configure.in (--with-drivers=xyz did not work) - * - * Revision 1.8 2000/08/10 18:42:20 reinelt - * - * fixed some bugs with the new syslog code - * - * Revision 1.7 2000/08/10 09:44:09 reinelt - * - * new debugging scheme: error(), info(), debug() - * uses syslog if in daemon mode - * - * Revision 1.6 2000/04/15 11:56:35 reinelt - * - * more debug messages - * - * Revision 1.5 2000/03/13 15:58:24 reinelt - * - * release 0.9 - * moved row parsing to parser.c - * all basic work finished - * - * Revision 1.4 2000/03/10 17:36:02 reinelt - * - * first unstable but running release - * - * Revision 1.3 2000/03/07 11:01:34 reinelt - * - * system.c cleanup - * - * Revision 1.2 2000/03/06 06:04:06 reinelt - * - * minor cleanups - * - */ - -/* - * exported functions: - * - * Isdn (int *rx, int *tx, int *usage) - * returns 0 if ok, -1 if error - * sets *usage to all channels USAGE or'ed together - * sets received/transmitted bytes in *rx, *tx - * - */ - -#include "config.h" - -#include -#include -#include -#include -#include -#include -#include -#include - -// Fixme: my debian has some bugs with kernel headers -#if 0 -#include -#else -#define IIOCGETCPS _IO('I',21) -#endif - -// Fixme: ISDN_MAX_CHANNELS seems undefined in recent kernels -#ifndef ISDN_MAX_CHANNELS -#define ISDN_MAX_CHANNELS 64 -#endif - -#include "debug.h" -#include "isdn.h" -#include "filter.h" - -typedef struct { - unsigned long in; - unsigned long out; -} CPS; - - -static int Usage (void) -{ - static int fd=0; - char buffer[4096], *p; - int i, usage; - - if (fd==-1) return 0; - - fd=open ("/dev/isdninfo", O_RDONLY | O_NDELAY); - if (fd==-1) { - error ("open(/dev/isdninfo) failed: %s", strerror(errno)); - return 0; - } - - if (read (fd, buffer, sizeof(buffer))==-1) { - error ("read(/dev/isdninfo) failed: %s", strerror(errno)); - fd=-1; - return 0; - } - - if (close(fd)==-1) { - error ("close(/dev/isdninfo) failed: %s", strerror(errno)); - fd=-1; - return 0; - } - - p=strstr(buffer, "usage:"); - if (p==NULL) { - error ("parse(/dev/isdninfo) failed: no usage line"); - fd=-1; - return 0; - } - p+=6; - - usage=0; - for (i=0; i