From owner-freebsd-pf@freebsd.org Sun Dec 3 16:40:17 2017 Return-Path: Delivered-To: freebsd-pf@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B707EDFF781 for ; Sun, 3 Dec 2017 16:40:17 +0000 (UTC) (envelope-from srs0=pdfk=c7=sigsegv.be=kristof@codepro.be) Received: from venus.codepro.be (venus.codepro.be [IPv6:2a01:4f8:162:1127::2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "*.codepro.be", Issuer "Gandi Standard SSL CA 2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 7FED97DAD6 for ; Sun, 3 Dec 2017 16:40:17 +0000 (UTC) (envelope-from srs0=pdfk=c7=sigsegv.be=kristof@codepro.be) Received: from [10.0.2.164] (ptr-8ripyygs3omapxtynip.18120a2.ip6.access.telenet.be [IPv6:2a02:1811:2419:4e02:9caa:8c46:a76c:1c91]) (Authenticated sender: kp) by venus.codepro.be (Postfix) with ESMTPSA id 91551426F0; Sun, 3 Dec 2017 17:40:14 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sigsegv.be; s=mail; t=1512319214; bh=4F+PNcnlXoF2eruT7SjR260q4RTFdXZQslXEe5KI0ng=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=yMhNM9UofUf1Stoyqdo9b3vUrgu7bVkthyGXb1Vig4FWqNA58ZXKODQ2TSSqAmcc2 ca8RrRlADE9/MjSxWB8pk/sVZJLzGryo61sNxvSq+kKVlWw/SHIuDcyx7iPPKwCUbO lOReVfm6XrSxBYPvJmTN182OJUoNCuVaZvSS5GQw= From: "Kristof Provost" To: "John Jasen" Cc: "FreeBSD PF" Subject: Re: problems with tftp-proxy in 11.1? Date: Sun, 03 Dec 2017 17:40:13 +0100 X-Mailer: MailMate (2.0BETAr6099) Message-ID: In-Reply-To: References: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-BeenThere: freebsd-pf@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: "Technical discussion and general questions about packet filter \(pf\)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 03 Dec 2017 16:40:17 -0000 On 2 Dec 2017, at 4:56, John Jasen wrote: > Attempts to run tftp-proxy across a freebsd system running pf result in > very slow performance and an endless amount of: > > "pf connection lookup failed (no rdr?)" > Is there something that has regressed in 11.1, or am I missing something? > I’m not aware of any such regressions, but that of course doesn’t mean the can’t be there. Can you post the relevant bits of your rules/configuration? A small test case would be ideal. Regards, Kristof From owner-freebsd-pf@freebsd.org Sun Dec 3 23:07:27 2017 Return-Path: Delivered-To: freebsd-pf@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 27CDDE6B4D8 for ; Sun, 3 Dec 2017 23:07:27 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2001:1900:2254:206a::16:76]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 166206D89A for ; Sun, 3 Dec 2017 23:07:27 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from bugs.freebsd.org ([127.0.1.118]) by kenobi.freebsd.org (8.15.2/8.15.2) with ESMTP id vB3N7Qxc083237 for ; Sun, 3 Dec 2017 23:07:26 GMT (envelope-from bugzilla-noreply@freebsd.org) From: bugzilla-noreply@freebsd.org To: freebsd-pf@FreeBSD.org Subject: [Bug 212873] pf kernel abort at boot in pf_purge_expired_fragments Date: Sun, 03 Dec 2017 23:07:27 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Base System X-Bugzilla-Component: kern X-Bugzilla-Version: CURRENT X-Bugzilla-Keywords: X-Bugzilla-Severity: Affects Only Me X-Bugzilla-Who: kp@freebsd.org X-Bugzilla-Status: New X-Bugzilla-Resolution: X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: freebsd-pf@FreeBSD.org X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: cc Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: freebsd-pf@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: "Technical discussion and general questions about packet filter \(pf\)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 03 Dec 2017 23:07:27 -0000 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D212873 Kristof Provost changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |kp@freebsd.org --- Comment #1 from Kristof Provost --- I wonder if this wasn't another manifestation of #220830. Can you check if = it can be reproduced after r312943 (r321296 in stable/11)? --=20 You are receiving this mail because: You are the assignee for the bug.= From owner-freebsd-pf@freebsd.org Mon Dec 4 18:57:10 2017 Return-Path: Delivered-To: freebsd-pf@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B69C3E68171 for ; Mon, 4 Dec 2017 18:57:10 +0000 (UTC) (envelope-from jjasen@gmail.com) Received: from mail-vk0-x22b.google.com (mail-vk0-x22b.google.com [IPv6:2607:f8b0:400c:c05::22b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 62D0574E6F for ; Mon, 4 Dec 2017 18:57:10 +0000 (UTC) (envelope-from jjasen@gmail.com) Received: by mail-vk0-x22b.google.com with SMTP id h203so10257191vka.6 for ; Mon, 04 Dec 2017 10:57:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding:content-language; bh=v6zslU2UvgLaMyyV2bsHZlujiIK/6TVB/bDs1V4DD3M=; b=YMHChIfepIWcA/yh9LLFBbf4xMi3TRR+I3CJgBP0fz0k2LuG0pdkIQl2OSIgOcR2q0 FHRoHbHC0qb5Unp+lgGMO1UapTzeByVILm5cs0M+G6uQm1F6AjWQWwO5WQdUGFrkxtNd Huiy/7af+fQ1vGJySLlgsTu2ysL+2LreT5ZKnEggwqiiVtkUh31bvNpV+ujJflfnwmnN ZvNSMMUl+FK5cqsSF0/kc6l9u415Uu5X/FNn8N0lMlCANuBrrmzap61zkyzYgwW6SdyM b97ZfH+iaZrkCndTXuZlx2C+AberfasW96Q5P5XjEP0+COmAFCpZkb06EAUpy9jImFnc 5/og== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding :content-language; bh=v6zslU2UvgLaMyyV2bsHZlujiIK/6TVB/bDs1V4DD3M=; b=uNovHYIshyt2pEkPDmmK4gjghbrHo0J0Ce2tF51FHXDI/F8SczalDxMNUfh6GIJ1eV lSPWC4pgzzoT25IqRARYH4nmZdZOMGk5fUztbJXPVCWacYPDRfiiT5mMHG8VCYA+g5p1 7W5qRgSUOKjA4n75iuSnPA7AzQBSO8z99lHmLVmVi49qFItWKE0HGN+3x3LNSpd8dnyr nFIcn8tn70vt7715zz19AxcRUFtEcDuptj+V7J4XtH2g6S0c7+8Rb7r6G4/WEjcj7/5T ty59dqokjHffyrhE8rbbM2dBvHHv+XaWIrIYtUTdjHkMy2RFNue1JZIe/45H6IXTH6zh Z6Aw== X-Gm-Message-State: AKGB3mI4FwHsb129Dn+ewrWmjgajiFTtaTUAnQpcSY4z0iPyAZuLFlQW h9SHv63c2GeGXF/85ZEkcmwBkw== X-Google-Smtp-Source: AGs4zMYWS4BYqquQvc4M9r16fCjR/68lAPD3WYJiCa9q78ELHmKdYZnn+h6oBk/6gM4IwiIeclQV2g== X-Received: by 10.31.244.73 with SMTP id s70mr72833vkh.18.1512413828924; Mon, 04 Dec 2017 10:57:08 -0800 (PST) Received: from [10.1.29.193] ([198.119.59.10]) by smtp.googlemail.com with ESMTPSA id r142sm4614696vke.5.2017.12.04.10.57.08 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 04 Dec 2017 10:57:08 -0800 (PST) Subject: Re: problems with tftp-proxy in 11.1? To: Kristof Provost Cc: FreeBSD PF References: From: John Jasen Message-ID: <9f0fc087-2aed-535e-c779-be0cc49cde26@gmail.com> Date: Mon, 4 Dec 2017 13:57:07 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Content-Language: en-US X-BeenThere: freebsd-pf@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: "Technical discussion and general questions about packet filter \(pf\)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Dec 2017 18:57:10 -0000 rdr pass log proto udp \ =C2=A0=C2=A0 from {,} \ =C2=A0=C2=A0 to port tftp \ =C2=A0=C2=A0 tag ALLOWED \ =C2=A0=C2=A0 -> 127.0.0.1 port 6969 There is a pass quick tagged ALLOWED later in rules. /etc/inetd.conf contains: acmsoda dgram=C2=A0=C2=A0 udp=C2=A0=C2=A0=C2=A0=C2=A0 wait=C2=A0=C2=A0=C2= =A0 root=C2=A0=C2=A0=C2=A0 /usr/libexec/tftp-proxy tftp-proxy Depending on circumstances, we see a lot or a very few of the following messages: "pf connection lookup failed (no rdr?)" We also see very slow tftp response through the 11.1 firewall, with occasional complete failures. On 12/03/2017 11:40 AM, Kristof Provost wrote: > On 2 Dec 2017, at 4:56, John Jasen wrote: >> Attempts to run tftp-proxy across a freebsd system running pf result i= n >> very slow performance and an endless amount of: >> >> "pf connection lookup failed (no rdr?)" >> Is there something that has regressed in 11.1, or am I missing somethi= ng? >> > I=E2=80=99m not aware of any such regressions, but that of course doesn= =E2=80=99t mean the > can=E2=80=99t be there. > > Can you post the relevant bits of your rules/configuration? A small tes= t case > would be ideal. > > Regards, > Kristof From owner-freebsd-pf@freebsd.org Mon Dec 4 19:47:54 2017 Return-Path: Delivered-To: freebsd-pf@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5A4DBE6911D for ; Mon, 4 Dec 2017 19:47:54 +0000 (UTC) (envelope-from srs0=tlpe=da=sigsegv.be=kristof@codepro.be) Received: from venus.codepro.be (venus.codepro.be [IPv6:2a01:4f8:162:1127::2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "*.codepro.be", Issuer "Gandi Standard SSL CA 2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id EB54B765E6 for ; Mon, 4 Dec 2017 19:47:53 +0000 (UTC) (envelope-from srs0=tlpe=da=sigsegv.be=kristof@codepro.be) Received: from [192.168.228.1] (ptr-8ripyyf3gwc36tks3nu.18120a2.ip6.access.telenet.be [IPv6:2a02:1811:2419:4e02:2de9:b995:e7fa:498a]) (Authenticated sender: kp) by venus.codepro.be (Postfix) with ESMTPSA id 3790D43F47; Mon, 4 Dec 2017 20:47:51 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sigsegv.be; s=mail; t=1512416871; bh=hwztW/LDslKqI8yLMYurLV2+xUY4Q/+FAziWbWF2FVg=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=QIUst1dj2p89hVrUkwUzeKcZQhrwDZV780cvaZ+mxb11ZHI/MRG3wkHAgICCEsSRU lgfHonCFL7MgVuRMuIQsx2Vwkzsy8kiJng2ObozFWepGf+QHEPb8y8BICe6aO3s/np IPWyNtm1VN/ZFWR30nF4jIHp2rEOWwbypY0G9DoQ= From: "Kristof Provost" To: "John Jasen" Cc: "FreeBSD PF" Subject: Re: problems with tftp-proxy in 11.1? Date: Mon, 04 Dec 2017 20:47:48 +0100 X-Mailer: MailMate (2.0BETAr6099) Message-ID: <03C8B641-5A71-4FA5-92AD-178597EC5421@sigsegv.be> In-Reply-To: <9f0fc087-2aed-535e-c779-be0cc49cde26@gmail.com> References: <9f0fc087-2aed-535e-c779-be0cc49cde26@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Content-Filtered-By: Mailman/MimeDel 2.1.25 X-BeenThere: freebsd-pf@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: "Technical discussion and general questions about packet filter \(pf\)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Dec 2017 19:47:54 -0000 On 4 Dec 2017, at 19:57, John Jasen wrote: > Depending on circumstances, we see a lot or a very few of the > following > messages: > "pf connection lookup failed (no rdr?)" > That means the state lookup (using ioctl(DIOCNATLOOK)) failed. There seem to be a couple of possible reasons why that might happen. One of which is that there’s no state at all. Can you check how many states you’ve got (and what the limits are)? It might also be worth checking what errno is when the ioctl failed. truss can help, or you can patch tftp-proxy: diff --git a/contrib/pf/tftp-proxy/filter.c b/contrib/pf/tftp-proxy/filter.c index e5a769a62a5..1802ac2c4d9 100644 --- a/contrib/pf/tftp-proxy/filter.c +++ b/contrib/pf/tftp-proxy/filter.c @@ -363,7 +363,10 @@ server_lookup4(struct sockaddr_in *client, struct sockaddr_in *proxy, pnl.dport = proxy->sin_port; if (ioctl(dev, DIOCNATLOOK, &pnl) == -1) + { + printf("DIOCTNATLOOK errno %d\n", errno); return (-1); + } memset(server, 0, sizeof(struct sockaddr_in)); server->sin_len = sizeof(struct sockaddr_in); Regards, Kristof From owner-freebsd-pf@freebsd.org Wed Dec 6 20:26:00 2017 Return-Path: Delivered-To: freebsd-pf@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3FF77E8B609 for ; Wed, 6 Dec 2017 20:26:00 +0000 (UTC) (envelope-from jjasen@gmail.com) Received: from mail-qt0-x22f.google.com (mail-qt0-x22f.google.com [IPv6:2607:f8b0:400d:c0d::22f]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id ED6861A21 for ; Wed, 6 Dec 2017 20:25:59 +0000 (UTC) (envelope-from jjasen@gmail.com) Received: by mail-qt0-x22f.google.com with SMTP id w10so12133694qtb.10 for ; Wed, 06 Dec 2017 12:25:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language; bh=jV2tsXAu5vLi8WAtPL12MZsFBEIOoKwXoGRrFjc1bUY=; b=pcloF5h54AjCvf/RU9n6oZNdT00zbpcr0iHZX7UY4hWecnkNzmVYY0EnWVbysX0vqy BhP0oxCADkFcTvR2yCgUwhR7Tl2dCjo5H3MrbBRuQ63+ri4UGD0yEcrbsuhcqJf9puI6 nXnFyWluf/EdpaBIot/p2/NZ+U1SV8si+V2Hjqi5YFqukJ9FCtcD0axneA0Nd7JERtNv h+3s1FhrWo0+fndUK9TzCCdmJYSkyIsplqAL0Rk5CCwcB5oVGt3KAgFZNOzo/KOs2TsZ /aW2rSLgL+6PNekB8exULzA6Tr4XUfAD2Ew6jx9e5CJO9SAeywtzW3XvshWnaGAephqu WPQQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language; bh=jV2tsXAu5vLi8WAtPL12MZsFBEIOoKwXoGRrFjc1bUY=; b=kbucUuBEdjGHqV5fCrCtw70lMv8pIug1G2lfk1VZO8Whi0YyAYMg5ns7Xuq0v6WlbK cG1LXo3i/kRN+Ok1483GFjoXapDeBV/8yw8aaflDIpJg22wSjUU58hJ2xdD0nEbDdbfR js+z9Xgx6Uv1m4fiDEEFY47+7jYIwFsiMLE/n44YWZf8VuFR30iEytrdZNTgIQ3t6s5s 6J4WCz15tA/bTCIzjYhpl0teP8Lp9BR8VH8Y+q8H/eGpinjNip7VDi6hybyjAZt8cauM vfrebj3OuUukbVBY01oAHBxjOf5pXdpNBglmHGpFvzBlp2E4El8xTQjQsqqquQsFQs3h trcQ== X-Gm-Message-State: AKGB3mIlcwDfx1fGKpTQoR5Qx+x1enEJ3Snz+HL3053YamRnKup0czQ4 ij6nOn13O2JD+46ETaGEaIugSg== X-Google-Smtp-Source: AGs4zMbNpNd03wPK6jZwrz+9n79d1vl785VadwrFAccWeIbBIMZdPHUe+sgLyhUPHFiMrbZG/Uxirw== X-Received: by 10.55.48.69 with SMTP id w66mr27561399qkw.123.1512591958534; Wed, 06 Dec 2017 12:25:58 -0800 (PST) Received: from [10.1.29.193] ([198.119.59.10]) by smtp.googlemail.com with ESMTPSA id n3sm2087841qte.14.2017.12.06.12.25.56 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 06 Dec 2017 12:25:57 -0800 (PST) Subject: Re: problems with tftp-proxy in 11.1? To: Kristof Provost Cc: FreeBSD PF References: <9f0fc087-2aed-535e-c779-be0cc49cde26@gmail.com> <03C8B641-5A71-4FA5-92AD-178597EC5421@sigsegv.be> From: John Jasen Message-ID: Date: Wed, 6 Dec 2017 15:25:55 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 MIME-Version: 1.0 In-Reply-To: <03C8B641-5A71-4FA5-92AD-178597EC5421@sigsegv.be> Content-Type: multipart/mixed; boundary="------------467A46D7369707AD3CFEED43" Content-Language: en-US X-Content-Filtered-By: Mailman/MimeDel 2.1.25 X-BeenThere: freebsd-pf@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: "Technical discussion and general questions about packet filter \(pf\)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Dec 2017 20:26:00 -0000 This is a multi-part message in MIME format. --------------467A46D7369707AD3CFEED43 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit The state tables should be fine. They're currently in the 30k range, set to alert in nagios at 250k. I've attached truss snippets and log snippets from a failed connection. truss was obtained via truss -f -p $pid -o outfile, and grepping down via the failued pid as logged in syslog. On 12/04/2017 02:47 PM, Kristof Provost wrote: > > On 4 Dec 2017, at 19:57, John Jasen wrote: > > Depending on circumstances, we see a lot or a very few of the > following > messages: > "pf connection lookup failed (no rdr?)" > > That means the state lookup (using ioctl(DIOCNATLOOK)) failed. > There seem to be a couple of possible reasons why that might happen. > One of which is that there’s no state at all. Can you check how many > states you’ve got (and what the limits are)? > > It might also be worth checking what errno is when the ioctl failed. > truss can help, or you can patch tftp-proxy: > > |diff --git a/contrib/pf/tftp-proxy/filter.c > b/contrib/pf/tftp-proxy/filter.c index e5a769a62a5..1802ac2c4d9 100644 > --- a/contrib/pf/tftp-proxy/filter.c +++ > b/contrib/pf/tftp-proxy/filter.c @@ -363,7 +363,10 @@ > server_lookup4(struct sockaddr_in *client, struct sockaddr_in *proxy, > pnl.dport = proxy->sin_port; if (ioctl(dev, DIOCNATLOOK, &pnl) == -1) > + { + printf("DIOCTNATLOOK errno %d\n", errno); return (-1); + } > memset(server, 0, sizeof(struct sockaddr_in)); server->sin_len = > sizeof(struct sockaddr_in); | > > Regards, > Kristof > --------------467A46D7369707AD3CFEED43 Content-Type: text/plain; charset=UTF-8; name="pid25013" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="pid25013" MjUwMTM6IDxuZXcgcHJvY2Vzcz4KMjM2NDM6IGZvcmsoKQkJCQkJID0gMjUwMTMgKDB4NjFi NSkKMjUwMTM6IHNpZ3Byb2NtYXNrKFNJR19TRVRNQVNLLHsgfSx7IFNJR0hVUHxTSUdBTFJN fFNJR0NITEQgfSkgPSAwICgweDApCjI1MDEzOiBmc3RhdCgzLHsgbW9kZT0tcnctLS0tLS0t ICxpbm9kZT04MTk5MDgsc2l6ZT01LGJsa3NpemU9MzI3NjggfSkgPSAwICgweDApCjI1MDEz OiBjbG9zZSgzKQkJCQkJID0gMCAoMHgwKQoyNTAxMzogc2lnYWN0aW9uKFNJR0FMUk0seyBT SUdfREZMIFNBX1JFU1RBUlQgc3NfdCB9LDB4MCkgPSAwICgweDApCjI1MDEzOiBzaWdhY3Rp b24oU0lHQ0hMRCx7IFNJR19ERkwgU0FfUkVTVEFSVCBzc190IH0sMHgwKSA9IDAgKDB4MCkK MjUwMTM6IHNpZ2FjdGlvbihTSUdIVVAseyBTSUdfREZMIFNBX1JFU1RBUlQgc3NfdCB9LDB4 MCkgPSAwICgweDApCjI1MDEzOiBmY250bCg1LEZfU0VURkQsMCkJCQkgPSAwICgweDApCjI1 MDEzOiBkdXAyKDB4NSwweDApCQkJCSA9IDAgKDB4MCkKMjUwMTM6IGNsb3NlKDUpCQkJCQkg PSAwICgweDApCjI1MDEzOiBkdXAyKDB4MCwweDEpCQkJCSA9IDEgKDB4MSkKMjUwMTM6IGR1 cDIoMHgwLDB4MikJCQkJID0gMiAoMHgyKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5j b25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXpl PTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogZ2V0ZXVpZCgpCQkJCSA9IDAgKDB4MCkKMjUw MTM6IG9wZW4oIi9ldGMvc3B3ZC5kYiIsT19SRE9OTFl8T19DTE9FWEVDLDAwKSA9IDMgKDB4 MykKMjUwMTM6IGZzdGF0KDMseyBtb2RlPS1ydy0tLS0tLS0gLGlub2RlPTI0ODc5ODgsc2l6 ZT00MDk2MCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogcmVhZCgzLCJcMFxe RlxeVWFcMFwwXDBcXkJcMFwwXF5EXE0tUlwwIi4uLiwyNjApID0gMjYwICgweDEwNCkKMjUw MTM6IHByZWFkKDB4MywweDgwMTY2NjAwMCwweDEwMDAsMHg2MDAwKQkgPSA0MDk2ICgweDEw MDApCjI1MDEzOiBwcmVhZCgweDMsMHg4MDE2NjUwMDAsMHgxMDAwLDB4NDAwMCkJID0gNDA5 NiAoMHgxMDAwKQoyNTAxMzogY2xvc2UoMykJCQkJCSA9IDAgKDB4MCkKMjUwMTM6IGxzdGF0 KCIvZXRjL2xvZ2luLmNvbmYiLHsgbW9kZT0tcnctci0tci0tICxpbm9kZT0yNDg5MjI2LHNp emU9Njc5MCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogb3BlbigiL2V0Yy9s b2dpbi5jb25mLmRiIixPX1JET05MWXxPX0NMT0VYRUMsMDApID0gMyAoMHgzKQoyNTAxMzog ZnN0YXQoMyx7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4ODA3OCxzaXplPTE2Mzg0LGJs a3NpemU9MzI3NjggfSkgPSAwICgweDApCjI1MDEzOiByZWFkKDMsIlwwXF5GXF5VYVwwXDBc MFxeQlwwXDBcXkRcTS1SXDAiLi4uLDI2MCkgPSAyNjAgKDB4MTA0KQoyNTAxMzogcHJlYWQo MHgzLDB4ODAxNjY1MDAwLDB4MTAwMCwweDEwMDApCSA9IDQwOTYgKDB4MTAwMCkKMjUwMTM6 IGNsb3NlKDMpCQkJCQkgPSAwICgweDApCjI1MDEzOiBzZXRzaWQoKQkJCQkJID0gMjUwMTMg KDB4NjFiNSkKMjUwMTM6IHNldHByaW9yaXR5KDB4MCwweDAsMHgwKQkJCSA9IDAgKDB4MCkK MjUwMTM6IHNldGdpZCgweDApCQkJCSA9IDAgKDB4MCkKMjUwMTM6IF9fc3lzY3RsKDB4N2Zm ZmZmZmZkZDQ4LDB4MiwweDdmZmZmZmZmZGQyYywweDdmZmZmZmZmZGQzMCwweDAsMHgwKSA9 IDAgKDB4MCkKMjUwMTM6IHN0YXQoIi9ldGMvbnNzd2l0Y2guY29uZiIseyBtb2RlPS1ydy1y LS1yLS0gLGlub2RlPTI0ODkyNTcsc2l6ZT0zMzgsYmxrc2l6ZT0zMjc2OCB9KSA9IDAgKDB4 MCkKMjUwMTM6IHN0YXQoIi9ldGMvbnNzd2l0Y2guY29uZiIseyBtb2RlPS1ydy1yLS1yLS0g LGlub2RlPTI0ODkyNTcsc2l6ZT0zMzgsYmxrc2l6ZT0zMjc2OCB9KSA9IDAgKDB4MCkKMjUw MTM6IHN0YXQoIi9ldGMvbnNzd2l0Y2guY29uZiIseyBtb2RlPS1ydy1yLS1yLS0gLGlub2Rl PTI0ODkyNTcsc2l6ZT0zMzgsYmxrc2l6ZT0zMjc2OCB9KSA9IDAgKDB4MCkKMjUwMTM6IHN0 YXQoIi9ldGMvbnNzd2l0Y2guY29uZiIseyBtb2RlPS1ydy1yLS1yLS0gLGlub2RlPTI0ODky NTcsc2l6ZT0zMzgsYmxrc2l6ZT0zMjc2OCB9KSA9IDAgKDB4MCkKMjUwMTM6IG9wZW4oIi9l dGMvZ3JvdXAiLE9fUkRPTkxZfE9fQ0xPRVhFQywwNjY2KSA9IDMgKDB4MykKMjUwMTM6IGxz ZWVrKDMsMHgwLFNFRUtfQ1VSKQkJCSA9IDAgKDB4MCkKMjUwMTM6IGZzdGF0KDMseyBtb2Rl PS1ydy1yLS1yLS0gLGlub2RlPTI0ODkyMTQsc2l6ZT01MzAsYmxrc2l6ZT0zMjc2OCB9KSA9 IDAgKDB4MCkKMjUwMTM6IHJlYWQoMywiIyAkRnJlZUJTRDogcmVsZW5nLzExLjEvZXRjL2dy b3UiLi4uLDMyNzY4KSA9IDUzMCAoMHgyMTIpCjI1MDEzOiBzdGF0KCIvZXRjL25zc3dpdGNo LmNvbmYiLHsgbW9kZT0tcnctci0tci0tICxpbm9kZT0yNDg5MjU3LHNpemU9MzM4LGJsa3Np emU9MzI3NjggfSkgPSAwICgweDApCjI1MDEzOiBsc2VlaygzLDB4MCxTRUVLX0NVUikJCQkg PSA1MzAgKDB4MjEyKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9 LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0g MCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXIt LXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgw KQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXItLSAs aW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAx Mzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9 MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogc3Rh dCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1 NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0 Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXpl PTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3 aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxi bGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5j b25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXpl PTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7 IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4 IH0pID0gMCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9 LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0g MCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXIt LXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgw KQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXItLSAs aW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAx Mzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9 MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogc3Rh dCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1 NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0 Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXpl PTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3 aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxi bGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5j b25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXpl PTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7 IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4 IH0pID0gMCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9 LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0g MCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXIt LXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgw KQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXItLSAs aW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAx Mzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9 MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogc3Rh dCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1 NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0 Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXpl PTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3 aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxi bGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5j b25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXpl PTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7 IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4 IH0pID0gMCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9 LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0g MCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXIt LXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgw KQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXItLSAs aW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAx Mzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9 MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogc3Rh dCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1 NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0 Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXpl PTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3 aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxi bGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5j b25mIix7IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXpl PTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7 IG1vZGU9LXJ3LXItLXItLSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4 IH0pID0gMCAoMHgwKQoyNTAxMzogcmVhZCgzLDB4ODAxNjI2YTAwLDMyNzY4KQkJID0gMCAo MHgwKQoyNTAxMzogc3RhdCgiL2V0Yy9uc3N3aXRjaC5jb25mIix7IG1vZGU9LXJ3LXItLXIt LSAsaW5vZGU9MjQ4OTI1NyxzaXplPTMzOCxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoy NTAxMzogY2xvc2UoMykJCQkJCSA9IDAgKDB4MCkKMjUwMTM6IHN0YXQoIi9ldGMvbnNzd2l0 Y2guY29uZiIseyBtb2RlPS1ydy1yLS1yLS0gLGlub2RlPTI0ODkyNTcsc2l6ZT0zMzgsYmxr c2l6ZT0zMjc2OCB9KSA9IDAgKDB4MCkKMjUwMTM6IHNldGdyb3VwcygweDIsMHg4MDE2OTMw MDApCQkgPSAwICgweDApCjI1MDEzOiBzZXRsb2dpbigweDgwMTYyNDAwMCkJCQkgPSAwICgw eDApCjI1MDEzOiBzaWdhY3Rpb24oU0lHU1lTLHsgU0lHX0lHTiAweDAgc3NfdCB9LHsgU0lH X0RGTCAweDAgc3NfdCB9KSA9IDAgKDB4MCkKMjUwMTM6IHNldGxvZ2luY2xhc3MoMHg4MDE2 MzQxMDApCQkgPSAwICgweDApCjI1MDEzOiBzaWdhY3Rpb24oU0lHU1lTLHsgU0lHX0RGTCAw eDAgc3NfdCB9LDB4MCkgPSAwICgweDApCjI1MDEzOiB1bWFzaygweDEyKQkJCQkgPSAxOCAo MHgxMikKMjUwMTM6IGdldHJsaW1pdChSTElNSVRfQ1BVLHsgY3VyPTkyMjMzNzIwMzY4NTQ3 NzU4MDcsbWF4PTkyMjMzNzIwMzY4NTQ3NzU4MDcgfSkgPSAwICgweDApCjI1MDEzOiBzZXRy bGltaXQoUkxJTUlUX0NQVSx7IGN1cj05MjIzMzcyMDM2ODU0Nzc1ODA3LG1heD05MjIzMzcy MDM2ODU0Nzc1ODA3IH0pID0gMCAoMHgwKQoyNTAxMzogZ2V0cmxpbWl0KFJMSU1JVF9GU0la RSx7IGN1cj05MjIzMzcyMDM2ODU0Nzc1ODA3LG1heD05MjIzMzcyMDM2ODU0Nzc1ODA3IH0p ID0gMCAoMHgwKQoyNTAxMzogc2V0cmxpbWl0KFJMSU1JVF9GU0laRSx7IGN1cj05MjIzMzcy MDM2ODU0Nzc1ODA3LG1heD05MjIzMzcyMDM2ODU0Nzc1ODA3IH0pID0gMCAoMHgwKQoyNTAx MzogZ2V0cmxpbWl0KFJMSU1JVF9EQVRBLHsgY3VyPTM0MzU5NzM4MzY4LG1heD0zNDM1OTcz ODM2OCB9KSA9IDAgKDB4MCkKMjUwMTM6IHNldHJsaW1pdChSTElNSVRfREFUQSx7IGN1cj05 MjIzMzcyMDM2ODU0Nzc1ODA3LG1heD05MjIzMzcyMDM2ODU0Nzc1ODA3IH0pID0gMCAoMHgw KQoyNTAxMzogZ2V0cmxpbWl0KFJMSU1JVF9TVEFDSyx7IGN1cj01MzY4NzA5MTIsbWF4PTUz Njg3MDkxMiB9KSA9IDAgKDB4MCkKMjUwMTM6IHNldHJsaW1pdChSTElNSVRfU1RBQ0sseyBj dXI9OTIyMzM3MjAzNjg1NDc3NTgwNyxtYXg9OTIyMzM3MjAzNjg1NDc3NTgwNyB9KSA9IDAg KDB4MCkKMjUwMTM6IGdldHJsaW1pdChSTElNSVRfUlNTLHsgY3VyPTkyMjMzNzIwMzY4NTQ3 NzU4MDcsbWF4PTkyMjMzNzIwMzY4NTQ3NzU4MDcgfSkgPSAwICgweDApCjI1MDEzOiBzZXRy bGltaXQoUkxJTUlUX1JTUyx7IGN1cj05MjIzMzcyMDM2ODU0Nzc1ODA3LG1heD05MjIzMzcy MDM2ODU0Nzc1ODA3IH0pID0gMCAoMHgwKQoyNTAxMzogZ2V0cmxpbWl0KFJMSU1JVF9NRU1M T0NLLHsgY3VyPTEzNDIxNzcyOCxtYXg9MTM0MjE3NzI4IH0pID0gMCAoMHgwKQoyNTAxMzog c2V0cmxpbWl0KFJMSU1JVF9NRU1MT0NLLHsgY3VyPTEzNDIxNzcyOCxtYXg9MTM0MjE3NzI4 IH0pID0gMCAoMHgwKQoyNTAxMzogZ2V0cmxpbWl0KFJMSU1JVF9OUFJPQyx7IGN1cj0zNDI3 NSxtYXg9MzQyNzUgfSkgPSAwICgweDApCjI1MDEzOiBzZXRybGltaXQoUkxJTUlUX05QUk9D LHsgY3VyPTkyMjMzNzIwMzY4NTQ3NzU4MDcsbWF4PTkyMjMzNzIwMzY4NTQ3NzU4MDcgfSkg PSAwICgweDApCjI1MDEzOiBnZXRybGltaXQoUkxJTUlUX05PRklMRSx7IGN1cj05NDE0NTQs bWF4PTk0MTQ1NCB9KSA9IDAgKDB4MCkKMjUwMTM6IHNldHJsaW1pdChSTElNSVRfTk9GSUxF LHsgY3VyPTkyMjMzNzIwMzY4NTQ3NzU4MDcsbWF4PTkyMjMzNzIwMzY4NTQ3NzU4MDcgfSkg PSAwICgweDApCjI1MDEzOiBnZXRybGltaXQoUkxJTUlUX0NPUkUseyBjdXI9OTIyMzM3MjAz Njg1NDc3NTgwNyxtYXg9OTIyMzM3MjAzNjg1NDc3NTgwNyB9KSA9IDAgKDB4MCkKMjUwMTM6 IHNldHJsaW1pdChSTElNSVRfQ09SRSx7IGN1cj05MjIzMzcyMDM2ODU0Nzc1ODA3LG1heD05 MjIzMzcyMDM2ODU0Nzc1ODA3IH0pID0gMCAoMHgwKQoyNTAxMzogZ2V0cmxpbWl0KFJMSU1J VF9TQlNJWkUseyBjdXI9OTIyMzM3MjAzNjg1NDc3NTgwNyxtYXg9OTIyMzM3MjAzNjg1NDc3 NTgwNyB9KSA9IDAgKDB4MCkKMjUwMTM6IHNldHJsaW1pdChSTElNSVRfU0JTSVpFLHsgY3Vy PTkyMjMzNzIwMzY4NTQ3NzU4MDcsbWF4PTkyMjMzNzIwMzY4NTQ3NzU4MDcgfSkgPSAwICgw eDApCjI1MDEzOiBnZXRybGltaXQoUkxJTUlUX1ZNRU0seyBjdXI9OTIyMzM3MjAzNjg1NDc3 NTgwNyxtYXg9OTIyMzM3MjAzNjg1NDc3NTgwNyB9KSA9IDAgKDB4MCkKMjUwMTM6IHNldHJs aW1pdChSTElNSVRfVk1FTSx7IGN1cj05MjIzMzcyMDM2ODU0Nzc1ODA3LG1heD05MjIzMzcy MDM2ODU0Nzc1ODA3IH0pID0gMCAoMHgwKQoyNTAxMzogZ2V0cmxpbWl0KFJMSU1JVF9OUFRT LHsgY3VyPTkyMjMzNzIwMzY4NTQ3NzU4MDcsbWF4PTkyMjMzNzIwMzY4NTQ3NzU4MDcgfSkg PSAwICgweDApCjI1MDEzOiBzZXRybGltaXQoUkxJTUlUX05QVFMseyBjdXI9OTIyMzM3MjAz Njg1NDc3NTgwNyxtYXg9OTIyMzM3MjAzNjg1NDc3NTgwNyB9KSA9IDAgKDB4MCkKMjUwMTM6 IGdldHJsaW1pdChSTElNSVRfU1dBUCx7IGN1cj05MjIzMzcyMDM2ODU0Nzc1ODA3LG1heD05 MjIzMzcyMDM2ODU0Nzc1ODA3IH0pID0gMCAoMHgwKQoyNTAxMzogc2V0cmxpbWl0KFJMSU1J VF9TV0FQLHsgY3VyPTkyMjMzNzIwMzY4NTQ3NzU4MDcsbWF4PTkyMjMzNzIwMzY4NTQ3NzU4 MDcgfSkgPSAwICgweDApCjI1MDEzOiBnZXRybGltaXQoUkxJTUlUX0tRVUVVRVMseyBjdXI9 OTIyMzM3MjAzNjg1NDc3NTgwNyxtYXg9OTIyMzM3MjAzNjg1NDc3NTgwNyB9KSA9IDAgKDB4 MCkKMjUwMTM6IHNldHJsaW1pdChSTElNSVRfS1FVRVVFUyx7IGN1cj05MjIzMzcyMDM2ODU0 Nzc1ODA3LG1heD05MjIzMzcyMDM2ODU0Nzc1ODA3IH0pID0gMCAoMHgwKQoyNTAxMzogZ2V0 cmxpbWl0KFJMSU1JVF9VTVRYUCx7IGN1cj05MjIzMzcyMDM2ODU0Nzc1ODA3LG1heD05MjIz MzcyMDM2ODU0Nzc1ODA3IH0pID0gMCAoMHgwKQoyNTAxMzogc2V0cmxpbWl0KFJMSU1JVF9V TVRYUCx7IGN1cj05MjIzMzcyMDM2ODU0Nzc1ODA3LG1heD05MjIzMzcyMDM2ODU0Nzc1ODA3 IH0pID0gMCAoMHgwKQoyNTAxMzogc2V0dWlkKDB4MCkJCQkJID0gMCAoMHgwKQoyNTAxMzog Z2V0dWlkKCkJCQkJCSA9IDAgKDB4MCkKMjUwMTM6IGdldGV1aWQoKQkJCQkgPSAwICgweDAp CjI1MDEzOiBnZXRlZ2lkKCkJCQkJID0gMCAoMHgwKQoyNTAxMzogc2V0ZWdpZCgweDApCQkJ CSA9IDAgKDB4MCkKMjUwMTM6IHNldGV1aWQoMHgwKQkJCQkgPSAwICgweDApCjI1MDEzOiBs c3RhdCgiL3Jvb3QvLmxvZ2luX2NvbmYiLDB4N2ZmZmZmZmZkOGQwKSBFUlIjMiAnTm8gc3Vj aCBmaWxlIG9yIGRpcmVjdG9yeScKMjUwMTM6IGxzdGF0KCIvZXRjL2xvZ2luLmNvbmYiLHsg bW9kZT0tcnctci0tci0tICxpbm9kZT0yNDg5MjI2LHNpemU9Njc5MCxibGtzaXplPTMyNzY4 IH0pID0gMCAoMHgwKQoyNTAxMzogb3BlbigiL3Jvb3QvLmxvZ2luX2NvbmYuZGIiLE9fUkRP TkxZfE9fQ0xPRVhFQywwMCkgRVJSIzIgJ05vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnknCjI1 MDEzOiBvcGVuKCIvcm9vdC8ubG9naW5fY29uZiIsT19SRE9OTFl8T19DTE9FWEVDLDAwKSBF UlIjMiAnTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeScKMjUwMTM6IG9wZW4oIi9ldGMvbG9n aW4uY29uZi5kYiIsT19SRE9OTFl8T19DTE9FWEVDLDAwKSA9IDMgKDB4MykKMjUwMTM6IGZz dGF0KDMseyBtb2RlPS1ydy1yLS1yLS0gLGlub2RlPTI0ODgwNzgsc2l6ZT0xNjM4NCxibGtz aXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogcmVhZCgzLCJcMFxeRlxeVWFcMFwwXDBc XkJcMFwwXF5EXE0tUlwwIi4uLiwyNjApID0gMjYwICgweDEwNCkKMjUwMTM6IHByZWFkKDB4 MywweDgwMTY2NTAwMCwweDEwMDAsMHgxMDAwKQkgPSA0MDk2ICgweDEwMDApCjI1MDEzOiBj bG9zZSgzKQkJCQkJID0gMCAoMHgwKQoyNTAxMzogc2V0ZXVpZCgweDApCQkJCSA9IDAgKDB4 MCkKMjUwMTM6IHNldGVnaWQoMHgwKQkJCQkgPSAwICgweDApCjI1MDEzOiB1bWFzaygweDEy KQkJCQkgPSAxOCAoMHgxMikKMjUwMTM6IHNpZ2FjdGlvbihTSUdQSVBFLHsgU0lHX0RGTCBT QV9SRVNUQVJUIHNzX3QgfSwweDApID0gMCAoMHgwKQoyNTAxMzogZXhlY3ZlKCIvdXNyL2xp YmV4ZWMvdGZ0cC1wcm94eSIsMHg4MDE2NzQwNjAsMHg4MDE2MTgwYTApID0gMCAoMHgwKQoy NTAxMzogbW1hcCgweDAsMzI3NjgsUFJPVF9SRUFEfFBST1RfV1JJVEUsTUFQX1BSSVZBVEV8 TUFQX0FOT04sLTEsMHgwKSA9IDM0MzY2MTczMTg0ICgweDgwMDYyMzAwMCkKMjUwMTM6IGlz c2V0dWdpZCgpCQkJCSA9IDAgKDB4MCkKMjUwMTM6IGxzdGF0KCIvZXRjIix7IG1vZGU9ZHJ3 eHIteHIteCAsaW5vZGU9MjQ4NzkzNixzaXplPTI1NjAsYmxrc2l6ZT0zMjc2OCB9KSA9IDAg KDB4MCkKMjUwMTM6IGxzdGF0KCIvZXRjL2xpYm1hcC5jb25mIix7IG1vZGU9LXJ3LXItLXIt LSAsaW5vZGU9MjQ4OTIyMyxzaXplPTEwOSxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoy NTAxMzogb3BlbmF0KEFUX0ZEQ1dELCIvZXRjL2xpYm1hcC5jb25mIixPX1JET05MWXxPX0NM T0VYRUMsMDApID0gMyAoMHgzKQoyNTAxMzogZnN0YXQoMyx7IG1vZGU9LXJ3LXItLXItLSAs aW5vZGU9MjQ4OTIyMyxzaXplPTEwOSxibGtzaXplPTMyNzY4IH0pID0gMCAoMHgwKQoyNTAx MzogbW1hcCgweDAsMTA5LFBST1RfUkVBRCxNQVBfUFJJVkFURSwzLDB4MCkgPSAzNDM2NjIw NTk1MiAoMHg4MDA2MmIwMDApCjI1MDEzOiBjbG9zZSgzKQkJCQkJID0gMCAoMHgwKQoyNTAx MzogbHN0YXQoIi91c3IiLHsgbW9kZT1kcnd4ci14ci14ICxpbm9kZT0xMzY0MzUyLHNpemU9 NTEyLGJsa3NpemU9MzI3NjggfSkgPSAwICgweDApCjI1MDEzOiBsc3RhdCgiL3Vzci9sb2Nh bCIseyBtb2RlPWRyd3hyLXhyLXggLGlub2RlPTEzNjQzNjgsc2l6ZT01MTIsYmxrc2l6ZT0z Mjc2OCB9KSA9IDAgKDB4MCkKMjUwMTM6IGxzdGF0KCIvdXNyL2xvY2FsL2V0YyIseyBtb2Rl PWRyd3hyLXhyLXggLGlub2RlPTIwMTU3ODEsc2l6ZT0xMDI0LGJsa3NpemU9MzI3NjggfSkg PSAwICgweDApCjI1MDEzOiBsc3RhdCgiL3Vzci9sb2NhbC9ldGMvbGlibWFwLmQiLDB4N2Zm ZmZmZmZjN2U4KSBFUlIjMiAnTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeScKMjUwMTM6IG11 bm1hcCgweDgwMDYyYjAwMCwxMDkpCQkJID0gMCAoMHgwKQoyNTAxMzogb3BlbmF0KEFUX0ZE Q1dELCIvdmFyL3J1bi9sZC1lbGYuc28uaGludHMiLE9fUkRPTkxZfE9fQ0xPRVhFQywwMCkg PSAzICgweDMpCjI1MDEzOiByZWFkKDMsIkVobnRcXkFcMFwwXDBcTV5AXDBcMFwwa1wwXDBc MFwwIi4uLiwxMjgpID0gMTI4ICgweDgwKQoyNTAxMzogZnN0YXQoMyx7IG1vZGU9LXItLXIt LXItLSAsaW5vZGU9ODA0OTE0LHNpemU9MjM1LGJsa3NpemU9MzI3NjggfSkgPSAwICgweDAp CjI1MDEzOiBsc2VlaygzLDB4ODAsU0VFS19TRVQpCQkJID0gMTI4ICgweDgwKQoyNTAxMzog cmVhZCgzLCIvbGliOi91c3IvbGliOi91c3IvbGliL2NvbXBhdDovdSIuLi4sMTA3KSA9IDEw NyAoMHg2YikKMjUwMTM6IGNsb3NlKDMpCQkJCQkgPSAwICgweDApCjI1MDEzOiBhY2Nlc3Mo Ii9saWIvbGliYy5zby43IixGX09LKQkJID0gMCAoMHgwKQoyNTAxMzogb3BlbmF0KEFUX0ZE Q1dELCIvbGliL2xpYmMuc28uNyIsT19SRE9OTFl8T19DTE9FWEVDfE9fVkVSSUZZLDAwKSA9 IDMgKDB4MykKMjUwMTM6IGZzdGF0KDMseyBtb2RlPS1yLS1yLS1yLS0gLGlub2RlPTI1OTkx NDAsc2l6ZT0xNzYxMzIwLGJsa3NpemU9MzI3NjggfSkgPSAwICgweDApCjI1MDEzOiBtbWFw KDB4MCw0MDk2LFBST1RfUkVBRCxNQVBfUFJJVkFURXxNQVBfUFJFRkFVTFRfUkVBRCwzLDB4 MCkgPSAzNDM2NjIwNTk1MiAoMHg4MDA2MmIwMDApCjI1MDEzOiBtbWFwKDB4MCwzODk5Mzky LFBST1RfTk9ORSxNQVBfUFJJVkFURXxNQVBfQU5PTnxNQVBfTk9DT1JFLC0xLDB4MCkgPSAz NDM2ODI3NDQzMiAoMHg4MDA4MjQwMDApCjI1MDEzOiBtbWFwKDB4ODAwODI0MDAwLDE2NDY1 OTIsUFJPVF9SRUFEfFBST1RfRVhFQyxNQVBfUFJJVkFURXxNQVBfRklYRUR8TUFQX05PQ09S RXxNQVBfUFJFRkFVTFRfUkVBRCwzLDB4MCkgPSAzNDM2ODI3NDQzMiAoMHg4MDA4MjQwMDAp CjI1MDEzOiBtbWFwKDB4ODAwYmI2MDAwLDQ5MTUyLFBST1RfUkVBRHxQUk9UX1dSSVRFLE1B UF9QUklWQVRFfE1BUF9GSVhFRHxNQVBfUFJFRkFVTFRfUkVBRCwzLDB4MTkyMDAwKSA9IDM0 MzcyMDE4MTc2ICgweDgwMGJiNjAwMCkKMjUwMTM6IG1tYXAoMHg4MDBiYzIwMDAsMTA2NDk2 LFBST1RfUkVBRHxQUk9UX1dSSVRFLE1BUF9QUklWQVRFfE1BUF9GSVhFRHxNQVBfQU5PTiwt MSwweDApID0gMzQzNzIwNjczMjggKDB4ODAwYmMyMDAwKQoyNTAxMzogbXVubWFwKDB4ODAw NjJiMDAwLDQwOTYpCQkJID0gMCAoMHgwKQoyNTAxMzogY2xvc2UoMykJCQkJCSA9IDAgKDB4 MCkKMjUwMTM6IG11bm1hcCgweDgwMDYyYTAwMCw0MDk2KQkJCSA9IDAgKDB4MCkKMjUwMTM6 IG1tYXAoMHgwLDEwMjQwMCxQUk9UX1JFQUR8UFJPVF9XUklURSxNQVBfUFJJVkFURXxNQVBf QU5PTiwtMSwweDApID0gMzQzNjYyMDE4NTYgKDB4ODAwNjJhMDAwKQoyNTAxMzogc3lzYXJj aChBTUQ2NF9TRVRfRlNCQVNFLDB4N2ZmZmZmZmZlMWE4KQkgPSAwICgweDApCjI1MDEzOiBz aWdwcm9jbWFzayhTSUdfQkxPQ0sseyBTSUdIVVB8U0lHSU5UfFNJR1FVSVR8U0lHS0lMTHxT SUdQSVBFfFNJR0FMUk18U0lHVEVSTXxTSUdVUkd8U0lHU1RPUHxTSUdUU1RQfFNJR0NPTlR8 U0lHQ0hMRHxTSUdUVElOfFNJR1RUT1V8U0lHSU98U0lHWENQVXxTSUdYRlNafFNJR1ZUQUxS TXxTSUdQUk9GfFNJR1dJTkNIfFNJR0lORk98U0lHVVNSMXxTSUdVU1IyIH0seyB9KSA9IDAg KDB4MCkKMjUwMTM6IHNpZ3Byb2NtYXNrKFNJR19TRVRNQVNLLHsgfSwweDApCQkgPSAwICgw eDApCjI1MDEzOiByZWFkbGluaygiL2V0Yy9tYWxsb2MuY29uZiIsMHg3ZmZmZmZmZmQ4YTAs MTAyNCkgRVJSIzIgJ05vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnknCjI1MDEzOiBpc3NldHVn aWQoKQkJCQkgPSAwICgweDApCjI1MDEzOiBfX3N5c2N0bCgweDdmZmZmZmZmZDc0MCwweDIs MHg3ZmZmZmZmZmQ3OTAsMHg3ZmZmZmZmZmQ3ODgsMHg4MDA5ODVjOTMsMHhkKSA9IDAgKDB4 MCkKMjUwMTM6IF9fc3lzY3RsKDB4N2ZmZmZmZmZkNzkwLDB4MiwweDdmZmZmZmZmZDg1NCww eDdmZmZmZmZmZDg0OCwweDAsMHgwKSA9IDAgKDB4MCkKMjUwMTM6IG1tYXAoMHgwLDIwOTcx NTIsUFJPVF9SRUFEfFBST1RfV1JJVEUsTUFQX1BSSVZBVEV8TUFQX0FOT04sLTEsMHgwKSA9 IDM0MzcyMTczODI0ICgweDgwMGJkYzAwMCkKMjUwMTM6IG11bm1hcCgweDgwMGJkYzAwMCwy MDk3MTUyKQkJID0gMCAoMHgwKQoyNTAxMzogbW1hcCgweDAsNDE5MDIwOCxQUk9UX1JFQUR8 UFJPVF9XUklURSxNQVBfUFJJVkFURXxNQVBfQU5PTiwtMSwweDApID0gMzQzNzIxNzM4MjQg KDB4ODAwYmRjMDAwKQoyNTAxMzogbXVubWFwKDB4ODAwYmRjMDAwLDE0NzQ1NikJCSA9IDAg KDB4MCkKMjUwMTM6IG11bm1hcCgweDgwMGUwMDAwMCwxOTQ1NjAwKQkJID0gMCAoMHgwKQoy NTAxMzogc2lncHJvY21hc2soU0lHX0JMT0NLLHsgU0lHSFVQfFNJR0lOVHxTSUdRVUlUfFNJ R0tJTEx8U0lHUElQRXxTSUdBTFJNfFNJR1RFUk18U0lHVVJHfFNJR1NUT1B8U0lHVFNUUHxT SUdDT05UfFNJR0NITER8U0lHVFRJTnxTSUdUVE9VfFNJR0lPfFNJR1hDUFV8U0lHWEZTWnxT SUdWVEFMUk18U0lHUFJPRnxTSUdXSU5DSHxTSUdJTkZPfFNJR1VTUjF8U0lHVVNSMiB9LHsg fSkgPSAwICgweDApCjI1MDEzOiBzaWdwcm9jbWFzayhTSUdfU0VUTUFTSyx7IH0sMHgwKQkJ ID0gMCAoMHgwKQoyNTAxMzogc2lncHJvY21hc2soU0lHX0JMT0NLLHsgU0lHSFVQfFNJR0lO VHxTSUdRVUlUfFNJR0tJTEx8U0lHUElQRXxTSUdBTFJNfFNJR1RFUk18U0lHVVJHfFNJR1NU T1B8U0lHVFNUUHxTSUdDT05UfFNJR0NITER8U0lHVFRJTnxTSUdUVE9VfFNJR0lPfFNJR1hD UFV8U0lHWEZTWnxTSUdWVEFMUk18U0lHUFJPRnxTSUdXSU5DSHxTSUdJTkZPfFNJR1VTUjF8 U0lHVVNSMiB9LHsgfSkgPSAwICgweDApCjI1MDEzOiBzaWdwcm9jbWFzayhTSUdfU0VUTUFT Syx7IH0sMHgwKQkJID0gMCAoMHgwKQoyNTAxMzogc29ja2V0KFBGX0xPQ0FMLFNPQ0tfREdS QU18U09DS19DTE9FWEVDLDApID0gMyAoMHgzKQoyNTAxMzogY29ubmVjdCgzLHsgQUZfVU5J WCAiL3Zhci9ydW4vbG9ncHJpdiIgfSwxMDYpID0gMCAoMHgwKQoyNTAxMzogb3BlbmF0KEFU X0ZEQ1dELCIvZGV2L3BmIixPX1JEV1IsMDApCSA9IDQgKDB4NCkKMjUwMTM6IGlvY3RsKDQs MHhjMWEwNDQxNSB7IElPUlcgMHg0NCgnRCcpLCAyMSwgNDE2IH0sMHg3ZmZmZmZmZmU0Nzgp ID0gMCAoMHgwKQoyNTAxMzogbW1hcCgweDAsMjA5NzE1MixQUk9UX1JFQUR8UFJPVF9XUklU RSxNQVBfUFJJVkFURXxNQVBfQU5PTiwtMSwweDApID0gMzQzNzQ0MTg0MzIgKDB4ODAwZTAw MDAwKQoyNTAxMzogYWNjZXNzKCIvZXRjL2xvY2FsdGltZSIsUl9PSykJCSBFUlIjMiAnTm8g c3VjaCBmaWxlIG9yIGRpcmVjdG9yeScKMjUwMTM6IGlzc2V0dWdpZCgpCQkJCSA9IDAgKDB4 MCkKMjUwMTM6IG9wZW4oIi91c3Ivc2hhcmUvem9uZWluZm8vVVRDIixPX1JET05MWSwwMCkg PSA1ICgweDUpCjI1MDEzOiBmc3RhdCg1LHsgbW9kZT0tci0tci0tci0tICxpbm9kZT0xNDc5 NjkyLHNpemU9MTE4LGJsa3NpemU9MzI3NjggfSkgPSAwICgweDApCjI1MDEzOiByZWFkKDUs IlRaaWYyXDBcMFwwXDBcMFwwXDBcMFwwXDBcMFwwXDAiLi4uLDQxNDQ4KSA9IDExOCAoMHg3 NikKMjUwMTM6IGNsb3NlKDUpCQkJCQkgPSAwICgweDApCjI1MDEzOiBpc3NldHVnaWQoKQkJ CQkgPSAwICgweDApCjI1MDEzOiBvcGVuKCIvdXNyL3NoYXJlL3pvbmVpbmZvL3Bvc2l4cnVs ZXMiLE9fUkRPTkxZLDA2NDIzMjI2MDAwKSA9IDUgKDB4NSkKMjUwMTM6IGZzdGF0KDUseyBt b2RlPS1yLS1yLS1yLS0gLGlub2RlPTE0Nzk2OTQsc2l6ZT0zNTE5LGJsa3NpemU9MzI3Njgg fSkgPSAwICgweDApCjI1MDEzOiByZWFkKDUsIlRaaWYyXDBcMFwwXDBcMFwwXDBcMFwwXDBc MFwwXDAiLi4uLDQxNDQ4KSA9IDM1MTkgKDB4ZGJmKQoyNTAxMzogY2xvc2UoNSkJCQkJCSA9 IDAgKDB4MCkKMjUwMTM6IHN0YXQoIi9ldGMvbnNzd2l0Y2guY29uZiIseyBtb2RlPS1ydy1y LS1yLS0gLGlub2RlPTI0ODkyNTcsc2l6ZT0zMzgsYmxrc2l6ZT0zMjc2OCB9KSA9IDAgKDB4 MCkKMjUwMTM6IG9wZW4oIi9ldGMvbnNzd2l0Y2guY29uZiIsT19SRE9OTFl8T19DTE9FWEVD LDA2NjYpID0gNSAoMHg1KQoyNTAxMzogaW9jdGwoNSxUSU9DR0VUQSwweDdmZmZmZmZmZTI5 MCkJCSBFUlIjMjUgJ0luYXBwcm9wcmlhdGUgaW9jdGwgZm9yIGRldmljZScKMjUwMTM6IGZz dGF0KDUseyBtb2RlPS1ydy1yLS1yLS0gLGlub2RlPTI0ODkyNTcsc2l6ZT0zMzgsYmxrc2l6 ZT0zMjc2OCB9KSA9IDAgKDB4MCkKMjUwMTM6IHJlYWQoNSwiI1xuIyBuc3N3aXRjaC5jb25m KDUpIC0gbmFtZSBzZXIiLi4uLDMyNzY4KSA9IDMzOCAoMHgxNTIpCjI1MDEzOiByZWFkKDUs MHg4MDBlM2RmODAsMzI3NjgpCQkgPSAwICgweDApCjI1MDEzOiBzaWdwcm9jbWFzayhTSUdf QkxPQ0sseyBTSUdIVVB8U0lHSU5UfFNJR1FVSVR8U0lHS0lMTHxTSUdQSVBFfFNJR0FMUk18 U0lHVEVSTXxTSUdVUkd8U0lHU1RPUHxTSUdUU1RQfFNJR0NPTlR8U0lHQ0hMRHxTSUdUVElO fFNJR1RUT1V8U0lHSU98U0lHWENQVXxTSUdYRlNafFNJR1ZUQUxSTXxTSUdQUk9GfFNJR1dJ TkNIfFNJR0lORk98U0lHVVNSMXxTSUdVU1IyIH0seyB9KSA9IDAgKDB4MCkKMjUwMTM6IGFj Y2VzcygiL2xpYi9uc3NfY29tcGF0LnNvLjEiLEZfT0spCSBFUlIjMiAnTm8gc3VjaCBmaWxl IG9yIGRpcmVjdG9yeScKMjUwMTM6IGFjY2VzcygiL3Vzci9saWIvbnNzX2NvbXBhdC5zby4x IixGX09LKQkgRVJSIzIgJ05vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnknCjI1MDEzOiBhY2Nl c3MoIi91c3IvbGliL2NvbXBhdC9uc3NfY29tcGF0LnNvLjEiLEZfT0spIEVSUiMyICdObyBz dWNoIGZpbGUgb3IgZGlyZWN0b3J5JwoyNTAxMzogYWNjZXNzKCIvdXNyL2xvY2FsL2xpYi9u c3NfY29tcGF0LnNvLjEiLEZfT0spIEVSUiMyICdObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5 JwoyNTAxMzogYWNjZXNzKCIvdXNyL2xvY2FsL2xpYi9jb21wYXQvcGtnL25zc19jb21wYXQu c28uMSIsRl9PSykgRVJSIzIgJ05vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnknCjI1MDEzOiBh Y2Nlc3MoIi91c3IvbG9jYWwvbGliL3Blcmw1LzUuMjQvbWFjaC9DT1JFL25zc19jb21wYXQu c28uMSIsRl9PSykgRVJSIzIgJ05vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnknCjI1MDEzOiBh Y2Nlc3MoIi9saWIvY2FzcGVyL25zc19jb21wYXQuc28uMSIsRl9PSykgRVJSIzIgJ05vIHN1 Y2ggZmlsZSBvciBkaXJlY3RvcnknCjI1MDEzOiBhY2Nlc3MoIi9saWIvbnNzX2NvbXBhdC5z by4xIixGX09LKQkgRVJSIzIgJ05vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnknCjI1MDEzOiBh Y2Nlc3MoIi91c3IvbGliL25zc19jb21wYXQuc28uMSIsRl9PSykJIEVSUiMyICdObyBzdWNo IGZpbGUgb3IgZGlyZWN0b3J5JwoyNTAxMzogc2lncHJvY21hc2soU0lHX1NFVE1BU0sseyB9 LDB4MCkJCSA9IDAgKDB4MCkKMjUwMTM6IHNpZ3Byb2NtYXNrKFNJR19CTE9DSyx7IFNJR0hV UHxTSUdJTlR8U0lHUVVJVHxTSUdLSUxMfFNJR1BJUEV8U0lHQUxSTXxTSUdURVJNfFNJR1VS R3xTSUdTVE9QfFNJR1RTVFB8U0lHQ09OVHxTSUdDSExEfFNJR1RUSU58U0lHVFRPVXxTSUdJ T3xTSUdYQ1BVfFNJR1hGU1p8U0lHVlRBTFJNfFNJR1BST0Z8U0lHV0lOQ0h8U0lHSU5GT3xT SUdVU1IxfFNJR1VTUjIgfSx7IH0pID0gMCAoMHgwKQoyNTAxMzogYWNjZXNzKCIvbGliL25z c19uaXMuc28uMSIsRl9PSykJCSBFUlIjMiAnTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeScK MjUwMTM6IGFjY2VzcygiL3Vzci9saWIvbnNzX25pcy5zby4xIixGX09LKQkgRVJSIzIgJ05v IHN1Y2ggZmlsZSBvciBkaXJlY3RvcnknCjI1MDEzOiBhY2Nlc3MoIi91c3IvbGliL2NvbXBh dC9uc3NfbmlzLnNvLjEiLEZfT0spIEVSUiMyICdObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5 JwoyNTAxMzogYWNjZXNzKCIvdXNyL2xvY2FsL2xpYi9uc3NfbmlzLnNvLjEiLEZfT0spIEVS UiMyICdObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5JwoyNTAxMzogYWNjZXNzKCIvdXNyL2xv Y2FsL2xpYi9jb21wYXQvcGtnL25zc19uaXMuc28uMSIsRl9PSykgRVJSIzIgJ05vIHN1Y2gg ZmlsZSBvciBkaXJlY3RvcnknCjI1MDEzOiBhY2Nlc3MoIi91c3IvbG9jYWwvbGliL3Blcmw1 LzUuMjQvbWFjaC9DT1JFL25zc19uaXMuc28uMSIsRl9PSykgRVJSIzIgJ05vIHN1Y2ggZmls ZSBvciBkaXJlY3RvcnknCjI1MDEzOiBhY2Nlc3MoIi9saWIvY2FzcGVyL25zc19uaXMuc28u MSIsRl9PSykJIEVSUiMyICdObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5JwoyNTAxMzogYWNj ZXNzKCIvbGliL25zc19uaXMuc28uMSIsRl9PSykJCSBFUlIjMiAnTm8gc3VjaCBmaWxlIG9y IGRpcmVjdG9yeScKMjUwMTM6IGFjY2VzcygiL3Vzci9saWIvbnNzX25pcy5zby4xIixGX09L KQkgRVJSIzIgJ05vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnknCjI1MDEzOiBzaWdwcm9jbWFz ayhTSUdfU0VUTUFTSyx7IH0sMHgwKQkJID0gMCAoMHgwKQoyNTAxMzogc2lncHJvY21hc2so U0lHX0JMT0NLLHsgU0lHSFVQfFNJR0lOVHxTSUdRVUlUfFNJR0tJTEx8U0lHUElQRXxTSUdB TFJNfFNJR1RFUk18U0lHVVJHfFNJR1NUT1B8U0lHVFNUUHxTSUdDT05UfFNJR0NITER8U0lH VFRJTnxTSUdUVE9VfFNJR0lPfFNJR1hDUFV8U0lHWEZTWnxTSUdWVEFMUk18U0lHUFJPRnxT SUdXSU5DSHxTSUdJTkZPfFNJR1VTUjF8U0lHVVNSMiB9LHsgfSkgPSAwICgweDApCjI1MDEz OiBhY2Nlc3MoIi9saWIvbnNzX2ZpbGVzLnNvLjEiLEZfT0spCSBFUlIjMiAnTm8gc3VjaCBm aWxlIG9yIGRpcmVjdG9yeScKMjUwMTM6IGFjY2VzcygiL3Vzci9saWIvbnNzX2ZpbGVzLnNv LjEiLEZfT0spCSBFUlIjMiAnTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeScKMjUwMTM6IGFj Y2VzcygiL3Vzci9saWIvY29tcGF0L25zc19maWxlcy5zby4xIixGX09LKSBFUlIjMiAnTm8g c3VjaCBmaWxlIG9yIGRpcmVjdG9yeScKMjUwMTM6IGFjY2VzcygiL3Vzci9sb2NhbC9saWIv bnNzX2ZpbGVzLnNvLjEiLEZfT0spIEVSUiMyICdObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5 JwoyNTAxMzogYWNjZXNzKCIvdXNyL2xvY2FsL2xpYi9jb21wYXQvcGtnL25zc19maWxlcy5z by4xIixGX09LKSBFUlIjMiAnTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeScKMjUwMTM6IGFj Y2VzcygiL3Vzci9sb2NhbC9saWIvcGVybDUvNS4yNC9tYWNoL0NPUkUvbnNzX2ZpbGVzLnNv LjEiLEZfT0spIEVSUiMyICdObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5JwoyNTAxMzogYWNj ZXNzKCIvbGliL2Nhc3Blci9uc3NfZmlsZXMuc28uMSIsRl9PSykgRVJSIzIgJ05vIHN1Y2gg ZmlsZSBvciBkaXJlY3RvcnknCjI1MDEzOiBhY2Nlc3MoIi9saWIvbnNzX2ZpbGVzLnNvLjEi LEZfT0spCSBFUlIjMiAnTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeScKMjUwMTM6IGFjY2Vz cygiL3Vzci9saWIvbnNzX2ZpbGVzLnNvLjEiLEZfT0spCSBFUlIjMiAnTm8gc3VjaCBmaWxl IG9yIGRpcmVjdG9yeScKMjUwMTM6IHNpZ3Byb2NtYXNrKFNJR19TRVRNQVNLLHsgfSwweDAp CQkgPSAwICgweDApCjI1MDEzOiBzaWdwcm9jbWFzayhTSUdfQkxPQ0sseyBTSUdIVVB8U0lH SU5UfFNJR1FVSVR8U0lHS0lMTHxTSUdQSVBFfFNJR0FMUk18U0lHVEVSTXxTSUdVUkd8U0lH U1RPUHxTSUdUU1RQfFNJR0NPTlR8U0lHQ0hMRHxTSUdUVElOfFNJR1RUT1V8U0lHSU98U0lH WENQVXxTSUdYRlNafFNJR1ZUQUxSTXxTSUdQUk9GfFNJR1dJTkNIfFNJR0lORk98U0lHVVNS MXxTSUdVU1IyIH0seyB9KSA9IDAgKDB4MCkKMjUwMTM6IGFjY2VzcygiL2xpYi9uc3NfZG5z LnNvLjEiLEZfT0spCQkgRVJSIzIgJ05vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnknCjI1MDEz OiBhY2Nlc3MoIi91c3IvbGliL25zc19kbnMuc28uMSIsRl9PSykJIEVSUiMyICdObyBzdWNo IGZpbGUgb3IgZGlyZWN0b3J5JwoyNTAxMzogYWNjZXNzKCIvdXNyL2xpYi9jb21wYXQvbnNz X2Rucy5zby4xIixGX09LKSBFUlIjMiAnTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeScKMjUw MTM6IGFjY2VzcygiL3Vzci9sb2NhbC9saWIvbnNzX2Rucy5zby4xIixGX09LKSBFUlIjMiAn Tm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeScKMjUwMTM6IGFjY2VzcygiL3Vzci9sb2NhbC9s aWIvY29tcGF0L3BrZy9uc3NfZG5zLnNvLjEiLEZfT0spIEVSUiMyICdObyBzdWNoIGZpbGUg b3IgZGlyZWN0b3J5JwoyNTAxMzogYWNjZXNzKCIvdXNyL2xvY2FsL2xpYi9wZXJsNS81LjI0 L21hY2gvQ09SRS9uc3NfZG5zLnNvLjEiLEZfT0spIEVSUiMyICdObyBzdWNoIGZpbGUgb3Ig ZGlyZWN0b3J5JwoyNTAxMzogYWNjZXNzKCIvbGliL2Nhc3Blci9uc3NfZG5zLnNvLjEiLEZf T0spCSBFUlIjMiAnTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeScKMjUwMTM6IGFjY2Vzcygi L2xpYi9uc3NfZG5zLnNvLjEiLEZfT0spCQkgRVJSIzIgJ05vIHN1Y2ggZmlsZSBvciBkaXJl Y3RvcnknCjI1MDEzOiBhY2Nlc3MoIi91c3IvbGliL25zc19kbnMuc28uMSIsRl9PSykJIEVS UiMyICdObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5JwoyNTAxMzogc2lncHJvY21hc2soU0lH X1NFVE1BU0sseyB9LDB4MCkJCSA9IDAgKDB4MCkKMjUwMTM6IGlvY3RsKDUsVElPQ0dFVEEs MHg3ZmZmZmZmZmUyNjApCQkgRVJSIzI1ICdJbmFwcHJvcHJpYXRlIGlvY3RsIGZvciBkZXZp Y2UnCjI1MDEzOiBjbG9zZSg1KQkJCQkJID0gMCAoMHgwKQoyNTAxMzogc2lncHJvY21hc2so U0lHX0JMT0NLLHsgU0lHSFVQfFNJR0lOVHxTSUdRVUlUfFNJR0tJTEx8U0lHUElQRXxTSUdB TFJNfFNJR1RFUk18U0lHVVJHfFNJR1NUT1B8U0lHVFNUUHxTSUdDT05UfFNJR0NITER8U0lH VFRJTnxTSUdUVE9VfFNJR0lPfFNJR1hDUFV8U0lHWEZTWnxTSUdWVEFMUk18U0lHUFJPRnxT SUdXSU5DSHxTSUdJTkZPfFNJR1VTUjF8U0lHVVNSMiB9LHsgfSkgPSAwICgweDApCjI1MDEz OiBzaWdwcm9jbWFzayhTSUdfU0VUTUFTSyx7IH0sMHgwKQkJID0gMCAoMHgwKQoyNTAxMzog c2lncHJvY21hc2soU0lHX0JMT0NLLHsgU0lHSFVQfFNJR0lOVHxTSUdRVUlUfFNJR0tJTEx8 U0lHUElQRXxTSUdBTFJNfFNJR1RFUk18U0lHVVJHfFNJR1NUT1B8U0lHVFNUUHxTSUdDT05U fFNJR0NITER8U0lHVFRJTnxTSUdUVE9VfFNJR0lPfFNJR1hDUFV8U0lHWEZTWnxTSUdWVEFM Uk18U0lHUFJPRnxTSUdXSU5DSHxTSUdJTkZPfFNJR1VTUjF8U0lHVVNSMiB9LHsgfSkgPSAw ICgweDApCjI1MDEzOiBzaWdwcm9jbWFzayhTSUdfU0VUTUFTSyx7IH0sMHgwKQkJID0gMCAo MHgwKQoyNTAxMzogZ2V0ZXVpZCgpCQkJCSA9IDAgKDB4MCkKMjUwMTM6IG9wZW4oIi9ldGMv c3B3ZC5kYiIsT19SRE9OTFl8T19DTE9FWEVDLDAwKSA9IDUgKDB4NSkKMjUwMTM6IGZzdGF0 KDUseyBtb2RlPS1ydy0tLS0tLS0gLGlub2RlPTI0ODc5ODgsc2l6ZT00MDk2MCxibGtzaXpl PTMyNzY4IH0pID0gMCAoMHgwKQoyNTAxMzogcmVhZCg1LCJcMFxeRlxeVWFcMFwwXDBcXkJc MFwwXF5EXE0tUlwwIi4uLiwyNjApID0gMjYwICgweDEwNCkKMjUwMTM6IHByZWFkKDB4NSww eDgwMGU1YjAwMCwweDEwMDAsMHg2MDAwKQkgPSA0MDk2ICgweDEwMDApCjI1MDEzOiBwcmVh ZCgweDUsMHg4MDBlNWMwMDAsMHgxMDAwLDB4NDAwMCkJID0gNDA5NiAoMHgxMDAwKQoyNTAx MzogcHJlYWQoMHg1LDB4ODAwZTVkMDAwLDB4MTAwMCwweDUwMDApCSA9IDQwOTYgKDB4MTAw MCkKMjUwMTM6IHByZWFkKDB4NSwweDgwMGU1ZTAwMCwweDEwMDAsMHg3MDAwKQkgPSA0MDk2 ICgweDEwMDApCjI1MDEzOiBwcmVhZCgweDUsMHg4MDBlNWYwMDAsMHgxMDAwLDB4ODAwMCkJ ID0gNDA5NiAoMHgxMDAwKQoyNTAxMzogcHJlYWQoMHg1LDB4ODAwZTYwMDAwLDB4MTAwMCww eDEwMDApCSA9IDQwOTYgKDB4MTAwMCkKMjUwMTM6IHByZWFkKDB4NSwweDgwMGU2MTAwMCww eDEwMDAsMHgyMDAwKQkgPSA0MDk2ICgweDEwMDApCjI1MDEzOiBwcmVhZCgweDUsMHg4MDBl NjIwMDAsMHgxMDAwLDB4MzAwMCkJID0gNDA5NiAoMHgxMDAwKQoyNTAxMzogY2xvc2UoNSkJ CQkJCSA9IDAgKDB4MCkKMjUwMTM6IGNocm9vdCgiL3Zhci9lbXB0eSIpCQkJID0gMCAoMHgw KQoyNTAxMzogY2hkaXIoIi8iKQkJCQkgPSAwICgweDApCjI1MDEzOiBzZXRncm91cHMoMHgx LDB4ODAwYmM5Mzg0KQkJID0gMCAoMHgwKQoyNTAxMzogc2V0cmVzZ2lkKDB4M2UsMHgzZSww eDNlKQkJID0gMCAoMHgwKQoyNTAxMzogc2V0cmVzdWlkKDB4M2UsMHgzZSwweDNlKQkJID0g MCAoMHgwKQoyNTAxMzogaW9jdGwoMCxGSU9OQklPLDB4N2ZmZmZmZmZlNmJjKQkJID0gMCAo MHgwKQoyNTAxMzogc2V0c29ja29wdCgwLElQUFJPVE9fSVAsSVBfUkVDVkRTVEFERFIsMHg3 ZmZmZmZmZmU2YmMsNCkgPSAwICgweDApCjI1MDEzOiBnZXRzb2NrbmFtZSgwLHsgQUZfSU5F VCAwLjAuMC4wOjY5NjkgfSwweDdmZmZmZmZmZTY2YykgPSAwICgweDApCjI1MDEzOiByZWN2 ZnJvbSgwLCJcMFxeQWJpb3MvcHhlbGludXguY2ZnLzQ0NDU0YzRjLSIuLi4sNTE2LE1TR19Q RUVLLHsgQUZfSU5FVCAxNjkuMTU0LjE0OC44ODo0OTE1OCB9LDB4N2ZmZmZmZmZlNjZjKSA9 IDg0ICgweDU0KQoyNTAxMzogcmVjdm1zZygwLDB4N2ZmZmZmZmZlNjgwLDApCQkgPSA4NCAo MHg1NCkKMjUwMTM6IGNsb3NlKDApCQkJCQkgPSAwICgweDApCjI1MDEzOiBjbG9zZSgxKQkJ CQkJID0gMCAoMHgwKQoyNTAxMzogc29ja2V0KFBGX0lORVQsU09DS19ER1JBTSwwKQkJID0g MCAoMHgwKQoyNTAxMzogYmluZCgwLHsgQUZfSU5FVCAxMjcuMC4wLjE6MCB9LDE2KQkgPSAw ICgweDApCjI1MDEzOiBjb25uZWN0KDAseyBBRl9JTkVUIDE2OS4xNTQuMTQ4Ljg4OjQ5MTU4 IH0sMTYpID0gMCAoMHgwKQoyNTAxMzogZ2V0c29ja25hbWUoMCx7IEFGX0lORVQgMTI3LjAu MC4xOjM1NzM0IH0sMHg3ZmZmZmZmZmU2NmMpID0gMCAoMHgwKQoyNTAxMzogaW9jdGwoNCww eGMwNGM0NDE3IHsgSU9SVyAweDQ0KCdEJyksIDIzLCA3NiB9LDB4N2ZmZmZmZmZlNWIwKSBF UlIjMiAnTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeScKMjUwMTM6IGdldHBpZCgpCQkJCQkg PSAyNTAxMyAoMHg2MWI1KQoyNTAxMzogc2VuZHRvKDMsIjwyNz5EZWMgIDYgMjA6MDI6MTEg dGZ0cC1wcm94eVsyIi4uLiw3NiwwLE5VTEwsMCkgPSA3NiAoMHg0YykKMjUwMTM6IHNpZ3By b2NtYXNrKFNJR19CTE9DSyx7IFNJR0hVUHxTSUdJTlR8U0lHUVVJVHxTSUdLSUxMfFNJR1BJ UEV8U0lHQUxSTXxTSUdURVJNfFNJR1VSR3xTSUdTVE9QfFNJR1RTVFB8U0lHQ09OVHxTSUdD SExEfFNJR1RUSU58U0lHVFRPVXxTSUdJT3xTSUdYQ1BVfFNJR1hGU1p8U0lHVlRBTFJNfFNJ R1BST0Z8U0lHV0lOQ0h8U0lHSU5GT3xTSUdVU1IxfFNJR1VTUjIgfSx7IH0pID0gMCAoMHgw KQoyNTAxMzogc2lncHJvY21hc2soU0lHX1NFVE1BU0sseyB9LDB4MCkJCSA9IDAgKDB4MCkK MjUwMTM6IHNpZ3Byb2NtYXNrKFNJR19CTE9DSyx7IFNJR0hVUHxTSUdJTlR8U0lHUVVJVHxT SUdLSUxMfFNJR1BJUEV8U0lHQUxSTXxTSUdURVJNfFNJR1VSR3xTSUdTVE9QfFNJR1RTVFB8 U0lHQ09OVHxTSUdDSExEfFNJR1RUSU58U0lHVFRPVXxTSUdJT3xTSUdYQ1BVfFNJR1hGU1p8 U0lHVlRBTFJNfFNJR1BST0Z8U0lHV0lOQ0h8U0lHSU5GT3xTSUdVU1IxfFNJR1VTUjIgfSx7 IH0pID0gMCAoMHgwKQoyNTAxMzogc2lncHJvY21hc2soU0lHX1NFVE1BU0sseyB9LDB4MCkJ CSA9IDAgKDB4MCkKMjUwMTM6IHNpZ3Byb2NtYXNrKFNJR19CTE9DSyx7IFNJR0hVUHxTSUdJ TlR8U0lHUVVJVHxTSUdLSUxMfFNJR1BJUEV8U0lHQUxSTXxTSUdURVJNfFNJR1VSR3xTSUdT VE9QfFNJR1RTVFB8U0lHQ09OVHxTSUdDSExEfFNJR1RUSU58U0lHVFRPVXxTSUdJT3xTSUdY Q1BVfFNJR1hGU1p8U0lHVlRBTFJNfFNJR1BST0Z8U0lHV0lOQ0h8U0lHSU5GT3xTSUdVU1Ix fFNJR1VTUjIgfSx7IH0pID0gMCAoMHgwKQoyNTAxMzogc2lncHJvY21hc2soU0lHX1NFVE1B U0sseyB9LDB4MCkJCSA9IDAgKDB4MCkKMjUwMTM6IGV4aXQoMHgxKQkJCQkKMjUwMTM6IHBy b2Nlc3MgZXhpdCwgcnZhbCA9IDEKMjM2NDM6IHdhaXQ0KC0xLHsgRVhJVEVELHZhbD0xIH0s V05PSEFORywweDApCSA9IDI1MDEzICgweDYxYjUpCg== --------------467A46D7369707AD3CFEED43 Content-Type: text/plain; charset=UTF-8; name="logs25013" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="logs25013" RGVjICA2IDIwOjAyOjExIGd3IHRmdHAtcHJveHlbMjUwMTNdOiBwZiBjb25uZWN0aW9uIGxv b2t1cCBmYWlsZWQgKG5vIHJkcj8pCkRlYyAgNiAyMDowMjoxMSBndyBpbmV0ZFsyMzY0M106 IC91c3IvbGliZXhlYy90ZnRwLXByb3h5WzI1MDEzXTogZXhpdGVkLCBzdGF0dXMgMQo= --------------467A46D7369707AD3CFEED43-- From owner-freebsd-pf@freebsd.org Wed Dec 6 22:01:51 2017 Return-Path: Delivered-To: freebsd-pf@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A796DE8D2D4 for ; Wed, 6 Dec 2017 22:01:51 +0000 (UTC) (envelope-from srs0=/nkd=dc=sigsegv.be=kristof@codepro.be) Received: from venus.codepro.be (venus.codepro.be [IPv6:2a01:4f8:162:1127::2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "*.codepro.be", Issuer "Gandi Standard SSL CA 2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5BAE9640AB for ; Wed, 6 Dec 2017 22:01:51 +0000 (UTC) (envelope-from srs0=/nkd=dc=sigsegv.be=kristof@codepro.be) Received: from [192.168.228.1] (ptr-8ripyygulzdzq1uu71m.18120a2.ip6.access.telenet.be [IPv6:2a02:1811:2419:4e02:a13f:781f:5084:612a]) (Authenticated sender: kp) by venus.codepro.be (Postfix) with ESMTPSA id 490419950; Wed, 6 Dec 2017 23:01:47 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sigsegv.be; s=mail; t=1512597707; bh=lPT5Orc5pZanUHEWwWcRw8EYmMrSRWHc5A5afW2pVaA=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=eK0MfdRK6RLaWOTfSPVX/B2Rapcly6xJ3vu1HX+cFdUMHhoJwzeTTAmw5SYT5fytP vlu7kv0yHApKydDERNywF0AJaYUY+XN+YZDVFxj5cZcOcoq5k9RDPzcGLDab0Zjn1R yqTMObGFLzfSESumks6+MKbIExY2T5oKHTrTGT/U= From: "Kristof Provost" To: "John Jasen" Cc: "FreeBSD PF" Subject: Re: problems with tftp-proxy in 11.1? Date: Wed, 06 Dec 2017 23:01:46 +0100 X-Mailer: MailMate (2.0BETAr6100) Message-ID: In-Reply-To: References: <9f0fc087-2aed-535e-c779-be0cc49cde26@gmail.com> <03C8B641-5A71-4FA5-92AD-178597EC5421@sigsegv.be> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Content-Filtered-By: Mailman/MimeDel 2.1.25 X-BeenThere: freebsd-pf@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: "Technical discussion and general questions about packet filter \(pf\)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Dec 2017 22:01:51 -0000 On 6 Dec 2017, at 21:25, John Jasen wrote: > On 12/04/2017 02:47 PM, Kristof Provost wrote: >> >> On 4 Dec 2017, at 19:57, John Jasen wrote: >> >> Depending on circumstances, we see a lot or a very few of the >> following >> messages: >> "pf connection lookup failed (no rdr?)" >> >> That means the state lookup (using ioctl(DIOCNATLOOK)) failed. >> There seem to be a couple of possible reasons why that might happen. >> One of which is that there’s no state at all. Can you check how >> many >> states you’ve got (and what the limits are)? >> > The state tables should be fine. They're currently in the 30k range, > set > to alert in nagios at 250k. > > I've attached truss snippets and log snippets from a failed > connection. > truss was obtained via truss -f -p $pid -o outfile, and grepping down > via the failued pid as logged in syslog. > Okay, so this is interesting: > 25013: ioctl(4,0xc04c4417 { IORW 0x44('D'), 23, 76 },0x7fffffffe5b0) > ERR#2 'No such file or directory' The DIOCNATLOOK ioctl() fails with ENOENT, which happens if the state can’t be found. Of course, I have no idea why that would happen. Does this affect some tftp connections or all of them? Can you post the outputs of `pfctl -s memory`, `pfctl -s info` and `sudo pfctl -s limits`? Regards, Kristof From owner-freebsd-pf@freebsd.org Thu Dec 7 17:02:36 2017 Return-Path: Delivered-To: freebsd-pf@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 363D5E8C7D0 for ; Thu, 7 Dec 2017 17:02:36 +0000 (UTC) (envelope-from jjasen@gmail.com) Received: from mail-pf0-x229.google.com (mail-pf0-x229.google.com [IPv6:2607:f8b0:400e:c00::229]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 0392A6D7AD for ; Thu, 7 Dec 2017 17:02:36 +0000 (UTC) (envelope-from jjasen@gmail.com) Received: by mail-pf0-x229.google.com with SMTP id e3so5103339pfi.10 for ; Thu, 07 Dec 2017 09:02:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=TMMBmDKZf4zHN1kNhOyc5Q99CXKKryytWoS2iM2ignE=; b=Ipb6FqbyfwojpmjthLNtdGXddbpi4yxPs8lHK9cM/MSVzfeBxR4vGPMzyhEaB/fDBA ZpUMj1NUaeZvog4WSP4bNaG1Sx7vHbGu5qC2qkfEVRFJBBGSLAeYJP10A0BtdHB1SmwV Oto54htPpfIpzM2DhBrcyU9uaLkLHVYwrA5E6Rix17Cjt11uAyDcHM6mNpPSLR0gHNiv ZMDO08Mrg5nvtLsZ/Je0bPcNhcgIpIv3cw2BBqu3gX9TjzHQnmeZ0Tnx9FysG004mXDe /PDJMx5wnVEdjIlxBJhgRSbudsEo63V1RK5WIkIiD3NMc/SrlC+xVTIUEsintzCh9ioG 0krw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=TMMBmDKZf4zHN1kNhOyc5Q99CXKKryytWoS2iM2ignE=; b=WMOB6B9DDswqLFN70YAWNVfUdC+gxXNwUfnQz3RT55JNCrBUHoJC02KBZ3ufsDiuov e6/GZFqybTxUaV2ztldIfOilR3pHXVEjYlZOk3bx209ndWv3FniIdPXIzx21LkW3MY8l gjiJDSlCrFs8bfuscUpeQjt6p/t+IDjaKPbh+JbVPpdNThvfDNBZHnb360i1f9lD/gih js1v5C+v8tIJMfRwocdjaZI6Y6ow79sdQL1a6PMlwaX2EizSGXO2vvEwxx7BAeb/i/6H miXVOHAfL7UjIiXAIp9u7Jb5peXtvAwkcGeNC3l0xEy9gwGwiYqUoU/nCdz6/NHHt85S /Mmw== X-Gm-Message-State: AKGB3mIreASV1/WVKEWyJQ8+Lj6LRoaVsEXGzV1aaflRdtDor8X/KBkA rYNin3AonG7rOsvNNZZEABPHLZSwLEAl6Mms5cihnA== X-Google-Smtp-Source: AGs4zMZMFoPNKfUey7PR2tXFUKniAJFkLvrDLhnjDSm3d6JQCEgswwiq+DrTzP4piC6KwALKqZIVUpbMOdkKRsQo1Ks= X-Received: by 10.84.236.7 with SMTP id q7mr6340799plk.401.1512666155044; Thu, 07 Dec 2017 09:02:35 -0800 (PST) MIME-Version: 1.0 Received: by 10.236.189.14 with HTTP; Thu, 7 Dec 2017 09:02:34 -0800 (PST) In-Reply-To: References: <9f0fc087-2aed-535e-c779-be0cc49cde26@gmail.com> <03C8B641-5A71-4FA5-92AD-178597EC5421@sigsegv.be> From: John Jasen Date: Thu, 7 Dec 2017 12:02:34 -0500 Message-ID: Subject: Re: problems with tftp-proxy in 11.1? To: Kristof Provost Cc: FreeBSD PF Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.25 X-BeenThere: freebsd-pf@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: "Technical discussion and general questions about packet filter \(pf\)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 Dec 2017 17:02:36 -0000 On Wed, Dec 6, 2017 at 5:01 PM, Kristof Provost wrote: > On 6 Dec 2017, at 21:25, John Jasen wrote: > > On 12/04/2017 02:47 PM, Kristof Provost wrote: > > Okay, so this is interesting: > > 25013: ioctl(4,0xc04c4417 { IORW 0x44('D'), 23, 76 },0x7fffffffe5b0) ERR#= 2 > 'No such file or directory' > > The DIOCNATLOOK ioctl() fails with ENOENT, which happens if the state > can=E2=80=99t be found. > Of course, I have no idea why that would happen. Does this affect some > tftp connections or all of them? > Some, where the amount seems somewhat random. Can you post the outputs of pfctl -s memory, pfctl -s info and sudo pfctl > -s limits? > pfctl -s limits is not valid, it appears. pfctl.info :::::::::::::: Status: Enabled for 49 days 01:11:53 Debug: Urgent State Table Total Rate current entries 23178 searches 1043223404652 246164.4/s inserts 615337407 145.2/s removals 615314221 145.2/s Counters match 687031846 162.1/s bad-offset 0 0.0/s fragment 0 0.0/s short 0 0.0/s normalize 0 0.0/s memory 0 0.0/s bad-timestamp 0 0.0/s congestion 0 0.0/s ip-option 0 0.0/s proto-cksum 22 0.0/s state-mismatch 34121 0.0/s state-insert 59591 0.0/s state-limit 10870 0.0/s src-limit 3 0.0/s synproxy 0 0.0/s map-failed 0 0.0/s pfctl.memory :::::::::::::: states hard limit 15000000 src-nodes hard limit 10000000 frags hard limit 100000 table-entries hard limit 10000000 > Regards, > Kristof >