From owner-freebsd-questions@FreeBSD.ORG Fri Jan 6 06:17:56 2006 Return-Path: X-Original-To: freebsd-questions@freebsd.org Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AE50816A41F for ; Fri, 6 Jan 2006 06:17:56 +0000 (GMT) (envelope-from stormspotter@6Texans.net) Received: from longbow.arroway.com (wmlaser.com [66.252.139.199]) by mx1.FreeBSD.org (Postfix) with SMTP id EB12943D49 for ; Fri, 6 Jan 2006 06:17:55 +0000 (GMT) (envelope-from stormspotter@6Texans.net) Received: (qmail 12122 invoked by uid 1007); 6 Jan 2006 06:17:54 -0000 Received: from 216.87.134.162 by longbow (envelope-from , uid 1004) with qmail-scanner-1.25-st-qms (clamdscan: 0.87. spamassassin: 3.0.3. Clear:RC:1(216.87.134.162):. Processed in 1.179389 secs); 06 Jan 2006 06:17:54 -0000 X-Antivirus-Longbow.arroway.com-Mail-From: stormspotter@6texans.net via longbow X-Antivirus-Longbow.arroway.com: 1.25-st-qms (Clear:RC:1(216.87.134.162):. Processed in 1.179389 secs Process 12115) Received: from unknown (HELO jacob.6texans.net) (216.87.134.162) by longbow.arroway.com with SMTP; 6 Jan 2006 06:17:53 -0000 Date: Fri, 6 Jan 2006 00:17:44 -0600 From: Jacob S To: freebsd-questions@freebsd.org Message-ID: <20060106001744.6aa1367d@jacob.6texans.net> X-Mailer: Sylpheed-Claws 1.9.100 (GTK+ 2.8.9; i486-pc-linux-gnu) Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_3OE_m3iWO/Sorgi5jhIinqd" Subject: Ipf problem X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 06 Jan 2006 06:17:56 -0000 --MP_3OE_m3iWO/Sorgi5jhIinqd Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline Hello list, I'm having a problem setting up ipf on a FreeBSD server and can't figure out where I'm going wrong. I copied my ipf.rules file from another server I have where ipf is working great. But after I customized the rules to this server it is filling /var/log/messages with lines like the following: Jan 4 15:15:21 pikeman ipmon[222]: 15:15:21.465822 2x em0 @0:33 b 198.32.64.12,53 -> 65.19.150.68,62097 PR udp len 20 314 IN Jan 4 15:15:21 pikeman ipmon[222]: 15:15:21.492578 em0 @0:33 b 216.200.145.35,25 -> 65.19.150.68,57210 PR tcp len 20 60 -AS IN Jan 4 15:15:21 pikeman ipmon[222]: 15:15:21.505821 em0 @0:33 b 205.188.156.249,25 -> 65.19.150.68,57209 PR tcp len 20 48 -AS IN The lines scroll by faster than I can read them, if I tail the logfile. The blocked packets in this case are coming from standard ports to non-standard ports. Doing a reverse lookup on the ips, it would seem that my server has initiated the transfer and the other servers are simply replying. (I deduce that from the blocked ips because they belong to hostnames that I would not expect to be flooding my server. Namely, the first ip is for l.root-servers.net.) I've attached the ipf.rules file to this e-mail. A uname -r on the server returns 5.4-RELEASE-p4. Can anybody see what I'm doing wrong? TIA, Jacob --MP_3OE_m3iWO/Sorgi5jhIinqd Content-Type: application/octet-stream; name=ipf.rules Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=ipf.rules IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMKIyBObyByZXN0cmljdGlvbnMgb24gSW5zaWRlIExBTiBJbnRlcmZhY2UgZm9yIHBy aXZhdGUgbmV0d29yawojIE5vdCBuZWVkZWQgdW5sZXNzIHlvdSBoYXZlIExBTgojIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoK I3Bhc3Mgb3V0IHF1aWNrIG9uIHhsMCBhbGwKI3Bhc3MgaW4gcXVpY2sgb24geGwwIGFsbAoKIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMKIyBObyByZXN0cmljdGlvbnMgb24gTG9vcGJhY2sgSW50ZXJmYWNlCiMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCnBh c3MgaW4gcXVpY2sgb24gbG8wIGFsbApwYXNzIG91dCBxdWljayBvbiBsbzAgYWxsCgojIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IwojIEludGVyZmFjZSBmYWNpbmcgUHVibGljIEludGVybmV0IChPdXRib3VuZCBTZWN0aW9uKQoj IEludGVycm9nYXRlIHNlc3Npb24gc3RhcnQgcmVxdWVzdHMgb3JpZ2luYXRpbmcgZnJvbSBiZWhp bmQgdGhlCiMgZmlyZXdhbGwgb24gdGhlIHByaXZhdGUgbmV0d29yawojIG9yIGZyb20gdGhpcyBn YXRld2F5IHNlcnZlciBkZXN0aW5lIGZvciB0aGUgcHVibGljIEludGVybmV0LgojIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoK IyBBbGxvdyBldmVyeXRoaW5nIG91dC4gTWlrZQoKIyBBbGxvdyBvdXQgYWNjZXNzIHRvIG15IElT UCdzIERvbWFpbiBuYW1lIHNlcnZlci4KIyB4eHggbXVzdCBiZSB0aGUgSVAgYWRkcmVzcyBvZiB5 b3VyIElTUCdzIEROUy4KIyBEdXAgdGhlc2UgbGluZXMgaWYgeW91ciBJU1AgaGFzIG1vcmUgdGhh biBvbmUgRE5TIHNlcnZlcgojIEdldCB0aGUgSVAgYWRkcmVzc2VzIGZyb20gL2V0Yy9yZXNvbHYu Y29uZiBmaWxlCnBhc3Mgb3V0IHF1aWNrIG9uIGVtMCBwcm90byB0Y3AgZnJvbSBhbnkgdG8gNjUu MTkuMTUwLjY2IHBvcnQgPSA1MyBmbGFncyBTIGtlZXAgc3RhdGUKcGFzcyBvdXQgcXVpY2sgb24g ZW0wIHByb3RvIHVkcCBmcm9tIGFueSB0byA2NS4xOS4xNTAuNjYgcG9ydCA9IDUzIGtlZXAgc3Rh dGUKCiMgQWxsb3cgb3V0IGFjY2VzcyB0byBteSBJU1AncyBESENQIHNlcnZlciBmb3IgY2FibGUg b3IgRFNMIG5ldHdvcmtzLgojIFRoaXMgcnVsZSBpcyBub3QgbmVlZGVkIGZvciAndXNlciBwcHAn IHR5cGUgY29ubmVjdGlvbiB0byB0aGUKIyBwdWJsaWMgSW50ZXJuZXQsIHNvIHlvdSBjYW4gZGVs ZXRlIHRoaXMgd2hvbGUgZ3JvdXAuCiMgVXNlIHRoZSBmb2xsb3dpbmcgcnVsZSBhbmQgY2hlY2sg bG9nIGZvciBJUCBhZGRyZXNzLgojIFRoZW4gcHV0IElQIGFkZHJlc3MgaW4gY29tbWVudGVkIG91 dCBydWxlICYgZGVsZXRlIGZpcnN0IHJ1bGUKI3Bhc3Mgb3V0IGxvZyBxdWljayBvbiBlbTAgcHJv dG8gdWRwIGZyb20gYW55IHRvIGFueSBwb3J0ID0gNjcga2VlcCBzdGF0ZQojcGFzcyBvdXQgcXVp Y2sgb24gZW0wIHByb3RvIHVkcCBmcm9tIGFueSB0byB6Lnouei56IHBvcnQgPSA2NyBrZWVwIHN0 YXRlCgojIEFsbG93IG91dCBub24tc2VjdXJlIHN0YW5kYXJkIHd3dyBmdW5jdGlvbgpwYXNzIG91 dCBxdWljayBvbiBlbTAgcHJvdG8gdGNwIGZyb20gYW55IHRvIGFueSBwb3J0ID0gODAgZmxhZ3Mg UyBrZWVwIHN0YXRlCgojIEFsbG93IG91dCBzZWN1cmUgd3d3IGZ1bmN0aW9uIGh0dHBzIG92ZXIg VExTIFNTTApwYXNzIG91dCBxdWljayBvbiBlbTAgcHJvdG8gdGNwIGZyb20gYW55IHRvIGFueSBw b3J0ID0gNDQzIGZsYWdzIFMga2VlcCBzdGF0ZQoKIyBBbGxvdyBvdXQgc2VuZCAmIGdldCBlbWFp bCBmdW5jdGlvbgpwYXNzIG91dCBxdWljayBvbiBlbTAgcHJvdG8gdGNwIGZyb20gYW55IHRvIGFu eSBwb3J0ID0gMTEwIGZsYWdzIFMga2VlcCBzdGF0ZQpwYXNzIG91dCBxdWljayBvbiBlbTAgcHJv dG8gdGNwIGZyb20gYW55IHRvIGFueSBwb3J0ID0gMjUgZmxhZ3MgUyBrZWVwIHN0YXRlCgojIEFs bG93IG91dCBUaW1lCnBhc3Mgb3V0IHF1aWNrIG9uIGVtMCBwcm90byB0Y3AgZnJvbSBhbnkgdG8g YW55IHBvcnQgPSAzNyBmbGFncyBTIGtlZXAgc3RhdGUKCiMgQWxsb3cgb3V0IG5udHAgbmV3cwpw YXNzIG91dCBxdWljayBvbiBlbTAgcHJvdG8gdGNwIGZyb20gYW55IHRvIGFueSBwb3J0ID0gMTE5 IGZsYWdzIFMga2VlcCBzdGF0ZQoKIyBBbGxvdyBvdXQgZ2F0ZXdheSAmIExBTiB1c2VycyBub24t c2VjdXJlIEZUUCAoIGJvdGggcGFzc2l2ZSAmIGFjdGl2ZSBtb2RlcykKIyBUaGlzIGZ1bmN0aW9u IHVzZXMgdGhlIElQTkFUIGJ1aWx0IGluIEZUUCBwcm94eSBmdW5jdGlvbiBjb2RlZCBpbgojIHRo ZSBuYXQgcnVsZXMgZmlsZSB0byBtYWtlIHRoaXMgc2luZ2xlIHJ1bGUgZnVuY3Rpb24gY29ycmVj dGx5LgojIElmIHlvdSB3YW50IHRvIHVzZSB0aGUgcGtnX2FkZCBjb21tYW5kIHRvIGluc3RhbGwg YXBwbGljYXRpb24gcGFja2FnZXMKIyBvbiB5b3VyIGdhdGV3YXkgc3lzdGVtIHlvdSBuZWVkIHRo aXMgcnVsZS4KcGFzcyBvdXQgcXVpY2sgb24gZW0wIHByb3RvIHRjcCBmcm9tIGFueSB0byBhbnkg cG9ydCA9IDIxIGZsYWdzIFMga2VlcCBzdGF0ZQoKIyBBbGxvdyBvdXQgc2VjdXJlIEZUUCwgVGVs bmV0LCBhbmQgU0NQCiMgVGhpcyBmdW5jdGlvbiBpcyB1c2luZyBTU0ggKHNlY3VyZSBzaGVsbCkK cGFzcyBvdXQgcXVpY2sgb24gZW0wIHByb3RvIHRjcCBmcm9tIGFueSB0byBhbnkgcG9ydCA9IDIy IGZsYWdzIFMga2VlcCBzdGF0ZQoKIyBBbGxvdyBvdXQgbm9uLXNlY3VyZSBUZWxuZXQKcGFzcyBv dXQgcXVpY2sgb24gZW0wIHByb3RvIHRjcCBmcm9tIGFueSB0byBhbnkgcG9ydCA9IDIzIGZsYWdz IFMga2VlcCBzdGF0ZQoKIyBBbGxvdyBvdXQgRkJTRCBDVlNVUCBmdW5jdGlvbgpwYXNzIG91dCBx dWljayBvbiBlbTAgcHJvdG8gdGNwIGZyb20gYW55IHRvIGFueSBwb3J0ID0gNTk5OSBmbGFncyBT IGtlZXAgc3RhdGUKCiMgQWxsb3cgb3V0IHBpbmcgdG8gcHVibGljIEludGVybmV0CnBhc3Mgb3V0 IHF1aWNrIG9uIGVtMCBwcm90byBpY21wIGZyb20gYW55IHRvIGFueSBpY21wLXR5cGUgOCBrZWVw IHN0YXRlCgojIEFsbG93IG91dCB3aG9pcyBmb3IgTEFOIFBDIHRvIHB1YmxpYyBJbnRlcm5ldApw YXNzIG91dCBxdWljayBvbiBlbTAgcHJvdG8gdGNwIGZyb20gYW55IHRvIGFueSBwb3J0ID0gNDMg ZmxhZ3MgUyBrZWVwIHN0YXRlCgojIEJsb2NrIGFuZCBsb2cgb25seSB0aGUgZmlyc3Qgb2NjdXJy ZW5jZSBvZiBldmVyeXRoaW5nCiMgZWxzZSB0aGF0J3MgdHJ5aW5nIHRvIGdldCBvdXQuCiMgVGhp cyBydWxlIGVuZm9yY2VzIHRoZSBibG9jayBhbGwgYnkgZGVmYXVsdCBsb2dpYy4KIyBibG9jayBv dXQgbG9nIGZpcnN0IHF1aWNrIG9uIGVtMCBhbGwKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiMgSW50ZXJmYWNlIGZhY2lu ZyBQdWJsaWMgSW50ZXJuZXQgKEluYm91bmQgU2VjdGlvbikKIyBJbnRlcnJvZ2F0ZSBwYWNrZXRz IG9yaWdpbmF0aW5nIGZyb20gdGhlIHB1YmxpYyBJbnRlcm5ldAojIGRlc3RpbmUgZm9yIHRoaXMg Z2F0ZXdheSBzZXJ2ZXIgb3IgdGhlIHByaXZhdGUgbmV0d29yay4KIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCiMgQmxvY2sg YWxsIGluYm91bmQgdHJhZmZpYyBmcm9tIG5vbi1yb3V0YWJsZSBvciByZXNlcnZlZCBhZGRyZXNz IHNwYWNlcwpibG9jayBpbiBxdWljayBvbiBlbTAgZnJvbSAxOTIuMTY4LjAuMC8xNiB0byBhbnkg ICAgI1JGQyAxOTE4IHByaXZhdGUgSVAKYmxvY2sgaW4gcXVpY2sgb24gZW0wIGZyb20gMTcyLjE2 LjAuMC8xMiB0byBhbnkgICAgICNSRkMgMTkxOCBwcml2YXRlIElQCmJsb2NrIGluIHF1aWNrIG9u IGVtMCBmcm9tIDEwLjAuMC4wLzggdG8gYW55ICAgICAgICAjUkZDIDE5MTggcHJpdmF0ZSBJUApi bG9jayBpbiBxdWljayBvbiBlbTAgZnJvbSAxMjcuMC4wLjAvOCB0byBhbnkgICAgICAgI2xvb3Bi YWNrCmJsb2NrIGluIHF1aWNrIG9uIGVtMCBmcm9tIDAuMC4wLjAvOCB0byBhbnkgICAgICAgICAj bG9vcGJhY2sKYmxvY2sgaW4gcXVpY2sgb24gZW0wIGZyb20gMTY5LjI1NC4wLjAvMTYgdG8gYW55 ICAgICNESENQIGF1dG8tY29uZmlnCmJsb2NrIGluIHF1aWNrIG9uIGVtMCBmcm9tIDE5Mi4wLjIu MC8yNCB0byBhbnkgICAgICAjcmVzZXJ2ZWQgZm9yIGRvY3MKYmxvY2sgaW4gcXVpY2sgb24gZW0w IGZyb20gMjA0LjE1Mi42NC4wLzIzIHRvIGFueSAgICNTdW4gY2x1c3RlciBpbnRlcmNvbm5lY3QK YmxvY2sgaW4gcXVpY2sgb24gZW0wIGZyb20gMjI0LjAuMC4wLzMgdG8gYW55ICAgICAgICNDbGFz cyBEICYgRSBtdWx0aWNhc3QKCiMjIyMjIEJsb2NrIGEgYnVuY2ggb2YgZGlmZmVyZW50IG5hc3R5 IHRoaW5ncy4gIyMjIyMjIyMjIyMjCiMgVGhhdCBJIGRvIG5vdCB3YW50IHRvIHNlZSBpbiB0aGUg bG9nCgojIEJsb2NrIGZyYWdzCmJsb2NrIGluIHF1aWNrIG9uIGVtMCBhbGwgd2l0aCBmcmFncwoK IyBCbG9jayBzaG9ydCB0Y3AgcGFja2V0cwpibG9jayBpbiBxdWljayBvbiBlbTAgcHJvdG8gdGNw IGFsbCB3aXRoIHNob3J0CgojIGJsb2NrIHNvdXJjZSByb3V0ZWQgcGFja2V0cwpibG9jayBpbiBx dWljayBvbiBlbTAgYWxsIHdpdGggb3B0IGxzcnIKYmxvY2sgaW4gcXVpY2sgb24gZW0wIGFsbCB3 aXRoIG9wdCBzc3JyCgojIEJsb2NrIG5tYXAgT1MgZmluZ2VycHJpbnQgYXR0ZW1wdHMKIyBMb2cg Zmlyc3Qgb2NjdXJyZW5jZSBvZiB0aGVzZSBzbyBJIGNhbiBnZXQgdGhlaXIgSVAgYWRkcmVzcwpi bG9jayBpbiBsb2cgZmlyc3QgcXVpY2sgb24gZW0wIHByb3RvIHRjcCBmcm9tIGFueSB0byBhbnkg ZmxhZ3MgRlVQCgojIEJsb2NrIGFueXRoaW5nIHdpdGggc3BlY2lhbCBvcHRpb25zCmJsb2NrIGlu IHF1aWNrIG9uIGVtMCBhbGwgd2l0aCBpcG9wdHMKCiMgQmxvY2sgcHVibGljIHBpbmdzCiNibG9j ayBpbiBxdWljayBvbiBlbTAgcHJvdG8gaWNtcCBhbGwgaWNtcC10eXBlIDgKI3Bhc3MgaW4gcXVp Y2sgb24gZW0wIHByb3RvIGljbXAgYWxsIGljbXAtdHlwZSA4CiNwYXNzIG91dCBxdWljayBwcm90 byBpY21wIGZyb20gYW55IHRvIGFueSBpY21wLXR5cGUgOCBjb2RlIDAKI3Bhc3MgaW4gcXVpY2sg cHJvdG8gaWNtcCBmcm9tIGFueSB0byBhbnkgaWNtcC10eXBlIDAgY29kZSAwCiMKIyBhbGxvdyBp biBJQ01QIGVjaG9zIGFuZCBlY2hvLXJlcGxpZXMuCiMKI3Bhc3MgaW4gb24gZW0wIHByb3RvIGlj bXAgZnJvbSBhbnkgdG8gYW55IGljbXAtdHlwZSBlY2hvCiNwYXNzIGluIG9uIGVtMCBwcm90byBp Y21wIGZyb20gYW55IHRvIGFueSBpY21wLXR5cGUgZWNob3JlcAoKIyBCbG9jayBpZGVudApibG9j ayBpbiBxdWljayBvbiBlbTAgcHJvdG8gdGNwIGZyb20gYW55IHRvIGFueSBwb3J0ID0gMTEzCgoj IEJsb2NrIGFsbCBOZXRiaW9zIHNlcnZpY2UuIDEzNz1uYW1lLCAxMzg9ZGF0YWdyYW0sIDEzOT1z ZXNzaW9uCiMgTmV0YmlvcyBpcyBNUy9XaW5kb3dzIHNoYXJpbmcgc2VydmljZXMuCiMgQmxvY2sg TVMvV2luZG93cyBob3N0czIgbmFtZSBzZXJ2ZXIgcmVxdWVzdHMgODEKYmxvY2sgaW4gbG9nIGZp cnN0IHF1aWNrIG9uIGVtMCBwcm90byB0Y3AvdWRwIGZyb20gYW55IHRvIGFueSBwb3J0ID0gMTM3 CmJsb2NrIGluIGxvZyBmaXJzdCBxdWljayBvbiBlbTAgcHJvdG8gdGNwL3VkcCBmcm9tIGFueSB0 byBhbnkgcG9ydCA9IDEzOApibG9jayBpbiBsb2cgZmlyc3QgcXVpY2sgb24gZW0wIHByb3RvIHRj cC91ZHAgZnJvbSBhbnkgdG8gYW55IHBvcnQgPSAxMzkKYmxvY2sgaW4gbG9nIGZpcnN0IHF1aWNr IG9uIGVtMCBwcm90byB0Y3AvdWRwIGZyb20gYW55IHRvIGFueSBwb3J0ID0gODEKCiMgQWxsb3cg dHJhZmZpYyBpbiBmcm9tIElTUCdzIERIQ1Agc2VydmVyLiBUaGlzIHJ1bGUgbXVzdCBjb250YWlu CiMgdGhlIElQIGFkZHJlc3Mgb2YgeW91ciBJU1AncyBESENQIHNlcnZlciBhcyBpdCdzIHRoZSBv bmx5CiMgYXV0aG9yaXplZCBzb3VyY2UgdG8gc2VuZCB0aGlzIHBhY2tldCB0eXBlLiBPbmx5IG5l Y2Vzc2FyeSBmb3IKIyBjYWJsZSBvciBEU0wgY29uZmlndXJhdGlvbnMuIFRoaXMgcnVsZSBpcyBu b3QgbmVlZGVkIGZvcgojICd1c2VyIHBwcCcgdHlwZSBjb25uZWN0aW9uIHRvIHRoZSBwdWJsaWMg SW50ZXJuZXQuCiMgVGhpcyBpcyB0aGUgc2FtZSBJUCBhZGRyZXNzIHlvdSBjYXB0dXJlZCBhbmQK IyB1c2VkIGluIHRoZSBvdXRib3VuZCBzZWN0aW9uLgojcGFzcyBpbiBxdWljayBvbiBlbTAgcHJv dG8gdWRwIGZyb20gei56LnoueiB0byBhbnkgcG9ydCA9IDY4IGtlZXAgc3RhdGUKCiMgQWxsb3cg aW4gIEZUUCBmcm9tIHB1YmxpYyBJbnRlcm5ldApwYXNzIGluIHF1aWNrIG9uIGVtMCBwcm90byB0 Y3AgZnJvbSBhbnkgdG8gYW55IHBvcnQgPSAyMSBmbGFncyBTIGtlZXAgc3RhdGUKCiMgQWxsb3cg aW4gc2VjdXJlIEZUUCwgVGVsbmV0LCBhbmQgU0NQIGZyb20gcHVibGljIEludGVybmV0CiMgVGhp cyBmdW5jdGlvbiBpcyB1c2luZyBTU0ggKHNlY3VyZSBzaGVsbCkKcGFzcyBpbiBxdWljayBvbiBl bTAgcHJvdG8gdGNwIGZyb20gYW55IHRvIGFueSBwb3J0ID0gMjIgZmxhZ3MgUyBrZWVwIHN0YXRl CgojIEFsbG93IGluICBTTVRQIGZyb20gcHVibGljIEludGVybmV0CnBhc3MgaW4gcXVpY2sgb24g ZW0wIHByb3RvIHRjcCBmcm9tIGFueSB0byBhbnkgcG9ydCA9IDI1IGZsYWdzIFMga2VlcCBzdGF0 ZQoKIyBBbGxvdyBpbiBETlMgZnJvbSBwdWJsaWMgSW50ZXJuZXQKcGFzcyBpbiBxdWljayBvbiBl bTAgcHJvdG8gdGNwIGZyb20gYW55IHRvIGFueSBwb3J0ID0gNTMgZmxhZ3MgUyBrZWVwIHN0YXRl CnBhc3MgaW4gcXVpY2sgb24gZW0wIHByb3RvIHVkcCBmcm9tIGFueSB0byBhbnkgcG9ydCA9IDUz IGtlZXAgc3RhdGUKCiMgQWxsb3cgaW4gc3RhbmRhcmQgd3d3IGZ1bmN0aW9uIGJlY2F1c2UgSSBo YXZlIGFwYWNoZSBzZXJ2ZXIKI3Bhc3MgaW4gcXVpY2sgb24gZW0wIHByb3RvIHRjcCBmcm9tIGFu eSB0byBhbnkgcG9ydCA9IDgwIGZsYWdzIFMga2VlcCBzdGF0ZQoKIyBBbGxvdyBpbiBQT1AzIGZy b20gcHVibGljIEludGVybmV0CnBhc3MgaW4gcXVpY2sgb24gZW0wIHByb3RvIHRjcCBmcm9tIGFu eSB0byBhbnkgcG9ydCA9IDExMCBmbGFncyBTIGtlZXAgc3RhdGUKCiMgQWxsb3cgaW4gSU1BUCBm cm9tIHB1YmxpYyBJbnRlcm5ldAojcGFzcyBpbiBxdWljayBvbiBlbTAgcHJvdG8gdGNwIGZyb20g YW55IHRvIGFueSBwb3J0ID0gMTQzIGZsYWdzIFMga2VlcCBzdGF0ZQoKIyBBbGxvdyBpbiBIVFRQ UyBmcm9tIHB1YmxpYyBJbnRlcm5ldAojcGFzcyBpbiBxdWljayBvbiBlbTAgcHJvdG8gdGNwIGZy b20gYW55IHRvIGFueSBwb3J0ID0gNDQzIGZsYWdzIFMga2VlcCBzdGF0ZQoKIyBBbGxvdyBpbiBT TVRQUyBmcm9tIHB1YmxpYyBJbnRlcm5ldAojcGFzcyBpbiBxdWljayBvbiBlbTAgcHJvdG8gdGNw IGZyb20gYW55IHRvIGFueSBwb3J0ID0gNDY1IGZsYWdzIFMga2VlcCBzdGF0ZQoKIyBBbGxvdyBp biBQT1AzIGZyb20gcHVibGljIEludGVybmV0CnBhc3MgaW4gcXVpY2sgb24gZW0wIHByb3RvIHRj cCBmcm9tIGFueSB0byBhbnkgcG9ydCA9IDYyOCBmbGFncyBTIGtlZXAgc3RhdGUKCiMgQWxsb3cg aW4gSU1BUFMgZnJvbSBwdWJsaWMgSW50ZXJuZXQKI3Bhc3MgaW4gcXVpY2sgb24gZW0wIHByb3Rv IHRjcCBmcm9tIGFueSB0byBhbnkgcG9ydCA9IDk5MyBmbGFncyBTIGtlZXAgc3RhdGUKCiMgQWxs b3cgaW4gUE9QM1MgZnJvbSBwdWJsaWMgSW50ZXJuZXQKI3Bhc3MgaW4gcXVpY2sgb24gZW0wIHBy b3RvIHRjcCBmcm9tIGFueSB0byBhbnkgcG9ydCA9IDk5NSBmbGFncyBTIGtlZXAgc3RhdGUKCiMg QWxsb3cgaW4gTVlTUUwgZnJvbSBwdWJsaWMgSW50ZXJuZXQKI3Bhc3MgaW4gcXVpY2sgb24gZW0w IHByb3RvIHRjcCBmcm9tIGFueSB0byBhbnkgcG9ydCA9IDMzMDYgZmxhZ3MgUyBrZWVwIHN0YXRl CiNwYXNzIGluIHF1aWNrIG9uIGVtMCBwcm90byB0Y3AgZnJvbSA2NS4xOS4xNTAuNjYvMjcgdG8g YW55IHBvcnQgPSAzMzA2CgojIEFsbG93IGluIG5vbi1zZWN1cmUgVGVsbmV0IHNlc3Npb24gZnJv bSBwdWJsaWMgSW50ZXJuZXQKIyBsYWJlbGVkIG5vbi1zZWN1cmUgYmVjYXVzZSBJRC9QVyBwYXNz ZWQgb3ZlciBwdWJsaWMgSW50ZXJuZXQgYXMgY2xlYXIgdGV4dC4KIyBEZWxldGUgdGhpcyBzYW1w bGUgZ3JvdXAgaWYgeW91IGRvIG5vdCBoYXZlIHRlbG5ldCBzZXJ2ZXIgZW5hYmxlZC4KI3Bhc3Mg aW4gcXVpY2sgb24gZW0wIHByb3RvIHRjcCBmcm9tIGFueSB0byBhbnkgcG9ydCA9IDIzIGZsYWdz IFMga2VlcCBzdGF0ZQoKIyBBbGxvdyBDcm9zc2Jvdy5hcnJvd2F5LmNvbSB0byBjb25uZWN0byB0 byBldmVyeXRoaW5nCnBhc3MgaW4gcXVpY2sgb24gZW0wIHByb3RvIHRjcCBmcm9tIDY1LjE5LjE1 MC42NiB0byBhbnkgZmxhZ3MgUyBrZWVwIHN0YXRlCnBhc3MgaW4gcXVpY2sgb24gZW0wIHByb3Rv IHVkcCBmcm9tIDY1LjE5LjE1MC42NiB0byBhbnkga2VlcCBzdGF0ZQoKIyBBbGxvdyBDcm9zc2Jv dy5hcnJvd2F5LmNvbSB0byBjb25uZWN0byB0byBldmVyeXRoaW5nCnBhc3MgaW4gcXVpY2sgb24g ZW0wIHByb3RvIHRjcCBmcm9tIDY2LjI1Mi4xMjkuMTY0IHRvIGFueSBmbGFncyBTIGtlZXAgc3Rh dGUKcGFzcyBpbiBxdWljayBvbiBlbTAgcHJvdG8gdGNwIGZyb20gNjYuMjUyLjEyOS4xNjUgdG8g YW55IGZsYWdzIFMga2VlcCBzdGF0ZQoKIyBCbG9jayBhbmQgbG9nIG9ubHkgZmlyc3Qgb2NjdXJy ZW5jZSBvZiBhbGwgcmVtYWluaW5nIHRyYWZmaWMKIyBjb21pbmcgaW50byB0aGUgZmlyZXdhbGwu IFRoZSBsb2dnaW5nIG9mIG9ubHkgdGhlIGZpcnN0CiMgb2NjdXJyZW5jZSBzdG9wcyBhIC5kZW5p YWwgb2Ygc2VydmljZS4gYXR0YWNrIHRhcmdldGVkCiMgYXQgZmlsbGluZyB1cCB5b3VyIGxvZyBm aWxlIHNwYWNlLgojIFRoaXMgcnVsZSBlbmZvcmNlcyB0aGUgYmxvY2sgYWxsIGJ5IGRlZmF1bHQg bG9naWMuCmJsb2NrIGluIGxvZyBmaXJzdCBxdWljayBvbiBlbTAgYWxsCiMjIyMjIyMjIyMjIyMj IyMjIyMgRW5kIG9mIHJ1bGVzIGZpbGUgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIwoK --MP_3OE_m3iWO/Sorgi5jhIinqd--