From owner-freebsd-python@FreeBSD.ORG Sun Aug 9 12:50:53 2009 Return-Path: Delivered-To: freebsd-python@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C2A3B1065672; Sun, 9 Aug 2009 12:50:53 +0000 (UTC) (envelope-from edwin@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 9959F8FC33; Sun, 9 Aug 2009 12:50:53 +0000 (UTC) Received: from freefall.freebsd.org (edwin@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.3/8.14.3) with ESMTP id n79CorJ8061052; Sun, 9 Aug 2009 12:50:53 GMT (envelope-from edwin@freefall.freebsd.org) Received: (from edwin@localhost) by freefall.freebsd.org (8.14.3/8.14.3/Submit) id n79Cor0o061041; Sun, 9 Aug 2009 12:50:53 GMT (envelope-from edwin) Date: Sun, 9 Aug 2009 12:50:53 GMT Message-Id: <200908091250.n79Cor0o061041@freefall.freebsd.org> To: edwin@FreeBSD.org, freebsd-ports-bugs@FreeBSD.org, freebsd-python@FreeBSD.org From: edwin@FreeBSD.org Cc: Subject: Re: ports/137593: [NEW PORT] devel/py-construct X-BeenThere: freebsd-python@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD-specific Python issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Aug 2009 12:50:54 -0000 Synopsis: [NEW PORT] devel/py-construct Responsible-Changed-From-To: freebsd-ports-bugs->freebsd-python Responsible-Changed-By: edwin Responsible-Changed-When: Sun Aug 9 12:50:53 UTC 2009 Responsible-Changed-Why: freebsd-python@ wants this port PRs (via the GNATS Auto Assign Tool) http://www.freebsd.org/cgi/query-pr.cgi?pr=137593 From owner-freebsd-python@FreeBSD.ORG Sun Aug 9 15:13:24 2009 Return-Path: Delivered-To: freebsd-python@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3AE6110656C3; Sun, 9 Aug 2009 15:13:24 +0000 (UTC) (envelope-from nivit@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 134B08FC15; Sun, 9 Aug 2009 15:13:24 +0000 (UTC) Received: from freefall.freebsd.org (nivit@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.3/8.14.3) with ESMTP id n79FDNJa069212; Sun, 9 Aug 2009 15:13:23 GMT (envelope-from nivit@freefall.freebsd.org) Received: (from nivit@localhost) by freefall.freebsd.org (8.14.3/8.14.3/Submit) id n79FDNKv069208; Sun, 9 Aug 2009 15:13:23 GMT (envelope-from nivit) Date: Sun, 9 Aug 2009 15:13:23 GMT Message-Id: <200908091513.n79FDNKv069208@freefall.freebsd.org> To: nivit@FreeBSD.org, freebsd-python@FreeBSD.org, nivit@FreeBSD.org From: nivit@FreeBSD.org Cc: Subject: Re: ports/137593: [NEW PORT] devel/py-construct X-BeenThere: freebsd-python@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD-specific Python issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 09 Aug 2009 15:13:24 -0000 Synopsis: [NEW PORT] devel/py-construct Responsible-Changed-From-To: freebsd-python->nivit Responsible-Changed-By: nivit Responsible-Changed-When: Sun Aug 9 15:13:23 UTC 2009 Responsible-Changed-Why: I will take it. http://www.freebsd.org/cgi/query-pr.cgi?pr=137593 From owner-freebsd-python@FreeBSD.ORG Mon Aug 10 11:07:03 2009 Return-Path: Delivered-To: freebsd-python@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6523A106564A for ; Mon, 10 Aug 2009 11:07:03 +0000 (UTC) (envelope-from owner-bugmaster@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 52C0A8FC20 for ; Mon, 10 Aug 2009 11:07:03 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.3/8.14.3) with ESMTP id n7AB73Kw025277 for ; Mon, 10 Aug 2009 11:07:03 GMT (envelope-from owner-bugmaster@FreeBSD.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.3/8.14.3/Submit) id n7AB72M1025273 for freebsd-python@FreeBSD.org; Mon, 10 Aug 2009 11:07:02 GMT (envelope-from owner-bugmaster@FreeBSD.org) Date: Mon, 10 Aug 2009 11:07:02 GMT Message-Id: <200908101107.n7AB72M1025273@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: gnats set sender to owner-bugmaster@FreeBSD.org using -f From: FreeBSD bugmaster To: freebsd-python@FreeBSD.org Cc: Subject: Current problem reports assigned to freebsd-python@FreeBSD.org X-BeenThere: freebsd-python@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD-specific Python issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Aug 2009 11:07:04 -0000 Note: to view an individual PR, use: http://www.freebsd.org/cgi/query-pr.cgi?pr=(number). The following is a listing of current problems submitted by FreeBSD users. These represent problem reports covering all versions including experimental development code and obsolete releases. S Tracker Resp. Description -------------------------------------------------------------------------------- o ports/137359 python lang/python26 - Python ports depending on python26 do o ports/136917 python [patch] lang/python26: gettext detection o ports/136083 python New port: devel/py-gitosis Software for hosting git re f ports/135484 python port lang/python and python26 build failed f ports/133844 python New port: databases/py-postgresql python3 pgsql drive f ports/133451 python www/plone3 build fails. Plone3 needs python-2.4 but li o ports/133081 python [bsd.python.mk] PYEASYINSTALL_ARCHDEP=yes makes broken f ports/123154 python New port: devel/py-yapps2 (an easy-to-use parser gener o ports/122616 python databases/py-pyPgSQL - apply bytea escape bug patch in o ports/118301 python devel/py-setuptools easy-install.pth contents lost on o ports/115940 python Missed one file in lang/python25 if NO_NIS defined 11 problems total. From owner-freebsd-python@FreeBSD.ORG Mon Aug 10 11:48:00 2009 Return-Path: Delivered-To: freebsd-python@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 2667B106566B; Mon, 10 Aug 2009 11:48:00 +0000 (UTC) (envelope-from nivit@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id F24D48FC24; Mon, 10 Aug 2009 11:47:59 +0000 (UTC) Received: from freefall.freebsd.org (nivit@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.3/8.14.3) with ESMTP id n7ABlx8o062679; Mon, 10 Aug 2009 11:47:59 GMT (envelope-from nivit@freefall.freebsd.org) Received: (from nivit@localhost) by freefall.freebsd.org (8.14.3/8.14.3/Submit) id n7ABlxxg062675; Mon, 10 Aug 2009 11:47:59 GMT (envelope-from nivit) Date: Mon, 10 Aug 2009 11:47:59 GMT Message-Id: <200908101147.n7ABlxxg062675@freefall.freebsd.org> To: nivit@FreeBSD.org, freebsd-python@FreeBSD.org, nivit@FreeBSD.org From: nivit@FreeBSD.org Cc: Subject: Re: ports/136083: New port: devel/py-gitosis Software for hosting git repositories X-BeenThere: freebsd-python@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD-specific Python issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Aug 2009 11:48:00 -0000 Synopsis: New port: devel/py-gitosis Software for hosting git repositories Responsible-Changed-From-To: freebsd-python->nivit Responsible-Changed-By: nivit Responsible-Changed-When: Mon Aug 10 11:47:59 UTC 2009 Responsible-Changed-Why: I will take it. http://www.freebsd.org/cgi/query-pr.cgi?pr=136083 From owner-freebsd-python@FreeBSD.ORG Fri Aug 14 13:10:15 2009 Return-Path: Delivered-To: python@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9C0621065672; Fri, 14 Aug 2009 13:10:15 +0000 (UTC) (envelope-from edwin@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 731378FC60; Fri, 14 Aug 2009 13:10:15 +0000 (UTC) Received: from freefall.freebsd.org (edwin@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.3/8.14.3) with ESMTP id n7EDAFWh020782; Fri, 14 Aug 2009 13:10:15 GMT (envelope-from edwin@freefall.freebsd.org) Received: (from edwin@localhost) by freefall.freebsd.org (8.14.3/8.14.3/Submit) id n7EDAFft020772; Fri, 14 Aug 2009 13:10:15 GMT (envelope-from edwin) Date: Fri, 14 Aug 2009 13:10:15 GMT Message-Id: <200908141310.n7EDAFft020772@freefall.freebsd.org> To: edwin@FreeBSD.org, freebsd-ports-bugs@FreeBSD.org, python@FreeBSD.org From: edwin@FreeBSD.org Cc: Subject: Re: ports/137764: devel/py-setuptools cannot be installed X-BeenThere: freebsd-python@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD-specific Python issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Aug 2009 13:10:15 -0000 Synopsis: devel/py-setuptools cannot be installed Responsible-Changed-From-To: freebsd-ports-bugs->python Responsible-Changed-By: edwin Responsible-Changed-When: Fri Aug 14 13:10:14 UTC 2009 Responsible-Changed-Why: Over to maintainer (via the GNATS Auto Assign Tool) http://www.freebsd.org/cgi/query-pr.cgi?pr=137764 From owner-freebsd-python@FreeBSD.ORG Fri Aug 14 13:45:04 2009 Return-Path: Delivered-To: python@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4B19C1065694; Fri, 14 Aug 2009 13:45:04 +0000 (UTC) (envelope-from miwi@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 1DBC58FC51; Fri, 14 Aug 2009 13:45:04 +0000 (UTC) Received: from freefall.freebsd.org (miwi@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.3/8.14.3) with ESMTP id n7EDj4SG050924; Fri, 14 Aug 2009 13:45:04 GMT (envelope-from miwi@freefall.freebsd.org) Received: (from miwi@localhost) by freefall.freebsd.org (8.14.3/8.14.3/Submit) id n7EDj3m0050920; Fri, 14 Aug 2009 13:45:03 GMT (envelope-from miwi) Date: Fri, 14 Aug 2009 13:45:03 GMT Message-Id: <200908141345.n7EDj3m0050920@freefall.freebsd.org> To: anatoly.borodin@gmail.com, miwi@FreeBSD.org, python@FreeBSD.org From: miwi@FreeBSD.org Cc: Subject: Re: ports/137764: devel/py-setuptools cannot be installed X-BeenThere: freebsd-python@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD-specific Python issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Aug 2009 13:45:04 -0000 Synopsis: devel/py-setuptools cannot be installed State-Changed-From-To: open->feedback State-Changed-By: miwi State-Changed-When: Fri Aug 14 13:45:03 UTC 2009 State-Changed-Why: I can't confirm this problem, is your portstree 100% correct? all workdirs was befor cleaned? http://www.freebsd.org/cgi/query-pr.cgi?pr=137764 From owner-freebsd-python@FreeBSD.ORG Fri Aug 14 13:54:15 2009 Return-Path: Delivered-To: freebsd-python@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B9300106568E; Fri, 14 Aug 2009 13:54:15 +0000 (UTC) (envelope-from miwi@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 8FE148FC5A; Fri, 14 Aug 2009 13:54:15 +0000 (UTC) Received: from freefall.freebsd.org (miwi@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.3/8.14.3) with ESMTP id n7EDsFIj057950; Fri, 14 Aug 2009 13:54:15 GMT (envelope-from miwi@freefall.freebsd.org) Received: (from miwi@localhost) by freefall.freebsd.org (8.14.3/8.14.3/Submit) id n7EDsFpI057946; Fri, 14 Aug 2009 13:54:15 GMT (envelope-from miwi) Date: Fri, 14 Aug 2009 13:54:15 GMT Message-Id: <200908141354.n7EDsFpI057946@freefall.freebsd.org> To: ohauer@gmx.de, miwi@FreeBSD.org, freebsd-python@FreeBSD.org From: miwi@FreeBSD.org Cc: Subject: Re: ports/135484: port lang/python and python26 build failed X-BeenThere: freebsd-python@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD-specific Python issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Aug 2009 13:54:15 -0000 Synopsis: port lang/python and python26 build failed State-Changed-From-To: feedback->closed State-Changed-By: miwi State-Changed-When: Fri Aug 14 13:54:15 UTC 2009 State-Changed-Why: close by submitter request. http://www.freebsd.org/cgi/query-pr.cgi?pr=135484 From owner-freebsd-python@FreeBSD.ORG Fri Aug 14 14:47:42 2009 Return-Path: Delivered-To: python@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1239D1065690; Fri, 14 Aug 2009 14:47:42 +0000 (UTC) (envelope-from fractalizator@gmail.com) Received: from mail-bw0-f219.google.com (mail-bw0-f219.google.com [209.85.218.219]) by mx1.freebsd.org (Postfix) with ESMTP id 9BD6B8FC16; Fri, 14 Aug 2009 14:47:40 +0000 (UTC) Received: by bwz19 with SMTP id 19so1579333bwz.37 for ; Fri, 14 Aug 2009 07:47:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:sender:received:in-reply-to :references:from:date:x-google-sender-auth:message-id:subject:to:cc :content-type; bh=8XGTL2fzGlg2vMEJ3226m1yuBBEsKRGMDBepQgvpK9U=; b=vjEiyfc1XaX/uFohSbRRz/hzyRu/f56hofROZsrhdDftGZpVTXrhvNVwPDDTBeN7RO 3x7G78rqjZpzE1L3SDGywPoj/kku4+63GvTAnkUVKkiGfYsDUi8RNa0B6fPciF5vDtzG b6vH6DbZHbzQgKd9niT1TpwnYawj+sYrmM3cI= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:cc:content-type; b=RE1WTov70APG+yEe/3C/2/u17/uZT894NrdJHa20Zr5D890FWKwctRaIIhaexWHhrb LUcD5uMLKo4/UwOzJf+XvcROjGNmMMx+pS/pwNhnYjq/VuHK1Yq0KgsbUURKjaig67cV HpBBw2UpaPOkYkR6MPuIp+L5ll7O0ylRDqjVU= MIME-Version: 1.0 Sender: fractalizator@gmail.com Received: by 10.204.7.195 with SMTP id e3mr1219532bke.118.1250260040238; Fri, 14 Aug 2009 07:27:20 -0700 (PDT) In-Reply-To: <200908141345.n7EDj3m0050920@freefall.freebsd.org> References: <200908141345.n7EDj3m0050920@freefall.freebsd.org> From: Anatoly Borodin Date: Fri, 14 Aug 2009 17:26:59 +0300 X-Google-Sender-Auth: 2f48d500d8268037 Message-ID: To: miwi@freebsd.org Content-Type: multipart/mixed; boundary=00151750e9509346ca04711ad97f Cc: python@freebsd.org Subject: Re: ports/137764: devel/py-setuptools cannot be installed X-BeenThere: freebsd-python@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD-specific Python issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Aug 2009 14:47:42 -0000 --00151750e9509346ca04711ad97f Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hi! On Fri, Aug 14, 2009 at 16:45, wrote: > I can't confirm this problem, is your portstree 100% correct? all > workdirs was befor cleaned? The workdirs have been cleaned. The portstree differs a little from the ports of 12 August - some local patches and future commits, not related to python IMHO. The diff is attached. I'll try to reinstall lang/python26 and write if it helps. -- Mit freundlichen Gr=C3=BC=C3=9Fen, Anatoly Borodin business: anatoly.borodin@gmail.com privat: fractalizator@gmail.com --00151750e9509346ca04711ad97f Content-Type: application/octet-stream; name="1.patch" Content-Disposition: attachment; filename="1.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_fyd0eehw0 ZGlmZiAtLWdpdCBhL2F1ZGlvL3htbXMyL01ha2VmaWxlIGIvYXVkaW8veG1tczIvTWFrZWZpbGUK aW5kZXggZDQyY2NjMy4uOTYzYWZiZCAxMDA2NDQKLS0tIGEvYXVkaW8veG1tczIvTWFrZWZpbGUK KysrIGIvYXVkaW8veG1tczIvTWFrZWZpbGUKQEAgLTMwOCw3ICszMDgsNyBAQCBQTElTVF9TVUIr PQlNRE5TX0FWQUhJPSJAY29tbWVudCAiCiBCUk9LRU49CQlZb3UgbWF5IGNob29zZSBlaXRoZXIg TUROU19BUFBMRSBvciBNRE5TX0FWQUhJLCBidXQgbm90IGJvdGgKIC5lbmRpZgogRVhDTFVERSs9 CS0td2l0aG91dC1vcHRpb25hbHM9ImF2YWhpIgotTElCX0RFUEVORFMrPQlkbnNfc2Q6JHtQT1JU U0RJUn0vbmV0L21ETlNSZXNwb25kZXIKK0xJQl9ERVBFTkRTKz0JZG5zX3NkOiR7UE9SVFNESVJ9 L25ldC9hdmFoaS1saWJkbnMKIFBMSVNUX1NVQis9CU1ETlNfQVBQTEU9IiIKIC5lbHNlCiBFWENM VURFKz0JLS13aXRob3V0LW9wdGlvbmFscz0iZG5zX3NkIgpkaWZmIC0tZ2l0IGEvZGF0YWJhc2Vz L3NxbHJlbGF5L01ha2VmaWxlIGIvZGF0YWJhc2VzL3NxbHJlbGF5L01ha2VmaWxlCmluZGV4IDUz ZTAzMjIuLjk1OTE5NmEgMTAwNjQ0Ci0tLSBhL2RhdGFiYXNlcy9zcWxyZWxheS9NYWtlZmlsZQor KysgYi9kYXRhYmFzZXMvc3FscmVsYXkvTWFrZWZpbGUKQEAgLTQ0LDYgKzQ0LDggQEAgT1BUSU9O Uz0JTVNRTCAiQnVpbGQgTVNRTCBjb25uZWN0aW9uIiBvZmYgXAogCQlJTlRFUkJBU0UgIkJ1aWxk IEludGVyYmFzZSBjb25uZWN0aW9uIiBvZmYgXAogCQlHVEsgIkJ1aWxkIEdUSyBjb25maWd1cmF0 aW9uIHRvb2wiIG9mZgogCitXQU5UX0dOT01FPQl5ZXMKKwogLmluY2x1ZGUgPGJzZC5wb3J0LnBy ZS5taz4KIAogLmlmIGRlZmluZWQoV0lUSF9TUUxJVEUpICYmICR7V0lUSF9TUUxJVEU6TH0gIT0g bm8KZGlmZiAtLWdpdCBhL2RldmVsL2N2czJkYXJjcy9NYWtlZmlsZSBiL2RldmVsL2N2czJkYXJj cy9NYWtlZmlsZQppbmRleCA0NGQ5NjYxLi41OTg5NTE5IDEwMDY0NAotLS0gYS9kZXZlbC9jdnMy ZGFyY3MvTWFrZWZpbGUKKysrIGIvZGV2ZWwvY3ZzMmRhcmNzL01ha2VmaWxlCkBAIC0xNCw3ICsx NCw3IEBAIE1BSU5UQUlORVI9CWhhc2tlbGxARnJlZUJTRC5vcmcKIENPTU1FTlQ9CUNvbnZlcnQg Q1ZTIG1vZHVsZSB0byBkYXJjcyByZXBvc2l0b3J5CiAKIEJVSUxEX0RFUEVORFM9CWRhcmNzOiR7 UE9SVFNESVJ9L2RldmVsL2RhcmNzIFwKLQkJY3ZzcHM6JHtQT1JUU0RJUn0vZGV2ZWwvY3ZzcHMg XAorCQljdnNwczoke1BPUlRTRElSfS9kZXZlbC9jdnNwcy1kZXZlbCBcCiAJCSR7U0lURV9QRVJM fS9IVFRQL0RhdGUucG06JHtQT1JUU0RJUn0vd3d3L3A1LWxpYnd3dwogUlVOX0RFUEVORFM9CSR7 QlVJTERfREVQRU5EU30KIApkaWZmIC0tZ2l0IGEvZGV2ZWwvY3ZzcHMtZGV2ZWwvZmlsZXMvcGF0 Y2gtTWFrZWZpbGUgYi9kZXZlbC9jdnNwcy1kZXZlbC9maWxlcy9wYXRjaC1NYWtlZmlsZQpuZXcg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xY2VlNDJiCi0tLSAvZGV2L251bGwKKysr IGIvZGV2ZWwvY3ZzcHMtZGV2ZWwvZmlsZXMvcGF0Y2gtTWFrZWZpbGUKQEAgLTAsMCArMSw1MSBA QAorLS0tIE1ha2VmaWxlLm9yaWcJMjAwOC0wMy0wMSAwNjo1MjoyMi4wMDAwMDAwMDAgKzAyMDAK KysrKyBNYWtlZmlsZQkyMDA4LTAzLTAxIDA2OjUxOjEzLjAwMDAwMDAwMCArMDIwMAorQEAgLTEs OCArMSw4IEBACisgTUFKT1I9MgorIE1JTk9SPTEKKyBDQz89Z2NjCistQ0ZMQUdTPz0tZyAtTzIg LVdhbGwgCistQ0ZMQUdTKz0tSS4gLURWRVJTSU9OPVwiJChNQUpPUikuJChNSU5PUilcIgorK0NG TEFHUz89LWcgLU8yIC1XYWxsCisrQ1BQRkxBR1M/PS1JLiAtRFZFUlNJT049XCIkKE1BSk9SKS4k KE1JTk9SKVwiCisgcHJlZml4Pz0vdXNyL2xvY2FsCisgT0JKUz1cCisgCWNidGNvbW1vbi9kZWJ1 Zy5vXAorQEAgLTIwLDYgKzIwLDkgQEAKKyAKKyBhbGw6IGN2c3BzCisgCisrZGVwczoKKysJbWFr ZWRlcGVuZCAtWSAtSS4gKi5jIGNidGNvbW1vbi8qLmMKKysKKyBjdnNwczogJChPQkpTKQorIAkk KENDKSAtbyBjdnNwcyAkKE9CSlMpIC1segorIAorQEAgLTMzLDMgKzM2LDI3IEBACisgCXJtIC1m IGN2c3BzICoubyBjYnRjb21tb24vKi5vIGNvcmUKKyAKKyAuUEhPTlk6IGluc3RhbGwgY2xlYW4K KysjIERPIE5PVCBERUxFVEUKKysKKytjYWNoZS5vOiAuL2NidGNvbW1vbi9oYXNoLmggLi9jYnRj b21tb24vbGlzdC5oIC4vY2J0Y29tbW9uL2lubGluZS5oCisrY2FjaGUubzogLi9jYnRjb21tb24v ZGVidWcuaCBjYWNoZS5oIGN2c3BzX3R5cGVzLmggY3ZzcHMuaCB1dGlsLmgKKytjYXAubzogLi9j YnRjb21tb24vZGVidWcuaCAuL2NidGNvbW1vbi9pbmxpbmUuaCAuL2NidGNvbW1vbi90ZXh0X3V0 aWwuaCBjYXAuaAorK2NhcC5vOiBjdnNfZGlyZWN0LmgKKytjdnNfZGlyZWN0Lm86IC4vY2J0Y29t bW9uL2RlYnVnLmggLi9jYnRjb21tb24vaW5saW5lLmgKKytjdnNfZGlyZWN0Lm86IC4vY2J0Y29t bW9uL3RleHRfdXRpbC5oIC4vY2J0Y29tbW9uL3RjcHNvY2tldC5oCisrY3ZzX2RpcmVjdC5vOiAu L2NidGNvbW1vbi9zaW8uaCBjdnNfZGlyZWN0LmggdXRpbC5oCisrY3ZzcHMubzogLi9jYnRjb21t b24vaGFzaC5oIC4vY2J0Y29tbW9uL2xpc3QuaCAuL2NidGNvbW1vbi9pbmxpbmUuaAorK2N2c3Bz Lm86IC4vY2J0Y29tbW9uL2xpc3QuaCAuL2NidGNvbW1vbi90ZXh0X3V0aWwuaCAuL2NidGNvbW1v bi9kZWJ1Zy5oCisrY3ZzcHMubzogLi9jYnRjb21tb24vcmNzaWQuaCBjYWNoZS5oIGN2c3BzX3R5 cGVzLmggY3ZzcHMuaCB1dGlsLmggc3RhdHMuaAorK2N2c3BzLm86IGNhcC5oIGN2c19kaXJlY3Qu aCBsaXN0X3NvcnQuaAorK2xpc3Rfc29ydC5vOiBsaXN0X3NvcnQuaCAuL2NidGNvbW1vbi9saXN0 LmgKKytzdGF0cy5vOiAuL2NidGNvbW1vbi9oYXNoLmggLi9jYnRjb21tb24vbGlzdC5oIC4vY2J0 Y29tbW9uL2lubGluZS5oCisrc3RhdHMubzogY3ZzcHNfdHlwZXMuaCBjdnNwcy5oCisrdXRpbC5v OiAuL2NidGNvbW1vbi9kZWJ1Zy5oIC4vY2J0Y29tbW9uL2lubGluZS5oIHV0aWwuaAorK2NidGNv bW1vbi9kZWJ1Zy5vOiBjYnRjb21tb24vZGVidWcuaCAuL2NidGNvbW1vbi9pbmxpbmUuaCBjYnRj b21tb24vcmNzaWQuaAorK2NidGNvbW1vbi9oYXNoLm86IGNidGNvbW1vbi9kZWJ1Zy5oIC4vY2J0 Y29tbW9uL2lubGluZS5oIGNidGNvbW1vbi9oYXNoLmgKKytjYnRjb21tb24vaGFzaC5vOiAuL2Ni dGNvbW1vbi9saXN0LmggY2J0Y29tbW9uL3Jjc2lkLmgKKytjYnRjb21tb24vc2lvLm86IGNidGNv bW1vbi9zaW8uaCBjYnRjb21tb24vcmNzaWQuaAorK2NidGNvbW1vbi90Y3Bzb2NrZXQubzogY2J0 Y29tbW9uL3RjcHNvY2tldC5oIGNidGNvbW1vbi9kZWJ1Zy5oCisrY2J0Y29tbW9uL3RjcHNvY2tl dC5vOiAuL2NidGNvbW1vbi9pbmxpbmUuaCBjYnRjb21tb24vcmNzaWQuaAorK2NidGNvbW1vbi90 ZXh0X3V0aWwubzogY2J0Y29tbW9uL3RleHRfdXRpbC5oIGNidGNvbW1vbi9yY3NpZC5oCmRpZmYg LS1naXQgYS9kZXZlbC9jdnNwcy1kZXZlbC9maWxlcy9wYXRjaC1jYWNoZS5jIGIvZGV2ZWwvY3Zz cHMtZGV2ZWwvZmlsZXMvcGF0Y2gtY2FjaGUuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwLi5hOTM1YTQ2Ci0tLSAvZGV2L251bGwKKysrIGIvZGV2ZWwvY3ZzcHMtZGV2ZWwvZmls ZXMvcGF0Y2gtY2FjaGUuYwpAQCAtMCwwICsxLDIwOSBAQAorLS0tIGNhY2hlLmMub3JpZwkyMDA4 LTAzLTAxIDA2OjUyOjIyLjAwMDAwMDAwMCArMDIwMAorKysrIGNhY2hlLmMJMjAwOC0wMy0wMSAw Njo1MTozMS4wMDAwMDAwMDAgKzAyMDAKK0BAIC0yMyw3ICsyMyw3IEBACisgI2RlZmluZSBDQUNI RV9ERVNDUl9CT1VOREFSWSAiLT0tRU5EIENWU1BTIERFU0NSLT0tXG4iCisgCisgLyogY2hhbmdl IHRoaXMgd2hlbiBtYWtpbmcgdGhlIG9uLWRpc2sgY2FjaGUtZm9ybWF0IGludmFsaWQgKi8KKy1z dGF0aWMgaW50IGNhY2hlX3ZlcnNpb24gPSAxOworK3N0YXRpYyBpbnQgY2FjaGVfdmVyc2lvbiA9 IDI7CisgCisgLyogdGhlIHRyZWUgd2FsayBBUEkgcHJldHR5IG11Y2ggcmVxdXJpZXMgdXNlIG9m IGdsb2JhbHMgOi0oICovCisgc3RhdGljIEZJTEUgKiBjYWNoZV9mcDsKK0BAIC0xMDgsMTAgKzEw OCwxOSBAQAorICAgICBpbnQgdGFnX2ZsYWdzID0gMDsKKyAgICAgY2hhciBicmFuY2hidWZmW0xP R19TVFJfTUFYXSA9ICIiOworICAgICBpbnQgYnJhbmNoX2FkZCA9IDA7CistICAgIGNoYXIgbG9n YnVmZltMT0dfU1RSX01BWF0gPSAiIjsKKysgICAgaW50IGxvZ2J1ZmZsZW4gPSBMT0dfU1RSX01B WCArIDE7CisrICAgIGNoYXIgKiBsb2didWZmID0gbWFsbG9jKGxvZ2J1ZmZsZW4pOworICAgICB0 aW1lX3QgY2FjaGVfZGF0ZSA9IC0xOworICAgICBpbnQgcmVhZF92ZXJzaW9uOworIAorKyAgICBp ZiAobG9nYnVmZiA9PSBOVUxMKQorKyAgICB7CisrCWRlYnVnKERFQlVHX1NZU0VSUk9SLCAiY291 bGQgbm90IG1hbGxvYyAlZCBieXRlcyBmb3IgbG9nYnVmZiBpbiByZWFkX2NhY2hlIiwgbG9nYnVm Zmxlbik7CisrCWV4aXQoMSk7CisrICAgIH0KKysKKysgICAgbG9nYnVmZlswXSA9IDA7CisrCisg ICAgIGlmICghKGZwID0gY2FjaGVfb3BlbigiciIpKSkKKyAJZ290byBvdXQ7CisgCitAQCAtMjk5 LDggKzMwOCwxOSBAQAorIAkgICAgZWxzZQorIAkgICAgeworIAkJLyogTWFrZSBzdXJlIHdlIGhh dmUgZW5vdWdoIGluIHRoZSBidWZmZXIgKi8KKy0JCWlmIChzdHJsZW4obG9nYnVmZikrc3RybGVu KGJ1ZmYpPExPR19TVFJfTUFYKQorLQkJICAgIHN0cmNhdChsb2didWZmLCBidWZmKTsKKysJCWlu dCBsZW4gPSBzdHJsZW4oYnVmZik7CisrCQlpZiAoc3RybGVuKGxvZ2J1ZmYpICsgbGVuID49IExP R19TVFJfTUFYKQorKwkJeworKwkJICAgIGxvZ2J1ZmZsZW4gKz0gKGxlbiA+PSBMT0dfU1RSX01B WCA/IChsZW4rMSkgOiBMT0dfU1RSX01BWCk7CisrCQkgICAgY2hhciAqIG5ld2xvZ2J1ZmYgPSBy ZWFsbG9jKGxvZ2J1ZmYsIGxvZ2J1ZmZsZW4pOworKwkJICAgIGlmIChuZXdsb2didWZmID09IE5V TEwpCisrCQkgICAgeworKwkJCWRlYnVnKERFQlVHX1NZU0VSUk9SLCAiY291bGQgbm90IHJlYWxs b2MgJWQgYnl0ZXMgZm9yIGxvZ2J1ZmYgaW4gcmVhZF9jYWNoZSIsIGxvZ2J1ZmZsZW4pOworKwkJ CWV4aXQoMSk7CisrCQkgICAgfQorKwkJICAgIGxvZ2J1ZmYgPSBuZXdsb2didWZmOworKwkJfQor KwkJc3RyY2F0KGxvZ2J1ZmYsIGJ1ZmYpOworIAkgICAgfQorIAkgICAgYnJlYWs7CisgCWNhc2Ug Q0FDSEVfTkVFRF9QU19NRU1CRVJTOgorQEAgLTMzMiw2ICszNTIsNyBAQAorICBvdXRfY2xvc2U6 CisgICAgIGZjbG9zZShmcCk7CisgIG91dDoKKysgICAgZnJlZShsb2didWZmKTsKKyAgICAgcmV0 dXJuIGNhY2hlX2RhdGU7CisgfQorIAorQEAgLTM0NCw3ICszNjUsMjQgQEAKKyAgICAgQ1JfQlJB TkNIX1BPSU5UCisgfTsKKyAKKy1zdGF0aWMgdm9pZCBwYXJzZV9jYWNoZV9yZXZpc2lvbihQYXRj aFNldE1lbWJlciAqIHBzbSwgY29uc3QgY2hhciAqIHBfYnVmZikKKyt2b2lkIGdldF9maWxlbmFt ZShjaGFyKiBmaWxlbmFtZSwgY29uc3QgY2hhciogZGF0YSkKKyt7CisrICAgIGNoYXIqIHNwZWNp YWw7CisrICAgIHdoaWxlICggKHNwZWNpYWwgPSBzdHJjaHIoZGF0YSwgJ1xcJykpICkgeworKwlp bnQgbGVuID0gc3BlY2lhbCAtIGRhdGE7CisrCW1lbWNweSAoZmlsZW5hbWUsIGRhdGEsIGxlbik7 CisrCisrCS8qIGNvcHkgc3BlY2lhbCBjaGFyLCBhbmQgc2tpcCBiYWNrc2xhc2ggKi8KKysJZmls ZW5hbWVbbGVuXSA9IGRhdGFbbGVuKzFdOworKwlmaWxlbmFtZVtsZW4rMV0gPSAnXDAnOworKwlm aWxlbmFtZSArPSBsZW4gKyAxOworKwlkYXRhICs9IGxlbiArIDI7CisrICAgIH07CisrICAgIC8q IHJlbWFpbmRlcjogdGV4dCBhZnRlciBsYXN0IHByb3RlY3RlZCBjaGFyICovCisrICAgIHN0cmNw eSAoZmlsZW5hbWUsIGRhdGEpOworK30KKysKKytzdGF0aWMgdm9pZCBwYXJzZV9jYWNoZV9yZXZp c2lvbihQYXRjaFNldE1lbWJlciAqIHBzbSwgY29uc3QgY2hhciAqIGJ1ZmYpCisgeworICAgICAv KiBUaGUgZm9ybWF0IHVzZWQgdG8gZ2VuZXJhdGUgaXM6CisgICAgICAqICJmaWxlOiVzOyBwcmVf cmV2OiVzOyBwb3N0X3JldjolczsgZGVhZDolZDsgYnJhbmNoX3BvaW50OiVkXG4iCitAQCAtMzU0 LDM1ICszOTIsMzYgQEAKKyAgICAgY2hhciBwb3N0W1JFVl9TVFJfTUFYXTsKKyAgICAgaW50IGRl YWQgPSAwOworICAgICBpbnQgYnAgPSAwOworLSAgICBjaGFyIGJ1ZmZbQlVGU0laXTsKKyAgICAg aW50IHN0YXRlID0gQ1JfRklMRU5BTUU7CistICAgIGNvbnN0IGNoYXIgKnM7CistICAgIGNoYXIg KiBwID0gYnVmZjsKKy0KKy0gICAgc3RyY3B5KGJ1ZmYsIHBfYnVmZik7CistCistICAgIHdoaWxl ICgocyA9IHN0cnNlcCgmcCwgIjsiKSkpCistICAgIHsKKy0JY2hhciAqIGMgPSBzdHJjaHIocywg JzonKTsKKy0KKy0JaWYgKCFjKQorLQl7CistCSAgICBkZWJ1ZyhERUJVR19BUFBFUlJPUiwgImlu dmFsaWQgY2FjaGUgcmV2aXNpb24gbGluZSAnJXMnfCclcyciLCBwX2J1ZmYsIHMpOworLQkgICAg ZXhpdCgxKTsKKy0JfQorLQorLQkqYysrID0gMDsKKysgICAgY29uc3QgY2hhciAqc2VwOworKyAg ICBjaGFyICogcDsKKysgICAgY2hhciAqIGM7CisrCisrICAgIGZvciAocCA9IGJ1ZmYsIHNlcCA9 IGJ1ZmY7CQkJICAvKiBqdXN0IGVuc3VyZSBzZXAgaXMgbm9uLU5VTEwgKi8KKysJIChzZXAgIT0g TlVMTCkgJiYgKGMgPSBzdHJjaHIocCwgJzonKSk7CisrCSBwID0gc2VwICsgMSkKKysgICAgewor KwlzaXplX3QgbGVuOworKwlzZXAgPSBzdHJjaHIoYywgJzsnKTsKKysJYysrOworKworKwlpZiAo c2VwICE9IE5VTEwpCisrCSAgICBsZW4gPSBzZXAgLSBjOworKwllbHNlIC8qIGxhc3QgZmllbGQg aW4gdGhlIGNhY2hlIGxpbmUgKi8KKysJICAgIGxlbiA9IHN0cmxlbihjKTsKKyAKKyAJc3dpdGNo KHN0YXRlKQorIAl7CisgCWNhc2UgQ1JfRklMRU5BTUU6CistCSAgICBzdHJjcHkoZmlsZW5hbWUs IGMpOworKwkgICAgZ2V0X2ZpbGVuYW1lKGZpbGVuYW1lLCBjKTsKKyAJICAgIGJyZWFrOworIAlj YXNlIENSX1BSRV9SRVY6CistCSAgICBzdHJjcHkocHJlLCBjKTsKKysJICAgIG1lbWNweShwcmUs IGMsIGxlbik7CisrCSAgICBwcmVbbGVuXSA9ICdcMCc7CisgCSAgICBicmVhazsKKyAJY2FzZSBD Ul9QT1NUX1JFVjoKKy0JICAgIHN0cmNweShwb3N0LCBjKTsKKysJICAgIG1lbWNweShwb3N0LCBj LCBsZW4pOworKwkgICAgcG9zdFtsZW5dID0gJ1wwJzsKKyAJICAgIGJyZWFrOworIAljYXNlIENS X0RFQUQ6CisgCSAgICBkZWFkID0gYXRvaShjKTsKK0BAIC00ODgsNiArNTI3LDI4IEBACisgICAg IGR1bXBfcGF0Y2hfc2V0KGNhY2hlX2ZwLCBwcyk7CisgfQorIAorKy8qCisrICogT3V0cHV0cyBh IGZpbGVuYW1lIHdpdGggc2VtaWNvbG9ucyBiYWNrc2xhc2gtcXVvdGVkCisrICovCisrc3RhdGlj IHZvaWQgZHVtcF9maWxlbmFtZShGSUxFICogZnAsIGNvbnN0IGNoYXIqIGZpbGVuYW1lKQorK3sK KysgICAgc2l6ZV90IGxlbjsKKysgICAgd2hpbGUoMSkgeworKwlsZW4gPSBzdHJjc3BuKGZpbGVu YW1lLCAiO1xcIik7CisrCisrCWlmIChmd3JpdGUgKGZpbGVuYW1lLCAxLCBsZW4sIGZwKSAhPSBs ZW4pIHsKKysJICAgIGRlYnVnKERFQlVHX0FQUEVSUk9SLCAic2hvcnQgd3JpdGUgaW50byBjYWNo ZSIpOworKwkgICAgZXhpdCgxKTsKKysJfQorKwlpZiAoZmlsZW5hbWVbbGVuXSA9PSAnXDAnKQor KwkgICAgYnJlYWs7CisrCisrCS8qIHF1b3RlIGFuZCBza2lwICovCisrCXB1dGMoJ1xcJywgZnAp OwlwdXRjKGZpbGVuYW1lW2xlbl0sIGZwKTsKKysJZmlsZW5hbWUgKz0gbGVuICsgMTsKKysgICAg fTsKKyt9CisrCisgc3RhdGljIHZvaWQgZHVtcF9wYXRjaF9zZXQoRklMRSAqIGZwLCBQYXRjaFNl dCAqIHBzKQorIHsKKyAgICAgc3RydWN0IGxpc3RfaGVhZCAqIG5leHQgPSBwcy0+bWVtYmVycy5u ZXh0OworQEAgLTQ5Niw4ICs1NTcsMTggQEAKKyAgICAgZnByaW50ZihmcCwgInBhdGNoc2V0OiAl ZFxuIiwgcHNfY291bnRlcik7CisgICAgIGZwcmludGYoZnAsICJkYXRlOiAlZFxuIiwgKGludClw cy0+ZGF0ZSk7CisgICAgIGZwcmludGYoZnAsICJhdXRob3I6ICVzXG4iLCBwcy0+YXV0aG9yKTsK Ky0gICAgZnByaW50ZihmcCwgInRhZzogJXNcbiIsIHBzLT50YWcgPyBwcy0+dGFnIDogIiIpOwor LSAgICBmcHJpbnRmKGZwLCAidGFnX2ZsYWdzOiAlZFxuIiwgcHMtPnRhZ19mbGFncyk7CisrICAg IHsKKysJZnByaW50ZihmcCwgInRhZ3M6Iik7CisrCXN0cnVjdCBsaXN0X2hlYWQgKiB0YWc7Cisr CWZvciAodGFnID0gcHMtPnRhZ3MubmV4dDsgdGFnICE9ICZwcy0+dGFnczsgdGFnID0gdGFnLT5u ZXh0KQorKwl7CisrICAgICAgICAgICAgVGFnTmFtZSogdGFnbmFtZSA9IGxpc3RfZW50cnkgKHRh ZywgVGFnTmFtZSwgbGluayk7CisrCisrCSAgICBmcHJpbnRmKGZwLCAiICVzICVkJXMiLCB0YWdu YW1lLT5uYW1lLCB0YWduYW1lLT5mbGFncywKKysJCSAgICAodGFnLT5uZXh0ID09ICZwcy0+dGFn cykgPyAiIiA6ICIsIik7CisrCX0KKysJZnByaW50ZihmcCwgIlxuIik7CisrICAgIH0KKyAgICAg ZnByaW50ZihmcCwgImJyYW5jaDogJXNcbiIsIHBzLT5icmFuY2gpOworICAgICBmcHJpbnRmKGZw LCAiYnJhbmNoX2FkZDogJWRcbiIsIHBzLT5icmFuY2hfYWRkKTsKKyAgICAgZnByaW50ZihmcCwg ImRlc2NyOlxuJXMiLCBwcy0+ZGVzY3IpOyAvKiBkZXNjciBpcyBndWFyYW50ZWVkIHRvIGVuZCB3 aXRoIExGICovCitAQCAtNTE0LDkgKzU4NSwxMCBAQAorIAkgICAgYnAgPSAwOworIAorIAlmZmx1 c2goZnApOworLSAgICAKKy0JZnByaW50ZihmcCwgImZpbGU6JXM7IHByZV9yZXY6JXM7IHBvc3Rf cmV2OiVzOyBkZWFkOiVkOyBicmFuY2hfcG9pbnQ6JWRcbiIsIAorLQkJcHNtLT5maWxlLT5maWxl bmFtZSwgCisrCisrCWZwdXRzICgiZmlsZToiLCBmcCk7CisrCWR1bXBfZmlsZW5hbWUgKGZwLCBw c20tPmZpbGUtPmZpbGVuYW1lKTsKKysJZnByaW50ZihmcCwgIjsgcHJlX3JldjolczsgcG9zdF9y ZXY6JXM7IGRlYWQ6JWQ7IGJyYW5jaF9wb2ludDolZFxuIiwgCisgCQlwc20tPnByZV9yZXYgPyBw c20tPnByZV9yZXYtPnJldiA6ICJJTklUSUFMIiwgcHNtLT5wb3N0X3Jldi0+cmV2LCAKKyAJCXBz bS0+cG9zdF9yZXYtPmRlYWQsIGJwKTsKKyAJbmV4dCA9IG5leHQtPm5leHQ7CmRpZmYgLS1naXQg YS9kZXZlbC9jdnNwcy1kZXZlbC9maWxlcy9wYXRjaC1jYXAuYyBiL2RldmVsL2N2c3BzLWRldmVs L2ZpbGVzL3BhdGNoLWNhcC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE3 NWM4M2QKLS0tIC9kZXYvbnVsbAorKysgYi9kZXZlbC9jdnNwcy1kZXZlbC9maWxlcy9wYXRjaC1j YXAuYwpAQCAtMCwwICsxLDI0IEBACistLS0gY2FwLmMub3JpZwkyMDA4LTAzLTAxIDA2OjUyOjIy LjAwMDAwMDAwMCArMDIwMAorKysrIGNhcC5jCTIwMDgtMDMtMDEgMDY6NTE6MTMuMDAwMDAwMDAw ICswMjAwCitAQCAtMTIxLDExICsxMjEsMTkgQEAKKyAJcmV0dXJuIDA7CisgICAgIH0KKyAKKysg ICAgLyogV2UgbWlnaHQgaGF2ZSBlbmNvdW50ZXJlZCBhIEZyZWVCU0Qgc3lzdGVtIHdoaWNoCisr ICAgICAqIGhhcyBhIG11Y2tlZCB1cCB2ZXJzaW9uIHN0cmluZyBvZjoKKysgICAgICogIENvbmN1 cnJlbnQgVmVyc2lvbnMgU3lzdGVtIChDVlMpICcxLjExLjE3Jy1GcmVlQlNEIChjbGllbnQvc2Vy dmVyKQorKyAgICAgKiBzbyByZS10ZXN0IGp1c3QgaW4gY2FzZQorKyAgICAgKi8KKyAgICAgcCAr PSBza2lwOworICAgICBpZiAoc3NjYW5mKHAsICIlZC4lZC4lZCIsICZtYWpvciwgJm1pbm9yLCAm ZXh0cmEpICE9IDMpCisgICAgIHsJCistCWRlYnVnKERFQlVHX0FQUE1TRzEsICJXQVJOSU5HOiBt YWxmb3JtZWQgQ1ZTIHZlcnNpb246ICVzIiwgc3RyKTsKKy0JcmV0dXJuIDA7CisrICAgICAgICBp ZiAoc3NjYW5mKHAsICInJWQuJWQuJWQnIiwgJm1ham9yLCAmbWlub3IsICZleHRyYSkgIT0gMykK KysJeworKwkJZGVidWcoREVCVUdfQVBQTVNHMSwgIldBUk5JTkc6IG1hbGZvcm1lZCBDVlMgdmVy c2lvbjogJXMiLCBzdHIpOworKwkJcmV0dXJuIDA7CisrCX0KKyAgICAgfQorIAorICAgICByZXR1 cm4gKG1ham9yID4gcmVxX21ham9yIHx8IApkaWZmIC0tZ2l0IGEvZGV2ZWwvY3ZzcHMtZGV2ZWwv ZmlsZXMvcGF0Y2gtY2J0Y29tbW9uLXRjcHNvY2tldC5jIGIvZGV2ZWwvY3ZzcHMtZGV2ZWwvZmls ZXMvcGF0Y2gtY2J0Y29tbW9uLXRjcHNvY2tldC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDAwMDAwMDAuLjM2OGMzMTAKLS0tIC9kZXYvbnVsbAorKysgYi9kZXZlbC9jdnNwcy1kZXZlbC9m aWxlcy9wYXRjaC1jYnRjb21tb24tdGNwc29ja2V0LmMKQEAgLTAsMCArMSwyNiBAQAorLS0tIGNi dGNvbW1vbi90Y3Bzb2NrZXQuYy5vcmlnCTIwMDgtMDMtMDEgMDY6NTI6MjIuMDAwMDAwMDAwICsw MjAwCisrKysgY2J0Y29tbW9uL3RjcHNvY2tldC5jCTIwMDgtMDMtMDEgMDY6NTE6MTMuMDAwMDAw MDAwICswMjAwCitAQCAtMTg1LDIwICsxODUsMjAgQEAKKyBpbnQKKyBjb252ZXJ0X2FkZHJlc3Mo bG9uZyAqZGVzdCwgY29uc3QgY2hhciAqYWRkcl9zdHIpCisgeworLSNpZmRlZiBMSU5VWAorKyNp ZmRlZiBfX2xpbnV4X18KKyAgIHN0cnVjdCBpbl9hZGRyIGlwOworICNlbmRpZgorICAgaW50IHJl dHZhbCA9IDA7CisgICBjaGFyIGVycnN0clsyNTZdOworICAgCisgICAvKiBmaXJzdCB0cnkgY29u dmVydGluZyAibnVtYmVycyBhbmQgZG90cyIgbm90YXRpb24gKi8KKy0jaWZkZWYgTElOVVgKKysj aWZkZWYgX19saW51eF9fCisgICBpZiAoIGluZXRfYXRvbihhZGRyX3N0ciwgJmlwKSApCisgICB7 CisgICAgIG1lbWNweShkZXN0LCAmaXAuc19hZGRyLCBzaXplb2YoaXAuc19hZGRyKSk7CisgICB9 CisgI2Vsc2UKKy0gIGlmICggKCpkZXN0ID0gaW5ldF9hZGRyKGFkZHJfc3RyKSkgIT0gLTEpCisr ICBpZiAoICgqZGVzdCA9IGluZXRfYWRkcihhZGRyX3N0cikpICE9IElOQUREUl9OT05FKQorICAg eworICAgICAvKiBub3RoaW5nICovCisgICB9CmRpZmYgLS1naXQgYS9kZXZlbC9jdnNwcy1kZXZl bC9maWxlcy9wYXRjaC1jdnNwcy4xIGIvZGV2ZWwvY3ZzcHMtZGV2ZWwvZmlsZXMvcGF0Y2gtY3Zz cHMuMQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hMTU4N2U3Ci0tLSAvZGV2 L251bGwKKysrIGIvZGV2ZWwvY3ZzcHMtZGV2ZWwvZmlsZXMvcGF0Y2gtY3ZzcHMuMQpAQCAtMCww ICsxLDExIEBACistLS0gY3ZzcHMuMS5vcmlnCTIwMDgtMDMtMDEgMDY6NTI6MjIuMDAwMDAwMDAw ICswMjAwCisrKysgY3ZzcHMuMQkyMDA4LTAzLTAxIDA2OjUxOjEzLjAwMDAwMDAwMCArMDIwMAor QEAgLTgzLDcgKzgzLDcgQEAKKyBkaXNhYmxlIHRoZSB1c2Ugb2YgcmxvZyBpbnRlcm5hbGx5LiAg Tm90ZTogcmxvZyBpcworIHJlcXVpcmVkIGZvciBzdGFibGUgUGF0Y2hTZXQgbnVtYmVyaW5nLiAg VXNlIHdpdGggY2FyZS4KKyAuVFAKKy0uQiBcLVwtZGlmZnNcLW9wdHMgPG9wdGlvbiBzdHJpbmc+ CisrLkIgXC1cLWRpZmZcLW9wdHMgPG9wdGlvbiBzdHJpbmc+Cisgc2VuZCBhIGN1c3RvbSBzZXQg b2Ygb3B0aW9ucyB0byBkaWZmLCBmb3IgZXhhbXBsZSB0byBpbmNyZWFzZQorIHRoZSBudW1iZXIg b2YgY29udGV4dCBsaW5lcywgb3IgY2hhbmdlIHRoZSBkaWZmIGZvcm1hdC4KKyAuVFAKZGlmZiAt LWdpdCBhL2RldmVsL2N2c3BzLWRldmVsL2ZpbGVzL3BhdGNoLWN2c3BzLmMubmV3IGIvZGV2ZWwv Y3ZzcHMtZGV2ZWwvZmlsZXMvcGF0Y2gtY3ZzcHMuYy5uZXcKbmV3IGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggMDAwMDAwMC4uMWJkZjc2OQotLS0gL2Rldi9udWxsCisrKyBiL2RldmVsL2N2c3BzLWRl dmVsL2ZpbGVzL3BhdGNoLWN2c3BzLmMubmV3CkBAIC0wLDAgKzEsNzEwIEBACistLS0gY3ZzcHMu Yy5vcmlnCTIwMDgtMDMtMDEgMDY6NTI6MjIuMDAwMDAwMDAwICswMjAwCisrKysgY3ZzcHMuYwky MDA4LTAzLTAxIDA2OjUxOjM3LjAwMDAwMDAwMCArMDIwMAorQEAgLTM5LDcgKzM5LDggQEAKKyAK KyBlbnVtCisgeworLSAgICBORUVEX0ZJTEUsCisrICAgIE5FRURfUkNTX0ZJTEUsCisrICAgIE5F RURfV09SS0lOR19GSUxFLAorICAgICBORUVEX1NZTVMsCisgICAgIE5FRURfRU9TLAorICAgICBO RUVEX1NUQVJUX0xPRywKK0BAIC04MSw5ICs4MiwxMiBAQAorIHN0YXRpYyBpbnQgZG9fd3JpdGVf Y2FjaGU7Cisgc3RhdGljIGludCBzdGF0aXN0aWNzOworIHN0YXRpYyBjb25zdCBjaGFyICogdGVz dF9sb2dfZmlsZTsKKysvKiBicmFuY2hfaGVhZHMgYWN0dWFsbHkgc3RvcmUgYnJhbmNoICJyb290 cyI6IFtjaGFyICpdIHRvIFtQYXRjaFNldCAqXQorKyAqIEl0J3Mgb25seSB1c2VkIGJ5IHRoZSB0 cmFja19icmFuY2hfYW5jZXN0cnkgb3B0aW9uLiAqLworIHN0YXRpYyBzdHJ1Y3QgaGFzaF90YWJs ZSAqIGJyYW5jaF9oZWFkczsKKyBzdGF0aWMgc3RydWN0IGxpc3RfaGVhZCBhbGxfcGF0Y2hfc2V0 czsKKyBzdGF0aWMgc3RydWN0IGxpc3RfaGVhZCBjb2xsaXNpb25zOworK3N0YXRpYyBzdHJ1Y3Qg bGlzdF9oZWFkIGFsbF9icmFuY2hlczsKKyAKKyAvKiBzZXR0YWJsZSB2aWEgb3B0aW9ucyAqLwor IHN0YXRpYyBpbnQgdGltZXN0YW1wX2Z1enpfZmFjdG9yID0gMzAwOworQEAgLTExNyw3ICsxMjEs OSBAQAorIHN0YXRpYyBpbnQgcGFyc2VfcmMoKTsKKyBzdGF0aWMgdm9pZCBsb2FkX2Zyb21fY3Zz KCk7Cisgc3RhdGljIHZvaWQgaW5pdF9wYXRocygpOworLXN0YXRpYyBDdnNGaWxlICogcGFyc2Vf ZmlsZShjb25zdCBjaGFyICopOworK3N0YXRpYyBDdnNGaWxlICogYnVpbGRfZmlsZV9ieV9uYW1l KGNvbnN0IGNoYXIgKik7Cisrc3RhdGljIEN2c0ZpbGUgKiBwYXJzZV9yY3NfZmlsZShjb25zdCBj aGFyICopOworK3N0YXRpYyBDdnNGaWxlICogcGFyc2Vfd29ya2luZ19maWxlKGNvbnN0IGNoYXIg Kik7Cisgc3RhdGljIEN2c0ZpbGVSZXZpc2lvbiAqIHBhcnNlX3JldmlzaW9uKEN2c0ZpbGUgKiBm aWxlLCBjaGFyICogcmV2X3N0cik7Cisgc3RhdGljIHZvaWQgYXNzaWduX3ByZV9yZXZpc2lvbihQ YXRjaFNldE1lbWJlciAqLCBDdnNGaWxlUmV2aXNpb24gKiByZXYpOworIHN0YXRpYyB2b2lkIGNo ZWNrX3ByaW50X3BhdGNoX3NldChQYXRjaFNldCAqKTsKK0BAIC0xNDMsOCArMTQ5LDEwIEBACisg c3RhdGljIGludCBjaGVja19yZXZfZnVuayhQYXRjaFNldCAqLCBDdnNGaWxlUmV2aXNpb24gKik7 Cisgc3RhdGljIEN2c0ZpbGVSZXZpc2lvbiAqIHJldl9mb2xsb3dfYnJhbmNoKEN2c0ZpbGVSZXZp c2lvbiAqLCBjb25zdCBjaGFyICopOworIHN0YXRpYyBpbnQgYmVmb3JlX3RhZyhDdnNGaWxlUmV2 aXNpb24gKiByZXYsIGNvbnN0IGNoYXIgKiB0YWcpOworLXN0YXRpYyB2b2lkIGRldGVybWluZV9i cmFuY2hfYW5jZXN0b3IoUGF0Y2hTZXQgKiBwcywgUGF0Y2hTZXQgKiBoZWFkX3BzKTsKKytzdGF0 aWMgdm9pZCBkZXRlcm1pbmVfYnJhbmNoX2FuY2VzdG9yKGNvbnN0IFBhdGNoU2V0ICogcHMsIFBh dGNoU2V0ICogaGVhZF9wcyk7Cisgc3RhdGljIHZvaWQgaGFuZGxlX2NvbGxpc2lvbnMoKTsKKytz dGF0aWMgdm9pZCBmaW5kX2JyYW5jaF9wYXJlbnQoUGF0Y2hTZXQgKnBzKTsKKytzdGF0aWMgaW50 IGlzX2FuY2VzdG9yX3Jldihjb25zdCBjaGFyICpyZXYxLCBjb25zdCBjaGFyICpyZXYyKTsKKyAK KyBpbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQorIHsKK0BAIC0xODEsNiArMTg5LDcg QEAKKyAgICAgYnJhbmNoX2hlYWRzID0gY3JlYXRlX2hhc2hfdGFibGUoMTAyMyk7CisgICAgIElO SVRfTElTVF9IRUFEKCZhbGxfcGF0Y2hfc2V0cyk7CisgICAgIElOSVRfTElTVF9IRUFEKCZjb2xs aXNpb25zKTsKKysgICAgSU5JVF9MSVNUX0hFQUQoJmFsbF9icmFuY2hlcyk7CisgCisgICAgIC8q IHRoaXMgcGFyc2VzIHNvbWUgb2YgdGhlIENWUy8gZmlsZXMsIGFuZCBpbml0aWFsaXplcworICAg ICAgKiB0aGUgcmVwb3NpdG9yeV9wYXRoIGFuZCBvdGhlciB2YXJpYWJsZXMgCitAQCAtMjYwLDEy ICsyNjksMTMgQEAKKyB7CisgICAgIEZJTEUgKiBjdnNmcDsKKyAgICAgY2hhciBidWZmW0JVRlNJ Wl07CistICAgIGludCBzdGF0ZSA9IE5FRURfRklMRTsKKysgICAgaW50IHN0YXRlID0gTkVFRF9S Q1NfRklMRTsKKyAgICAgQ3ZzRmlsZSAqIGZpbGUgPSBOVUxMOworICAgICBQYXRjaFNldE1lbWJl ciAqIHBzbSA9IE5VTEw7CisgICAgIGNoYXIgZGF0ZWJ1ZmZbMjBdOworICAgICBjaGFyIGF1dGhi dWZmW0FVVEhfU1RSX01BWF07CistICAgIGNoYXIgbG9nYnVmZltMT0dfU1RSX01BWCArIDFdOwor KyAgICBpbnQgbG9nYnVmZmxlbiA9IExPR19TVFJfTUFYICsgMTsKKysgICAgY2hhciAqIGxvZ2J1 ZmYgPSBtYWxsb2MobG9nYnVmZmxlbik7CisgICAgIGludCBsb2dsZW4gPSAwOworICAgICBpbnQg aGF2ZV9sb2cgPSAwOworICAgICBjaGFyIGNtZFtCVUZTSVpdOworQEAgLTI3Myw2ICsyODMsMTIg QEAKKyAgICAgY2hhciB1c2VfcmVwX2J1ZmZbUEFUSF9NQVhdOworICAgICBjaGFyICogbHR5cGU7 CisgCisrICAgIGlmIChsb2didWZmID09IE5VTEwpCisrICAgIHsKKysJZGVidWcoREVCVUdfU1lT RVJST1IsICJjb3VsZCBub3QgbWFsbG9jICVkIGJ5dGVzIGZvciBsb2didWZmIGluIGxvYWRfZnJv bV9jdnMiLCBsb2didWZmbGVuKTsKKysJZXhpdCgxKTsKKysgICAgfQorKworICAgICBpZiAoIW5v X3Jsb2cgJiYgIXRlc3RfbG9nX2ZpbGUgJiYgY3ZzX2NoZWNrX2NhcChDQVBfSEFWRV9STE9HKSkK KyAgICAgeworIAlsdHlwZSA9ICJybG9nIjsKK0BAIC0yOTgsMTIgKzMxNCwxMiBAQAorIAkgKiB3 aGljaCBpcyBuZWNlc3NhcnkgdG8gZmlsbCBpbiB0aGUgcHJlX3JldiBzdHVmZiBmb3IgYSAKKyAJ ICogUGF0Y2hTZXRNZW1iZXIKKyAJICovCistCXNucHJpbnRmKGNtZCwgQlVGU0laLCAiY3ZzICVz ICVzICVzIC1kICclczw7JXMnICVzIiwgY29tcHJlc3NfYXJnLCBub3JjLCBsdHlwZSwgZGF0ZV9z dHIsIGRhdGVfc3RyLCB1c2VfcmVwX2J1ZmYpOworKwlzbnByaW50ZihjbWQsIEJVRlNJWiwgImN2 cyAlcyAlcyAtcSAlcyAtZCAnJXM8OyVzJyAlcyIsIGNvbXByZXNzX2FyZywgbm9yYywgbHR5cGUs IGRhdGVfc3RyLCBkYXRlX3N0ciwgdXNlX3JlcF9idWZmKTsKKyAgICAgfQorICAgICBlbHNlCisg ICAgIHsKKyAJZGF0ZV9zdHJbMF0gPSAwOworLQlzbnByaW50ZihjbWQsIEJVRlNJWiwgImN2cyAl cyAlcyAlcyAlcyIsIGNvbXByZXNzX2FyZywgbm9yYywgbHR5cGUsIHVzZV9yZXBfYnVmZik7Cisr CXNucHJpbnRmKGNtZCwgQlVGU0laLCAiY3ZzICVzICVzIC1xICVzICVzIiwgY29tcHJlc3NfYXJn LCBub3JjLCBsdHlwZSwgdXNlX3JlcF9idWZmKTsKKyAgICAgfQorICAgICAKKyAgICAgZGVidWco REVCVUdfU1RBVFVTLCAiKioqKioqKiBVU0lORyBDTUQgJXMiLCBjbWQpOworQEAgLTMzOSwxMCAr MzU1LDI2IEBACisgCisgCXN3aXRjaChzdGF0ZSkKKyAJeworLQljYXNlIE5FRURfRklMRToKKy0J ICAgIGlmIChzdHJuY21wKGJ1ZmYsICJSQ1MgZmlsZSIsIDgpID09IDAgJiYgKGZpbGUgPSBwYXJz ZV9maWxlKGJ1ZmYpKSkKKysJY2FzZSBORUVEX1JDU19GSUxFOgorKwkgICAgaWYgKHN0cm5jbXAo YnVmZiwgIlJDUyBmaWxlIiwgOCkgPT0gMCkgeworKyAgICAgICAgICAgICAgaWYgKChmaWxlID0g cGFyc2VfcmNzX2ZpbGUoYnVmZikpICE9IE5VTEwpCisgCQlzdGF0ZSA9IE5FRURfU1lNUzsKKysg ICAgICAgICAgICAgIGVsc2UKKysgICAgICAgICAgICAgICAgc3RhdGUgPSBORUVEX1dPUktJTkdf RklMRTsKKysgICAgICAgICAgICB9CisgCSAgICBicmVhazsKKysJY2FzZSBORUVEX1dPUktJTkdf RklMRToKKysJICAgIGlmIChzdHJuY21wKGJ1ZmYsICJXb3JraW5nIGZpbGUiLCAxMikgPT0gMCkg eworKyAgICAgICAgICAgICAgaWYgKChmaWxlID0gcGFyc2Vfd29ya2luZ19maWxlKGJ1ZmYpKSkK KysJCXN0YXRlID0gTkVFRF9TWU1TOworKyAgICAgICAgICAgICAgZWxzZQorKyAgICAgICAgICAg ICAgICBzdGF0ZSA9IE5FRURfUkNTX0ZJTEU7CisrCQlicmVhazsKKysJICAgIH0gZWxzZSB7Cisr ICAgICAgICAgICAgICAvLyBXb3JraW5nIGZpbGUgY29tZSBqdXN0IGFmdGVyIFJDUyBmaWxlLiBT byByZXNldCBzdGF0ZSBpZiBpdCB3YXMgbm90IGZvdW5kCisrICAgICAgICAgICAgICBzdGF0ZSA9 IE5FRURfUkNTX0ZJTEU7CisrICAgICAgICAgICAgfQorKyAgICAgICAgICAgIGJyZWFrOworIAlj YXNlIE5FRURfU1lNUzoKKyAJICAgIGlmIChzdHJuY21wKGJ1ZmYsICJzeW1ib2xpYyBuYW1lczoi LCAxNSkgPT0gMCkKKyAJCXN0YXRlID0gTkVFRF9FT1M7CitAQCAtNDcxLDcgKzUwMyw3IEBACisg CQloYXZlX2xvZyA9IDA7CisgCQlwc20gPSBOVUxMOworIAkJZmlsZSA9IE5VTEw7CistCQlzdGF0 ZSA9IE5FRURfRklMRTsKKysJCXN0YXRlID0gTkVFRF9SQ1NfRklMRTsKKyAJICAgIH0KKyAJICAg IGVsc2UKKyAJICAgIHsKK0BAIC00ODAsMjQgKzUxMiwyMiBAQAorIAkJICovCisgCQlpZiAoaGF2 ZV9sb2cgfHwgIWlzX3JldmlzaW9uX21ldGFkYXRhKGJ1ZmYpKQorIAkJeworLQkJICAgIC8qIGlm IHRoZSBsb2cgYnVmZmVyIGlzIGZ1bGwsIHRoYXQncyBpdC4gIAorLQkJICAgICAqIAorLQkJICAg ICAqIEFsc28sIHJlYWQgbGluZXMgKGZnZXRzKSBhbHdheXMgaGF2ZSBcbiBpbiB0aGVtCistCQkg ICAgICogd2hpY2ggd2UgY291bnQgb24uICBTbyBpZiB0cnVuY2F0aW9uIGhhcHBlbnMsCistCQkg ICAgICogYmUgY2FyZWZ1bCB0byBwdXQgYSBcbiBvbi4KKy0JCSAgICAgKiAKKy0JCSAgICAgKiBC dWZmZXIgaGFzIExPR19TVFJfTUFYICsgMSBmb3Igcm9vbSBmb3IgXDAgaWYKKy0JCSAgICAgKiBu ZWNlc3NhcnkKKy0JCSAgICAgKi8KKy0JCSAgICBpZiAobG9nbGVuIDwgTE9HX1NUUl9NQVgpCisr CQkgICAgLyogSWYgdGhlIGxvZyBidWZmZXIgaXMgZnVsbCwgdHJ5IHRvIHJlYWxsb2NhdGUgbW9y ZS4gKi8KKysJCSAgICBpZiAobG9nbGVuIDwgbG9nYnVmZmxlbikKKyAJCSAgICB7CisgCQkJaW50 IGxlbiA9IHN0cmxlbihidWZmKTsKKyAJCQkKKy0JCQlpZiAobGVuID49IExPR19TVFJfTUFYIC0g bG9nbGVuKQorKwkJCWlmIChsZW4gPj0gbG9nYnVmZmxlbiAtIGxvZ2xlbikKKyAJCQl7CistCQkJ ICAgIGRlYnVnKERFQlVHX0FQUE1TRzEsICJXQVJOSU5HOiBtYXhpbXVtIGxvZyBsZW5ndGggZXhj ZWVkZWQsIHRydW5jYXRpbmcgbG9nIik7CistCQkJICAgIGxlbiA9IExPR19TVFJfTUFYIC0gbG9n bGVuOworLQkJCSAgICBidWZmW2xlbiAtIDFdID0gJ1xuJzsKKysJCQkgICAgZGVidWcoREVCVUdf U1RBVFVTLCAicmVhbGxvY2F0aW5nIGxvZ2J1ZmZsZW4gdG8gJWQgYnl0ZXMgZm9yIGZpbGUgJXMi LCBsb2didWZmbGVuLCBmaWxlLT5maWxlbmFtZSk7CisrCQkJICAgIGxvZ2J1ZmZsZW4gKz0gKGxl biA+PSBMT0dfU1RSX01BWCA/IChsZW4rMSkgOiBMT0dfU1RSX01BWCk7CisrCQkJICAgIGNoYXIg KiBuZXdsb2didWZmID0gcmVhbGxvYyhsb2didWZmLCBsb2didWZmbGVuKTsKKysJCQkgICAgaWYg KG5ld2xvZ2J1ZmYgPT0gTlVMTCkKKysJCQkgICAgeworKwkJCQlkZWJ1ZyhERUJVR19TWVNFUlJP UiwgImNvdWxkIG5vdCByZWFsbG9jICVkIGJ5dGVzIGZvciBsb2didWZmIGluIGxvYWRfZnJvbV9j dnMiLCBsb2didWZmbGVuKTsKKysJCQkJZXhpdCgxKTsKKysJCQkgICAgfQorKwkJCSAgICBsb2di dWZmID0gbmV3bG9nYnVmZjsKKyAJCQl9CisgCisgCQkJZGVidWcoREVCVUdfU1RBVFVTLCAiYXBw ZW5kaW5nICVzIHRvIGxvZyIsIGJ1ZmYpOworQEAgLTUyNCw3ICs1NTQsNyBAQAorIAlleGl0KDEp OworICAgICB9CisgCistICAgIGlmIChzdGF0ZSAhPSBORUVEX0ZJTEUpCisrICAgIGlmIChzdGF0 ZSAhPSBORUVEX1JDU19GSUxFKQorICAgICB7CisgCWRlYnVnKERFQlVHX0FQUEVSUk9SLCAiRXJy b3I6IExvZyBmaWxlIHBhcnNpbmcgZXJyb3IuICglZCkgIFVzZSAtdiB0byBkZWJ1ZyIsIHN0YXRl KTsKKyAJZXhpdCgxKTsKK0BAIC0xMDM4LDggKzEwNjgsOCBAQAorICAgICAgKgorICAgICAgKiBO T1RFOiBiZWNhdXNlIG9mIHNvbWUgYml6YXJyZSAnZmVhdHVyZScgaW4gY3ZzLCB3aGVuICdybG9n JyBpcyB1c2VkCisgICAgICAqIChpbnN0ZWFkIG9mIGxvZykgaXQgZ2l2ZXMgdGhlICdyZWFsJyBS Q1MgZmlsZSBwYXRoLCB3aGljaCBjYW4gYmUgZGlmZmVyZW50CistICAgICAqIGZyb20gdGhlICdu b21pbmFsJyByZXBvc2l0b3J5IHBhdGggYmVjYXVzZSBvZiBzeW1saW5rcyBpbiB0aGUgc2VydmVy IGFuZCAKKy0gICAgICogdGhlIGxpa2UuICBTZWUgYWxzbyB0aGUgJ3BhcnNlX2ZpbGUnIHJvdXRp bmUKKysgICAgICogZnJvbSB0aGUgJ25vbWluYWwnIHJlcG9zaXRvcnkgcGF0aCBiZWNhdXNlIG9m IHN5bWxpbmtzIGluIHRoZSBzZXJ2ZXIgYW5kCisrICAgICAqIHRoZSBsaWtlLiAgU2VlIGFsc28g dGhlICdwYXJzZV9yY3NfZmlsZScgcm91dGluZQorICAgICAgKi8KKyAgICAgc3RyaXBfcGF0aF9s ZW4gPSBzbnByaW50ZihzdHJpcF9wYXRoLCBQQVRIX01BWCwgIiVzLyVzLyIsIHAsIHJlcG9zaXRv cnlfcGF0aCk7CisgCitAQCAtMTA1Miw5ICsxMDgyLDggQEAKKyAgICAgZGVidWcoREVCVUdfU1RB VFVTLCAic3RyaXBfcGF0aDogJXMiLCBzdHJpcF9wYXRoKTsKKyB9CisgCistc3RhdGljIEN2c0Zp bGUgKiBwYXJzZV9maWxlKGNvbnN0IGNoYXIgKiBidWZmKQorK3N0YXRpYyBDdnNGaWxlICogcGFy c2VfcmNzX2ZpbGUoY29uc3QgY2hhciAqIGJ1ZmYpCisgeworLSAgICBDdnNGaWxlICogcmV0dmFs OworICAgICBjaGFyIGZuW1BBVEhfTUFYXTsKKyAgICAgaW50IGxlbiA9IHN0cmxlbihidWZmICsg MTApOworICAgICBjaGFyICogcDsKK0BAIC0xMTI5LDYgKzExNTgsMjggQEAKKyAKKyAgICAgZGVi dWcoREVCVUdfU1RBVFVTLCAic3RyaXBwZWQgZmlsZW5hbWUgJXMiLCBmbik7CisgCisrICAgIHJl dHVybiBidWlsZF9maWxlX2J5X25hbWUoZm4pOworK30KKysKKytzdGF0aWMgQ3ZzRmlsZSAqIHBh cnNlX3dvcmtpbmdfZmlsZShjb25zdCBjaGFyICogYnVmZikKKyt7CisrICAgIGNoYXIgZm5bUEFU SF9NQVhdOworKyAgICBpbnQgbGVuID0gc3RybGVuKGJ1ZmYgKyAxNCk7CisrCisrICAgIC8qIGNo b3AgdGhlICJMRiIgKi8KKysgICAgbGVuIC09IDE7CisrICAgIG1lbWNweShmbiwgYnVmZiArIDE0 LCBsZW4pOworKyAgICBmbltsZW5dID0gMDsKKysKKysgICAgZGVidWcoREVCVUdfU1RBVFVTLCAi d29ya2luZyBmaWxlbmFtZSAlcyIsIGZuKTsKKysKKysgICAgcmV0dXJuIGJ1aWxkX2ZpbGVfYnlf bmFtZShmbik7CisrfQorKworK3N0YXRpYyBDdnNGaWxlICogYnVpbGRfZmlsZV9ieV9uYW1lKGNv bnN0IGNoYXIgKiBmbikKKyt7CisrICAgIEN2c0ZpbGUgKiByZXR2YWw7CisrCisgICAgIHJldHZh bCA9IChDdnNGaWxlKilnZXRfaGFzaF9vYmplY3QoZmlsZV9oYXNoLCBmbik7CisgCisgICAgIGlm ICghcmV0dmFsKQorQEAgLTEyNTksNiArMTMxMCwyOSBAQAorICAgICByZXR1cm4gZ2V0X2JyYW5j aF9leHQoYnVmZiwgcmV2LCBOVUxMKTsKKyB9CisgCisrLyogRG9lc24ndCBoYXZlIHRvIGhhbmRs ZSBtYWdpYyBicmFuY2hlcyBiZWNhdXNlIHBhcnNlX3N5bSBhbHJlYWR5IGRpZC4gKi8KKytzdGF0 aWMgaW50IGlzX2FuY2VzdG9yX3Jldihjb25zdCBjaGFyICpyZXYxLCBjb25zdCBjaGFyICpyZXYy KQorK3sKKysgICAgY2hhciBiMVtSRVZfU1RSX01BWF0sIGIyW1JFVl9TVFJfTUFYXTsKKysgICAg aW50IGxlbjEgPSBzdHJsZW4ocmV2MSk7CisrICAgIGludCBsZW4yID0gc3RybGVuKHJldjIpOwor KyAgICBpbnQgbGVhZjEsIGxlYWYyOworKworKyAgICBpZiAobGVuMSA+IGxlbjIpCisrICAgICAg ICByZXR1cm4gMDsKKysKKysgICAgaWYgKHN0cm5jbXAocmV2MSwgcmV2MiwgbGVuMSkgPT0gMCB8 fCBzdHJjbXAocmV2MSwgIklOSVRJQUwiKSA9PSAwKQorKyAgICAgICAgcmV0dXJuIDE7CisrCisr ICAgIGlmICghZ2V0X2JyYW5jaF9leHQoYjEsIHJldjEsICZsZWFmMSkgfHwgIWdldF9icmFuY2hf ZXh0KGIyLCByZXYyLCAmbGVhZjIpKQorKyAgICAgICAgcmV0dXJuIDA7CisrCisrICAgIGlmIChz dHJjbXAoYjEsIGIyKSA9PSAwICYmIGxlYWYyID49IGxlYWYxKQorKyAgICAgICAgcmV0dXJuIDE7 CisrCisrICAgIHJldHVybiAwOworK30KKysKKyAvKiAKKyAgKiB0aGUgZ29hbCBpZiB0aGlzIGZ1 bmN0aW9uIGlzIHRvIGRldGVybWluZSB3aGF0IHJldmlzaW9uIHRvIGFzc2lnbiB0bworICAqIHRo ZSBwc20tPnByZV9yZXYgZmllbGQuICB1c3VhbGx5LCB0aGUgbG9nIGZpbGUgaXMgc3RyaWN0bHkg CitAQCAtMTQ1NCw3ICsxNTI4LDE4IEBACisgICAgIHByaW50ZigiQnJhbmNoOiAlc1xuIiwgcHMt PmJyYW5jaCk7CisgICAgIGlmIChwcy0+YW5jZXN0b3JfYnJhbmNoKQorIAlwcmludGYoIkFuY2Vz dG9yIGJyYW5jaDogJXNcbiIsIHBzLT5hbmNlc3Rvcl9icmFuY2gpOworLSAgICBwcmludGYoIlRh ZzogJXMgJXNcbiIsIHBzLT50YWcgPyBwcy0+dGFnIDogIihub25lKSIsIHRhZ19mbGFnX2Rlc2Ny W3BzLT50YWdfZmxhZ3NdKTsKKysgICAgeworKwlwcmludGYoIlRhZ3M6Iik7CisrCXN0cnVjdCBs aXN0X2hlYWQgKiB0YWdsOworKwlmb3IgKHRhZ2wgPSBwcy0+dGFncy5uZXh0OyB0YWdsICE9ICZw cy0+dGFnczsgdGFnbCA9IHRhZ2wtPm5leHQpCisrCXsKKysgICAgICAgICAgICBUYWdOYW1lKiB0 YWcgPSBsaXN0X2VudHJ5ICh0YWdsLCBUYWdOYW1lLCBsaW5rKTsKKysKKysJICAgIHByaW50Zigi ICVzICVzJXMiLCB0YWctPm5hbWUsIHRhZ19mbGFnX2Rlc2NyW3RhZy0+ZmxhZ3NdLAorKwkJICAg KHRhZ2wtPm5leHQgPT0gJnBzLT50YWdzKSA/ICIiIDogIiwiKTsKKysJfQorKwlwcmludGYoIlxu Iik7CisrICAgIH0KKyAgICAgcHJpbnRmKCJMb2c6XG4lc1xuIiwgcHMtPmRlc2NyKTsKKyAgICAg cHJpbnRmKCJNZW1iZXJzOiBcbiIpOworIAorQEAgLTE0OTksMTEgKzE1ODQsMTUgQEAKKyAJICAg IFBhdGNoU2V0ICogaGVhZF9wcyA9IChQYXRjaFNldCopZ2V0X2hhc2hfb2JqZWN0KGJyYW5jaF9o ZWFkcywgcHMtPmJyYW5jaCk7CisgCSAgICBpZiAoIWhlYWRfcHMpIAorIAkgICAgeworKyAgICAg ICAgICAgICAgICBUYWcgKnRhZzsKKyAJCWhlYWRfcHMgPSBwczsKKyAJCXB1dF9oYXNoX29iamVj dChicmFuY2hfaGVhZHMsIHBzLT5icmFuY2gsIGhlYWRfcHMpOworKyAgICAgICAgICAgICAgICBm aW5kX2JyYW5jaF9wYXJlbnQocHMpOworKyAgICAgICAgICAgICAgICB0YWcgPSAoVGFnKiltYWxs b2Moc2l6ZW9mKCp0YWcpKTsKKysgICAgICAgICAgICAgICAgdGFnLT50YWcgPSBwcy0+YnJhbmNo OworKyAgICAgICAgICAgICAgICAvKiBUaGlzIGlzIG91ciBvd24gcHJpdmF0ZSB0YWcgbGlzdCwg c28gd2UgdXNlIGdsb2JhbF9saW5rLiovCisrICAgICAgICAgICAgICAgIGxpc3RfYWRkKCZ0YWct Pmdsb2JhbF9saW5rLCAgJmFsbF9icmFuY2hlcyk7CisgCSAgICB9CistCSAgICAKKy0JICAgIGRl dGVybWluZV9icmFuY2hfYW5jZXN0b3IocHMsIGhlYWRfcHMpOworIAl9CisgICAgIH0KKyAgICAg ZWxzZQorQEAgLTE2NjIsMTQgKzE3NTEsMTQgQEAKKyAgICAgICoga25vdyB0aGF0IGluc2VydGlv bnMgYXJlIHVuaXF1ZSBhdCB0aGlzIHBvaW50LgorICAgICAgKi8KKyAKKy0gICAgZGlmZiA9IHBz MS0+ZGF0ZSAtIHBzMi0+ZGF0ZTsKKy0gICAgaWYgKGRpZmYpCistCXJldHVybiAoZGlmZiA8IDAp ID8gLTEgOiAxOworLQorICAgICByZXQgPSBjb21wYXJlX3BhdGNoX3NldHNfYnlfbWVtYmVycyhw czEsIHBzMik7CisgICAgIGlmIChyZXQpCisgCXJldHVybiByZXQ7CisgCisrICAgIGRpZmYgPSBw czEtPmRhdGUgLSBwczItPmRhdGU7CisrICAgIGlmIChkaWZmKQorKwlyZXR1cm4gKGRpZmYgPCAw KSA/IC0xIDogMTsKKysKKyAgICAgcmV0ID0gc3RyY21wKHBzMS0+YXV0aG9yLCBwczItPmF1dGhv cik7CisgICAgIGlmIChyZXQpCisgCXJldHVybiByZXQ7CitAQCAtMjAyNCw4ICsyMTEzLDcgQEAK KyAJcHMtPm1heF9kYXRlID0gMDsKKyAJcHMtPmRlc2NyID0gTlVMTDsKKyAJcHMtPmF1dGhvciA9 IE5VTEw7CistCXBzLT50YWcgPSBOVUxMOworLQlwcy0+dGFnX2ZsYWdzID0gMDsKKysJSU5JVF9M SVNUX0hFQUQoJnBzLT50YWdzKTsKKyAJcHMtPmJyYW5jaF9hZGQgPSAwOworIAlwcy0+ZnVua19m YWN0b3IgPSAwOworIAlwcy0+YW5jZXN0b3JfYnJhbmNoID0gTlVMTDsKK0BAIC0yMTA0LDYgKzIx OTIsMTEgQEAKKyAgICAgCisgICAgIGlmICghZ2V0X2JyYW5jaF9leHQocmV2LCBlb3QsICZsZWFm KSkKKyAgICAgeworKwlpZiAoc3RyY21wKHRhZywgIlRSVU5LIikgPT0gMCkKKysJeworKwkgICAg ZGVidWcoREVCVUdfU1RBVFVTLCAiaWdub3JpbmcgdGhlIFRSVU5LIGJyYW5jaC90YWciKTsKKysJ ICAgIHJldHVybjsKKysJfQorIAlkZWJ1ZyhERUJVR19BUFBFUlJPUiwgIm1hbGZvcm1lZCByZXZp c2lvbiIpOworIAlleGl0KDEpOworICAgICB9CitAQCAtMjI1NCwxNCArMjM0NywxOSBAQAorIAkg ICAgcmV0dXJuOworIAl9CisgCistCXBzLT50YWcgPSBzeW0tPnRhZzsKKysJeworKwkgICAgVGFn TmFtZSogdGFnbmFtZSA9IChUYWdOYW1lKiltYWxsb2Moc2l6ZW9mKFRhZ05hbWUpKTsKKysJICAg IHRhZ25hbWUtPm5hbWUgPSBzeW0tPnRhZzsKKysJICAgIHRhZ25hbWUtPmZsYWdzID0gMDsKKysJ ICAgIGxpc3RfYWRkKCZ0YWduYW1lLT5saW5rLCAmcHMtPnRhZ3MpOworKwl9CisgCisgCS8qIGNo ZWNrIGlmIHRoaXMgcHMgaXMgb25lIG9mIHRoZSAnLXInIHBhdGNoc2V0cyAqLworLQlpZiAocmVz dHJpY3RfdGFnX3N0YXJ0ICYmIHN0cmNtcChyZXN0cmljdF90YWdfc3RhcnQsIHBzLT50YWcpID09 IDApCisrCWlmIChyZXN0cmljdF90YWdfc3RhcnQgJiYgc3RyY21wKHJlc3RyaWN0X3RhZ19zdGFy dCwgc3ltLT50YWcpID09IDApCisgCSAgICByZXN0cmljdF90YWdfcHNfc3RhcnQgPSBwcy0+cHNp ZDsKKyAKKyAJLyogdGhlIHNlY29uZCAtciBpbXBsaWVzIC1iICovCistCWlmIChyZXN0cmljdF90 YWdfZW5kICYmIHN0cmNtcChyZXN0cmljdF90YWdfZW5kLCBwcy0+dGFnKSA9PSAwKQorKwlpZiAo cmVzdHJpY3RfdGFnX2VuZCAmJiBzdHJjbXAocmVzdHJpY3RfdGFnX2VuZCwgc3ltLT50YWcpID09 IDApCisgCXsKKyAJICAgIHJlc3RyaWN0X3RhZ19wc19lbmQgPSBwcy0+cHNpZDsKKyAKK0BAIC0y MzA2LDcgKzI0MDQsOCBAQAorIAkJaW50IGZsYWcgPSBjaGVja19yZXZfZnVuayhwcywgbmV4dF9y ZXYpOworIAkJZGVidWcoREVCVUdfU1RBVFVTLCAiZmlsZSAlcyByZXZpc2lvbiAlcyB0YWcgJXM6 IFRBRyBWSU9MQVRJT04gJXMiLAorIAkJICAgICAgcmV2LT5maWxlLT5maWxlbmFtZSwgcmV2LT5y ZXYsIHN5bS0+dGFnLCB0YWdfZmxhZ19kZXNjcltmbGFnXSk7CistCQlwcy0+dGFnX2ZsYWdzIHw9 IGZsYWc7CisrCQkvKiBGSVhNRTogdXNpbmcgdGFncy5uZXh0IGlzIHNvbWV3aGF0IGtsdWRneSAq LworKwkJbGlzdF9lbnRyeShwcy0+dGFncy5uZXh0LCBUYWdOYW1lLCBsaW5rKS0+ZmxhZ3MgfD0g ZmxhZzsKKyAJICAgIH0KKyAJfQorICAgICB9CitAQCAtMjM4NCw4ICsyNDgzLDMxIEBACisgICAg IGZvciAobmV4dCA9IHBzLT5tZW1iZXJzLm5leHQ7IG5leHQgIT0gJnBzLT5tZW1iZXJzOyBuZXh0 ID0gbmV4dC0+bmV4dCkgCisgICAgIHsKKyAJUGF0Y2hTZXRNZW1iZXIgKiBtID0gbGlzdF9lbnRy eShuZXh0LCBQYXRjaFNldE1lbWJlciwgbGluayk7CistCWlmIChtLT5maWxlID09IHBzbS0+Zmls ZSAmJiBwcy0+Y29sbGlzaW9uX2xpbmsubmV4dCA9PSBOVUxMKSAKKy0JCWxpc3RfYWRkKCZwcy0+ Y29sbGlzaW9uX2xpbmssICZjb2xsaXNpb25zKTsKKysJaWYgKG0tPmZpbGUgPT0gcHNtLT5maWxl KSB7CisrCQlpbnQgb3JkZXIgPSBjb21wYXJlX3Jldl9zdHJpbmdzKHBzbS0+cG9zdF9yZXYtPnJl diwgbS0+cG9zdF9yZXYtPnJldik7CisrCisrCQkvKgorKwkJICogU2FtZSByZXZpc2lvbiB0b28/ IEFkZCBpdCB0byB0aGUgY29sbGlzaW9uIGxpc3QKKysJCSAqIGlmIGl0IGlzbid0IGFscmVhZHku CisrCQkgKi8KKysJCWlmICghb3JkZXIpIHsKKysJCQlpZiAocHMtPmNvbGxpc2lvbl9saW5rLm5l eHQgPT0gTlVMTCkKKysJCQkJbGlzdF9hZGQoJnBzLT5jb2xsaXNpb25fbGluaywgJmNvbGxpc2lv bnMpOworKwkJCXJldHVybjsKKysJCX0KKysKKysJCS8qCisrCQkgKiBJZiB0aGlzIGlzIGFuIG9s ZGVyIHJldmlzaW9uIHRoYW4gdGhlIG9uZSB3ZSBhbHJlYWR5IGhhdmUKKysJCSAqIGluIHRoaXMg cGF0Y2hzZXQsIGp1c3QgaWdub3JlIGl0CisrCQkgKi8KKysJCWlmIChvcmRlciA8IDApCisrCQkJ cmV0dXJuOworKworKwkJLyoKKysJCSAqIFRoaXMgaXMgYSBuZXdlciBvbmUsIHJlbW92ZSB0aGUg b2xkIG9uZQorKwkJICovCisrCQlsaXN0X2RlbCgmbS0+bGluayk7CisrCX0KKyAgICAgfQorIAor ICAgICBwc20tPnBzID0gcHM7CitAQCAtMjM5NCw2ICsyNTE2LDggQEAKKyAKKyBzdGF0aWMgdm9p ZCBzZXRfcHNtX2luaXRpYWwoUGF0Y2hTZXRNZW1iZXIgKiBwc20pCisgeworKyAgICBjaGFyICpw OworKworICAgICBwc20tPnByZV9yZXYgPSBOVUxMOworICAgICBpZiAocHNtLT5wb3N0X3Jldi0+ ZGVhZCkKKyAgICAgeworQEAgLTI0MDUsNiArMjUyOSwyNyBAQAorIAkgICAgZGVidWcoREVCVUdf QVBQTVNHMSwgIldBUk5JTkc6IGJyYW5jaF9hZGQgYWxyZWFkeSBzZXQhIik7CisgCXBzbS0+cHMt PmJyYW5jaF9hZGQgPSAxOworICAgICB9CisrCisrICAgIC8qIE1heWJlIHRoaXMgaXMgdGhlIGJl c3QgcGxhY2UgdG8gcmVjb3JkIHdoaWNoIGJyYW5jaCBhIGZpbGUgd2FzCisrICAgICAgIGluaXRp YWxseSBhZGRlZCBvbi4gIEl0IHNlZW1zIHRoZSBtb3N0IGFjY3VyYXRlIHdheSBpcworKyAgICAg ICBhbHNvIHBhaW5mdWwgLSByZWFkIHRoZSBjb21taXQgbWVzc2FnZS4gKi8KKysgICAgaWYgKHBz bS0+ZmlsZS0+aW5pdGlhbF9icmFuY2gpCisrICAgICAgICBkZWJ1ZyhERUJVR19BUFBNU0cxLCAi V0FSTklORzogaW5pdGlhbF9icmFuY2ggYWxyZWFkeSBzZXQhIik7CisrCisrICAgIHBzbS0+Zmls ZS0+aW5pdGlhbF9wcyA9IHBzbS0+cHM7CisrCisrICAgIHAgPSBzdHJzdHIocHNtLT5wcy0+ZGVz Y3IsICIgd2FzIGluaXRpYWxseSBhZGRlZCBvbiBicmFuY2ggIik7CisrICAgIGlmIChwKSB7Cisr ICAgICAgICBjaGFyICogZW5kOworKyAgICAgICAgcCArPSBzdHJsZW4oIiB3YXMgaW5pdGlhbGx5 IGFkZGVkIG9uIGJyYW5jaCAiKTsKKysgICAgICAgIGVuZCA9IHN0cmNocihwLCAnLicpOworKyAg ICAgICAgaWYgKGVuZCkgeworKyAgICAgICAgICAgICplbmQgPSAwOworKyAgICAgICAgICAgIHBz bS0+ZmlsZS0+aW5pdGlhbF9icmFuY2ggPSBnZXRfc3RyaW5nKHApOworKyAgICAgICAgICAgIHJl dHVybjsKKysgICAgICAgIH0KKysgICAgfQorKyAgICBwc20tPmZpbGUtPmluaXRpYWxfYnJhbmNo ID0gcHNtLT5wcy0+YnJhbmNoOworIH0KKyAKKyAvKiAKK0BAIC0yNDE1LDYgKzI1NjAsMTEgQEAK KyB7CisgICAgIGludCByZXR2YWwgPSBUQUdfRlVOS1k7CisgCisrICAgIHN0cnVjdCBsaXN0X2hl YWQgKiB0YWc7CisrICAgIGZvciAodGFnID0gcHMtPnRhZ3MubmV4dDsgdGFnICE9ICZwcy0+dGFn czsgdGFnID0gdGFnLT5uZXh0KQorKyAgICB7CisrICAgICAgICBjaGFyKiB0YWduYW1lID0gbGlz dF9lbnRyeSAoJnRhZywgVGFnTmFtZSwgbGluayktPm5hbWU7CisrCisgICAgIHdoaWxlIChyZXYp CisgICAgIHsKKyAJUGF0Y2hTZXQgKiBuZXh0X3BzID0gcmV2LT5wb3N0X3BzbS0+cHM7CitAQCAt MjQyNyw3ICsyNTc3LDcgQEAKKyAJICAgICAgcHMtPmRhdGUsIG5leHRfcHMtPmRhdGUsIHJldi0+ cmV2LCByZXYtPmJyYW5jaCk7CisgCisgCS8qCistCSAqIElmIHRoZSBwcy0+dGFnIGlzIG9uZSBv ZiB0aGUgdHdvIHBvc3NpYmxlICctcicgdGFncworKwkgKiBJZiB0aGUgdGFnbmFtZSBpcyBvbmUg b2YgdGhlIHR3byBwb3NzaWJsZSAnLXInIHRhZ3MKKyAJICogdGhlbiB0aGUgZnVua3luZXNzIGlz IGV2ZW4gbW9yZSBpbXBvcnRhbnQuCisgCSAqCisgCSAqIEluIHRoZSByZXN0cmljdF90YWdfc3Rh cnQgY2FzZSwgdGhpcyBuZXh0X3BzIGlzIGNocm9ub2xvZ2ljYWxseQorQEAgLTI0MzksOSArMjU4 OSw5IEBACisgCSAqIFN0YXJ0IGFzc3VtaW5nIHRoZSBISURFL1NIT1dfQUxMIGNhc2UsIHdlIHdp bGwgZGV0ZXJtaW5lCisgCSAqIGJlbG93IGlmIHdlIGhhdmUgYSBzcGxpdCBwcyBjYXNlIAorIAkg Ki8KKy0JaWYgKHJlc3RyaWN0X3RhZ19zdGFydCAmJiBzdHJjbXAocHMtPnRhZywgcmVzdHJpY3Rf dGFnX3N0YXJ0KSA9PSAwKQorKwlpZiAocmVzdHJpY3RfdGFnX3N0YXJ0ICYmIHN0cmNtcCh0YWdu YW1lLCByZXN0cmljdF90YWdfc3RhcnQpID09IDApCisgCSAgICBuZXh0X3BzLT5mdW5rX2ZhY3Rv ciA9IEZOS19TSE9XX0FMTDsKKy0JaWYgKHJlc3RyaWN0X3RhZ19lbmQgJiYgc3RyY21wKHBzLT50 YWcsIHJlc3RyaWN0X3RhZ19lbmQpID09IDApCisrCWlmIChyZXN0cmljdF90YWdfZW5kICYmIHN0 cmNtcCh0YWduYW1lLCByZXN0cmljdF90YWdfZW5kKSA9PSAwKQorIAkgICAgbmV4dF9wcy0+ZnVu a19mYWN0b3IgPSBGTktfSElERV9BTEw7CisgCisgCS8qCitAQCAtMjQ1NCw3ICsyNjA0LDcgQEAK KyAJZm9yIChuZXh0ID0gbmV4dF9wcy0+bWVtYmVycy5uZXh0OyBuZXh0ICE9ICZuZXh0X3BzLT5t ZW1iZXJzOyBuZXh0ID0gbmV4dC0+bmV4dCkKKyAJeworIAkgICAgUGF0Y2hTZXRNZW1iZXIgKiBw c20gPSBsaXN0X2VudHJ5KG5leHQsIFBhdGNoU2V0TWVtYmVyLCBsaW5rKTsKKy0JICAgIGlmIChi ZWZvcmVfdGFnKHBzbS0+cG9zdF9yZXYsIHBzLT50YWcpKQorKwkgICAgaWYgKGJlZm9yZV90YWco cHNtLT5wb3N0X3JldiwgdGFnbmFtZSkpCisgCSAgICB7CisgCQlyZXR2YWwgPSBUQUdfSU5WQUxJ RDsKKyAJCS8qIG9ubHkgc2V0IGJhZF9mdW5rIGZvciBvbmUgb2YgdGhlIC1yIHRhZ3MgKi8KK0BA IC0yNDY3LDcgKzI2MTcsNyBAQAorIAkJZGVidWcoREVCVUdfQVBQTVNHMSwgCisgCQkgICAgICAi V0FSTklORzogSW52YWxpZCBQYXRjaFNldCAlZCwgVGFnICVzOlxuIgorIAkJICAgICAgIiAgICAl czolcz1hZnRlciwgJXM6JXM9YmVmb3JlLiBUcmVhdGVkIGFzICdiZWZvcmUnIiwgCistCQkgICAg ICBuZXh0X3BzLT5wc2lkLCBwcy0+dGFnLCAKKysJCSAgICAgIG5leHRfcHMtPnBzaWQsIHRhZ25h bWUsIAorIAkJICAgICAgcmV2LT5maWxlLT5maWxlbmFtZSwgcmV2LT5yZXYsIAorIAkJICAgICAg cHNtLT5wb3N0X3Jldi0+ZmlsZS0+ZmlsZW5hbWUsIHBzbS0+cG9zdF9yZXYtPnJldik7CisgCSAg ICB9CitAQCAtMjQ3NSw2ICsyNjI1LDcgQEAKKyAKKyAJcmV2ID0gcmV2X2ZvbGxvd19icmFuY2go cmV2LCBwcy0+YnJhbmNoKTsKKyAgICAgfQorKyAgICB9CisgCisgICAgIHJldHVybiByZXR2YWw7 CisgfQorQEAgLTI1MzIsNyArMjY4MywxMyBAQAorICAgICB9CisgfQorIAorLXN0YXRpYyB2b2lk IGRldGVybWluZV9icmFuY2hfYW5jZXN0b3IoUGF0Y2hTZXQgKiBwcywgUGF0Y2hTZXQgKiBoZWFk X3BzKQorKy8qIFdoZW4gd2UgdHJhY2sgYW5jZXN0b3IgYnJhbmNoZXMsIHdlIHJ1biBkZXRlcm1p bmVfYnJhbmNoX2FuY2VzdG9yKCkKKysgKiBmb3IgZXZlcnkgcHMgbm90IG9uIEhFQUQuICBCdXQs IHdlIG9ubHkgcmVjb3JkIHRoZSBhbmNlc3RvciBpbgorKyAqIGhlYWRfcHMuICBoZWFkX3BzIGlz IHRoZSBmaXJzdCAoaS5lLiAicm9vdCIpIHBzIG9uIHRoZSBzYW1lIGJyYW5jaCBhcworKyAqIHBz ICh3aGljaCBtYXkgYmUgdGhlIHNhbWUgYXMgcHMpLiAgSW4gb3RoZXIgd29yZHMsIHdlIHJlY29y ZCB0aGUKKysgKiBhbmNlc3RvciBicmFuY2ggaW4gdGhlIGZpcnN0IHBhdGNoIHRoYXQgImJyYW5j aGVkLW9mZiIuCisrICovCisrc3RhdGljIHZvaWQgZGV0ZXJtaW5lX2JyYW5jaF9hbmNlc3Rvcihj b25zdCBQYXRjaFNldCAqIHBzLCBQYXRjaFNldCAqIGhlYWRfcHMpCisgeworICAgICBzdHJ1Y3Qg bGlzdF9oZWFkICogbmV4dDsKKyAgICAgQ3ZzRmlsZVJldmlzaW9uICogcmV2OworQEAgLTI1NzYs NyArMjczMyw3IEBACisgCSAqIG5vdGU6IHJldiBpcyB0aGUgcHJlLWNvbW1pdCByZXZpc2lvbiwg bm90IHRoZSBwb3N0LWNvbW1pdAorIAkgKi8KKyAJaWYgKCFoZWFkX3BzLT5hbmNlc3Rvcl9icmFu Y2gpCistCSAgICBkMSA9IDA7CisrCSAgICBkMSA9IC0xOworIAllbHNlIGlmIChzdHJjbXAocHMt PmJyYW5jaCwgcmV2LT5icmFuY2gpID09IDApCisgCSAgICBjb250aW51ZTsKKyAJZWxzZSBpZiAo c3RyY21wKGhlYWRfcHMtPmFuY2VzdG9yX2JyYW5jaCwgIkhFQUQiKSA9PSAwKQorQEAgLTI1OTks NiArMjc1NiwxNzggQEAKKyAgICAgfQorIH0KKyAKKysvKiBvbmx5IG5lZWRzIHRvIGJlIGNhbGxl ZCBvbmNlIGZvciBlYWNoIG5ldyBicmFuY2ggd2Ugc3RhcnQgKi8KKytzdGF0aWMgdm9pZCBmaW5k X2JyYW5jaF9wYXJlbnQoUGF0Y2hTZXQgKnBzKQorK3sKKysgICAgY29uc3QgY2hhciogY2hpbGQg PSBwcy0+YnJhbmNoOworKyAgICBjaGFyKiBwYXJlbnQ7CisrICAgIHN0cnVjdCBsaXN0X2hlYWQg Km5leHQ7CisrICAgIHN0cnVjdCBoYXNoX2VudHJ5ICogaGVfZmlsZTsKKysgICAgVGFnICp0YWc7 CisrCisrICAgIC8qIFdlIHVzZSB0aGUgJ3Jldicgc3RydWN0IG1lbWJlciB1bmNvbnZlbnRpb25h bGx5OiBhcyBhIGZsYWcgdG8gbWFyaworKyAgICAgICB3aGljaCBicmFuY2hlcyBoYXZlIG5vdCB5 ZXQgYmVlbiBlbGltaW5hdGVkIGZyb20gY29uc2lkZXJhdGlvbi4gKi8KKysKKysgICAgLyogTWFy ayBldmVyeSBicmFuY2ggZm9yIGNvbnNpZGVyYXRpb24uICovCisrICAgIGZvciAobmV4dCA9IGFs bF9icmFuY2hlcy5uZXh0OyBuZXh0ICE9ICZhbGxfYnJhbmNoZXM7IG5leHQgPSBuZXh0LT5uZXh0 KQorKyAgICB7CisrICAgICAgICB0YWcgPSBsaXN0X2VudHJ5KG5leHQsIFRhZywgZ2xvYmFsX2xp bmspOworKyAgICAgICAgdGFnLT5yZXYgPSAoQ3ZzRmlsZVJldmlzaW9uICopIDE7IC8qIGNhc3Qg anVzdCB0byBzaWxlbmNlIGNvbXBpbGVyICovCisrICAgIH0KKysKKysgICAgcmVzZXRfaGFzaF9p dGVyYXRvcihmaWxlX2hhc2gpOworKyAgICB3aGlsZSAoKGhlX2ZpbGUgPSBuZXh0X2hhc2hfZW50 cnkoZmlsZV9oYXNoKSkpCisrICAgIHsKKysJQ3ZzRmlsZSAqZmlsZSA9IChDdnNGaWxlKiloZV9m aWxlLT5oZV9vYmo7CisrCisrICAgICAgICBpZiAoIWZpbGUtPmluaXRpYWxfYnJhbmNoKSB7Cisr ICAgICAgICAgICAgZGVidWcoREVCVUdfQVBQRVJST1IsICJpbnZhbGlkIGluaXRpYWxfYnJhbmNo IGZvciBmaWxlICVzLCBwcm9iYWJseSBmcm9tIG9sZCBjYWNoZSwgcnVuIHdpdGggLXguIiwgZmls ZS0+ZmlsZW5hbWUpOworKyAgICAgICAgICAgIGV4aXQoMSk7CisrICAgICAgICB9CisrCisrICAg ICAgICAvKiBJZiB0aGUgZmlsZSB3YXMgaW50cm9kdWNlZCBsYXRlciB0aGFuIHRoZSBicmFuY2gg cG9pbnQsIHdlCisrICAgICAgICAgICBkb24ndCBjb25zaWRlciBpdC4gIE5PVEU6IHRoaXMgd29u J3QgY2F0Y2ggdGhlIGNhc2Ugd2hlcmUgYQorKyAgICAgICAgICAgZmlsZSBpcyBhZGRlZCB0byBi cmFuY2ggQSwgdGhlbiBsYXRlciBicmFuY2ggQyBicmFuY2hlcyBvZmYKKysgICAgICAgICAgIG9m IGJyYW5jaCBCLCB0aGVuIGJyYW5jaCBBIGlzIG1lcmdlZCBpbnRvIGJyYW5jaCBDLiAgSW4KKysg ICAgICAgICAgIHRoYXQgY2FzZSwgdGhlIGluaXRpYWwgZGF0ZSBmb3IgdGhlIGZpbGUgaXMgZWFy bGllciB0aGFuCisrICAgICAgICAgICB0aGUgcm9vdC1icmFuY2ggcGF0Y2hzZXQsIHNvIHRoZSBh YnNlbmNlIG9mIHRoZSBmaWxlIGZyb20KKysgICAgICAgICAgIGJyYW5jaCBCICpET0VTKiBlbGlt aW5hdGUgQiBmcm9tIGJlaW5nIHRoZSBwYXJlbnQgb2YgQy4gKi8KKysgICAgICAgIGlmIChmaWxl LT5pbml0aWFsX3BzLT5kYXRlID4gcHMtPmRhdGUpCisrICAgICAgICAgICAgY29udGludWU7Cisr CisrICAgICAgICAvKiBJZiB0aGUgZmlsZSB3YXMgYWRkZWQgb24gdGhpcyBicmFuY2gsIHdlIGNh bid0IHVzZSBpdCB0bworKyAgICAgICAgICAgZWxpbWluYXRlIG90aGVyIHBvdGVudGlhbCBwYXJl bnRzIGp1c3QgYmVjYXVzZSB0aGV5IGRvbid0CisrICAgICAgICAgICBoYXZlIHRoaXMgZmlsZS4g Ki8KKysgICAgICAgIGlmIChzdHJjbXAoZmlsZS0+aW5pdGlhbF9icmFuY2gsIGNoaWxkKSA9PSAw KQorKyAgICAgICAgICAgIGNvbnRpbnVlOworKworKyAgICAgICAgLyogSWYgd2UgaGF2ZW4ndCB5 ZXQgc2VlbiB0aGUgYnJhbmNoIHRoYXQgZmlsZSB3YXMgaW5pdGlhbGx5CisrICAgICAgICAgICBh ZGRlZCB0bywgdGhlbiAqdGhhdCogYnJhbmNoIG1heSBiZSBhIGNoaWxkIG9mICp0aGlzKgorKyAg ICAgICAgICAgY2hpbGQuICBJbiB0aGF0IGNhc2UsIHdlIHNob3VsZG4ndCBleHBlY3QgdGhhdCB0 aGlzIGZpbGUgaXMKKysgICAgICAgICAgIG5lY2Vzc2FyaWx5IGFsc28gb24gdGhlIHBhcmVudCBi cmFuY2ggLSBmb3IgdGhlIHNhbWUgcmVhc29uCisrICAgICAgICAgICB3ZSBpZ25vcmUgZmlsZXMg YWRkZWQgb24gdGhlIGNoaWxkIGJyYW5jaCBpbW1lZGlhdGVseS4gKi8KKysgICAgICAgIGlmIChz dHJjbXAoZmlsZS0+aW5pdGlhbF9icmFuY2gsICJIRUFEIikgIT0gMCAmJgorKyAgICAgICAgICAg IE5VTEwgPT0gZ2V0X2hhc2hfb2JqZWN0KGJyYW5jaF9oZWFkcywgZmlsZS0+aW5pdGlhbF9icmFu Y2gpKQorKyAgICAgICAgICAgIGNvbnRpbnVlOworKworKyAgICAgICAgLyogUGljayBhIGJyYW5j aCB0byBjb25zaWRlciAqLworKyAgICAgICAgZm9yIChuZXh0ID0gYWxsX2JyYW5jaGVzLm5leHQ7 IG5leHQgIT0gJmFsbF9icmFuY2hlczsgbmV4dCA9IG5leHQtPm5leHQpCisrICAgICAgICB7Cisr ICAgICAgICAgICAgY2hhciAqY2hpbGRfcmV2LCAqcGFyZW50X3JldjsKKysgICAgICAgICAgICB0 YWcgPSBsaXN0X2VudHJ5KG5leHQsIFRhZywgZ2xvYmFsX2xpbmspOworKyAgICAgICAgICAgIGlm ICghdGFnLT5yZXYpCisrICAgICAgICAgICAgICAgIGNvbnRpbnVlOyAgLyogc2tpcCBicmFuY2hl cyBhbHJlYWR5IGVsaW1pbmF0ZWQgKi8KKysKKysgICAgICAgICAgICBwYXJlbnQgPSB0YWctPnRh ZzsKKysgICAgICAgICAgICBjaGlsZF9yZXYgPSBnZXRfaGFzaF9vYmplY3QoZmlsZS0+YnJhbmNo ZXNfc3ltLCBjaGlsZCk7CisrICAgICAgICAgICAgcGFyZW50X3JldiA9IGdldF9oYXNoX29iamVj dChmaWxlLT5icmFuY2hlc19zeW0sIHBhcmVudCk7CisrICAgICAgICAgICAgaWYgKGNoaWxkX3Jl dikgeworKyAgICAgICAgICAgICAgICBpZiAocGFyZW50X3JldikgeworKyAgICAgICAgICAgICAg ICAgICAgaWYgKCFpc19hbmNlc3Rvcl9yZXYocGFyZW50X3JldiwgY2hpbGRfcmV2KSkgeworKyAg ICAgICAgICAgICAgICAgICAgICAgIHRhZy0+cmV2ID0gTlVMTDsKKysgICAgICAgICAgICAgICAg ICAgICAgICBkZWJ1ZyhERUJVR19TVEFUVVMsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIiVzIG5vdCBwYXJlbnQgb2YgJXM6ICVzIFJFViAlcyB2cy4gJXMiLAorKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHBhcmVudCwgY2hpbGQsIGZpbGUtPmZpbGVuYW1lLCBwYXJlbnRf cmV2LAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoaWxkX3Jldik7CisrICAgICAg ICAgICAgICAgICAgICB9CisrICAgICAgICAgICAgICAgIH0gZWxzZSB7CisrICAgICAgICAgICAg ICAgICAgICAvKiBJZiB0aGlzIGZpbGUgaXMgb24gdGhlIGNoaWxkIGJyYW5jaCBidXQgbm90IG9u CisrICAgICAgICAgICAgICAgICAgICAgICB0aGUgcGFyZW50IGJyYW5jaCwgdGhlbiBpdCdzIG5v dCB0aGUgdHJ1ZQorKyAgICAgICAgICAgICAgICAgICAgICAgcGFyZW50LiAgV0FSTklORzogYXMg Y29tbWVudGVkIGFib3ZlLCB0aGlzIG1heQorKyAgICAgICAgICAgICAgICAgICAgICAgZmFsc2Vs eSBlbGltaW5hdGUgYSBwYXJlbnQgaWYgYSBmaWxlIGFkZGVkIHRvCisrICAgICAgICAgICAgICAg ICAgICAgICBzb21lIG90aGVyIGJyYW5jaCBiZWZvcmUgdGhpcyBjaGlsZCdzIGJyYW5jaAorKyAg ICAgICAgICAgICAgICAgICAgICAgcG9pbnQgaXMgbGF0ZXIgbWVyZ2VkIG9udG8gdGhlIGNoaWxk LiAgVGhhdAorKyAgICAgICAgICAgICAgICAgICAgICAgZmlsZSBtYXkgbm90IGJlIG9uIHRoZSB0 cnVlIHBhcmVudCwgYnV0IHdlCisrICAgICAgICAgICAgICAgICAgICAgICBlbGltaW5hdGUgdGhh dCBwYXJlbnQgYW55d2F5LiBCYWghCisrICAgICAgICAgICAgICAgICAgICAgICBDb3JuZXItY2Fz ZXM/ISAgSG93IG9mdGVuIGRvIHBlb3BsZSBtZXJnZSB3aXRoCisrICAgICAgICAgICAgICAgICAg ICAgICBjaGlsZHJlbiBicmFuY2hlcz8gIEFueXdheSwgdGhpcyBpcyB0b28KKysgICAgICAgICAg ICAgICAgICAgICAgIGVmZmVjdGl2ZSBhdCBlbGltaW5hdGluZyBpbmNvcnJlY3QgcGFyZW50cyB0 bworKyAgICAgICAgICAgICAgICAgICAgICAgaWdub3JlLiAqLworKyAgICAgICAgICAgICAgICAg ICAgdGFnLT5yZXYgPSBOVUxMOworKyAgICAgICAgICAgICAgICAgICAgZGVidWcoREVCVUdfU1RB VFVTLCAiJXMgbm90IHBhcmVudCBvZiAlczogcGFyZW50IG1pc3NpbmcgJXMiLAorKyAgICAgICAg ICAgICAgICAgICAgICAgICAgcGFyZW50LCBjaGlsZCwgZmlsZS0+ZmlsZW5hbWUpOworKyAgICAg ICAgICAgICAgICB9CisrICAgICAgICAgICAgfSBlbHNlIHsKKysgICAgICAgICAgICAgICAgLyog V2hhdCBhYm91dCB0aGUgZmlsZSBvbiB0aGUgcGFyZW50IGJ1dCBub3QgdGhlIGNoaWxkPworKyAg ICAgICAgICAgICAgICAgICBUaGUgZmlsZSBjb3VsZCBoYXZlIGJlZW4gYWRkZWQgdG8gdGhlIHBh cmVudCBsYXRlciB0aGFuCisrICAgICAgICAgICAgICAgICAgIHRoZSBicmFuY2ggcG9pbnQuIEJ1 dCB3ZSBjYXRjaCB0aGF0IGFib3ZlLiAgTW9yZQorKyAgICAgICAgICAgICAgICAgICBpbXBvcnRh bnRseSwgaXQgY291bGQgaGF2ZSBiZWVuIGFkZGVkIHRvIHNvbWUgb3RoZXIKKysgICAgICAgICAg ICAgICAgICAgYnJhbmNoIHRpbWUtd2lzZSBlYXJsaWVyIHRoYW4gdGhlIGJyYW5jaCBwb2ludCwg YW5kCisrICAgICAgICAgICAgICAgICAgIHRoZW4gbWVyZ2VkIG9udG8gdGhpcyBwYXJlbnQgYWZ0 ZXIgdGhlIGJyYW5jaCBwb2ludC4KKysgICAgICAgICAgICAgICAgICAgVGhhdCdzIHRvbyBoYXJk IHRvIGRldGVjdC4gIEFsc28sIHRoZXJlJ3MgdGhlIGV2aWwgb2YKKysgICAgICAgICAgICAgICAg ICAgcGFydGlhbC10cmVlIHRhZ2dpbmcuICBUaGUgbW9zdCBjb21tb24gd2F5IHRoaXMgYXJpc2Vz CisrICAgICAgICAgICAgICAgICAgIGlzIHRoYXQgYSBjaGlsZCBicmFuY2hlcyBvZmYganVzdCBh IHBvcnRpb24gKHVzdWFsbHkgYQorKyAgICAgICAgICAgICAgICAgICBzdWItZGlyZWN0b3J5KSBv ZiB0aGUgdHJlZS4gIEluIHRoYXQgY2FzZSwgbG90cyBvZgorKyAgICAgICAgICAgICAgICAgICBm aWxlcyBhcmUgb24gdGhlIHBhcmVudCBidXQgbm90IG9uIHRoZSBjaGlsZC4gIFNvIHdlJ2xsCisr ICAgICAgICAgICAgICAgICAgIGJlIGxlbmllbnQgYW5kIGxldCB0aGlzIHBvdGVudGlhbCBwYXJl bnQgbGl2ZSBhbm90aGVyCisrICAgICAgICAgICAgICAgICAgIGRheS4gKi8KKysjaWYgMAorKyAg ICAgICAgICAgICAgICAvKiBUT0RPPzogbWF5YmUgYW4gb3B0aW9uYWwgInN0cmljdCIgbW9kZSBj b3VsZCBlbmFibGUKKysgICAgICAgICAgICAgICAgICAgdGhpcywgaWYgdGhlIHVzZXIgaXMgd2ls bGluZyB0byBhc3N1bWUgdGhlcmUgaGF2ZW4ndAorKyAgICAgICAgICAgICAgICAgICBiZWVuIGFu eSBwYXJ0aWFsLXRyZWUgdGFnZ2luZ3MuICovCisrICAgICAgICAgICAgICAgIGlmIChwYXJlbnRf cmV2KSB7CisrICAgICAgICAgICAgICAgICAgICB0YWctPnJldiA9IE5VTEw7CisrICAgICAgICAg ICAgICAgICAgICBkZWJ1ZyhERUJVR19TVEFUVVMsICIlcyBub3QgcGFyZW50IG9mICVzOiBjaGls ZCBtaXNzaW5nICVzIiwKKysgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmVudCwgY2hpbGQs IGZpbGUtPmZpbGVuYW1lKTsKKysgICAgICAgICAgICAgICAgfQorKyNlbmRpZgorKworKyAgICAg ICAgICAgIH0KKysgICAgICAgIH0gLyogZW5kIG9mIGxvb3Agb3ZlciBwb3RlbnRpYWwgcGFyZW50 cyAqLworKyAgICB9CisrCisrICAgIC8qIEFueSByZW1haW5pbmcgYnJhbmNoZXMgYXJlIHBvc3Np YmxlIHBhcmVudHMuIEJ1dCwgaWYgYW55IG9mCisrICAgICAgIHRoZXNlIGJyYW5jaGVzIGFyZSBw YXJlbnRzIG9mIG90aGVyIHBvc3NpYmxlIHBhcmVudHMsIHdlJ2xsCisrICAgICAgIHNheSB0aGV5 J3JlICJncmFuZHBhcmVudHMiIGFuZCBub3QgY29uc2lkZXIgdGhlbSBmb3IKKysgICAgICAgcGFy ZW50aG9vZC4gKi8KKysgICAgZm9yIChuZXh0ID0gYWxsX2JyYW5jaGVzLm5leHQ7IG5leHQgIT0g JmFsbF9icmFuY2hlczsgbmV4dCA9IG5leHQtPm5leHQpCisrICAgIHsKKysgICAgICAgIHN0cnVj dCBsaXN0X2hlYWQgKmo7CisrICAgICAgICB0YWcgPSBsaXN0X2VudHJ5KG5leHQsIFRhZywgZ2xv YmFsX2xpbmspOworKyAgICAgICAgaWYgKCF0YWctPnJldikgY29udGludWU7CisrICAgICAgICBm b3IgKGogPSBhbGxfYnJhbmNoZXMubmV4dDsgaiAhPSAmYWxsX2JyYW5jaGVzOyBqID0gai0+bmV4 dCkKKysgICAgICAgIHsKKysgICAgICAgICAgICBUYWcgKnRhZzIgPSBsaXN0X2VudHJ5KGosIFRh ZywgZ2xvYmFsX2xpbmspOworKyAgICAgICAgICAgIFBhdGNoU2V0ICpyb290X3BzOworKyAgICAg ICAgICAgIGlmICghdGFnMi0+cmV2KSBjb250aW51ZTsKKysgICAgICAgICAgICBpZiAoaiA9PSBu ZXh0KSBjb250aW51ZTsKKysgICAgICAgICAgICByb290X3BzID0gKFBhdGNoU2V0KilnZXRfaGFz aF9vYmplY3QoYnJhbmNoX2hlYWRzLCB0YWcyLT50YWcpOworKyAgICAgICAgICAgIGlmIChyb290 X3BzICYmIHN0cmNtcChyb290X3BzLT5hbmNlc3Rvcl9icmFuY2gsIHRhZy0+dGFnKSA9PSAwKSB7 CisrICAgICAgICAgICAgICAgIHRhZy0+cmV2ID0gTlVMTDsKKysgICAgICAgICAgICAgICAgZGVi dWcoREVCVUdfU1RBVFVTLCAiZWxpbWluYXRlICVzOiBpdCdzIEdSQU5EcGFyZW50IG9mICVzIHZp YSAlcyIsCisrICAgICAgICAgICAgICAgICAgICAgIHRhZy0+dGFnLCBjaGlsZCwgdGFnMi0+dGFn KTsKKysgICAgICAgICAgICAgICAgYnJlYWs7CisrICAgICAgICAgICAgfQorKyAgICAgICAgfQor KyAgICB9CisrCisrICAgIHBhcmVudCA9IE5VTEw7CisrICAgIGRlYnVnKERFQlVHX1NUQVRVUywg IlJlbWFpbmluZyBwYXJlbnRzIGZvciAlczoiLCBjaGlsZCk7CisrICAgIGZvciAobmV4dCA9IGFs bF9icmFuY2hlcy5uZXh0OyBuZXh0ICE9ICZhbGxfYnJhbmNoZXM7IG5leHQgPSBuZXh0LT5uZXh0 KQorKyAgICB7CisrICAgICAgICB0YWcgPSBsaXN0X2VudHJ5KG5leHQsIFRhZywgZ2xvYmFsX2xp bmspOworKyAgICAgICAgaWYgKHRhZy0+cmV2KSB7CisrICAgICAgICAgICAgZGVidWcoREVCVUdf U1RBVFVTLCAiICAgICVzIiwgdGFnLT50YWcpOworKyAgICAgICAgICAgIGlmIChwYXJlbnQpCisr ICAgICAgICAgICAgICAgIGRlYnVnKERFQlVHX1NUQVRVUywgIkFsdGVybmF0aXZlIGFtYmlndW91 cyBwYXJlbnQgb2YgJXM6ICVzIiwKKysgICAgICAgICAgICAgICAgICAgICAgY2hpbGQsIHRhZy0+ dGFnKTsKKysgICAgICAgICAgICBlbHNlCisrICAgICAgICAgICAgICAgIHBhcmVudCA9IHRhZy0+ dGFnOworKyAgICAgICAgfQorKyAgICB9CisrCisrICAgIGlmIChwYXJlbnQpIHsKKysgICAgICAg IGRlYnVnKERFQlVHX1NUQVRVUywgIkFzc2lnbmluZyAlcyBhcyBwYXJlbnQgb2YgJXMiLCBwYXJl bnQsIGNoaWxkKTsKKysgICAgICAgIHBzLT5hbmNlc3Rvcl9icmFuY2ggPSBwYXJlbnQ7CisrICAg IH0gZWxzZSB7CisrICAgICAgICBkZWJ1ZyhERUJVR19TVEFUVVMsICJIRUFEIHBhcmVudCBvZiAl cyBieSBkZWZhdWx0IiwgY2hpbGQpOworKyAgICAgICAgcHMtPmFuY2VzdG9yX2JyYW5jaCA9ICJI RUFEIjsKKysgICAgICAgIC8qIFN0cmljdGx5IHNwZWFraW5nLCB3ZSBkaWRuJ3QgYWN0dWFsbHkg dmVyaWZ5IHRoYXQgSEVBRAorKyAgICAgICAgICAgaXMgYSBwb3NzaWJsZSBwYXJlbnQsIGJ1dCB3 aGF0IGVsc2UgY2FuIHdlIGRvIGlmIHRoZXJlCisrICAgICAgICAgICBhcmUgbm8gb3RoZXIgYnJh bmNoZXMgbGVmdD8gKi8KKysgICAgfQorK30KKysKKyBzdGF0aWMgdm9pZCBoYW5kbGVfY29sbGlz aW9ucygpCisgeworICAgICBzdHJ1Y3QgbGlzdF9oZWFkICpuZXh0OwpkaWZmIC0tZ2l0IGEvZGV2 ZWwvY3ZzcHMtZGV2ZWwvZmlsZXMvcGF0Y2gtY3ZzcHNfdHlwZXMuaCBiL2RldmVsL2N2c3BzLWRl dmVsL2ZpbGVzL3BhdGNoLWN2c3BzX3R5cGVzLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MDAwMDAwMC4uOTdjNWFkMwotLS0gL2Rldi9udWxsCisrKyBiL2RldmVsL2N2c3BzLWRldmVsL2Zp bGVzL3BhdGNoLWN2c3BzX3R5cGVzLmgKQEAgLTAsMCArMSw1MCBAQAorLS0tIGN2c3BzX3R5cGVz Lmgub3JpZwkyMDA4LTAzLTAxIDA2OjUyOjIyLjAwMDAwMDAwMCArMDIwMAorKysrIGN2c3BzX3R5 cGVzLmgJMjAwOC0wMy0wMSAwNjo1MTozNy4wMDAwMDAwMDAgKzAyMDAKK0BAIC04LDcgKzgsNyBA QAorIAorICNpbmNsdWRlIDx0aW1lLmg+CisgCistI2RlZmluZSBMT0dfU1RSX01BWCAzMjc2OAor KyNkZWZpbmUgTE9HX1NUUl9NQVggNjU1MzYKKyAjZGVmaW5lIEFVVEhfU1RSX01BWCA2NAorICNk ZWZpbmUgUkVWX1NUUl9NQVggNjQKKyAjZGVmaW5lIE1JTihhLCBiKSAoKGEpIDwgKGIpID8gKGEp IDogKGIpKQorQEAgLTIxLDYgKzIxLDcgQEAKKyB0eXBlZGVmIHN0cnVjdCBfQ3ZzRmlsZVJldmlz aW9uIEN2c0ZpbGVSZXZpc2lvbjsKKyB0eXBlZGVmIHN0cnVjdCBfR2xvYmFsU3ltYm9sIEdsb2Jh bFN5bWJvbDsKKyB0eXBlZGVmIHN0cnVjdCBfVGFnIFRhZzsKKyt0eXBlZGVmIHN0cnVjdCBfVGFn TmFtZSBUYWdOYW1lOworIAorIHN0cnVjdCBfQ3ZzRmlsZVJldmlzaW9uCisgeworQEAgLTcxLDYg KzcyLDggQEAKKyAgICAgICogd2l0aCB0aGUgYnJhbmNoIGF0dHJpYnV0ZSBOVUxMLiAgTGF0ZXIg d2UgbmVlZCB0byByZXNvbHZlIHRoZXNlLgorICAgICAgKi8KKyAgICAgaW50IGhhdmVfYnJhbmNo ZXM7CisrICAgIGNoYXIgKmluaXRpYWxfYnJhbmNoOworKyAgICBQYXRjaFNldCAqaW5pdGlhbF9w czsKKyB9OworIAorIHN0cnVjdCBfUGF0Y2hTZXRNZW1iZXIKK0BAIC0xMTIsOCArMTE1LDcgQEAK KyAgICAgdGltZV90IG1heF9kYXRlOworICAgICBjaGFyICpkZXNjcjsKKyAgICAgY2hhciAqYXV0 aG9yOworLSAgICBjaGFyICp0YWc7CistICAgIGludCB0YWdfZmxhZ3M7CisrICAgIHN0cnVjdCBs aXN0X2hlYWQgdGFnczsKKyAgICAgY2hhciAqYnJhbmNoOworICAgICBjaGFyICphbmNlc3Rvcl9i cmFuY2g7CisgICAgIHN0cnVjdCBsaXN0X2hlYWQgbWVtYmVyczsKK0BAIC0xNTksNCArMTYxLDEx IEBACisgICAgIHN0cnVjdCBsaXN0X2hlYWQgcmV2X2xpbms7CisgfTsKKyAKKytzdHJ1Y3QgX1Rh Z05hbWUKKyt7CisrICAgIGNoYXIgKiBuYW1lOworKyAgICBpbnQgZmxhZ3M7CisrICAgIHN0cnVj dCBsaXN0X2hlYWQgbGluazsKKyt9OworKworICNlbmRpZiAvKiBDVlNQU19UWVBFU19IICovCmRp ZmYgLS1naXQgYS9kZXZlbC9jdnNwcy9NYWtlZmlsZSBiL2RldmVsL2N2c3BzL01ha2VmaWxlCmlu ZGV4IGJkN2IxOWYuLmVmNzdiM2YgMTAwNjQ0Ci0tLSBhL2RldmVsL2N2c3BzL01ha2VmaWxlCisr KyBiL2RldmVsL2N2c3BzL01ha2VmaWxlCkBAIC0xNSw2ICsxNSw4IEBAIE1BU1RFUl9TSVRFUz0J aHR0cDovL3d3dy5jb2JpdGUuY29tL2N2c3BzLwogTUFJTlRBSU5FUj0Jc3Rhc0BGcmVlQlNELm9y ZwogQ09NTUVOVD0JQ3JlYXRlIHBhdGNoc2V0IGluZm9ybWF0aW9uIGZyb20gQ1ZTCiAKK0NPTkZM SUNUUz0gICAgICBjdnNwcy1kZXZlbC0xLioKKwogVVNFX0dNQUtFPQl5ZXMKIEFMTF9UQVJHRVQ9 CWN2c3BzCiAKZGlmZiAtLWdpdCBhL2RldmVsL2RpcmVjdGZiL01ha2VmaWxlIGIvZGV2ZWwvZGly ZWN0ZmIvTWFrZWZpbGUKaW5kZXggZjk3Njk0Zi4uZDkwZjI0YSAxMDA2NDQKLS0tIGEvZGV2ZWwv ZGlyZWN0ZmIvTWFrZWZpbGUKKysrIGIvZGV2ZWwvZGlyZWN0ZmIvTWFrZWZpbGUKQEAgLTYsMTIg KzYsMTEgQEAKICMKIAogUE9SVE5BTUU9CWRpcmVjdGZiCi1QT1JUVkVSU0lPTj0JMS4xLjEKLVBP UlRSRVZJU0lPTj0JMQorRElTVFZFUlNJT049CTEuMi4wLXJjMQogQ0FURUdPUklFUz0JZGV2ZWwK IE1BU1RFUl9TSVRFUz0JaHR0cDovL3d3dy5kaXJlY3RmYi5vcmcvZG93bmxvYWRzL0NvcmUvIFwK IAkJaHR0cDovL3d3dy5kaXJlY3RmYi5vcmcvZG93bmxvYWRzL09sZC8KLURJU1ROQU1FPQlEaXJl Y3RGQi0ke1BPUlRWRVJTSU9OfQorRElTVE5BTUU9CURpcmVjdEZCLSR7RElTVFZFUlNJT059CiAK IE1BSU5UQUlORVI9CWFuYXRvbHkuYm9yb2RpbkBnbWFpbC5jb20KIENPTU1FTlQ9CUdyYXBoaWMg ZGV2ZWxvcG1lbnQgbGlnaHR3ZWlnaHQgQVBJCkBAIC0yMSwxOCArMjAsMTkgQEAgTElCX0RFUEVO RFM9CWpwZWcuMTA6JHtQT1JUU0RJUn0vZ3JhcGhpY3MvanBlZyBcCiAKIENPTkZJR1VSRV9FTlY9 CUNQUEZMQUdTPSIke1BUSFJFQURfQ0ZMQUdTfSIgTERGTEFHUz0iJHtQVEhSRUFEX0xJQlN9Igog VVNFX0FVVE9UT09MUz0JbGlidG9vbDoyMgotVVNFX1NETD0Jc2RsCiBHTlVfQ09ORklHVVJFPQl5 ZXMKIFVTRV9HTUFLRT0JeWVzCiBVU0VfR05PTUU9CWdub21laGFjawogVVNFX0xEQ09ORklHPQl5 ZXMKIFVTRV9QRVJMNT0JeWVzCi1QTElTVF9TVUIrPQlESVJFQ1RGQl9WRVJTSU9OPSR7UE9SVFZF UlNJT059IERJUkVDVEZCX1ZFUj0xLjEtMAorUExJU1RfU1VCKz0JRElSRUNURkJfVkVSU0lPTj0k e0RJU1RWRVJTSU9OfSBESVJFQ1RGQl9WRVI9MS4yLTAKIAogLmlmIGV4aXN0cygke0xPQ0FMQkFT RX0vbGliL2xpYmZyZWV0eXBlLnNvLjkpCiBXSVRIX0ZSRUVUWVBFMj0JeWVzCiAuZW5kaWYKIAor Q09ORklHVVJFX0FSR1MrPQktLWVuYWJsZS1kZWJ1ZyAtLWVuYWJsZS1kZWJ1Zy1zdXBwb3J0IC0t ZGlzYWJsZS10cmFjZQorCiAuaWYgZGVmaW5lZChXSVRIX0ZSRUVUWVBFMikKIExJQl9ERVBFTkRT Kz0JZnJlZXR5cGUuOToke1BPUlRTRElSfS9wcmludC9mcmVldHlwZTIKIENPTkZJR1VSRV9BUkdT Kz0JLS1lbmFibGUtZnJlZXR5cGUKQEAgLTU4LDcgKzU4LDYgQEAgUExJU1RfU1VCKz0JU0RMPSIi IEdGWERSSVZFUlM9IiIKIC5lbHNlCiBDT05GSUdVUkVfQVJHUys9CS0tZGlzYWJsZS1zZGwKIFBM SVNUX1NVQis9CVNETD0iQGNvbW1lbnQgIiBHRlhEUklWRVJTPSJAY29tbWVudCAiCi0KIC5lbmRp ZgogCiAuaWYgZGVmaW5lZChXSVRIX1NETCkgfHwgZGVmaW5lZChXSVRIX1gxMSkKQEAgLTY3LDYg KzY2LDcgQEAgUExJU1RfU1VCKz0JSU5QVVREUklWRVJTPSIiCiBQTElTVF9TVUIrPQlJTlBVVERS SVZFUlM9IkBjb21tZW50ICIKIC5lbmRpZgogCitOT01BTkNPTVBSRVNTPQl5ZXMKIE1BTjE9CQlk aXJlY3RmYi1jc291cmNlLjEgZGZiZy4xCiBNQU41PQkJZGlyZWN0ZmJyYy41CiAKZGlmZiAtLWdp dCBhL2RldmVsL2RpcmVjdGZiL2Rpc3RpbmZvIGIvZGV2ZWwvZGlyZWN0ZmIvZGlzdGluZm8KaW5k ZXggMmFhMWZkYS4uZWVlNjg5NSAxMDA2NDQKLS0tIGEvZGV2ZWwvZGlyZWN0ZmIvZGlzdGluZm8K KysrIGIvZGV2ZWwvZGlyZWN0ZmIvZGlzdGluZm8KQEAgLTEsMyArMSwzIEBACi1NRDUgKERpcmVj dEZCLTEuMS4xLnRhci5neikgPSBjNzUyNTUwNDljYThkNWM2OWFmZTRkYjU4ZjYwMzAyOAotU0hB MjU2IChEaXJlY3RGQi0xLjEuMS50YXIuZ3opID0gZjEyZWM1ZjA4NjRkODUyNjhhOGQ2N2U0OTE5 Y2I3ZjNkN2YwZTA2ZWQ2Y2MyNzhjOTUyZjZjMzQyNjczZDkzMQotU0laRSAoRGlyZWN0RkItMS4x LjEudGFyLmd6KSA9IDI2MTQyMDMKK01ENSAoRGlyZWN0RkItMS4yLjAtcmMxLnRhci5neikgPSA5 YjQyZjc2Y2NhNmE3NTAxODNhYWZlMjBjMmViYzVjOQorU0hBMjU2IChEaXJlY3RGQi0xLjIuMC1y YzEudGFyLmd6KSA9IDYwYTQxYmU1YzhlY2FkOTQ0MTc5MWE4ZDU2NGU3ZWY4MmI3MjZlOGRkZDhh MjU2OTEzNzU4YjYzZTUwODdiNWQKK1NJWkUgKERpcmVjdEZCLTEuMi4wLXJjMS50YXIuZ3opID0g MjY1MjIzNwpkaWZmIC0tZ2l0IGEvZGV2ZWwvZGlyZWN0ZmIvcGtnLXBsaXN0IGIvZGV2ZWwvZGly ZWN0ZmIvcGtnLXBsaXN0CmluZGV4IDc1NzQ5ZjUuLjBkOGIxNzAgMTAwNjQ0Ci0tLSBhL2RldmVs L2RpcmVjdGZiL3BrZy1wbGlzdAorKysgYi9kZXZlbC9kaXJlY3RmYi9wa2ctcGxpc3QKQEAgLTMs NiArMyw3IEBAIGJpbi9kZmJmeAogYmluL2RmYmcKIGJpbi9kZmJpbmZvCiBiaW4vZGZiaW5wdXQK K2Jpbi9kZmJpbnNwZWN0b3IKIGJpbi9kZmJsYXllcgogYmluL2RmYnBlbm1vdW50CiBiaW4vZGZi c2NyZWVuCkBAIC0xNDEsOSArMTQyLDYgQEAgbGliL2RpcmVjdGZiLSUlRElSRUNURkJfVkVSJSUv aW50ZXJmYWNlcy9JRGlyZWN0RkJJbWFnZVByb3ZpZGVyL2xpYmlkaXJlY3RmYmltYWcKIGxpYi9k aXJlY3RmYi0lJURJUkVDVEZCX1ZFUiUlL2ludGVyZmFjZXMvSURpcmVjdEZCSW1hZ2VQcm92aWRl ci9saWJpZGlyZWN0ZmJpbWFnZXByb3ZpZGVyX2pwZWcuYQogbGliL2RpcmVjdGZiLSUlRElSRUNU RkJfVkVSJSUvaW50ZXJmYWNlcy9JRGlyZWN0RkJJbWFnZVByb3ZpZGVyL2xpYmlkaXJlY3RmYmlt YWdlcHJvdmlkZXJfanBlZy5sYQogbGliL2RpcmVjdGZiLSUlRElSRUNURkJfVkVSJSUvaW50ZXJm YWNlcy9JRGlyZWN0RkJJbWFnZVByb3ZpZGVyL2xpYmlkaXJlY3RmYmltYWdlcHJvdmlkZXJfanBl Zy5zbwotbGliL2RpcmVjdGZiLSUlRElSRUNURkJfVkVSJSUvaW50ZXJmYWNlcy9JRGlyZWN0RkJJ bWFnZVByb3ZpZGVyL2xpYmlkaXJlY3RmYmltYWdlcHJvdmlkZXJfbXBlZzIuYQotbGliL2RpcmVj dGZiLSUlRElSRUNURkJfVkVSJSUvaW50ZXJmYWNlcy9JRGlyZWN0RkJJbWFnZVByb3ZpZGVyL2xp YmlkaXJlY3RmYmltYWdlcHJvdmlkZXJfbXBlZzIubGEKLWxpYi9kaXJlY3RmYi0lJURJUkVDVEZC X1ZFUiUlL2ludGVyZmFjZXMvSURpcmVjdEZCSW1hZ2VQcm92aWRlci9saWJpZGlyZWN0ZmJpbWFn ZXByb3ZpZGVyX21wZWcyLnNvCiBsaWIvZGlyZWN0ZmItJSVESVJFQ1RGQl9WRVIlJS9pbnRlcmZh Y2VzL0lEaXJlY3RGQkltYWdlUHJvdmlkZXIvbGliaWRpcmVjdGZiaW1hZ2Vwcm92aWRlcl9wbmcu YQogbGliL2RpcmVjdGZiLSUlRElSRUNURkJfVkVSJSUvaW50ZXJmYWNlcy9JRGlyZWN0RkJJbWFn ZVByb3ZpZGVyL2xpYmlkaXJlY3RmYmltYWdlcHJvdmlkZXJfcG5nLmxhCiBsaWIvZGlyZWN0ZmIt JSVESVJFQ1RGQl9WRVIlJS9pbnRlcmZhY2VzL0lEaXJlY3RGQkltYWdlUHJvdmlkZXIvbGliaWRp cmVjdGZiaW1hZ2Vwcm92aWRlcl9wbmcuc28KQEAgLTE2MiwxOCArMTYwLDE4IEBAIGxpYi9kaXJl Y3RmYi0lJURJUkVDVEZCX1ZFUiUlL3N5c3RlbXMvbGliZGlyZWN0ZmJfZGV2bWVtLnNvCiBsaWIv ZGlyZWN0ZmItJSVESVJFQ1RGQl9WRVIlJS93bS9saWJkaXJlY3RmYndtX2RlZmF1bHQuYQogbGli L2RpcmVjdGZiLSUlRElSRUNURkJfVkVSJSUvd20vbGliZGlyZWN0ZmJ3bV9kZWZhdWx0LmxhCiBs aWIvZGlyZWN0ZmItJSVESVJFQ1RGQl9WRVIlJS93bS9saWJkaXJlY3RmYndtX2RlZmF1bHQuc28K LWxpYi9saWJkaXJlY3QtMS4xLnNvCi1saWIvbGliZGlyZWN0LTEuMS5zby4xCitsaWIvbGliZGly ZWN0LTEuMi5zbworbGliL2xpYmRpcmVjdC0xLjIuc28uMAogbGliL2xpYmRpcmVjdC5hCiBsaWIv bGliZGlyZWN0LmxhCiBsaWIvbGliZGlyZWN0LnNvCi1saWIvbGliZGlyZWN0ZmItMS4xLnNvCi1s aWIvbGliZGlyZWN0ZmItMS4xLnNvLjEKK2xpYi9saWJkaXJlY3RmYi0xLjIuc28KK2xpYi9saWJk aXJlY3RmYi0xLjIuc28uMAogbGliL2xpYmRpcmVjdGZiLmEKIGxpYi9saWJkaXJlY3RmYi5sYQog bGliL2xpYmRpcmVjdGZiLnNvCi1saWIvbGliZnVzaW9uLTEuMS5zbwotbGliL2xpYmZ1c2lvbi0x LjEuc28uMQorbGliL2xpYmZ1c2lvbi0xLjIuc28KK2xpYi9saWJmdXNpb24tMS4yLnNvLjAKIGxp Yi9saWJmdXNpb24uYQogbGliL2xpYmZ1c2lvbi5sYQogbGliL2xpYmZ1c2lvbi5zbwpkaWZmIC0t Z2l0IGEvZ2FtZXMvZnJlZXNjaS9NYWtlZmlsZSBiL2dhbWVzL2ZyZWVzY2kvTWFrZWZpbGUKaW5k ZXggZWZhZjFiYS4uYjU5OTFlOCAxMDA2NDQKLS0tIGEvZ2FtZXMvZnJlZXNjaS9NYWtlZmlsZQor KysgYi9nYW1lcy9mcmVlc2NpL01ha2VmaWxlCkBAIC02Myw3ICs2Myw3IEBAIENPTkZJR1VSRV9B UkdTKz0JLS13aXRob3V0LXNkbAogLmVuZGlmCiAKIC5pZiBkZWZpbmVkKFdJVEhfRElSRUNURkIp ICYmICFkZWZpbmVkKFdJVEhPVVRfRElSRUNURkIpCi1MSUJfREVQRU5EUys9CWRpcmVjdGZiLTEu MS4xOiR7UE9SVFNESVJ9L2RldmVsL2RpcmVjdGZiCitMSUJfREVQRU5EUys9CWRpcmVjdGZiLTEu Mi4wOiR7UE9SVFNESVJ9L2RldmVsL2RpcmVjdGZiCiBDT05GSUdVUkVfQVJHUys9CS0td2l0aC1k aXJlY3RmYi1pbmNsdWRlPSR7TE9DQUxCQVNFfS9pbmNsdWRlL2RpcmVjdGZiIFwKIAkJCS0td2l0 aC1kaXJlY3RmYi1saWJyYXJpZXM9JHtMT0NBTEJBU0V9L2xpYgogLmVsc2UKZGlmZiAtLWdpdCBh L2dyYXBoaWNzL2NhaXJvL01ha2VmaWxlIGIvZ3JhcGhpY3MvY2Fpcm8vTWFrZWZpbGUKaW5kZXgg ODAyOGMwMy4uMzVjMmYwNCAxMDA2NDQKLS0tIGEvZ3JhcGhpY3MvY2Fpcm8vTWFrZWZpbGUKKysr IGIvZ3JhcGhpY3MvY2Fpcm8vTWFrZWZpbGUKQEAgLTQzLDcgKzQzLDggQEAgUExJU1RfU1VCKz0J WDExPSIiCiAuZW5kaWYKIAogT1BUSU9OUys9CUdMSVRaICJFbmFibGUgR2xpdHogT3BlbkdMIFN1 cHBvcnQiIE9mZiBcCi0JCVhDQiAiRW5hYmxlIFhDQiAoWCBDLWxhbmd1YWdlIEJpbmRpbmcpIFN1 cHBvcnQiIE9uCisJCVhDQiAiRW5hYmxlIFhDQiAoWCBDLWxhbmd1YWdlIEJpbmRpbmcpIFN1cHBv cnQiIE9uIFwKKwkJRElSRUNURkIgIkVuYWJsZSBEaXJlY3RGQiBTdXBwb3J0IiBPZmYKIAogLmlu Y2x1ZGUgPGJzZC5wb3J0LnByZS5taz4KIApAQCAtNjYsNiArNjcsMTUgQEAgQ09ORklHVVJFX0FS R1MrPQktLWRpc2FibGUteGNiCiBQTElTVF9TVUIrPQkJWENCPSJAY29tbWVudCAiCiAuZW5kaWYK IAorLmlmIGRlZmluZWQoV0lUSF9ESVJFQ1RGQikKK0xJQl9ERVBFTkRTKz0JZGlyZWN0ZmItMS4y LjA6JHtQT1JUU0RJUn0vZGV2ZWwvZGlyZWN0ZmIKK0NPTkZJR1VSRV9BUkdTKz0JLS1lbmFibGUt ZGlyZWN0ZmIKK1BMSVNUX1NVQis9CURJUkVDVEZCPSIiCisuZWxzZQorQ09ORklHVVJFX0FSR1Mr PQktLWRpc2FibGUtZGlyZWN0ZmIKK1BMSVNUX1NVQis9CURJUkVDVEZCPSJAY29tbWVudCAiCisu ZW5kaWYKKwogcG9zdC1wYXRjaDoKIAlAJHtSRUlOUExBQ0VfQ01EfSAtZSAnc3wtbHB0aHJlYWR8 JHtQVEhSRUFEX0xJQlN9fCcgXAogCQkke1dSS1NSQ30vdGVzdC9NYWtlZmlsZS5pbgpkaWZmIC0t Z2l0IGEvZ3JhcGhpY3MvY2Fpcm8vcGtnLXBsaXN0IGIvZ3JhcGhpY3MvY2Fpcm8vcGtnLXBsaXN0 CmluZGV4IGVjMDIwNmUuLjk4YTk2OWIgMTAwNjQ0Ci0tLSBhL2dyYXBoaWNzL2NhaXJvL3BrZy1w bGlzdAorKysgYi9ncmFwaGljcy9jYWlyby9wa2ctcGxpc3QKQEAgLTEsNCArMSw1IEBACiBpbmNs dWRlL2NhaXJvL2NhaXJvLWRlcHJlY2F0ZWQuaAorJSVESVJFQ1RGQiUlaW5jbHVkZS9jYWlyby9j YWlyby1kaXJlY3RmYi5oCiBpbmNsdWRlL2NhaXJvL2NhaXJvLWZlYXR1cmVzLmgKIGluY2x1ZGUv Y2Fpcm8vY2Fpcm8tZnQuaAogJSVHTElUWiUlaW5jbHVkZS9jYWlyby9jYWlyby1nbGl0ei5oCkBA IC0xNiw2ICsxNyw3IEBAIGxpYi9saWJjYWlyby5sYQogbGliL2xpYmNhaXJvLnNvCiBsaWIvbGli Y2Fpcm8uc28uMgogbGliZGF0YS9wa2djb25maWcvY2Fpcm8ucGMKKyUlRElSRUNURkIlJWxpYmRh dGEvcGtnY29uZmlnL2NhaXJvLWRpcmVjdGZiLnBjCiBsaWJkYXRhL3BrZ2NvbmZpZy9jYWlyby1m dC5wYwogJSVHTElUWiUlbGliZGF0YS9wa2djb25maWcvY2Fpcm8tZ2xpdHoucGMKIGxpYmRhdGEv cGtnY29uZmlnL2NhaXJvLXBkZi5wYwpkaWZmIC0tZ2l0IGEvZ3JhcGhpY3MvY2ZkZy9NYWtlZmls ZSBiL2dyYXBoaWNzL2NmZGcvTWFrZWZpbGUKaW5kZXggNjAwYzBiMi4uOWJiNjQ3ZSAxMDA2NDQK LS0tIGEvZ3JhcGhpY3MvY2ZkZy9NYWtlZmlsZQorKysgYi9ncmFwaGljcy9jZmRnL01ha2VmaWxl CkBAIC02LDkgKzYsMTAgQEAKICMKIAogUE9SVE5BTUU9CWNmZGcKLVBPUlRWRVJTSU9OPQkyLjEK K1BPUlRWRVJTSU9OPQkyLjIKIENBVEVHT1JJRVM9CWdyYXBoaWNzIG1hdGgKLU1BU1RFUl9TSVRF Uz0JaHR0cDovL3d3dy5jb250ZXh0ZnJlZWFydC5vcmcvZG93bmxvYWQvCitNQVNURVJfU0lURVM9 CWh0dHA6Ly93d3cuY29udGV4dGZyZWVhcnQub3JnL2Rvd25sb2FkLyBcCisJCWh0dHA6Ly9nbHlw aGljLnMzLmFtYXpvbmF3cy5jb20vY2ZhL2Rvd25sb2FkLwogRElTVE5BTUU9CUNvbnRleHRGcmVl U291cmNlJHtQT1JUVkVSU0lPTn0KIEVYVFJBQ1RfU1VGWD0JLnRnegogCmRpZmYgLS1naXQgYS9n cmFwaGljcy9jZmRnL2Rpc3RpbmZvIGIvZ3JhcGhpY3MvY2ZkZy9kaXN0aW5mbwppbmRleCAxNzUz MjFlLi4zYmUwOGJmIDEwMDY0NAotLS0gYS9ncmFwaGljcy9jZmRnL2Rpc3RpbmZvCisrKyBiL2dy YXBoaWNzL2NmZGcvZGlzdGluZm8KQEAgLTEsMyArMSwzIEBACi1NRDUgKENvbnRleHRGcmVlU291 cmNlMi4xLnRneikgPSA0NzcyNDJlNzRjNGY5NTNjZWNhN2JmMDZlOTQ0YTQ2ZQotU0hBMjU2IChD b250ZXh0RnJlZVNvdXJjZTIuMS50Z3opID0gMDQxYTY3ZTM0MjkyYzg5ODg5MDU2OGZlNzIzNmVh YWZkMTYwOGQxOTY5NTFiZGFjY2VkZWIyMjc1Y2ExOThiNAotU0laRSAoQ29udGV4dEZyZWVTb3Vy Y2UyLjEudGd6KSA9IDEzNjMxMzYKK01ENSAoQ29udGV4dEZyZWVTb3VyY2UyLjIudGd6KSA9IGU0 OGMxOTY3ZTRlYzBiNzc2NGVmNjk4YjRhODg3YWU1CitTSEEyNTYgKENvbnRleHRGcmVlU291cmNl Mi4yLnRneikgPSBlYTJjZjdiMDYwYzc1NmY1YzczNGUzMjkzOTE3NDgzYzQxYTI4MzAxYWYzY2Yw ZGM0Y2I2YWUxMDNhNzE3ZWNiCitTSVpFIChDb250ZXh0RnJlZVNvdXJjZTIuMi50Z3opID0gMTYw NjE0NApkaWZmIC0tZ2l0IGEvZ3JhcGhpY3MvY2ZkZy9maWxlcy9wYXRjaC1NYWtlZmlsZSBiL2dy YXBoaWNzL2NmZGcvZmlsZXMvcGF0Y2gtTWFrZWZpbGUKaW5kZXggMjAxYzlkOC4uNjIwOTIyOCAx MDA2NDQKLS0tIGEvZ3JhcGhpY3MvY2ZkZy9maWxlcy9wYXRjaC1NYWtlZmlsZQorKysgYi9ncmFw aGljcy9jZmRnL2ZpbGVzL3BhdGNoLU1ha2VmaWxlCkBAIC0xLDYgKzEsNiBAQAotLS0tIE1ha2Vm aWxlLm9yaWcJMjAwNy0wNC0yOSAwODo1MToyMC4wMDAwMDAwMDAgKzAzMDAKLSsrKyBNYWtlZmls ZQkyMDA4LTAzLTE0IDIxOjE3OjI0LjAwMDAwMDAwMCArMDIwMAotQEAgLTUyLDcgKzUyLDcgQEAK Ky0tLSBNYWtlZmlsZS5vcmlnCisrKysgTWFrZWZpbGUKK0BAIC01NCw3ICs1NCw3IEBAICQoT0JK Uyk6ICQoT0JKX0RJUikvU2VudHJ5CiAgIyBVbmRlciBDeWd3aW4gcmVwbGFjZSBzdHJpcCAkQCB3 aXRoIHN0cmlwICRALmV4ZQogIAogIGNmZGc6ICQoT0JKUykKQEAgLTksMTIgKzksMTIgQEAKICAJ c3RyaXAgJEAKICAKICAKLUBAIC0xMDMsNyArMTAzLDcgQEAKK0BAIC0xMDUsNyArMTA1LDcgQEAg JChPVVRQVVRfRElSKS9ydGVzdC0yay5wbmc6IGNmZGcgJChSVEVTVF9DRkRHKQogICMKICAKICBD UFBGTEFHUyArPSAkKHBhdHN1YnN0ICUsLUklLCQoSU5DX0RJUlMpKQotLUNQUEZMQUdTICs9IC1P MwotK0NQUEZMQUdTICs9IGBsaWJwbmctY29uZmlnIC0tY2ZsYWdzYAorLUNQUEZMQUdTICs9IC1P MyAtV2FsbAorK0NQUEZMQUdTICs9IC1XYWxsIGBsaWJwbmctY29uZmlnIC0tY2ZsYWdzYAogICND UFBGTEFHUyArPSAtZ2dkYgogIAogICQoT0JKX0RJUikvJS5vIDogJS5jcHAKZGlmZiAtLWdpdCBh L2dyYXBoaWNzL2NmZGcvcGtnLXBsaXN0IGIvZ3JhcGhpY3MvY2ZkZy9wa2ctcGxpc3QKaW5kZXgg YTg5OWI4Ni4uYTZmMjZhNSAxMDA2NDQKLS0tIGEvZ3JhcGhpY3MvY2ZkZy9wa2ctcGxpc3QKKysr IGIvZ3JhcGhpY3MvY2ZkZy9wa2ctcGxpc3QKQEAgLTYsNyArNiw2IEBAIGJpbi9jZmRnCiAlJVBP UlRFWEFNUExFUyUlJSVFWEFNUExFU0RJUiUlL2NpbGlhc3VuLmNmZGcKICUlUE9SVEVYQU1QTEVT JSUlJUVYQU1QTEVTRElSJSUvZGVtbzEuY2ZkZwogJSVQT1JURVhBTVBMRVMlJSUlRVhBTVBMRVNE SVIlJS9kZW1vMi5jZmRnCi0lJVBPUlRFWEFNUExFUyUlJSVFWEFNUExFU0RJUiUlL2RvbmcuY2Zk ZwogJSVQT1JURVhBTVBMRVMlJSUlRVhBTVBMRVNESVIlJS9mdW5reV9mbG93ZXIuY2ZkZwogJSVQ T1JURVhBTVBMRVMlJSUlRVhBTVBMRVNESVIlJS9pX2N1cnZlcy5jZmRnCiAlJVBPUlRFWEFNUExF UyUlJSVFWEFNUExFU0RJUiUlL2lfcGl4LmNmZGcKZGlmZiAtLWdpdCBhL211bHRpbWVkaWEvbGli eGluZS9NYWtlZmlsZSBiL211bHRpbWVkaWEvbGlieGluZS9NYWtlZmlsZQppbmRleCAzMmQwNTAz Li4yMTQ3OTI1IDEwMDY0NAotLS0gYS9tdWx0aW1lZGlhL2xpYnhpbmUvTWFrZWZpbGUKKysrIGIv bXVsdGltZWRpYS9saWJ4aW5lL01ha2VmaWxlCkBAIC00NSw3ICs0NSw2IEBAIFVTRV9HTUFLRT0J eWVzCiBVU0VfWE9SRz0JeDExIHh2IHhpbmVyYW1hCiBVU0VfR0w9CQlnbCBnbHUKIFVTRV9QRVJM NV9CVUlMRD15ZXMKLVVTRV9TREw9CXNkbAogVVNFX0xEQ09ORklHPQl5ZXMKIENPTkZJR1VSRV9F TlY9CUNGTEFHUz0iJHtDRkxBR1N9IC1mbm8tZm9yY2UtYWRkciAtSSR7TE9DQUxCQVNFfS9pbmNs dWRlIC1JJHtMT0NBTEJBU0V9L2luY2x1ZGUvZHZkcmVhZCIgXAogCQlDUFBGTEFHUz0iLUkke0xP Q0FMQkFTRX0vaW5jbHVkZSIgXApAQCAtNjksNiArNjgsNyBAQCBPUFRJT05TPQlBUlRTICJFbmFi bGUgYVJ0cyBzdXBwb3J0IiBvZmYgXAogCQlBQUxJQiAiRW5hYmxlIGFhbGliIHN1cHBvcnQiIG9m ZiBcCiAJCUlNQUdFTUFHSUNLICJFbmFibGUgSW1hZ2VNYWdpY2sgc3VwcG9ydCIgb2ZmIFwKIAkJ R1RLMiAiRW5hYmxlIGdka3BpeGJ1ZiBzdXBwb3J0IiBvZmYgXAorCQlTREwgIkVuYWJsZSBTREwg c3VwcG9ydCIgb2ZmIFwKIAkJV0FWUEFDSyAiRW5hYmxlIFdhdlBhY2sgc3VwcG9ydCIgb24gXAog CQlGQUFEICJFbmFibGUgZXh0ZXJuYWwgZmFhZCBzdXBwb3J0IiBvZmYKIApAQCAtMTc5LDYgKzE3 OSwxNCBAQCBQTElTVF9TVUIrPQlXSVRIX0dUSzI9IkBjb21tZW50ICIKIENPTkZJR1VSRV9BUkdT Kz0JLS1kaXNhYmxlLWdka3BpeGJ1ZgogLmVuZGlmCiAKKy5pZiBkZWZpbmVkKFdJVEhfU0RMKQor VVNFX1NETCs9CXNkbAorUExJU1RfU1VCKz0JV0lUSF9TREw9IiIKKy5lbHNlCitQTElTVF9TVUIr PQlXSVRIX1NETD0iQGNvbW1lbnQgIgorQ09ORklHVVJFX0FSR1MrPQktLXdpdGhvdXQtc2RsCisu ZW5kaWYKKwogLmlmIGRlZmluZWQoV0lUSF9XQVZQQUNLKQogTElCX0RFUEVORFMrPQl3YXZwYWNr LjE6JHtQT1JUU0RJUn0vYXVkaW8vd2F2cGFjawogUExJU1RfU1VCKz0JV0lUSF9XQVZQQUNLPSIi CmRpZmYgLS1naXQgYS9tdWx0aW1lZGlhL2xpYnhpbmUvcGtnLXBsaXN0IGIvbXVsdGltZWRpYS9s aWJ4aW5lL3BrZy1wbGlzdAppbmRleCA2NmQ4NmMwLi5kMDdhZjc5IDEwMDY0NAotLS0gYS9tdWx0 aW1lZGlhL2xpYnhpbmUvcGtnLXBsaXN0CisrKyBiL211bHRpbWVkaWEvbGlieGluZS9wa2ctcGxp c3QKQEAgLTE0Myw3ICsxNDMsNyBAQCBsaWIvbGlieGluZS5zby4xCiAlJVBMVUdJTlNESVIlJS94 aW5lcGx1Z192b19vdXRfbm9uZS5zbwogJSVQTFVHSU5TRElSJSUveGluZXBsdWdfdm9fb3V0X29w ZW5nbC5zbwogJSVQTFVHSU5TRElSJSUveGluZXBsdWdfdm9fb3V0X3Jhdy5zbwotJSVQTFVHSU5T RElSJSUveGluZXBsdWdfdm9fb3V0X3NkbC5zbworJSVXSVRIX1NETCUlJSVQTFVHSU5TRElSJSUv eGluZXBsdWdfdm9fb3V0X3NkbC5zbwogJSVXSVRIX1ZJRElYJSUlJVBMVUdJTlNESVIlJS94aW5l cGx1Z192b19vdXRfdmlkaXguc28KICUlUExVR0lOU0RJUiUlL3hpbmVwbHVnX3ZvX291dF94Y2Jz aG0uc28KICUlUExVR0lOU0RJUiUlL3hpbmVwbHVnX3ZvX291dF94Y2J4di5zbwpkaWZmIC0tZ2l0 IGEvbXVsdGltZWRpYS9tcGxheWVyL01ha2VmaWxlIGIvbXVsdGltZWRpYS9tcGxheWVyL01ha2Vm aWxlCmluZGV4IGRhNTVkM2QuLjM2OGUxZmIgMTAwNjQ0Ci0tLSBhL211bHRpbWVkaWEvbXBsYXll ci9NYWtlZmlsZQorKysgYi9tdWx0aW1lZGlhL21wbGF5ZXIvTWFrZWZpbGUKQEAgLTgwLDYgKzgw LDcgQEAgQ09ORklHVVJFX0FSR1MrPQktLWRpc2FibGUtc3NzZTMgXAogCQkJLS1kaXNhYmxlLWRp cmVjdGZiIFwKIAkJCS0tZGlzYWJsZS1mYWFjIFwKIAkJCS0tZGlzYWJsZS10d29sYW1lIFwKKwkJ CS0tZGlzYWJsZS1kaXJlY3RmYiBcCiAJCQktLWRpc2FibGUtbWVuY29kZXIKIAogLmluY2x1ZGUg IiR7LkNVUkRJUn0vTWFrZWZpbGUub3B0aW9ucyIKZGlmZiAtLWdpdCBhL25ldC90cnlzdC1leGFt cGxlcy9NYWtlZmlsZSBiL25ldC90cnlzdC1leGFtcGxlcy9NYWtlZmlsZQppbmRleCAxOTVhYTUy Li4xYTcyODlkIDEwMDY0NAotLS0gYS9uZXQvdHJ5c3QtZXhhbXBsZXMvTWFrZWZpbGUKKysrIGIv bmV0L3RyeXN0LWV4YW1wbGVzL01ha2VmaWxlCkBAIC0xOCw3ICsxOCw3IEBAIEVYVFJBQ1RfU1VG WD0JLnRnegogTUFJTlRBSU5FUj0JZGlub2V4QEZyZWVCU0Qub3JnCiBDT01NRU5UPQlUQnJvd3Nl ciBhbmQgVENoYXQKIAotTElCX0RFUEVORFM9CWRuc19zZDoke1BPUlRTRElSfS9uZXQvbUROU1Jl c3BvbmRlcgorTElCX0RFUEVORFM9CWRuc19zZDoke1BPUlRTRElSfS9uZXQvYXZhaGktbGliZG5z CiAKIFVTRV9HTlVTVEVQPQl5ZXMKIFVTRV9HTlVTVEVQX1BSRUZJWD0JeWVzCmRpZmYgLS1naXQg YS9uZXQvdHJ5c3QvTWFrZWZpbGUgYi9uZXQvdHJ5c3QvTWFrZWZpbGUKaW5kZXggOTMyOTYxNC4u OWEzMzkzZCAxMDA2NDQKLS0tIGEvbmV0L3RyeXN0L01ha2VmaWxlCisrKyBiL25ldC90cnlzdC9N YWtlZmlsZQpAQCAtMTcsNyArMTcsNyBAQCBFWFRSQUNUX1NVRlg9CS50Z3oKIE1BSU5UQUlORVI9 CWRpbm9leEBGcmVlQlNELm9yZwogQ09NTUVOVD0JSW1wbGVtZW50YXRpb24gb2YgQXBwbGVzIEJv bmpvdXIgZm9yIEdOVXN0ZXAKIAotTElCX0RFUEVORFM9CWRuc19zZDoke1BPUlRTRElSfS9uZXQv bUROU1Jlc3BvbmRlcgorTElCX0RFUEVORFM9CWRuc19zZDoke1BPUlRTRElSfS9uZXQvYXZhaGkt bGliZG5zCiAKIFVTRV9HTlVTVEVQPQl5ZXMKIFVTRV9HTlVTVEVQX1BSRUZJWD0JeWVzCmRpZmYg LS1naXQgYS9wcmludC90ZVRlWC1iYXNlL01ha2VmaWxlIGIvcHJpbnQvdGVUZVgtYmFzZS9NYWtl ZmlsZQppbmRleCA1NDhjOWM2Li4yNDFhZjE0IDEwMDY0NAotLS0gYS9wcmludC90ZVRlWC1iYXNl L01ha2VmaWxlCisrKyBiL3ByaW50L3RlVGVYLWJhc2UvTWFrZWZpbGUKQEAgLTI4LDYgKzI4LDgg QEAgTElCX0RFUEVORFM9CXBuZy41OiR7UE9SVFNESVJ9L2dyYXBoaWNzL3BuZyBcCiAJCXQxLjU6 JHtQT1JUU0RJUn0vZGV2ZWwvdDFsaWIgXAogCQlnZC40OiR7UE9SVFNESVJ9L2dyYXBoaWNzL2dk CiAKK0NPTkZMSUNUUz0JdGV4aW5mby0qCisKIFdSS1NSQz0JCSR7V1JLRElSfS90ZXRleC1zcmMt JHtQT1JUVkVSU0lPTn0KIEdOVV9DT05GSUdVUkU9CXllcwogVVNFX0dNQUtFPQl5ZXMKZGlmZiAt LWdpdCBhL3ByaW50L3RleGluZm8vTWFrZWZpbGUgYi9wcmludC90ZXhpbmZvL01ha2VmaWxlCmlu ZGV4IDc5YmZlMWYuLmNlMjZhNGIgMTAwNjQ0Ci0tLSBhL3ByaW50L3RleGluZm8vTWFrZWZpbGUK KysrIGIvcHJpbnQvdGV4aW5mby9NYWtlZmlsZQpAQCAtMjEsNiArMjEsOCBAQCBJTlNUQUxMX1RB UkdFVD0JaW5zdGFsbCBpbnN0YWxsLXRleAogUEtHREVJTlNUQUxMPQkke1BLR0lOU1RBTEx9CiBN QUtFX0pPQlNfU0FGRT0JeWVzCiAKK0NPTkZMSUNUUz0JdGVUZVgtYmFzZS0qCisKIE1BS0VfQVJH Uz0JVEVYTUY9JHtQUkVGSVh9LyR7VEVYTUZMT0NBTH0KIENPTkZJR1VSRV9BUkdTPQlcCiAJCS0t d2l0aG91dC1pbmNsdWRlZC1nZXR0ZXh0CmRpZmYgLS1naXQgYS9zZWN1cml0eS9ncGdtZS9NYWtl ZmlsZSBiL3NlY3VyaXR5L2dwZ21lL01ha2VmaWxlCmluZGV4IDRjMDMxNWMuLmQzOTMwMDIgMTAw NjQ0Ci0tLSBhL3NlY3VyaXR5L2dwZ21lL01ha2VmaWxlCisrKyBiL3NlY3VyaXR5L2dwZ21lL01h a2VmaWxlCkBAIC01Niw2ICs1Niw3IEBAIFBMSVNUX1NVQis9CVdJVEhfUFRIPScnCiBDT05GSUdV UkVfQVJHUys9LS13aXRob3V0LXB0aCAtLXdpdGhvdXQtcHRoLXRlc3QKIFBMSVNUX1NVQis9CVdJ VEhfUFRIPSdAY29tbWVudCAnCiAuZW5kaWYKK0NPTkZJR1VSRV9BUkdTKz0tLWRpc2FibGUtZ3Bn LXRlc3QgLS1kaXNhYmxlLWdwZ3NtLXRlc3QKIAogdmVyaWZ5OiBjaGVja3N1bQogCWdwZyAtLXZl cmlmeSAke0RJU1RESVJ9LyR7RElTVE5BTUV9JHtFWFRSQUNUX1NVRlh9LnNpZwpkaWZmIC0tZ2l0 IGEvdGV4dHByb2MvZG9jcHJvai9NYWtlZmlsZSBiL3RleHRwcm9jL2RvY3Byb2ovTWFrZWZpbGUK aW5kZXggMWNhM2YyNy4uYWM0ZTJjNCAxMDA2NDQKLS0tIGEvdGV4dHByb2MvZG9jcHJvai9NYWtl ZmlsZQorKysgYi90ZXh0cHJvYy9kb2Nwcm9qL01ha2VmaWxlCkBAIC0yMiwxMSArMjIsMTEgQEAg VVNFX1BFUkw1X1JVTj0JeWVzCiAjIHJlcXVpcmVkIHBvcnRzIGluIHNyYy9yZWxlYXNlL01ha2Vm aWxlLmluYy5kb2Nwb3J0cy4KIAogUlVOX0RFUEVORFM9CWZpeHJ0Zjoke1BPUlRTRElSfS90ZXh0 cHJvYy9maXhydGYgXAotCQlsaW5rczoke1BPUlRTRElSfS93d3cvbGlua3MxIFwKKwkJbGlua3M6 JHtQT1JUU0RJUn0vd3d3L2xpbmtzIFwKIAkJcG5ndG9wbm06JHtQT1JUU0RJUn0vZ3JhcGhpY3Mv bmV0cGJtIFwKIAkJc2NyMnBuZzoke1BPUlRTRElSfS9ncmFwaGljcy9zY3IycG5nIFwKIAkJc2Ny MnR4dDoke1BPUlRTRElSfS90ZXh0cHJvYy9zY3IydHh0IFwKLQkJdGlkeToke1BPUlRTRElSfS93 d3cvdGlkeSBcCisJCXRpZHk6JHtQT1JUU0RJUn0vd3d3L3RpZHktbGliIFwKIAkJeHNsdHByb2M6 JHtQT1JUU0RJUn0vdGV4dHByb2MvbGlieHNsdCBcCiAJCXBlcHM6JHtQT1JUU0RJUn0vZ3JhcGhp Y3MvcGVwcyBcCiAJCSR7TE9DQUxCQVNFfS9zaGFyZS9zZ21sL2RvY2Jvb2svZHNzc2wvbW9kdWxh cjoke1BPUlRTRElSfS90ZXh0cHJvYy9kc3NzbC1kb2Nib29rLW1vZHVsYXIgXApkaWZmIC0tZ2l0 IGEvd3d3L2xpbmtzL01ha2VmaWxlIGIvd3d3L2xpbmtzL01ha2VmaWxlCmluZGV4IGUzYTQyNjYu LjcxNzRkNTAgMTAwNjQ0Ci0tLSBhL3d3dy9saW5rcy9NYWtlZmlsZQorKysgYi93d3cvbGlua3Mv TWFrZWZpbGUKQEAgLTU2LDcgKzU2LDcgQEAgQ09ORklHVVJFX0FSR1MrPQktLXdpdGhvdXQtc3Zn YWxpYgogLmVuZGlmCiAKIC5pZmRlZihXSVRIX0RJUkVDVEZCKQotTElCX0RFUEVORFMrPQkJZGly ZWN0ZmItMS4xLjE6JHtQT1JUU0RJUn0vZGV2ZWwvZGlyZWN0ZmIKK0xJQl9ERVBFTkRTKz0JCWRp cmVjdGZiLTEuMi4wOiR7UE9SVFNESVJ9L2RldmVsL2RpcmVjdGZiCiBDT05GSUdVUkVfQVJHUys9 CS0td2l0aC1kaXJlY3RmYgogLmVsc2UKIENPTkZJR1VSRV9BUkdTKz0JLS13aXRob3V0LWRpcmVj dGZiCmRpZmYgLS1naXQgYS93d3cvbmVvbnBwL01ha2VmaWxlIGIvd3d3L25lb25wcC9NYWtlZmls ZQppbmRleCBiMThhYjBkLi45MzhmYzk5IDEwMDY0NAotLS0gYS93d3cvbmVvbnBwL01ha2VmaWxl CisrKyBiL3d3dy9uZW9ucHAvTWFrZWZpbGUKQEAgLTE3LDcgKzE3LDcgQEAgTUFJTlRBSU5FUj0J bm92ZWxARnJlZUJTRC5vcmcKIENPTU1FTlQ9CUMrKyB3cmFwcGVyIGxpYnJhcnkgZm9yIG5lb24K IAogTElCX0RFUEVORFM9CXNpZ2MtMi4wLjA6JHtQT1JUU0RJUn0vZGV2ZWwvbGlic2lnYysrMjAg XAotCQluZW9uLjI2OiR7UE9SVFNESVJ9L3d3dy9uZW9uMjYKKwkJbmVvbi4yODoke1BPUlRTRElS fS93d3cvbmVvbjI4CiAKIFVTRV9MRENPTkZJRz0JeWVzCiBHTlVfQ09ORklHVVJFPQl5ZXMKZGlm ZiAtLWdpdCBhL3d3dy9wZWNsLXRpZHkvTWFrZWZpbGUgYi93d3cvcGVjbC10aWR5L01ha2VmaWxl CmluZGV4IDVkMjViNDcuLmQxMmE1ZTMgMTAwNjQ0Ci0tLSBhL3d3dy9wZWNsLXRpZHkvTWFrZWZp bGUKKysrIGIvd3d3L3BlY2wtdGlkeS9NYWtlZmlsZQpAQCAtMTYsNyArMTYsNyBAQCBESVNUX1NV QkRJUj0JUEVDTAogTUFJTlRBSU5FUj0Jcmlja0B3em9ldGVyd291ZGUubmV0CiBDT01NRU5UPQlU aWR5IEhUTUwgUmVwYWlyaW5nIGFuZCBQYXJzaW5nCiAKLUJVSUxEX0RFUEVORFMrPQkke0xPQ0FM QkFTRX0vaW5jbHVkZS90aWR5L3RpZHkuaDoke1BPUlRTRElSfS93d3cvdGlkeS1kZXZlbAorQlVJ TERfREVQRU5EUys9CSR7TE9DQUxCQVNFfS9pbmNsdWRlL3RpZHkvdGlkeS5oOiR7UE9SVFNESVJ9 L3d3dy90aWR5LWxpYgogCiBVU0VfUEhQPQl5ZXMKIFVTRV9QSFBFWFQ9CXllcwpkaWZmIC0tZ2l0 IGEvd3d3L3hwaS1nYnV0dHMvTWFrZWZpbGUgYi93d3cveHBpLWdidXR0cy9NYWtlZmlsZQppbmRl eCAyNjA4ZDUxLi5hNzJkMTJkIDEwMDY0NAotLS0gYS93d3cveHBpLWdidXR0cy9NYWtlZmlsZQor KysgYi93d3cveHBpLWdidXR0cy9NYWtlZmlsZQpAQCAtNiw3ICs2LDcgQEAKICMKIAogUE9SVE5B TUU9CWdidXR0cwotUE9SVFZFUlNJT049CTEuNS44CitQT1JUVkVSU0lPTj0JMS42CiBESVNUVkVS U0lPTlNVRkZJWD0JLWZ4CiBDQVRFR09SSUVTPQl3d3cKIApkaWZmIC0tZ2l0IGEvd3d3L3hwaS1n YnV0dHMvZGlzdGluZm8gYi93d3cveHBpLWdidXR0cy9kaXN0aW5mbwppbmRleCA5MWM2NDE2Li5i YmIyNmFjIDEwMDY0NAotLS0gYS93d3cveHBpLWdidXR0cy9kaXN0aW5mbworKysgYi93d3cveHBp LWdidXR0cy9kaXN0aW5mbwpAQCAtMSwzICsxLDMgQEAKLU1ENSAoeHBpL2didXR0cy0xLjUuOC1m eC54cGkpID0gNjZkNDAzOTllMzZjZTYyOThhOWNiNDMyM2ZhNGI0MGIKLVNIQTI1NiAoeHBpL2di dXR0cy0xLjUuOC1meC54cGkpID0gNDk0NmQyOTc1MDI0NTRlYjkyNjhiMmNhMTYyOGU1ZmI0ZWU4 ODJiMzExMjEyOWZhYTc3MjQ4NjRlOTk1YWNhZQotU0laRSAoeHBpL2didXR0cy0xLjUuOC1meC54 cGkpID0gNjg0NTAKK01ENSAoeHBpL2didXR0cy0xLjYtZngueHBpKSA9IGIwYjhiYjUwZjgzNzg1 ZTE2ZTc5YmIxMDNjMjRlY2NlCitTSEEyNTYgKHhwaS9nYnV0dHMtMS42LWZ4LnhwaSkgPSBiZTI5 NDA2YzIzMTFmN2VlMjI1Y2E5ZjgyNzc5MWQ2ODFiNDFlZjlmNzVmNjY4ZGIxMjM2MTE3OWQ2ZDFk MzE3CitTSVpFICh4cGkvZ2J1dHRzLTEuNi1meC54cGkpID0gNjg1MzgKZGlmZiAtLWdpdCBhL3d3 dy94cGkteGh0bWwtcnVieS1zdXBwb3J0L01ha2VmaWxlIGIvd3d3L3hwaS14aHRtbC1ydWJ5LXN1 cHBvcnQvTWFrZWZpbGUKaW5kZXggMzNjMDE2MC4uMGIyZDI1NCAxMDA2NDQKLS0tIGEvd3d3L3hw aS14aHRtbC1ydWJ5LXN1cHBvcnQvTWFrZWZpbGUKKysrIGIvd3d3L3hwaS14aHRtbC1ydWJ5LXN1 cHBvcnQvTWFrZWZpbGUKQEAgLTYsNyArNiw3IEBACiAjCiAKIFBPUlROQU1FPQl4aHRtbC1ydWJ5 LXN1cHBvcnQKLVBPUlRWRVJTSU9OPQkyLjEuMjAwODA0MDEwMQorUE9SVFZFUlNJT049CTMuMC4y MDA5MDYwOTAxCiBESVNUVkVSU0lPTlNVRkZJWD0JLWZ4CiBDQVRFR09SSUVTPQl3d3cKIApAQCAt MTcsNyArMTcsNyBAQCBYUElfRElTVE5BTUU9CXhodG1sX3J1Ynlfc3VwcG9ydAogWFBJX0lEPQkJ ezA2MjBCNjlELTdCNTgtNDE2ZC1BOTJBLTAxOTg4NjBDMjc1N30KIFhQSV9OVU09CTE5MzUKIFhQ SV9GSUxFUz0JY2hyb21lL3J1YnlzdXBwb3J0LmphciBjaHJvbWUubWFuaWZlc3QgXAotCQlkZWZh dWx0cy9wcmVmZXJlbmNlcy9ydWJ5c3VwcG9ydC5qcyBpbnN0YWxsLmpzIGluc3RhbGwucmRmCisJ CWRlZmF1bHRzL3ByZWZlcmVuY2VzL3J1YnlzdXBwb3J0LmpzIGluc3RhbGwucmRmCiBYUElfRElS Uz0JY2hyb21lIGRlZmF1bHRzL3ByZWZlcmVuY2VzIGRlZmF1bHRzCiAKIC5pbmNsdWRlICIkey5D VVJESVJ9Ly4uL3hwaS1hZGJsb2NrL01ha2VmaWxlLnhwaSIKZGlmZiAtLWdpdCBhL3d3dy94cGkt eGh0bWwtcnVieS1zdXBwb3J0L2Rpc3RpbmZvIGIvd3d3L3hwaS14aHRtbC1ydWJ5LXN1cHBvcnQv ZGlzdGluZm8KaW5kZXggZjhmOTQxOS4uMTM3OGE0MSAxMDA2NDQKLS0tIGEvd3d3L3hwaS14aHRt bC1ydWJ5LXN1cHBvcnQvZGlzdGluZm8KKysrIGIvd3d3L3hwaS14aHRtbC1ydWJ5LXN1cHBvcnQv ZGlzdGluZm8KQEAgLTEsMyArMSwzIEBACi1NRDUgKHhwaS94aHRtbF9ydWJ5X3N1cHBvcnQtMi4x LjIwMDgwNDAxMDEtZngueHBpKSA9IDg3YmM1NGNhZTBhOWQwOWY3MTA2ZDYxMTFhNDgxMDEzCi1T SEEyNTYgKHhwaS94aHRtbF9ydWJ5X3N1cHBvcnQtMi4xLjIwMDgwNDAxMDEtZngueHBpKSA9IDk2 MDA1MzA3NjE2YzU0Njg4NTY1ZjMxODA0ZDFmZGQ5NzQwNDkyYTE0MDFjMzEwZTQzMzY1NGFhYjcz OTlmZmUKLVNJWkUgKHhwaS94aHRtbF9ydWJ5X3N1cHBvcnQtMi4xLjIwMDgwNDAxMDEtZngueHBp KSA9IDI5NzQ1CitNRDUgKHhwaS94aHRtbF9ydWJ5X3N1cHBvcnQtMy4wLjIwMDkwNjA5MDEtZngu eHBpKSA9IGMwOTVhMThiODFhNTEyODQzOTVjMDViYzY4ZjAxYzRkCitTSEEyNTYgKHhwaS94aHRt bF9ydWJ5X3N1cHBvcnQtMy4wLjIwMDkwNjA5MDEtZngueHBpKSA9IGUyMDk3OGNlMzAzYmI5Yzky ZTkxNDA3MzBlMjVhMjAzYWI5MTYwOGZiMWNiYmE5Yzc3ODY5YjM0YWYyMmVjNTUKK1NJWkUgKHhw aS94aHRtbF9ydWJ5X3N1cHBvcnQtMy4wLjIwMDkwNjA5MDEtZngueHBpKSA9IDIyMzYxCmRpZmYg LS1naXQgYS94MTEtdG9vbGtpdHMvbnVjbGVvL01ha2VmaWxlIGIveDExLXRvb2xraXRzL251Y2xl by9NYWtlZmlsZQppbmRleCA1YjZlZTFkLi42YmYyY2Y4IDEwMDY0NAotLS0gYS94MTEtdG9vbGtp dHMvbnVjbGVvL01ha2VmaWxlCisrKyBiL3gxMS10b29sa2l0cy9udWNsZW8vTWFrZWZpbGUKQEAg LTUwLDcgKzUwLDcgQEAgUExJU1RfU1VCKz0JUVQ0PSJAY29tbWVudCAiCiAuaWYgZXhpc3RzKCR7 TE9DQUxCQVNFfS9pbmNsdWRlL2F2YWhpLWNvbXBhdC1saWJkbnNfc2QvZG5zX3NkLmgpCiBMSUJf REVQRU5EUys9CWRuc19zZC4xOiR7UE9SVFNESVJ9L25ldC9hdmFoaS1saWJkbnMKIC5lbGlmIGRl ZmluZWQoV0lUSF9ETlNTRCkKLUxJQl9ERVBFTkRTKz0JZG5zX3NkLjE6JHtQT1JUU0RJUn0vbmV0 L21ETlNSZXNwb25kZXIKK0xJQl9ERVBFTkRTKz0JZG5zX3NkLjE6JHtQT1JUU0RJUn0vbmV0L2F2 YWhpLWxpYmRucwogLmVuZGlmCiAKIC5pbmNsdWRlIDxic2QucG9ydC5wb3N0Lm1rPgpkaWZmIC0t Z2l0IGEveDExL2tkZWxpYnMzL01ha2VmaWxlIGIveDExL2tkZWxpYnMzL01ha2VmaWxlCmluZGV4 IDE4YjgzYzYuLmZiZDFiNjIgMTAwNjQ0Ci0tLSBhL3gxMS9rZGVsaWJzMy9NYWtlZmlsZQorKysg Yi94MTEva2RlbGliczMvTWFrZWZpbGUKQEAgLTIyLDcgKzIyLDcgQEAgTElCX0RFUEVORFM9CUls bUltZjoke1BPUlRTRElSfS9ncmFwaGljcy9PcGVuRVhSIFwKIAkJYXJ0X2xncGxfMi41OiR7UE9S VFNESVJ9L2dyYXBoaWNzL2xpYmFydF9sZ3BsIFwKIAkJYXJ0c2MuMDoke1BPUlRTRElSfS9hdWRp by9hcnRzIFwKIAkJYXNwZWxsOiR7UE9SVFNESVJ9L3RleHRwcm9jL2FzcGVsbCBcCi0JCWRuc19z ZDoke1BPUlRTRElSfS9uZXQvbUROU1Jlc3BvbmRlciBcCisJCWRuc19zZDoke1BPUlRTRElSfS9u ZXQvYXZhaGktbGliZG5zIFwKIAkJaWRuOiR7UE9SVFNESVJ9L2Rucy9saWJpZG4gXAogCQlqYXNw ZXI6JHtQT1JUU0RJUn0vZ3JhcGhpY3MvamFzcGVyIFwKIAkJcGNyZToke1BPUlRTRElSfS9kZXZl bC9wY3JlIFwK --00151750e9509346ca04711ad97f-- From owner-freebsd-python@FreeBSD.ORG Fri Aug 14 23:30:23 2009 Return-Path: Delivered-To: freebsd-python@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6D4E1106568B; Fri, 14 Aug 2009 23:30:23 +0000 (UTC) (envelope-from edwin@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 43E648FC59; Fri, 14 Aug 2009 23:30:23 +0000 (UTC) Received: from freefall.freebsd.org (edwin@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.3/8.14.3) with ESMTP id n7ENUNtZ006024; Fri, 14 Aug 2009 23:30:23 GMT (envelope-from edwin@freefall.freebsd.org) Received: (from edwin@localhost) by freefall.freebsd.org (8.14.3/8.14.3/Submit) id n7ENUNIn006012; Fri, 14 Aug 2009 23:30:23 GMT (envelope-from edwin) Date: Fri, 14 Aug 2009 23:30:23 GMT Message-Id: <200908142330.n7ENUNIn006012@freefall.freebsd.org> To: edwin@FreeBSD.org, freebsd-ports-bugs@FreeBSD.org, freebsd-python@FreeBSD.org From: edwin@FreeBSD.org Cc: Subject: Re: ports/137782: databases/py-postgresql (new port) postgresql driver for python, works with python>=3.0 X-BeenThere: freebsd-python@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD-specific Python issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Aug 2009 23:30:23 -0000 Synopsis: databases/py-postgresql (new port) postgresql driver for python, works with python>=3.0 Responsible-Changed-From-To: freebsd-ports-bugs->freebsd-python Responsible-Changed-By: edwin Responsible-Changed-When: Fri Aug 14 23:30:22 UTC 2009 Responsible-Changed-Why: freebsd-python@ wants this port PRs (via the GNATS Auto Assign Tool) http://www.freebsd.org/cgi/query-pr.cgi?pr=137782