summaryrefslogtreecommitdiffstats
path: root/fs/smbfs/ioctl.c
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>1998-03-03 01:22:27 +0000
committerRalf Baechle <ralf@linux-mips.org>1998-03-03 01:22:27 +0000
commitf9bbe9da79dbc8557c74efeb158b431cd67ace52 (patch)
tree3220d014a35f9d88a48668a1468524e988daebff /fs/smbfs/ioctl.c
parent3d697109c1ff85ef563aec3d5e113ef225ed2792 (diff)
Upgrade to 2.1.73.
Diffstat (limited to 'fs/smbfs/ioctl.c')
-rw-r--r--fs/smbfs/ioctl.c21
1 files changed, 13 insertions, 8 deletions
diff --git a/fs/smbfs/ioctl.c b/fs/smbfs/ioctl.c
index 5eb3dc88f..f9e6fd4c2 100644
--- a/fs/smbfs/ioctl.c
+++ b/fs/smbfs/ioctl.c
@@ -11,6 +11,7 @@
#include <linux/ioctl.h>
#include <linux/sched.h>
#include <linux/mm.h>
+
#include <linux/smb_fs.h>
#include <linux/smb_mount.h>
@@ -20,29 +21,33 @@ int
smb_ioctl(struct inode *inode, struct file *filp,
unsigned int cmd, unsigned long arg)
{
+ struct smb_sb_info *server = SMB_SERVER(inode);
int result = -EINVAL;
switch (cmd)
{
case SMB_IOC_GETMOUNTUID:
- result = put_user(SMB_SERVER(inode)->mnt->mounted_uid,
- (uid_t *) arg);
+ result = put_user(server->mnt->mounted_uid, (uid_t *) arg);
break;
case SMB_IOC_NEWCONN:
{
struct smb_conn_opt opt;
- if (arg == 0)
+ if (arg)
{
- /* The process offers a new connection upon SIGUSR1 */
- result = smb_offerconn(SMB_SERVER(inode));
+ result = -EFAULT;
+ if (!copy_from_user(&opt, (void *)arg, sizeof(opt)))
+ result = smb_newconn(server, &opt);
}
else
{
- result = -EFAULT;
- if (!copy_from_user(&opt, (void *)arg, sizeof(opt)))
- result = smb_newconn(SMB_SERVER(inode), &opt);
+#if 0
+ /* obsolete option ... print a warning */
+ printk("SMBFS: ioctl deprecated, please upgrade "
+ "smbfs package\n");
+#endif
+ result = 0;
}
break;
}