mirror of
https://github.com/adulau/aha.git
synced 2024-12-28 11:46:19 +00:00
cnic: ensure ulp_type is not negative
`ulp_type' is signed, make sure it is not negative when we read the array element. Signed-off-by: Roel Kluin <roel.kluin@gmail.com> Acked-by: Michael Chan <mchan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
885ee398de
commit
0d37f36ff9
1 changed files with 4 additions and 4 deletions
|
@ -408,7 +408,7 @@ int cnic_register_driver(int ulp_type, struct cnic_ulp_ops *ulp_ops)
|
||||||
{
|
{
|
||||||
struct cnic_dev *dev;
|
struct cnic_dev *dev;
|
||||||
|
|
||||||
if (ulp_type >= MAX_CNIC_ULP_TYPE) {
|
if (ulp_type < 0 || ulp_type >= MAX_CNIC_ULP_TYPE) {
|
||||||
printk(KERN_ERR PFX "cnic_register_driver: Bad type %d\n",
|
printk(KERN_ERR PFX "cnic_register_driver: Bad type %d\n",
|
||||||
ulp_type);
|
ulp_type);
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
@ -454,7 +454,7 @@ int cnic_unregister_driver(int ulp_type)
|
||||||
struct cnic_ulp_ops *ulp_ops;
|
struct cnic_ulp_ops *ulp_ops;
|
||||||
int i = 0;
|
int i = 0;
|
||||||
|
|
||||||
if (ulp_type >= MAX_CNIC_ULP_TYPE) {
|
if (ulp_type < 0 || ulp_type >= MAX_CNIC_ULP_TYPE) {
|
||||||
printk(KERN_ERR PFX "cnic_unregister_driver: Bad type %d\n",
|
printk(KERN_ERR PFX "cnic_unregister_driver: Bad type %d\n",
|
||||||
ulp_type);
|
ulp_type);
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
@ -510,7 +510,7 @@ static int cnic_register_device(struct cnic_dev *dev, int ulp_type,
|
||||||
struct cnic_local *cp = dev->cnic_priv;
|
struct cnic_local *cp = dev->cnic_priv;
|
||||||
struct cnic_ulp_ops *ulp_ops;
|
struct cnic_ulp_ops *ulp_ops;
|
||||||
|
|
||||||
if (ulp_type >= MAX_CNIC_ULP_TYPE) {
|
if (ulp_type < 0 || ulp_type >= MAX_CNIC_ULP_TYPE) {
|
||||||
printk(KERN_ERR PFX "cnic_register_device: Bad type %d\n",
|
printk(KERN_ERR PFX "cnic_register_device: Bad type %d\n",
|
||||||
ulp_type);
|
ulp_type);
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
@ -551,7 +551,7 @@ static int cnic_unregister_device(struct cnic_dev *dev, int ulp_type)
|
||||||
struct cnic_local *cp = dev->cnic_priv;
|
struct cnic_local *cp = dev->cnic_priv;
|
||||||
int i = 0;
|
int i = 0;
|
||||||
|
|
||||||
if (ulp_type >= MAX_CNIC_ULP_TYPE) {
|
if (ulp_type < 0 || ulp_type >= MAX_CNIC_ULP_TYPE) {
|
||||||
printk(KERN_ERR PFX "cnic_unregister_device: Bad type %d\n",
|
printk(KERN_ERR PFX "cnic_unregister_device: Bad type %d\n",
|
||||||
ulp_type);
|
ulp_type);
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
Loading…
Reference in a new issue