Re: [build bug] SCTP, net/sctp/auth.c, ./net/rxrpc/ar-key.c failsto build

From: Ingo Molnar
Date: Wed Nov 28 2007 - 07:48:03 EST



* Ingo Molnar <mingo@xxxxxxx> wrote:

> a similar build bug happens with latest -git as well, with SCTP:
>
> net/built-in.o: In function `rxrpc_destroy_s':
> ar-key.c:(.text+0xc5a2b): undefined reference to `crypto_free_tfm'
> net/built-in.o: In function `rxrpc_instantiate_s':
> ar-key.c:(.text+0xc5ed9): undefined reference to `crypto_alloc_base'
> net/built-in.o: In function `sctp_endpoint_put':
> : undefined reference to `crypto_free_tfm'
> net/built-in.o: In function `sctp_inet_listen':
> : undefined reference to `crypto_free_tfm'
> net/built-in.o: In function `sctp_auth_destroy_hmacs':
> : undefined reference to `crypto_free_tfm'
> net/built-in.o: In function `sctp_auth_init_hmacs':
> : undefined reference to `crypto_alloc_base'
>
> this is a build regression over v2.6.23. config attached.

the patch below fix it (or rather, works it around).

Ingo

------------->
Subject: SCTP: fix build bug
From: Ingo Molnar <mingo@xxxxxxx>

fix build bug:

net/built-in.o: In function `rxrpc_destroy_s':
ar-key.c:(.text+0xc5a2b): undefined reference to `crypto_free_tfm'
net/built-in.o: In function `rxrpc_instantiate_s':
ar-key.c:(.text+0xc5ed9): undefined reference to `crypto_alloc_base'
net/built-in.o: In function `sctp_endpoint_put':
: undefined reference to `crypto_free_tfm'
net/built-in.o: In function `sctp_inet_listen':
: undefined reference to `crypto_free_tfm'
net/built-in.o: In function `sctp_auth_destroy_hmacs':
: undefined reference to `crypto_free_tfm'
net/built-in.o: In function `sctp_auth_init_hmacs':
: undefined reference to `crypto_alloc_base'

Signed-off-by: Ingo Molnar <mingo@xxxxxxx>
---
net/sctp/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

Index: linux/net/sctp/Kconfig
===================================================================
--- linux.orig/net/sctp/Kconfig
+++ linux/net/sctp/Kconfig
@@ -6,7 +6,7 @@ menuconfig IP_SCTP
tristate "The SCTP Protocol (EXPERIMENTAL)"
depends on INET && EXPERIMENTAL
depends on IPV6 || IPV6=n
- select CRYPTO if SCTP_HMAC_SHA1 || SCTP_HMAC_MD5
+ select CRYPTO
select CRYPTO_HMAC if SCTP_HMAC_SHA1 || SCTP_HMAC_MD5
select CRYPTO_SHA1 if SCTP_HMAC_SHA1
select CRYPTO_MD5 if SCTP_HMAC_MD5
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/