Menu

#5 Fix build on clang

Unstable_(example)
open
None
5
2015-01-25
2015-01-25
No

The necessary symbols are not exported when building from clang, patch below (obtained from FreeBSD ports) fixes that.

https://svnweb.freebsd.org/ports/head/net/libnids/files/patch-src__checksum.c?revision=342448&view=co&pathrev=373063

--- ./src/checksum.c.orig 2014-02-03 14:04:23.999531000 +0000
+++ ./src/checksum.c 2014-02-03 14:15:33.000000000 +0000
@@ -120,7 +120,7 @@
By Jorge Cwik jorge@laser.satlink.net, adapted for linux by Arnt
Gulbrandsen.
/
-inline u_short ip_fast_csum(u_char * iph, u_int ihl)
+u_short ip_fast_csum(u_char * iph, u_int ihl)
{
u_int sum;
if (dontchksum(((struct ip
)iph)->ip_src.s_addr))
@@ -191,13 +191,13 @@
this routine is used for miscellaneous IP-like checksums, mainly in
icmp.c
*/
-inline u_short
+u_short
ip_compute_csum(u_char * buff, int len)
{
return (csum_fold(csum_partial(buff, len, 0)));
}

-inline u_short
+u_short
my_tcp_check(struct tcphdr th, int len, u_int saddr, u_int daddr)
{
if (dontchksum(saddr))
@@ -205,7 +205,7 @@
return csum_tcpudp_magic(saddr, daddr, len, IPPROTO_TCP,
csum_partial((u_char
)th, len, 0));
}
-inline u_short
+u_short
my_udp_check(void *u, int len, u_int saddr, u_int daddr)
{
if (dontchksum(saddr))

Discussion


Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.