mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-27 19:29:37 +00:00
![Alexey Khoroshilov](/assets/img/avatar_default.png)
Errors are correctly handled in oz_cdev_register() and oz_protocol_init(), but then they are ignored in ozwpan_init(). Found by Linux Driver Verification project (linuxtesting.org). Signed-off-by: Alexey Khoroshilov <khoroshilov@ispras.ru> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
71 lines
1.7 KiB
C
71 lines
1.7 KiB
C
/* -----------------------------------------------------------------------------
|
|
* Copyright (c) 2011 Ozmo Inc
|
|
* Released under the GNU General Public License Version 2 (GPLv2).
|
|
* -----------------------------------------------------------------------------
|
|
*/
|
|
|
|
#include <linux/init.h>
|
|
#include <linux/module.h>
|
|
#include <linux/timer.h>
|
|
#include <linux/sched.h>
|
|
#include <linux/netdevice.h>
|
|
#include <linux/errno.h>
|
|
#include <linux/ieee80211.h>
|
|
#include "ozdbg.h"
|
|
#include "ozpd.h"
|
|
#include "ozproto.h"
|
|
#include "ozcdev.h"
|
|
|
|
unsigned int oz_dbg_mask = OZ_DEFAULT_DBG_MASK;
|
|
|
|
/*
|
|
* The name of the 802.11 mac device. Empty string is the default value but a
|
|
* value can be supplied as a parameter to the module. An empty string means
|
|
* bind to nothing. '*' means bind to all netcards - this includes non-802.11
|
|
* netcards. Bindings can be added later using an IOCTL.
|
|
*/
|
|
static char *g_net_dev = "";
|
|
module_param(g_net_dev, charp, S_IRUGO);
|
|
MODULE_PARM_DESC(g_net_dev, "The device(s) to bind to; "
|
|
"'*' means all, '' (empty string; default) means none.");
|
|
|
|
/*
|
|
* Context: process
|
|
*/
|
|
static int __init ozwpan_init(void)
|
|
{
|
|
int err;
|
|
|
|
err = oz_cdev_register();
|
|
if (err)
|
|
return err;
|
|
err = oz_protocol_init(g_net_dev);
|
|
if (err)
|
|
goto err_protocol;
|
|
oz_app_enable(OZ_APPID_USB, 1);
|
|
oz_apps_init();
|
|
return 0;
|
|
|
|
err_protocol:
|
|
oz_cdev_deregister();
|
|
return err;
|
|
}
|
|
|
|
/*
|
|
* Context: process
|
|
*/
|
|
static void __exit ozwpan_exit(void)
|
|
{
|
|
oz_protocol_term();
|
|
oz_apps_term();
|
|
oz_cdev_deregister();
|
|
}
|
|
|
|
module_init(ozwpan_init);
|
|
module_exit(ozwpan_exit);
|
|
|
|
MODULE_AUTHOR("Chris Kelly");
|
|
MODULE_DESCRIPTION("Ozmo Devices USB over WiFi hcd driver");
|
|
MODULE_VERSION("1.0.13");
|
|
MODULE_LICENSE("GPL");
|
|
|