Revert to Fedora kernel-2.6.17-1.2187_FC5 patched with vs2.0.2.1; there are too many...
[linux-2.6.git] / drivers / isdn / hardware / eicon / divasproc.c
index 192fae4..c12efa6 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: divasproc.c,v 1.19 2004/03/21 17:26:01 armin Exp $
+/* $Id: divasproc.c,v 1.19.4.3 2005/01/31 12:22:20 armin Exp $
  *
  * Low level driver for Eicon DIVA Server ISDN cards.
  * /proc functions
@@ -16,6 +16,7 @@
 #include <linux/poll.h>
 #include <linux/proc_fs.h>
 #include <linux/list.h>
+#include <asm/uaccess.h>
 
 #include "platform.h"
 #include "debuglib.h"
@@ -63,8 +64,6 @@ divas_read(struct file *file, char __user *buf, size_t count, loff_t * off)
 
        if (*off)
                return 0;
-       if (off != &file->f_pos)
-               return -ESPIPE;
 
        divas_get_version(tmpbuf);
        if (copy_to_user(buf + len, &tmpbuf, strlen(tmpbuf)))
@@ -107,7 +106,7 @@ static unsigned int divas_poll(struct file *file, poll_table * wait)
 
 static int divas_open(struct inode *inode, struct file *file)
 {
-       return (0);
+       return nonseekable_open(inode, file);
 }
 
 static int divas_close(struct inode *inode, struct file *file)
@@ -382,7 +381,7 @@ int create_adapter_proc(diva_os_xdi_adapter_t * a)
        char tmp[16];
 
        sprintf(tmp, "%s%d", adapter_dir_name, a->controller);
-       if (!(de = create_proc_entry(tmp, S_IFDIR, proc_net_eicon)))
+       if (!(de = proc_mkdir(tmp, proc_net_eicon)))
                return (0);
        a->proc_adapter_dir = (void *) de;