X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/69ae98b46ec77c81215a3c334fd0f85df4888a4c..b77baef885633ce7117363e9046578297be2e453:/package/switch/src/switch-core.c diff --git a/package/switch/src/switch-core.c b/package/switch/src/switch-core.c index 6b59b9ba2..5eeb803aa 100644 --- a/package/switch/src/switch-core.c +++ b/package/switch/src/switch-core.c @@ -32,7 +32,7 @@ * ports: same syntax as for nvram's vlan*ports (eg. "1 2 3 4 5*") */ -#include +#include #include #include #include @@ -64,8 +64,8 @@ static ssize_t switch_proc_read(struct file *file, char *buf, size_t count, loff static ssize_t switch_proc_write(struct file *file, const char *buf, size_t count, void *data); static struct file_operations switch_proc_fops = { - read: switch_proc_read, - write: switch_proc_write + .read = (ssize_t (*) (struct file *, char __user *, size_t, loff_t *))switch_proc_read, + .write = (ssize_t (*) (struct file *, const char __user *, size_t, loff_t *))switch_proc_write }; static ssize_t switch_proc_read(struct file *file, char *buf, size_t count, loff_t *ppos) @@ -100,6 +100,7 @@ static ssize_t switch_proc_read(struct file *file, char *buf, size_t count, loff len = 0; } + kfree(page); return len; } @@ -436,7 +437,7 @@ void switch_unregister_driver(char *name) { } } -static int __init switch_init() +static int __init switch_init(void) { if ((switch_root = proc_mkdir("switch", NULL)) == NULL) { printk("%s: proc_mkdir failed.\n", __FILE__); @@ -448,7 +449,7 @@ static int __init switch_init() return 0; } -static void __exit switch_exit() +static void __exit switch_exit(void) { remove_proc_entry("switch", NULL); }