diff options
author | Randy Dunlap <randy.dunlap@oracle.com> | 2009-06-12 14:43:48 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2009-06-13 10:06:10 -0400 |
commit | faea56c9bb44f539da1ae0194184873fc2720b20 (patch) | |
tree | ed3e9c02574c3d1d441093a23b117462cb4ed4b9 /drivers/net/cnic.c | |
parent | f3ad116588151b3371ae4e092290e4f48e62b8bb (diff) |
[SCSI] cnic: fix undefined reference to `ip6_route_output'
Fix cnic build for case of CONFIG_INET=n.
Fix cnic build for case of CONFIG_IPV6=m and CONFIG_CNIC=y.
Fixes these build errors:
cnic.c:(.text+0x236a1d): undefined reference to `ip_route_output_key'
cnic.c:(.text+0x15a8e8): undefined reference to `ip6_route_output'
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/net/cnic.c')
-rw-r--r-- | drivers/net/cnic.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/net/cnic.c b/drivers/net/cnic.c index 8d740376bbd2..a9e2fd35bb41 100644 --- a/drivers/net/cnic.c +++ b/drivers/net/cnic.c | |||
@@ -1454,6 +1454,7 @@ static inline u16 cnic_get_vlan(struct net_device *dev, | |||
1454 | static int cnic_get_v4_route(struct sockaddr_in *dst_addr, | 1454 | static int cnic_get_v4_route(struct sockaddr_in *dst_addr, |
1455 | struct dst_entry **dst) | 1455 | struct dst_entry **dst) |
1456 | { | 1456 | { |
1457 | #if defined(CONFIG_INET) | ||
1457 | struct flowi fl; | 1458 | struct flowi fl; |
1458 | int err; | 1459 | int err; |
1459 | struct rtable *rt; | 1460 | struct rtable *rt; |
@@ -1465,12 +1466,15 @@ static int cnic_get_v4_route(struct sockaddr_in *dst_addr, | |||
1465 | if (!err) | 1466 | if (!err) |
1466 | *dst = &rt->u.dst; | 1467 | *dst = &rt->u.dst; |
1467 | return err; | 1468 | return err; |
1469 | #else | ||
1470 | return -ENETUNREACH; | ||
1471 | #endif | ||
1468 | } | 1472 | } |
1469 | 1473 | ||
1470 | static int cnic_get_v6_route(struct sockaddr_in6 *dst_addr, | 1474 | static int cnic_get_v6_route(struct sockaddr_in6 *dst_addr, |
1471 | struct dst_entry **dst) | 1475 | struct dst_entry **dst) |
1472 | { | 1476 | { |
1473 | #if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE) | 1477 | #if defined(CONFIG_IPV6) || (defined(CONFIG_IPV6_MODULE) && defined(MODULE)) |
1474 | struct flowi fl; | 1478 | struct flowi fl; |
1475 | 1479 | ||
1476 | memset(&fl, 0, sizeof(fl)); | 1480 | memset(&fl, 0, sizeof(fl)); |
@@ -1550,7 +1554,7 @@ static int cnic_get_route(struct cnic_sock *csk, struct cnic_sockaddr *saddr) | |||
1550 | clear_bit(SK_F_IPV6, &csk->flags); | 1554 | clear_bit(SK_F_IPV6, &csk->flags); |
1551 | 1555 | ||
1552 | if (is_v6) { | 1556 | if (is_v6) { |
1553 | #if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE) | 1557 | #if defined(CONFIG_IPV6) || (defined(CONFIG_IPV6_MODULE) && defined(MODULE)) |
1554 | set_bit(SK_F_IPV6, &csk->flags); | 1558 | set_bit(SK_F_IPV6, &csk->flags); |
1555 | err = cnic_get_v6_route(&saddr->remote.v6, &dst); | 1559 | err = cnic_get_v6_route(&saddr->remote.v6, &dst); |
1556 | if (err) | 1560 | if (err) |