X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=drivers%2Fisdn%2Fcapi%2Fcapi.c;h=42d7c6b97eb2008a06ce14af27001cd64839f30b;hb=90ad8654ffeb336af8c878fdf7bc72e2ac72467a;hp=3429d57e297eef21284108506a0584d91e5ea339;hpb=a91482bdcc2e0f6035702e46f1b99043a0893346;p=linux-2.6.git diff --git a/drivers/isdn/capi/capi.c b/drivers/isdn/capi/capi.c index 3429d57e2..42d7c6b97 100644 --- a/drivers/isdn/capi/capi.c +++ b/drivers/isdn/capi/capi.c @@ -656,6 +656,9 @@ capi_read(struct file *file, char __user *buf, size_t count, loff_t *ppos) struct sk_buff *skb; size_t copied; + if (ppos != &file->f_pos) + return -ESPIPE; + if (!cdev->ap.applid) return -ENODEV; @@ -696,6 +699,9 @@ capi_write(struct file *file, const char __user *buf, size_t count, loff_t *ppos struct sk_buff *skb; u16 mlen; + if (ppos != &file->f_pos) + return -ESPIPE; + if (!cdev->ap.applid) return -ENODEV; @@ -959,7 +965,7 @@ capi_open(struct inode *inode, struct file *file) if ((file->private_data = capidev_alloc()) == 0) return -ENOMEM; - return nonseekable_open(inode, file); + return 0; } static int