aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/cnic.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/net/cnic.c b/drivers/net/cnic.c
index 8d740376bbd2..44f77eb1180f 100644
--- a/drivers/net/cnic.c
+++ b/drivers/net/cnic.c
@@ -25,6 +25,8 @@
25#include <linux/delay.h> 25#include <linux/delay.h>
26#include <linux/ethtool.h> 26#include <linux/ethtool.h>
27#include <linux/if_vlan.h> 27#include <linux/if_vlan.h>
28#include <linux/module.h>
29
28#if defined(CONFIG_VLAN_8021Q) || defined(CONFIG_VLAN_8021Q_MODULE) 30#if defined(CONFIG_VLAN_8021Q) || defined(CONFIG_VLAN_8021Q_MODULE)
29#define BCM_VLAN 1 31#define BCM_VLAN 1
30#endif 32#endif
@@ -1454,6 +1456,7 @@ static inline u16 cnic_get_vlan(struct net_device *dev,
1454static int cnic_get_v4_route(struct sockaddr_in *dst_addr, 1456static int cnic_get_v4_route(struct sockaddr_in *dst_addr,
1455 struct dst_entry **dst) 1457 struct dst_entry **dst)
1456{ 1458{
1459#if defined(CONFIG_INET)
1457 struct flowi fl; 1460 struct flowi fl;
1458 int err; 1461 int err;
1459 struct rtable *rt; 1462 struct rtable *rt;
@@ -1465,12 +1468,15 @@ static int cnic_get_v4_route(struct sockaddr_in *dst_addr,
1465 if (!err) 1468 if (!err)
1466 *dst = &rt->u.dst; 1469 *dst = &rt->u.dst;
1467 return err; 1470 return err;
1471#else
1472 return -ENETUNREACH;
1473#endif
1468} 1474}
1469 1475
1470static int cnic_get_v6_route(struct sockaddr_in6 *dst_addr, 1476static int cnic_get_v6_route(struct sockaddr_in6 *dst_addr,
1471 struct dst_entry **dst) 1477 struct dst_entry **dst)
1472{ 1478{
1473#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE) 1479#if defined(CONFIG_IPV6) || (defined(CONFIG_IPV6_MODULE) && defined(MODULE))
1474 struct flowi fl; 1480 struct flowi fl;
1475 1481
1476 memset(&fl, 0, sizeof(fl)); 1482 memset(&fl, 0, sizeof(fl));
@@ -1550,7 +1556,7 @@ static int cnic_get_route(struct cnic_sock *csk, struct cnic_sockaddr *saddr)
1550 clear_bit(SK_F_IPV6, &csk->flags); 1556 clear_bit(SK_F_IPV6, &csk->flags);
1551 1557
1552 if (is_v6) { 1558 if (is_v6) {
1553#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE) 1559#if defined(CONFIG_IPV6) || (defined(CONFIG_IPV6_MODULE) && defined(MODULE))
1554 set_bit(SK_F_IPV6, &csk->flags); 1560 set_bit(SK_F_IPV6, &csk->flags);
1555 err = cnic_get_v6_route(&saddr->remote.v6, &dst); 1561 err = cnic_get_v6_route(&saddr->remote.v6, &dst);
1556 if (err) 1562 if (err)