Date: Fri, 30 Nov 2012 22:20:24 -0800 (PST) From: Garrett Cooper <yanegomi@gmail.com> To: bruce@toaster.local Cc: freebsd-net@FreeBSD.org Subject: Re: [RFC] Better document net.inet6 sysctls and prune dead sysctls (fwd) Message-ID: <alpine.BSF.2.00.1211302204460.57210@toaster.local>
next in thread | raw e-mail | index | archive | help
This message is in MIME format. The first part should be readable text,
while the remaining parts are likely unreadable without MIME-aware tools.
--967339439-1681226068-1354342829=:57210
Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed
On Tue, 27 Nov 2012, Bruce Evans wrote:
> On Mon, 26 Nov 2012, Garrett Cooper wrote:
>
>> As noted in a previous thread, I set out to better document the
>> net.inet6 sysctls after having to tweak the knobs to get things to work for
>> TAHI, and this is the resulting draft (so far). I also took the liberty of
>> removing the ip6_rr_prune and icmp6_redirtimeout sysctls because they
>> weren't in use anywhere else in the sys/... portion of the tree. I was
>> wondering if there are any points that should be corrected/clarified before
>> I submit a PR with the resulting patch.
>
> It would be good to fix the style bugs when changing lots.
>
>> Index: sys/netinet6/in6_proto.c
>> ===================================================================
>> --- sys/netinet6/in6_proto.c (revision 242903)
>> +++ sys/netinet6/in6_proto.c (working copy)
>> @@ -443,7 +441,6 @@
>>
>> /* ICMPV6 parameters */
>> VNET_DEFINE(int, icmp6_rediraccept) = 1;/* accept and process redirects */
>> -VNET_DEFINE(int, icmp6_redirtimeout) = 10 * 60; /* 10 minutes */
>> VNET_DEFINE(int, icmp6errppslim) = 100; /* 100pps */
>> /* control how to respond to NI queries */
>> VNET_DEFINE(int, icmp6_nodeinfo) =
>> @@ -515,15 +512,20 @@
>> }
>>
>> SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_FORWARDING, forwarding, CTLFLAG_RW,
>> - &VNET_NAME(ip6_forwarding), 0, "");
>> + &VNET_NAME(ip6_forwarding), 0,
>> + "Forward IPv6 packets via node.");
>
> All the sysctl names spell ipv6 without a v. This is hard to fix. This
> bug is missing in the names of the sysctl numbers, but it is a bug to
> used named numbers instead of OID_AUTO in code newer than OID_AUTO, and
> ipv6 is much newer.
>
> New style bug in almost every description. Sysctl descriptions are not
> normally terminated by a ".".
>
> Old style bug in almost every ipv6 sysctl. Large SYSCTL declarations are
> normally normally-indented, with 4-space continuation indents. This rule
> is broken farily consistenly in ipv6 sysctl. More ivp4 SYSCTL descriptions
> are actually formatted normally.
>
>> @@ -594,35 +613,45 @@
>> #define V_ip6_output_flowtable_size VNET(ip6_output_flowtable_size)
>>
>> SYSCTL_VNET_INT(_net_inet6_ip6, OID_AUTO, output_flowtable_size,
>> CTLFLAG_RDTUN,
>> - &VNET_NAME(ip6_output_flowtable_size), 2048,
>> - "number of entries in the per-cpu output flow caches");
>> + &VNET_NAME(ip6_output_flowtable_size), 2048,
>> + "number of entries in the per-cpu output flow caches");
>> ...
>
> Here the formatting change is backwards (from normal continuation indent
> to abnormal ipv6 continuation indent.
>
> This and some other old sysctl descriptions have differnent style bugs:
> they are normally terminated (not with a '.'), but are not normally
> capitalized (with capaitals).
>
>> SYSCTL_VNET_INT(_net_inet6_icmp6, ICMPV6CTL_ND6_PRUNE, nd6_prune,
>> CTLFLAG_RW,
>
> Some mailer mangled the formatting (the line isn't too long and shouldn't
> have been mangled).
>
>> - &VNET_NAME(nd6_prune), 0, "");
>> + &VNET_NAME(nd6_prune), 0,
>> + "Period (in seconds) for performing nd6 expiration checks of default "
>
> More mangling by some mailer.
>
>> + "routes and prefix lists");
>
> However, the string is too long. The message is obfuscated by splitting it.
> This keeps the line length short in the source code, but it is still too
> long in the output. Sysctl descriptions should be no longer than 50 or
> 60 characters, since the sysctl name will expand the output by 20 or 30
> characters. sysctl names longer than 20 or 30 are a larger bug, since
> they are hard to write as well as hard to read.
>
> This sysctl description is normally terminated (not with a ".").
>
>> ...
>> SYSCTL_VNET_INT(_net_inet6_icmp6, ICMPV6CTL_ND6_UMAXTRIES, nd6_umaxtries,
>> - CTLFLAG_RW, &VNET_NAME(nd6_umaxtries), 0, "");
>> + CTLFLAG_RW, &VNET_NAME(nd6_umaxtries), 0,
>> + "Maximum number of unicast queries to perform via nd6.");
>
> Another type of sysctl misformatting is generated by names that are so
> verbose that CTLFLAG* cannot be formatted normally (on the first line).
>
> I missed earlier instances of these bugs.
>
> Statistic on output style in sysctl descriptions: on freefall now:
> sysctl -da: 3546 lines
> sysctl -da | grep -v ': *$': 3192 lines
> [this filters out sysctls with null descriptions. The output is
> misformatted with a space before the null description]
> sysctl -nda: 3546 lines
> sysctl -nda | grep -v '^: *$': 3192 lines
> [since this 3192 is the same as the number of sysctls with non-null
> descreiptions, there must be no multi-line descriptions with embedded
> newlines]
> sysctl -nda | grep -v '^: *$' | grep -v '^[A-Z]':
> 1555 lines
> [most of non-capitalizations are style bugs. The last 1395 of them
> are automatically generated for device sysctls. This is part of 5
> lines of automatically generated spam for device sysctls (descriptions
> are duplicated ad spamium for %desc, %driver, %location, %pnpinfo and
> %parent). A few are correct because they are for a proper name or
> keyword or a number]
> sysctl -nda | grep -v '^: *$' | grep '\.$':
> 74 lines
> [the style bug of terminating with a '.' is uncommon. In a few cases
> it goes with the larger style bug of a multi-line description]
> sysctl -nda | grep -v '^: *$' | grep '.... [81 dots]':
> 11 lines
> [these lines are too long even without the sysctl names. Abnormal
> termination is denser than usual in these lines (8 of 11)]
> sysctl -nda | grep -v '^: *$' | grep '\..*\.':
> 8 lines
> [2 of these are for multi-sentence descriptions].
Bruce,
Is this better? I tried to be consistent about using v6 properly
when dealing with protocols in order to match what the IETF did and I
believe I properly integrated in your comments.
Thanks!
-Garrett
Index: sys/netinet6/in6_proto.c
===================================================================
--- sys/netinet6/in6_proto.c (revision 243557)
+++ sys/netinet6/in6_proto.c (working copy)
@@ -131,7 +131,7 @@
#endif
/*
- * TCP/IP protocol family: IP6, ICMP6, UDP, TCP.
+ * TCP/IP protocol family: IPv6, ICMPv6, UDPv6, TCPv6.
*/
FEATURE(inet6, "Internet Protocol version 6");
@@ -382,9 +382,9 @@
*/
#ifndef IPV6FORWARDING
#ifdef GATEWAY6
-#define IPV6FORWARDING 1 /* forward IP6 packets not for us */
+#define IPV6FORWARDING 1 /* forward IPv6 packets */
#else
-#define IPV6FORWARDING 0 /* don't forward IP6 packets not for us
*/
+#define IPV6FORWARDING 0 /* don't forward IPv6 packets */
#endif /* GATEWAY6 */
#endif /* !IPV6FORWARDING */
@@ -409,8 +409,6 @@
VNET_DEFINE(int, ip6_auto_flowlabel) = 1;
VNET_DEFINE(int, ip6_use_deprecated) = 1;/* allow deprecated addr
* (RFC2462 5.5.4) */
-VNET_DEFINE(int, ip6_rr_prune) = 5; /* router renumbering prefix
- * walk list every 5 sec. */
VNET_DEFINE(int, ip6_mcast_pmtu) = 0; /* enable pMTU discovery for multicast?
*/
VNET_DEFINE(int, ip6_v6only) = 1;
@@ -431,7 +429,7 @@
VNET_DEFINE(int, pmtu_expire) = 60*10;
VNET_DEFINE(int, pmtu_probe) = 60*2;
-/* raw IP6 parameters */
+/* raw IPV6 parameters */
/*
* Nominal space allocated to a raw ip socket.
*/
@@ -443,13 +441,12 @@
/* ICMPV6 parameters */
VNET_DEFINE(int, icmp6_rediraccept) = 1;/* accept and process redirects */
-VNET_DEFINE(int, icmp6_redirtimeout) = 10 * 60; /* 10 minutes */
VNET_DEFINE(int, icmp6errppslim) = 100; /* 100pps */
/* control how to respond to NI queries */
VNET_DEFINE(int, icmp6_nodeinfo) =
(ICMP6_NODEINFO_FQDNOK|ICMP6_NODEINFO_NODEADDROK);
-/* UDP on IP6 parameters */
+/* UDP on IPv6 parameters */
VNET_DEFINE(int, udp6_sendspace) = 9216;/* really max datagram size */
VNET_DEFINE(int, udp6_recvspace) = 40 * (1024 + sizeof(struct sockaddr_in6));
/* 40 1K datagrams */
@@ -461,12 +458,12 @@
"Internet6 Family");
/* net.inet6 */
-SYSCTL_NODE(_net_inet6, IPPROTO_IPV6, ip6, CTLFLAG_RW, 0, "IP6");
-SYSCTL_NODE(_net_inet6, IPPROTO_ICMPV6, icmp6, CTLFLAG_RW, 0,
"ICMP6");
-SYSCTL_NODE(_net_inet6, IPPROTO_UDP, udp6, CTLFLAG_RW, 0,
"UDP6");
-SYSCTL_NODE(_net_inet6, IPPROTO_TCP, tcp6, CTLFLAG_RW, 0,
"TCP6");
+SYSCTL_NODE(_net_inet6, IPPROTO_IPV6, ip6, CTLFLAG_RW, 0,
"IPv6");
+SYSCTL_NODE(_net_inet6, IPPROTO_ICMPV6, icmp6, CTLFLAG_RW, 0,
"ICMPv6");
+SYSCTL_NODE(_net_inet6, IPPROTO_UDP, udp6, CTLFLAG_RW, 0,
"UDPv6");
+SYSCTL_NODE(_net_inet6, IPPROTO_TCP, tcp6, CTLFLAG_RW, 0,
"TCPv6");
#ifdef SCTP
-SYSCTL_NODE(_net_inet6, IPPROTO_SCTP, sctp6, CTLFLAG_RW, 0,
"SCTP6");
+SYSCTL_NODE(_net_inet6, IPPROTO_SCTP, sctp6, CTLFLAG_RW, 0,
"SCTPv6");
#endif
#ifdef IPSEC
SYSCTL_NODE(_net_inet6, IPPROTO_ESP, ipsec6, CTLFLAG_RW, 0,
"IPSEC6");
@@ -515,77 +512,99 @@
}
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_FORWARDING, forwarding, CTLFLAG_RW,
- &VNET_NAME(ip6_forwarding), 0, "");
+ &VNET_NAME(ip6_forwarding), 0,
+ "Forward IPv6 packets via node");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_SENDREDIRECTS, redirect, CTLFLAG_RW,
- &VNET_NAME(ip6_sendredirects), 0, "");
+ &VNET_NAME(ip6_sendredirects), 0,
+ "Redirect IPv6 packets via node");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_DEFHLIM, hlim, CTLFLAG_RW,
- &VNET_NAME(ip6_defhlim), 0, "");
+ &VNET_NAME(ip6_defhlim), 0,
+ "Default hop limit for IPv6 unicast packets");
SYSCTL_VNET_STRUCT(_net_inet6_ip6, IPV6CTL_STATS, stats, CTLFLAG_RW,
- &VNET_NAME(ip6stat), ip6stat, "");
+ &VNET_NAME(ip6stat), ip6stat,
+ "IPv6 statistics");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_MAXFRAGPACKETS, maxfragpackets,
- CTLFLAG_RW, &VNET_NAME(ip6_maxfragpackets), 0, "");
+ CTLFLAG_RW, &VNET_NAME(ip6_maxfragpackets), 0,
+ "Maximum number of fragmented packets to process");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_ACCEPT_RTADV, accept_rtadv,
- CTLFLAG_RW, &VNET_NAME(ip6_accept_rtadv), 0,
- "Default value of per-interface flag for accepting ICMPv6 Router"
- "Advertisement messages");
+ CTLFLAG_RW, &VNET_NAME(ip6_accept_rtadv), 0,
+ "Default value of per-interface flag for accepting ICMPv6 Router"
+ "Advertisement messages");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_NO_RADR, no_radr,
- CTLFLAG_RW, &VNET_NAME(ip6_no_radr), 0,
- "Default value of per-interface flag to control whether routers "
- "sending ICMPv6 RA messages on that interface are added into the "
- "default router list.");
+ CTLFLAG_RW, &VNET_NAME(ip6_no_radr), 0,
+ "Default value of per-interface flag to control whether routers "
+ "sending ICMPv6 RA messages on that interface are added into the "
+ "default router list");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_NORBIT_RAIF, norbit_raif, CTLFLAG_RW,
- &VNET_NAME(ip6_norbit_raif), 0,
- "Always set 0 to R flag in ICMPv6 NA messages when accepting RA"
- " on the interface.");
+ &VNET_NAME(ip6_norbit_raif), 0,
+ "Always set 0 to R flag in ICMPv6 NA messages when accepting RA "
+ "on the interface");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_RFC6204W3, rfc6204w3,
- CTLFLAG_RW, &VNET_NAME(ip6_rfc6204w3), 0,
- "Accept the default router list from ICMPv6 RA messages even "
- "when packet forwarding enabled.");
+ CTLFLAG_RW, &VNET_NAME(ip6_rfc6204w3), 0,
+ "Accept the default router list from ICMPv6 RA messages even when packet "
+ "forwarding enabled");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_KEEPFAITH, keepfaith, CTLFLAG_RW,
- &VNET_NAME(ip6_keepfaith), 0, "");
+ &VNET_NAME(ip6_keepfaith), 0,
+ "");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_LOG_INTERVAL, log_interval,
- CTLFLAG_RW, &VNET_NAME(ip6_log_interval), 0, "");
+ CTLFLAG_RW, &VNET_NAME(ip6_log_interval), 0,
+ "Period (in secs) for throttling logging for high-traffic operations");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_HDRNESTLIMIT, hdrnestlimit,
- CTLFLAG_RW, &VNET_NAME(ip6_hdrnestlimit), 0, "");
+ CTLFLAG_RW, &VNET_NAME(ip6_hdrnestlimit), 0,
+ "Maximum number of nested header options to process");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_DAD_COUNT, dad_count, CTLFLAG_RW,
- &VNET_NAME(ip6_dad_count), 0, "");
+ &VNET_NAME(ip6_dad_count), 0,
+ "Number of Duplicate Address Detection attempts to try before "
+ "disabling interface. Setting the value to 0 disables DAD");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_AUTO_FLOWLABEL, auto_flowlabel,
- CTLFLAG_RW, &VNET_NAME(ip6_auto_flowlabel), 0, "");
+ CTLFLAG_RW, &VNET_NAME(ip6_auto_flowlabel), 0,
+ "Automatically attach a flowlabel to IPv6 packets");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_DEFMCASTHLIM, defmcasthlim,
- CTLFLAG_RW, &VNET_NAME(ip6_defmcasthlim), 0, "");
+ CTLFLAG_RW, &VNET_NAME(ip6_defmcasthlim), 0,
+ "Default hop limit for ip6 multicast packets");
SYSCTL_STRING(_net_inet6_ip6, IPV6CTL_KAME_VERSION, kame_version,
- CTLFLAG_RD, __KAME_VERSION, 0, "");
+ CTLFLAG_RD, __KAME_VERSION, 0,
+ "");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_USE_DEPRECATED, use_deprecated,
- CTLFLAG_RW, &VNET_NAME(ip6_use_deprecated), 0, "");
-SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_RR_PRUNE, rr_prune, CTLFLAG_RW,
- &VNET_NAME(ip6_rr_prune), 0, "");
+ CTLFLAG_RW, &VNET_NAME(ip6_use_deprecated), 0,
+ "Use deprecated IPv6 support");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_USETEMPADDR, use_tempaddr,
- CTLFLAG_RW, &VNET_NAME(ip6_use_tempaddr), 0, "");
+ CTLFLAG_RW, &VNET_NAME(ip6_use_tempaddr), 0,
+ "Use a temporary address when establishing address via SLAAC");
SYSCTL_VNET_PROC(_net_inet6_ip6, IPV6CTL_TEMPPLTIME, temppltime,
- CTLTYPE_INT|CTLFLAG_RW, &VNET_NAME(ip6_temp_preferred_lifetime), 0,
- sysctl_ip6_temppltime, "I", "");
+ CTLTYPE_INT|CTLFLAG_RW, &VNET_NAME(ip6_temp_preferred_lifetime), 0,
+ sysctl_ip6_temppltime, "I",
+ "Preferred lifetime (in secs) for a temporary address");
SYSCTL_VNET_PROC(_net_inet6_ip6, IPV6CTL_TEMPVLTIME, tempvltime,
- CTLTYPE_INT|CTLFLAG_RW, &VNET_NAME(ip6_temp_valid_lifetime), 0,
- sysctl_ip6_tempvltime, "I", "");
+ CTLTYPE_INT|CTLFLAG_RW, &VNET_NAME(ip6_temp_valid_lifetime), 0,
+ sysctl_ip6_tempvltime, "I",
+ "Valid lifetime (in secs) for a temporary address");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_V6ONLY, v6only, CTLFLAG_RW,
- &VNET_NAME(ip6_v6only), 0, "");
+ &VNET_NAME(ip6_v6only), 0,
+ "Allow IPv4-mapped ip6 addresses per RFC 3493");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_AUTO_LINKLOCAL, auto_linklocal,
- CTLFLAG_RW, &VNET_NAME(ip6_auto_linklocal), 0,
- "Default value of per-interface flag for automatically adding an IPv6"
- " link-local address to interfaces when attached");
-SYSCTL_VNET_STRUCT(_net_inet6_ip6, IPV6CTL_RIP6STATS, rip6stats, CTLFLAG_RW,
- &VNET_NAME(rip6stat), rip6stat, "");
+ CTLFLAG_RW, &VNET_NAME(ip6_auto_linklocal), 0,
+ "Default value of per-interface flag for automatically adding an ip6 "
+ "link-local address to interfaces when attached");
+SYSCTL_VNET_STRUCT(_net_inet6_ip6, IPV6CTL_RIPV6STATS, rip6stats, CTLFLAG_RW,
+ &VNET_NAME(rip6stat), rip6stat,
+ "RIP6 statistics");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_PREFER_TEMPADDR, prefer_tempaddr,
- CTLFLAG_RW, &VNET_NAME(ip6_prefer_tempaddr), 0, "");
+ CTLFLAG_RW, &VNET_NAME(ip6_prefer_tempaddr), 0,
+ "Prefer the temporary address assigned when performing NUD");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_USE_DEFAULTZONE, use_defaultzone,
- CTLFLAG_RW, &VNET_NAME(ip6_use_defzone), 0,"");
+ CTLFLAG_RW, &VNET_NAME(ip6_use_defzone), 0,
+ "Use the default scope zone if not explicitly provided");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_MAXFRAGS, maxfrags, CTLFLAG_RW,
- &VNET_NAME(ip6_maxfrags), 0, "");
+ &VNET_NAME(ip6_maxfrags), 0,
+ "Maximum number of fragments to hold in the reassembly queue");
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_MCAST_PMTU, mcast_pmtu, CTLFLAG_RW,
- &VNET_NAME(ip6_mcast_pmtu), 0, "");
+ &VNET_NAME(ip6_mcast_pmtu), 0,
+ "Enable multicast pMTU discovery");
#ifdef IPSTEALTH
SYSCTL_VNET_INT(_net_inet6_ip6, IPV6CTL_STEALTH, stealth, CTLFLAG_RW,
- &VNET_NAME(ip6stealth), 0, "");
+ &VNET_NAME(ip6stealth), 0,
+ "IPv6 stealth mode. No hop limit decrementation on forwarding");
#endif
#ifdef FLOWTABLE
@@ -600,29 +619,39 @@
/* net.inet6.icmp6 */
SYSCTL_VNET_INT(_net_inet6_icmp6, ICMPV6CTL_REDIRACCEPT, rediraccept,
- CTLFLAG_RW, &VNET_NAME(icmp6_rediraccept), 0, "");
-SYSCTL_VNET_INT(_net_inet6_icmp6, ICMPV6CTL_REDIRTIMEOUT, redirtimeout,
- CTLFLAG_RW, &VNET_NAME(icmp6_redirtimeout), 0, "");
+ CTLFLAG_RW, &VNET_NAME(icmp6_rediraccept), 0,
+ "Accept and process router redirects");
SYSCTL_VNET_STRUCT(_net_inet6_icmp6, ICMPV6CTL_STATS, stats, CTLFLAG_RW,
- &VNET_NAME(icmp6stat), icmp6stat, "");
+ &VNET_NAME(icmp6stat), icmp6stat,
+ "ICMPv6 statistics");
SYSCTL_VNET_INT(_net_inet6_icmp6, ICMPV6CTL_ND6_PRUNE, nd6_prune, CTLFLAG_RW,
- &VNET_NAME(nd6_prune), 0, "");
+ &VNET_NAME(nd6_prune), 0,
+ "Period (in secs) for checking for stale router entries via nd6");
SYSCTL_VNET_INT(_net_inet6_icmp6, ICMPV6CTL_ND6_DELAY, nd6_delay, CTLFLAG_RW,
- &VNET_NAME(nd6_delay), 0, "");
+ &VNET_NAME(nd6_delay), 0,
+ "Delay (in secs) before performing NUD on stale nodes");
SYSCTL_VNET_INT(_net_inet6_icmp6, ICMPV6CTL_ND6_UMAXTRIES, nd6_umaxtries,
- CTLFLAG_RW, &VNET_NAME(nd6_umaxtries), 0, "");
+ CTLFLAG_RW, &VNET_NAME(nd6_umaxtries), 0,
+ "Maximum number of unicast queries to perform via nd6");
SYSCTL_VNET_INT(_net_inet6_icmp6, ICMPV6CTL_ND6_MMAXTRIES, nd6_mmaxtries,
- CTLFLAG_RW, &VNET_NAME(nd6_mmaxtries), 0, "");
+ CTLFLAG_RW, &VNET_NAME(nd6_mmaxtries), 0,
+ "Maximum number of multicast queries to perform via nd6");
SYSCTL_VNET_INT(_net_inet6_icmp6, ICMPV6CTL_ND6_USELOOPBACK, nd6_useloopback,
- CTLFLAG_RW, &VNET_NAME(nd6_useloopback), 0, "");
+ CTLFLAG_RW, &VNET_NAME(nd6_useloopback), 0,
+ "Use loopback interface for local traffic");
SYSCTL_VNET_INT(_net_inet6_icmp6, ICMPV6CTL_NODEINFO, nodeinfo, CTLFLAG_RW,
- &VNET_NAME(icmp6_nodeinfo), 0, "");
+ &VNET_NAME(icmp6_nodeinfo), 0,
+ "Node information state");
SYSCTL_VNET_INT(_net_inet6_icmp6, ICMPV6CTL_ERRPPSLIMIT, errppslimit,
- CTLFLAG_RW, &VNET_NAME(icmp6errppslim), 0, "");
+ CTLFLAG_RW, &VNET_NAME(icmp6errppslim), 0,
+ "Packets per second limit for ICMPv6 queries");
SYSCTL_VNET_INT(_net_inet6_icmp6, ICMPV6CTL_ND6_MAXNUDHINT, nd6_maxnudhint,
- CTLFLAG_RW, &VNET_NAME(nd6_maxnudhint), 0, "");
+ CTLFLAG_RW, &VNET_NAME(nd6_maxnudhint), 0,
+ "Maximum number of upper layer hints");
SYSCTL_VNET_INT(_net_inet6_icmp6, ICMPV6CTL_ND6_DEBUG, nd6_debug, CTLFLAG_RW,
- &VNET_NAME(nd6_debug), 0, "");
+ &VNET_NAME(nd6_debug), 0,
+ "");
SYSCTL_VNET_INT(_net_inet6_icmp6, ICMPV6CTL_ND6_ONLINKNSRFC4861,
- nd6_onlink_ns_rfc4861, CTLFLAG_RW, &VNET_NAME(nd6_onlink_ns_rfc4861),
- 0, "Accept 'on-link' nd6 NS in compliance with RFC 4861.");
+ nd6_onlink_ns_rfc4861,
+ CTLFLAG_RW, &VNET_NAME(nd6_onlink_ns_rfc4861), 0,
+ "Accept 'on-link' nd6 NS in compliance with RFC 4861");
--967339439-1681226068-1354342829=:57210
Content-Type: TEXT/PLAIN; charset=US-ASCII; name=document-netinet6_sysctls.patch.txt
Content-Transfer-Encoding: BASE64
Content-ID: <alpine.BSF.2.00.1211302220240.57210@toaster.local>
Content-Description:
Content-Disposition: attachment; filename=document-netinet6_sysctls.patch.txt
SW5kZXg6IHN5cy9uZXRpbmV0Ni9pbjZfcHJvdG8uYw0KPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQ0KLS0tIHN5cy9uZXRpbmV0Ni9pbjZfcHJvdG8uYwkocmV2
aXNpb24gMjQzNTU3KQ0KKysrIHN5cy9uZXRpbmV0Ni9pbjZfcHJvdG8uYwko
d29ya2luZyBjb3B5KQ0KQEAgLTEzMSw3ICsxMzEsNyBAQA0KICNlbmRpZg0K
IA0KIC8qDQotICogVENQL0lQIHByb3RvY29sIGZhbWlseTogSVA2LCBJQ01Q
NiwgVURQLCBUQ1AuDQorICogVENQL0lQIHByb3RvY29sIGZhbWlseTogSVB2
NiwgSUNNUHY2LCBVRFB2NiwgVENQdjYuDQogICovDQogRkVBVFVSRShpbmV0
NiwgIkludGVybmV0IFByb3RvY29sIHZlcnNpb24gNiIpOw0KIA0KQEAgLTM4
Miw5ICszODIsOSBAQA0KICAqLw0KICNpZm5kZWYJSVBWNkZPUldBUkRJTkcN
CiAjaWZkZWYgR0FURVdBWTYNCi0jZGVmaW5lCUlQVjZGT1JXQVJESU5HCTEJ
LyogZm9yd2FyZCBJUDYgcGFja2V0cyBub3QgZm9yIHVzICovDQorI2RlZmlu
ZQlJUFY2Rk9SV0FSRElORwkxCS8qIGZvcndhcmQgSVB2NiBwYWNrZXRzICov
DQogI2Vsc2UNCi0jZGVmaW5lCUlQVjZGT1JXQVJESU5HCTAJLyogZG9uJ3Qg
Zm9yd2FyZCBJUDYgcGFja2V0cyBub3QgZm9yIHVzICovDQorI2RlZmluZQlJ
UFY2Rk9SV0FSRElORwkwCS8qIGRvbid0IGZvcndhcmQgSVB2NiBwYWNrZXRz
ICovDQogI2VuZGlmIC8qIEdBVEVXQVk2ICovDQogI2VuZGlmIC8qICFJUFY2
Rk9SV0FSRElORyAqLw0KIA0KQEAgLTQwOSw4ICs0MDksNiBAQA0KIFZORVRf
REVGSU5FKGludCwgaXA2X2F1dG9fZmxvd2xhYmVsKSA9IDE7DQogVk5FVF9E
RUZJTkUoaW50LCBpcDZfdXNlX2RlcHJlY2F0ZWQpID0gMTsvKiBhbGxvdyBk
ZXByZWNhdGVkIGFkZHINCiAJCQkJCSAqIChSRkMyNDYyIDUuNS40KSAqLw0K
LVZORVRfREVGSU5FKGludCwgaXA2X3JyX3BydW5lKSA9IDU7CS8qIHJvdXRl
ciByZW51bWJlcmluZyBwcmVmaXgNCi0JCQkJCSAqIHdhbGsgbGlzdCBldmVy
eSA1IHNlYy4gKi8NCiBWTkVUX0RFRklORShpbnQsIGlwNl9tY2FzdF9wbXR1
KSA9IDA7CS8qIGVuYWJsZSBwTVRVIGRpc2NvdmVyeSBmb3IgbXVsdGljYXN0
PyAqLw0KIFZORVRfREVGSU5FKGludCwgaXA2X3Y2b25seSkgPSAxOw0KIA0K
QEAgLTQzMSw3ICs0MjksNyBAQA0KIFZORVRfREVGSU5FKGludCwgcG10dV9l
eHBpcmUpID0gNjAqMTA7DQogVk5FVF9ERUZJTkUoaW50LCBwbXR1X3Byb2Jl
KSA9IDYwKjI7DQogDQotLyogcmF3IElQNiBwYXJhbWV0ZXJzICovDQorLyog
cmF3IElQVjYgcGFyYW1ldGVycyAqLw0KIC8qDQogICogTm9taW5hbCBzcGFj
ZSBhbGxvY2F0ZWQgdG8gYSByYXcgaXAgc29ja2V0Lg0KICAqLw0KQEAgLTQ0
MywxMyArNDQxLDEyIEBADQogDQogLyogSUNNUFY2IHBhcmFtZXRlcnMgKi8N
CiBWTkVUX0RFRklORShpbnQsIGljbXA2X3JlZGlyYWNjZXB0KSA9IDE7Lyog
YWNjZXB0IGFuZCBwcm9jZXNzIHJlZGlyZWN0cyAqLw0KLVZORVRfREVGSU5F
KGludCwgaWNtcDZfcmVkaXJ0aW1lb3V0KSA9IDEwICogNjA7CS8qIDEwIG1p
bnV0ZXMgKi8NCiBWTkVUX0RFRklORShpbnQsIGljbXA2ZXJycHBzbGltKSA9
IDEwMDsJCS8qIDEwMHBwcyAqLw0KIC8qIGNvbnRyb2wgaG93IHRvIHJlc3Bv
bmQgdG8gTkkgcXVlcmllcyAqLw0KIFZORVRfREVGSU5FKGludCwgaWNtcDZf
bm9kZWluZm8pID0NCiAgICAgKElDTVA2X05PREVJTkZPX0ZRRE5PS3xJQ01Q
Nl9OT0RFSU5GT19OT0RFQUREUk9LKTsNCiANCi0vKiBVRFAgb24gSVA2IHBh
cmFtZXRlcnMgKi8NCisvKiBVRFAgb24gSVB2NiBwYXJhbWV0ZXJzICovDQog
Vk5FVF9ERUZJTkUoaW50LCB1ZHA2X3NlbmRzcGFjZSkgPSA5MjE2Oy8qIHJl
YWxseSBtYXggZGF0YWdyYW0gc2l6ZSAqLw0KIFZORVRfREVGSU5FKGludCwg
dWRwNl9yZWN2c3BhY2UpID0gNDAgKiAoMTAyNCArIHNpemVvZihzdHJ1Y3Qg
c29ja2FkZHJfaW42KSk7DQogCQkJCQkvKiA0MCAxSyBkYXRhZ3JhbXMgKi8N
CkBAIC00NjEsMTIgKzQ1OCwxMiBAQA0KIAkiSW50ZXJuZXQ2IEZhbWlseSIp
Ow0KIA0KIC8qIG5ldC5pbmV0NiAqLw0KLVNZU0NUTF9OT0RFKF9uZXRfaW5l
dDYsCUlQUFJPVE9fSVBWNiwJaXA2LAlDVExGTEFHX1JXLCAwLAkiSVA2Iik7
DQotU1lTQ1RMX05PREUoX25ldF9pbmV0NiwJSVBQUk9UT19JQ01QVjYsCWlj
bXA2LAlDVExGTEFHX1JXLCAwLAkiSUNNUDYiKTsNCi1TWVNDVExfTk9ERShf
bmV0X2luZXQ2LAlJUFBST1RPX1VEUCwJdWRwNiwJQ1RMRkxBR19SVywgMCwJ
IlVEUDYiKTsNCi1TWVNDVExfTk9ERShfbmV0X2luZXQ2LAlJUFBST1RPX1RD
UCwJdGNwNiwJQ1RMRkxBR19SVywgMCwJIlRDUDYiKTsNCitTWVNDVExfTk9E
RShfbmV0X2luZXQ2LAlJUFBST1RPX0lQVjYsCWlwNiwJQ1RMRkxBR19SVywg
MCwJIklQdjYiKTsNCitTWVNDVExfTk9ERShfbmV0X2luZXQ2LAlJUFBST1RP
X0lDTVBWNiwJaWNtcDYsCUNUTEZMQUdfUlcsIDAsCSJJQ01QdjYiKTsNCitT
WVNDVExfTk9ERShfbmV0X2luZXQ2LAlJUFBST1RPX1VEUCwJdWRwNiwJQ1RM
RkxBR19SVywgMCwJIlVEUHY2Iik7DQorU1lTQ1RMX05PREUoX25ldF9pbmV0
NiwJSVBQUk9UT19UQ1AsCXRjcDYsCUNUTEZMQUdfUlcsIDAsCSJUQ1B2NiIp
Ow0KICNpZmRlZiBTQ1RQDQotU1lTQ1RMX05PREUoX25ldF9pbmV0NiwJSVBQ
Uk9UT19TQ1RQLAlzY3RwNiwJQ1RMRkxBR19SVywgMCwJIlNDVFA2Iik7DQor
U1lTQ1RMX05PREUoX25ldF9pbmV0NiwJSVBQUk9UT19TQ1RQLAlzY3RwNiwJ
Q1RMRkxBR19SVywgMCwJIlNDVFB2NiIpOw0KICNlbmRpZg0KICNpZmRlZiBJ
UFNFQw0KIFNZU0NUTF9OT0RFKF9uZXRfaW5ldDYsCUlQUFJPVE9fRVNQLAlp
cHNlYzYsCUNUTEZMQUdfUlcsIDAsCSJJUFNFQzYiKTsNCkBAIC01MTUsNzcg
KzUxMiw5OSBAQA0KIH0NCiANCiBTWVNDVExfVk5FVF9JTlQoX25ldF9pbmV0
Nl9pcDYsIElQVjZDVExfRk9SV0FSRElORywgZm9yd2FyZGluZywgQ1RMRkxB
R19SVywNCi0JJlZORVRfTkFNRShpcDZfZm9yd2FyZGluZyksIDAsICIiKTsN
CisgICAgJlZORVRfTkFNRShpcDZfZm9yd2FyZGluZyksIDAsDQorICAgICJG
b3J3YXJkIElQdjYgcGFja2V0cyB2aWEgbm9kZSIpOw0KIFNZU0NUTF9WTkVU
X0lOVChfbmV0X2luZXQ2X2lwNiwgSVBWNkNUTF9TRU5EUkVESVJFQ1RTLCBy
ZWRpcmVjdCwgQ1RMRkxBR19SVywNCi0JJlZORVRfTkFNRShpcDZfc2VuZHJl
ZGlyZWN0cyksIDAsICIiKTsNCisgICAgJlZORVRfTkFNRShpcDZfc2VuZHJl
ZGlyZWN0cyksIDAsDQorICAgICJSZWRpcmVjdCBJUHY2IHBhY2tldHMgdmlh
IG5vZGUiKTsNCiBTWVNDVExfVk5FVF9JTlQoX25ldF9pbmV0Nl9pcDYsIElQ
VjZDVExfREVGSExJTSwgaGxpbSwgQ1RMRkxBR19SVywNCi0JJlZORVRfTkFN
RShpcDZfZGVmaGxpbSksIDAsICIiKTsNCisgICAgJlZORVRfTkFNRShpcDZf
ZGVmaGxpbSksIDAsDQorICAgICJEZWZhdWx0IGhvcCBsaW1pdCBmb3IgSVB2
NiB1bmljYXN0IHBhY2tldHMiKTsNCiBTWVNDVExfVk5FVF9TVFJVQ1QoX25l
dF9pbmV0Nl9pcDYsIElQVjZDVExfU1RBVFMsIHN0YXRzLCBDVExGTEFHX1JX
LA0KLQkmVk5FVF9OQU1FKGlwNnN0YXQpLCBpcDZzdGF0LCAiIik7DQorICAg
ICZWTkVUX05BTUUoaXA2c3RhdCksIGlwNnN0YXQsDQorICAgICJJUHY2IHN0
YXRpc3RpY3MiKTsNCiBTWVNDVExfVk5FVF9JTlQoX25ldF9pbmV0Nl9pcDYs
IElQVjZDVExfTUFYRlJBR1BBQ0tFVFMsIG1heGZyYWdwYWNrZXRzLA0KLQlD
VExGTEFHX1JXLCAmVk5FVF9OQU1FKGlwNl9tYXhmcmFncGFja2V0cyksIDAs
ICIiKTsNCisgICAgQ1RMRkxBR19SVywgJlZORVRfTkFNRShpcDZfbWF4ZnJh
Z3BhY2tldHMpLCAwLA0KKyAgICAiTWF4aW11bSBudW1iZXIgb2YgZnJhZ21l
bnRlZCBwYWNrZXRzIHRvIHByb2Nlc3MiKTsNCiBTWVNDVExfVk5FVF9JTlQo
X25ldF9pbmV0Nl9pcDYsIElQVjZDVExfQUNDRVBUX1JUQURWLCBhY2NlcHRf
cnRhZHYsDQotCUNUTEZMQUdfUlcsICZWTkVUX05BTUUoaXA2X2FjY2VwdF9y
dGFkdiksIDAsDQotCSJEZWZhdWx0IHZhbHVlIG9mIHBlci1pbnRlcmZhY2Ug
ZmxhZyBmb3IgYWNjZXB0aW5nIElDTVB2NiBSb3V0ZXIiDQotCSJBZHZlcnRp
c2VtZW50IG1lc3NhZ2VzIik7DQorICAgIENUTEZMQUdfUlcsICZWTkVUX05B
TUUoaXA2X2FjY2VwdF9ydGFkdiksIDAsDQorICAgICJEZWZhdWx0IHZhbHVl
IG9mIHBlci1pbnRlcmZhY2UgZmxhZyBmb3IgYWNjZXB0aW5nIElDTVB2NiBS
b3V0ZXIiDQorICAgICJBZHZlcnRpc2VtZW50IG1lc3NhZ2VzIik7DQogU1lT
Q1RMX1ZORVRfSU5UKF9uZXRfaW5ldDZfaXA2LCBJUFY2Q1RMX05PX1JBRFIs
IG5vX3JhZHIsDQotCUNUTEZMQUdfUlcsICZWTkVUX05BTUUoaXA2X25vX3Jh
ZHIpLCAwLA0KLQkiRGVmYXVsdCB2YWx1ZSBvZiBwZXItaW50ZXJmYWNlIGZs
YWcgdG8gY29udHJvbCB3aGV0aGVyIHJvdXRlcnMgIg0KLQkic2VuZGluZyBJ
Q01QdjYgUkEgbWVzc2FnZXMgb24gdGhhdCBpbnRlcmZhY2UgYXJlIGFkZGVk
IGludG8gdGhlICINCi0JImRlZmF1bHQgcm91dGVyIGxpc3QuIik7DQorICAg
IENUTEZMQUdfUlcsICZWTkVUX05BTUUoaXA2X25vX3JhZHIpLCAwLA0KKyAg
ICAiRGVmYXVsdCB2YWx1ZSBvZiBwZXItaW50ZXJmYWNlIGZsYWcgdG8gY29u
dHJvbCB3aGV0aGVyIHJvdXRlcnMgIg0KKyAgICAic2VuZGluZyBJQ01QdjYg
UkEgbWVzc2FnZXMgb24gdGhhdCBpbnRlcmZhY2UgYXJlIGFkZGVkIGludG8g
dGhlICINCisgICAgImRlZmF1bHQgcm91dGVyIGxpc3QiKTsNCiBTWVNDVExf
Vk5FVF9JTlQoX25ldF9pbmV0Nl9pcDYsIElQVjZDVExfTk9SQklUX1JBSUYs
IG5vcmJpdF9yYWlmLCBDVExGTEFHX1JXLA0KLQkmVk5FVF9OQU1FKGlwNl9u
b3JiaXRfcmFpZiksIDAsDQotCSJBbHdheXMgc2V0IDAgdG8gUiBmbGFnIGlu
IElDTVB2NiBOQSBtZXNzYWdlcyB3aGVuIGFjY2VwdGluZyBSQSINCi0JIiBv
biB0aGUgaW50ZXJmYWNlLiIpOw0KKyAgICAmVk5FVF9OQU1FKGlwNl9ub3Ji
aXRfcmFpZiksIDAsDQorICAgICJBbHdheXMgc2V0IDAgdG8gUiBmbGFnIGlu
IElDTVB2NiBOQSBtZXNzYWdlcyB3aGVuIGFjY2VwdGluZyBSQSAiDQorICAg
ICJvbiB0aGUgaW50ZXJmYWNlIik7DQogU1lTQ1RMX1ZORVRfSU5UKF9uZXRf
aW5ldDZfaXA2LCBJUFY2Q1RMX1JGQzYyMDRXMywgcmZjNjIwNHczLA0KLQlD
VExGTEFHX1JXLCAmVk5FVF9OQU1FKGlwNl9yZmM2MjA0dzMpLCAwLA0KLQki
QWNjZXB0IHRoZSBkZWZhdWx0IHJvdXRlciBsaXN0IGZyb20gSUNNUHY2IFJB
IG1lc3NhZ2VzIGV2ZW4gIg0KLQkid2hlbiBwYWNrZXQgZm9yd2FyZGluZyBl
bmFibGVkLiIpOw0KKyAgICBDVExGTEFHX1JXLCAmVk5FVF9OQU1FKGlwNl9y
ZmM2MjA0dzMpLCAwLA0KKyAgICAiQWNjZXB0IHRoZSBkZWZhdWx0IHJvdXRl
ciBsaXN0IGZyb20gSUNNUHY2IFJBIG1lc3NhZ2VzIGV2ZW4gd2hlbiBwYWNr
ZXQgIg0KKyAgICAiZm9yd2FyZGluZyBlbmFibGVkIik7DQogU1lTQ1RMX1ZO
RVRfSU5UKF9uZXRfaW5ldDZfaXA2LCBJUFY2Q1RMX0tFRVBGQUlUSCwga2Vl
cGZhaXRoLCBDVExGTEFHX1JXLA0KLQkmVk5FVF9OQU1FKGlwNl9rZWVwZmFp
dGgpLCAwLCAiIik7DQorICAgICZWTkVUX05BTUUoaXA2X2tlZXBmYWl0aCks
IDAsDQorICAgICIiKTsNCiBTWVNDVExfVk5FVF9JTlQoX25ldF9pbmV0Nl9p
cDYsIElQVjZDVExfTE9HX0lOVEVSVkFMLCBsb2dfaW50ZXJ2YWwsDQotCUNU
TEZMQUdfUlcsICZWTkVUX05BTUUoaXA2X2xvZ19pbnRlcnZhbCksIDAsICIi
KTsNCisgICAgQ1RMRkxBR19SVywgJlZORVRfTkFNRShpcDZfbG9nX2ludGVy
dmFsKSwgMCwNCisgICAgIlBlcmlvZCAoaW4gc2VjcykgZm9yIHRocm90dGxp
bmcgbG9nZ2luZyBmb3IgaGlnaC10cmFmZmljIG9wZXJhdGlvbnMiKTsNCiBT
WVNDVExfVk5FVF9JTlQoX25ldF9pbmV0Nl9pcDYsIElQVjZDVExfSERSTkVT
VExJTUlULCBoZHJuZXN0bGltaXQsDQotCUNUTEZMQUdfUlcsICZWTkVUX05B
TUUoaXA2X2hkcm5lc3RsaW1pdCksIDAsICIiKTsNCisgICAgQ1RMRkxBR19S
VywgJlZORVRfTkFNRShpcDZfaGRybmVzdGxpbWl0KSwgMCwNCisgICAgIk1h
eGltdW0gbnVtYmVyIG9mIG5lc3RlZCBoZWFkZXIgb3B0aW9ucyB0byBwcm9j
ZXNzIik7DQogU1lTQ1RMX1ZORVRfSU5UKF9uZXRfaW5ldDZfaXA2LCBJUFY2
Q1RMX0RBRF9DT1VOVCwgZGFkX2NvdW50LCBDVExGTEFHX1JXLA0KLQkmVk5F
VF9OQU1FKGlwNl9kYWRfY291bnQpLCAwLCAiIik7DQorICAgICZWTkVUX05B
TUUoaXA2X2RhZF9jb3VudCksIDAsDQorICAgICJOdW1iZXIgb2YgRHVwbGlj
YXRlIEFkZHJlc3MgRGV0ZWN0aW9uIGF0dGVtcHRzIHRvIHRyeSBiZWZvcmUg
Ig0KKyAgICAiZGlzYWJsaW5nIGludGVyZmFjZS4gIFNldHRpbmcgdGhlIHZh
bHVlIHRvIDAgZGlzYWJsZXMgREFEIik7DQogU1lTQ1RMX1ZORVRfSU5UKF9u
ZXRfaW5ldDZfaXA2LCBJUFY2Q1RMX0FVVE9fRkxPV0xBQkVMLCBhdXRvX2Zs
b3dsYWJlbCwNCi0JQ1RMRkxBR19SVywgJlZORVRfTkFNRShpcDZfYXV0b19m
bG93bGFiZWwpLCAwLCAiIik7DQorICAgIENUTEZMQUdfUlcsICZWTkVUX05B
TUUoaXA2X2F1dG9fZmxvd2xhYmVsKSwgMCwNCisgICAgIkF1dG9tYXRpY2Fs
bHkgYXR0YWNoIGEgZmxvd2xhYmVsIHRvIElQdjYgcGFja2V0cyIpOw0KIFNZ
U0NUTF9WTkVUX0lOVChfbmV0X2luZXQ2X2lwNiwgSVBWNkNUTF9ERUZNQ0FT
VEhMSU0sIGRlZm1jYXN0aGxpbSwNCi0JQ1RMRkxBR19SVywgJlZORVRfTkFN
RShpcDZfZGVmbWNhc3RobGltKSwgMCwgIiIpOw0KKyAgICBDVExGTEFHX1JX
LCAmVk5FVF9OQU1FKGlwNl9kZWZtY2FzdGhsaW0pLCAwLA0KKyAgICAiRGVm
YXVsdCBob3AgbGltaXQgZm9yIGlwNiBtdWx0aWNhc3QgcGFja2V0cyIpOw0K
IFNZU0NUTF9TVFJJTkcoX25ldF9pbmV0Nl9pcDYsIElQVjZDVExfS0FNRV9W
RVJTSU9OLCBrYW1lX3ZlcnNpb24sDQotCUNUTEZMQUdfUkQsIF9fS0FNRV9W
RVJTSU9OLCAwLCAiIik7DQorICAgIENUTEZMQUdfUkQsIF9fS0FNRV9WRVJT
SU9OLCAwLA0KKyAgICAiIik7DQogU1lTQ1RMX1ZORVRfSU5UKF9uZXRfaW5l
dDZfaXA2LCBJUFY2Q1RMX1VTRV9ERVBSRUNBVEVELCB1c2VfZGVwcmVjYXRl
ZCwNCi0JQ1RMRkxBR19SVywgJlZORVRfTkFNRShpcDZfdXNlX2RlcHJlY2F0
ZWQpLCAwLCAiIik7DQotU1lTQ1RMX1ZORVRfSU5UKF9uZXRfaW5ldDZfaXA2
LCBJUFY2Q1RMX1JSX1BSVU5FLCBycl9wcnVuZSwgQ1RMRkxBR19SVywNCi0J
JlZORVRfTkFNRShpcDZfcnJfcHJ1bmUpLCAwLCAiIik7DQorICAgIENUTEZM
QUdfUlcsICZWTkVUX05BTUUoaXA2X3VzZV9kZXByZWNhdGVkKSwgMCwNCisg
ICAgIlVzZSBkZXByZWNhdGVkIElQdjYgc3VwcG9ydCIpOw0KIFNZU0NUTF9W
TkVUX0lOVChfbmV0X2luZXQ2X2lwNiwgSVBWNkNUTF9VU0VURU1QQUREUiwg
dXNlX3RlbXBhZGRyLA0KLQlDVExGTEFHX1JXLCAmVk5FVF9OQU1FKGlwNl91
c2VfdGVtcGFkZHIpLCAwLCAiIik7DQorICAgIENUTEZMQUdfUlcsICZWTkVU
X05BTUUoaXA2X3VzZV90ZW1wYWRkciksIDAsDQorICAgICJVc2UgYSB0ZW1w
b3JhcnkgYWRkcmVzcyB3aGVuIGVzdGFibGlzaGluZyBhZGRyZXNzIHZpYSBT
TEFBQyIpOw0KIFNZU0NUTF9WTkVUX1BST0MoX25ldF9pbmV0Nl9pcDYsIElQ
VjZDVExfVEVNUFBMVElNRSwgdGVtcHBsdGltZSwNCi0JQ1RMVFlQRV9JTlR8
Q1RMRkxBR19SVywgJlZORVRfTkFNRShpcDZfdGVtcF9wcmVmZXJyZWRfbGlm
ZXRpbWUpLCAwLA0KLSAgIAlzeXNjdGxfaXA2X3RlbXBwbHRpbWUsICJJIiwg
IiIpOw0KKyAgICBDVExUWVBFX0lOVHxDVExGTEFHX1JXLCAmVk5FVF9OQU1F
KGlwNl90ZW1wX3ByZWZlcnJlZF9saWZldGltZSksIDAsDQorICAgIHN5c2N0
bF9pcDZfdGVtcHBsdGltZSwgIkkiLA0KKyAgICAiUHJlZmVycmVkIGxpZmV0
aW1lIChpbiBzZWNzKSBmb3IgYSB0ZW1wb3JhcnkgYWRkcmVzcyIpOw0KIFNZ
U0NUTF9WTkVUX1BST0MoX25ldF9pbmV0Nl9pcDYsIElQVjZDVExfVEVNUFZM
VElNRSwgdGVtcHZsdGltZSwNCi0JQ1RMVFlQRV9JTlR8Q1RMRkxBR19SVywg
JlZORVRfTkFNRShpcDZfdGVtcF92YWxpZF9saWZldGltZSksIDAsDQotICAg
CXN5c2N0bF9pcDZfdGVtcHZsdGltZSwgIkkiLCAiIik7DQorICAgIENUTFRZ
UEVfSU5UfENUTEZMQUdfUlcsICZWTkVUX05BTUUoaXA2X3RlbXBfdmFsaWRf
bGlmZXRpbWUpLCAwLA0KKyAgICBzeXNjdGxfaXA2X3RlbXB2bHRpbWUsICJJ
IiwNCisgICAgIlZhbGlkIGxpZmV0aW1lIChpbiBzZWNzKSBmb3IgYSB0ZW1w
b3JhcnkgYWRkcmVzcyIpOw0KIFNZU0NUTF9WTkVUX0lOVChfbmV0X2luZXQ2
X2lwNiwgSVBWNkNUTF9WNk9OTFksIHY2b25seSwJQ1RMRkxBR19SVywNCi0J
JlZORVRfTkFNRShpcDZfdjZvbmx5KSwgMCwgIiIpOw0KKyAgICAmVk5FVF9O
QU1FKGlwNl92Nm9ubHkpLCAwLA0KKyAgICAiQWxsb3cgSVB2NC1tYXBwZWQg
aXA2IGFkZHJlc3NlcyBwZXIgUkZDIDM0OTMiKTsNCiBTWVNDVExfVk5FVF9J
TlQoX25ldF9pbmV0Nl9pcDYsIElQVjZDVExfQVVUT19MSU5LTE9DQUwsIGF1
dG9fbGlua2xvY2FsLA0KLQlDVExGTEFHX1JXLCAmVk5FVF9OQU1FKGlwNl9h
dXRvX2xpbmtsb2NhbCksIDAsDQotCSJEZWZhdWx0IHZhbHVlIG9mIHBlci1p
bnRlcmZhY2UgZmxhZyBmb3IgYXV0b21hdGljYWxseSBhZGRpbmcgYW4gSVB2
NiINCi0JIiBsaW5rLWxvY2FsIGFkZHJlc3MgdG8gaW50ZXJmYWNlcyB3aGVu
IGF0dGFjaGVkIik7DQotU1lTQ1RMX1ZORVRfU1RSVUNUKF9uZXRfaW5ldDZf
aXA2LCBJUFY2Q1RMX1JJUDZTVEFUUywgcmlwNnN0YXRzLCBDVExGTEFHX1JX
LA0KLQkmVk5FVF9OQU1FKHJpcDZzdGF0KSwgcmlwNnN0YXQsICIiKTsNCisg
ICAgQ1RMRkxBR19SVywgJlZORVRfTkFNRShpcDZfYXV0b19saW5rbG9jYWwp
LCAwLA0KKyAgICAiRGVmYXVsdCB2YWx1ZSBvZiBwZXItaW50ZXJmYWNlIGZs
YWcgZm9yIGF1dG9tYXRpY2FsbHkgYWRkaW5nIGFuIGlwNiAiDQorICAgICJs
aW5rLWxvY2FsIGFkZHJlc3MgdG8gaW50ZXJmYWNlcyB3aGVuIGF0dGFjaGVk
Iik7DQorU1lTQ1RMX1ZORVRfU1RSVUNUKF9uZXRfaW5ldDZfaXA2LCBJUFY2
Q1RMX1JJUFY2U1RBVFMsIHJpcDZzdGF0cywgQ1RMRkxBR19SVywNCisgICAg
JlZORVRfTkFNRShyaXA2c3RhdCksIHJpcDZzdGF0LA0KKyAgICAiUklQNiBz
dGF0aXN0aWNzIik7DQogU1lTQ1RMX1ZORVRfSU5UKF9uZXRfaW5ldDZfaXA2
LCBJUFY2Q1RMX1BSRUZFUl9URU1QQUREUiwgcHJlZmVyX3RlbXBhZGRyLA0K
LQlDVExGTEFHX1JXLCAmVk5FVF9OQU1FKGlwNl9wcmVmZXJfdGVtcGFkZHIp
LCAwLCAiIik7DQorICAgIENUTEZMQUdfUlcsICZWTkVUX05BTUUoaXA2X3By
ZWZlcl90ZW1wYWRkciksIDAsDQorICAgICJQcmVmZXIgdGhlIHRlbXBvcmFy
eSBhZGRyZXNzIGFzc2lnbmVkIHdoZW4gcGVyZm9ybWluZyBOVUQiKTsNCiBT
WVNDVExfVk5FVF9JTlQoX25ldF9pbmV0Nl9pcDYsIElQVjZDVExfVVNFX0RF
RkFVTFRaT05FLCB1c2VfZGVmYXVsdHpvbmUsDQotCUNUTEZMQUdfUlcsICZW
TkVUX05BTUUoaXA2X3VzZV9kZWZ6b25lKSwgMCwiIik7DQorICAgIENUTEZM
QUdfUlcsICZWTkVUX05BTUUoaXA2X3VzZV9kZWZ6b25lKSwgMCwNCisgICAg
IlVzZSB0aGUgZGVmYXVsdCBzY29wZSB6b25lIGlmIG5vdCBleHBsaWNpdGx5
IHByb3ZpZGVkIik7DQogU1lTQ1RMX1ZORVRfSU5UKF9uZXRfaW5ldDZfaXA2
LCBJUFY2Q1RMX01BWEZSQUdTLCBtYXhmcmFncywgQ1RMRkxBR19SVywNCi0J
JlZORVRfTkFNRShpcDZfbWF4ZnJhZ3MpLCAwLCAiIik7DQorICAgICZWTkVU
X05BTUUoaXA2X21heGZyYWdzKSwgMCwNCisgICAgIk1heGltdW0gbnVtYmVy
IG9mIGZyYWdtZW50cyB0byBob2xkIGluIHRoZSByZWFzc2VtYmx5IHF1ZXVl
Iik7DQogU1lTQ1RMX1ZORVRfSU5UKF9uZXRfaW5ldDZfaXA2LCBJUFY2Q1RM
X01DQVNUX1BNVFUsIG1jYXN0X3BtdHUsIENUTEZMQUdfUlcsDQotCSZWTkVU
X05BTUUoaXA2X21jYXN0X3BtdHUpLCAwLCAiIik7DQorICAgICZWTkVUX05B
TUUoaXA2X21jYXN0X3BtdHUpLCAwLA0KKyAgICAiRW5hYmxlIG11bHRpY2Fz
dCBwTVRVIGRpc2NvdmVyeSIpOw0KICNpZmRlZiBJUFNURUFMVEgNCiBTWVND
VExfVk5FVF9JTlQoX25ldF9pbmV0Nl9pcDYsIElQVjZDVExfU1RFQUxUSCwg
c3RlYWx0aCwgQ1RMRkxBR19SVywNCi0JJlZORVRfTkFNRShpcDZzdGVhbHRo
KSwgMCwgIiIpOw0KKyAgICAmVk5FVF9OQU1FKGlwNnN0ZWFsdGgpLCAwLA0K
KyAgICAiSVB2NiBzdGVhbHRoIG1vZGUuIE5vIGhvcCBsaW1pdCBkZWNyZW1l
bnRhdGlvbiBvbiBmb3J3YXJkaW5nIik7DQogI2VuZGlmDQogDQogI2lmZGVm
IEZMT1dUQUJMRQ0KQEAgLTYwMCwyOSArNjE5LDM5IEBADQogDQogLyogbmV0
LmluZXQ2LmljbXA2ICovDQogU1lTQ1RMX1ZORVRfSU5UKF9uZXRfaW5ldDZf
aWNtcDYsIElDTVBWNkNUTF9SRURJUkFDQ0VQVCwgcmVkaXJhY2NlcHQsDQot
CUNUTEZMQUdfUlcsICZWTkVUX05BTUUoaWNtcDZfcmVkaXJhY2NlcHQpLCAw
LCAiIik7DQotU1lTQ1RMX1ZORVRfSU5UKF9uZXRfaW5ldDZfaWNtcDYsIElD
TVBWNkNUTF9SRURJUlRJTUVPVVQsIHJlZGlydGltZW91dCwNCi0JQ1RMRkxB
R19SVywgJlZORVRfTkFNRShpY21wNl9yZWRpcnRpbWVvdXQpLCAwLCAiIik7
DQorICAgIENUTEZMQUdfUlcsICZWTkVUX05BTUUoaWNtcDZfcmVkaXJhY2Nl
cHQpLCAwLA0KKyAgICAiQWNjZXB0IGFuZCBwcm9jZXNzIHJvdXRlciByZWRp
cmVjdHMiKTsNCiBTWVNDVExfVk5FVF9TVFJVQ1QoX25ldF9pbmV0Nl9pY21w
NiwgSUNNUFY2Q1RMX1NUQVRTLCBzdGF0cywgQ1RMRkxBR19SVywNCi0JJlZO
RVRfTkFNRShpY21wNnN0YXQpLCBpY21wNnN0YXQsICIiKTsNCisgICAgJlZO
RVRfTkFNRShpY21wNnN0YXQpLCBpY21wNnN0YXQsDQorICAgICJJQ01QdjYg
c3RhdGlzdGljcyIpOw0KIFNZU0NUTF9WTkVUX0lOVChfbmV0X2luZXQ2X2lj
bXA2LCBJQ01QVjZDVExfTkQ2X1BSVU5FLCBuZDZfcHJ1bmUsIENUTEZMQUdf
UlcsDQotCSZWTkVUX05BTUUobmQ2X3BydW5lKSwgMCwgIiIpOw0KKyAgICAm
Vk5FVF9OQU1FKG5kNl9wcnVuZSksIDAsDQorICAgICJQZXJpb2QgKGluIHNl
Y3MpIGZvciBjaGVja2luZyBmb3Igc3RhbGUgcm91dGVyIGVudHJpZXMgdmlh
IG5kNiIpOw0KIFNZU0NUTF9WTkVUX0lOVChfbmV0X2luZXQ2X2ljbXA2LCBJ
Q01QVjZDVExfTkQ2X0RFTEFZLCBuZDZfZGVsYXksIENUTEZMQUdfUlcsDQot
CSZWTkVUX05BTUUobmQ2X2RlbGF5KSwgMCwgIiIpOw0KKyAgICAmVk5FVF9O
QU1FKG5kNl9kZWxheSksIDAsDQorICAgICJEZWxheSAoaW4gc2VjcykgYmVm
b3JlIHBlcmZvcm1pbmcgTlVEIG9uIHN0YWxlIG5vZGVzIik7DQogU1lTQ1RM
X1ZORVRfSU5UKF9uZXRfaW5ldDZfaWNtcDYsIElDTVBWNkNUTF9ORDZfVU1B
WFRSSUVTLCBuZDZfdW1heHRyaWVzLA0KLQlDVExGTEFHX1JXLCAmVk5FVF9O
QU1FKG5kNl91bWF4dHJpZXMpLCAwLCAiIik7DQorICAgIENUTEZMQUdfUlcs
ICZWTkVUX05BTUUobmQ2X3VtYXh0cmllcyksIDAsDQorICAgICJNYXhpbXVt
IG51bWJlciBvZiB1bmljYXN0IHF1ZXJpZXMgdG8gcGVyZm9ybSB2aWEgbmQ2
Iik7DQogU1lTQ1RMX1ZORVRfSU5UKF9uZXRfaW5ldDZfaWNtcDYsIElDTVBW
NkNUTF9ORDZfTU1BWFRSSUVTLCBuZDZfbW1heHRyaWVzLA0KLQlDVExGTEFH
X1JXLCAmVk5FVF9OQU1FKG5kNl9tbWF4dHJpZXMpLCAwLCAiIik7DQorICAg
IENUTEZMQUdfUlcsICZWTkVUX05BTUUobmQ2X21tYXh0cmllcyksIDAsDQor
ICAgICJNYXhpbXVtIG51bWJlciBvZiBtdWx0aWNhc3QgcXVlcmllcyB0byBw
ZXJmb3JtIHZpYSBuZDYiKTsNCiBTWVNDVExfVk5FVF9JTlQoX25ldF9pbmV0
Nl9pY21wNiwgSUNNUFY2Q1RMX05ENl9VU0VMT09QQkFDSywgbmQ2X3VzZWxv
b3BiYWNrLA0KLQlDVExGTEFHX1JXLCAmVk5FVF9OQU1FKG5kNl91c2Vsb29w
YmFjayksIDAsICIiKTsNCisgICAgQ1RMRkxBR19SVywgJlZORVRfTkFNRShu
ZDZfdXNlbG9vcGJhY2spLCAwLA0KKyAgICAiVXNlIGxvb3BiYWNrIGludGVy
ZmFjZSBmb3IgbG9jYWwgdHJhZmZpYyIpOw0KIFNZU0NUTF9WTkVUX0lOVChf
bmV0X2luZXQ2X2ljbXA2LCBJQ01QVjZDVExfTk9ERUlORk8sIG5vZGVpbmZv
LCBDVExGTEFHX1JXLA0KLQkmVk5FVF9OQU1FKGljbXA2X25vZGVpbmZvKSwg
MCwgIiIpOw0KKyAgICAmVk5FVF9OQU1FKGljbXA2X25vZGVpbmZvKSwgMCwN
CisgICAgIk5vZGUgaW5mb3JtYXRpb24gc3RhdGUiKTsNCiBTWVNDVExfVk5F
VF9JTlQoX25ldF9pbmV0Nl9pY21wNiwgSUNNUFY2Q1RMX0VSUlBQU0xJTUlU
LCBlcnJwcHNsaW1pdCwNCi0JQ1RMRkxBR19SVywgJlZORVRfTkFNRShpY21w
NmVycnBwc2xpbSksIDAsICIiKTsNCisgICAgQ1RMRkxBR19SVywgJlZORVRf
TkFNRShpY21wNmVycnBwc2xpbSksIDAsDQorICAgICJQYWNrZXRzIHBlciBz
ZWNvbmQgbGltaXQgZm9yIElDTVB2NiBxdWVyaWVzIik7DQogU1lTQ1RMX1ZO
RVRfSU5UKF9uZXRfaW5ldDZfaWNtcDYsIElDTVBWNkNUTF9ORDZfTUFYTlVE
SElOVCwgbmQ2X21heG51ZGhpbnQsDQotCUNUTEZMQUdfUlcsICZWTkVUX05B
TUUobmQ2X21heG51ZGhpbnQpLCAwLCAiIik7DQorICAgIENUTEZMQUdfUlcs
ICZWTkVUX05BTUUobmQ2X21heG51ZGhpbnQpLCAwLA0KKyAgICAiTWF4aW11
bSBudW1iZXIgb2YgdXBwZXIgbGF5ZXIgaGludHMiKTsNCiBTWVNDVExfVk5F
VF9JTlQoX25ldF9pbmV0Nl9pY21wNiwgSUNNUFY2Q1RMX05ENl9ERUJVRywg
bmQ2X2RlYnVnLCBDVExGTEFHX1JXLA0KLQkmVk5FVF9OQU1FKG5kNl9kZWJ1
ZyksIDAsICIiKTsNCisgICAgJlZORVRfTkFNRShuZDZfZGVidWcpLCAwLA0K
KyAgICAiIik7DQogU1lTQ1RMX1ZORVRfSU5UKF9uZXRfaW5ldDZfaWNtcDYs
IElDTVBWNkNUTF9ORDZfT05MSU5LTlNSRkM0ODYxLA0KLQluZDZfb25saW5r
X25zX3JmYzQ4NjEsIENUTEZMQUdfUlcsICZWTkVUX05BTUUobmQ2X29ubGlu
a19uc19yZmM0ODYxKSwNCi0JMCwgIkFjY2VwdCAnb24tbGluaycgbmQ2IE5T
IGluIGNvbXBsaWFuY2Ugd2l0aCBSRkMgNDg2MS4iKTsNCisgICAgbmQ2X29u
bGlua19uc19yZmM0ODYxLA0KKyAgICBDVExGTEFHX1JXLCAmVk5FVF9OQU1F
KG5kNl9vbmxpbmtfbnNfcmZjNDg2MSksIDAsDQorICAgICJBY2NlcHQgJ29u
LWxpbmsnIG5kNiBOUyBpbiBjb21wbGlhbmNlIHdpdGggUkZDIDQ4NjEiKTsN
Cg==
--967339439-1681226068-1354342829=:57210--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?alpine.BSF.2.00.1211302204460.57210>
