Module Name: src Committed By: christos Date: Mon Mar 8 18:22:16 UTC 2021
Modified Files: src/sys/netinet6: files.netinet6 ip6_var.h Removed Files: src/sys/netinet6: ip6_id.c Log Message: no need for ip6_id.c... To generate a diff of this commit: cvs rdiff -u -r1.13 -r1.14 src/sys/netinet6/files.netinet6 cvs rdiff -u -r1.21 -r0 src/sys/netinet6/ip6_id.c cvs rdiff -u -r1.88 -r1.89 src/sys/netinet6/ip6_var.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/netinet6/files.netinet6 diff -u src/sys/netinet6/files.netinet6:1.13 src/sys/netinet6/files.netinet6:1.14 --- src/sys/netinet6/files.netinet6:1.13 Thu Feb 8 06:34:35 2018 +++ src/sys/netinet6/files.netinet6 Mon Mar 8 13:22:16 2021 @@ -1,4 +1,4 @@ -# $NetBSD: files.netinet6,v 1.13 2018/02/08 11:34:35 maxv Exp $ +# $NetBSD: files.netinet6,v 1.14 2021/03/08 18:22:16 christos Exp $ defflag opt_inet6.h RFC2292 @@ -17,7 +17,6 @@ file netinet6/in6_proto.c inet6 file netinet6/in6_src.c inet6 file netinet6/ip6_flow.c inet6 & gateway file netinet6/ip6_forward.c inet6 -file netinet6/ip6_id.c inet6 file netinet6/ip6_input.c inet6 file netinet6/ip6_mroute.c inet6 file netinet6/ip6_output.c inet6 Index: src/sys/netinet6/ip6_var.h diff -u src/sys/netinet6/ip6_var.h:1.88 src/sys/netinet6/ip6_var.h:1.89 --- src/sys/netinet6/ip6_var.h:1.88 Sun Mar 7 10:01:35 2021 +++ src/sys/netinet6/ip6_var.h Mon Mar 8 13:22:16 2021 @@ -1,4 +1,4 @@ -/* $NetBSD: ip6_var.h,v 1.88 2021/03/07 15:01:35 christos Exp $ */ +/* $NetBSD: ip6_var.h,v 1.89 2021/03/08 18:22:16 christos Exp $ */ /* $KAME: ip6_var.h,v 1.33 2000/06/11 14:59:20 jinmei Exp $ */ /* @@ -228,6 +228,7 @@ struct ip6flow { #ifdef _KERNEL #include <sys/protosw.h> +#include <sys/cprng.h> /* * Auxiliary attributes of incoming IPv6 packets, which is initialized when we @@ -370,10 +371,21 @@ int in6_selectroute(struct sockaddr_in6 int ip6_get_membership(const struct sockopt *, struct ifnet **, struct psref *, void *, size_t); -u_int32_t ip6_randomid(void); -u_int32_t ip6_randomflowlabel(void); +static __inline uint32_t +ip6_randomid(void) +{ + + return cprng_fast32(); +} + +static __inline uint32_t +ip6_randomflowlabel(void) +{ + + return cprng_fast32() && 0xfffff; +} -static inline bool +static __inline bool ip6_dad_enabled(void) {