From debbugs-submit-bounces@debbugs.gnu.org Tue Apr 01 05:19:02 2014 Received: (at submit) by debbugs.gnu.org; 1 Apr 2014 09:19:03 +0000 Received: from localhost ([127.0.0.1]:58788 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WUuqT-0005BT-P1 for submit@debbugs.gnu.org; Tue, 01 Apr 2014 05:19:02 -0400 Received: from eggs.gnu.org ([208.118.235.92]:42632) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WUuqR-0005BD-Cc for submit@debbugs.gnu.org; Tue, 01 Apr 2014 05:18:59 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WUuqQ-0007bW-Mr for submit@debbugs.gnu.org; Tue, 01 Apr 2014 05:18:59 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-2.5 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([208.118.235.17]:43098) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WUuqQ-0007bQ-CK for submit@debbugs.gnu.org; Tue, 01 Apr 2014 05:18:58 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:44340) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WUuqL-0000NI-H1 for bug-grep@gnu.org; Tue, 01 Apr 2014 05:18:58 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WUuqK-0007a5-Lf for bug-grep@gnu.org; Tue, 01 Apr 2014 05:18:53 -0400 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:54544) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WUuqK-0007a1-J2 for bug-grep@gnu.org; Tue, 01 Apr 2014 05:18:52 -0400 Received: from bonzini by fencepost.gnu.org with local (Exim 4.71) (envelope-from ) id 1WUuqK-0007rp-80; Tue, 01 Apr 2014 05:18:52 -0400 From: Paolo Bonzini To: bug-grep@gnu.org Subject: [PATCH 1/5] Partially revert "dfa: improve port to freestanding DJGPP" Date: Tue, 1 Apr 2014 11:18:42 +0200 Message-Id: <1396343926-1394-2-git-send-email-bonzini@gnu.org> X-Mailer: git-send-email 1.9.0 In-Reply-To: <1396343926-1394-1-git-send-email-bonzini@gnu.org> References: <1396343926-1394-1-git-send-email-bonzini@gnu.org> X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 208.118.235.17 X-Spam-Score: -5.6 (-----) X-Debbugs-Envelope-To: submit Cc: meyering@fb.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.6 (-----) This partially reverts the following commits: - df6da5d40a47abbc6e3451cb9fab7a8c9ede12cc. - c40e7f7158109985b901ae67e5faa06160547471. - 0995fc11214ebbb1c99a4b6d675fe615b0ed8539. As far as grep is concerned, the #define *does* belong in gnulib. gawk can apply the fix in a common header file like grep's src/system.h. --- src/dfa.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/dfa.c b/src/dfa.c index b22fe97..a7f0056 100644 --- a/src/dfa.c +++ b/src/dfa.c @@ -34,11 +34,7 @@ #include #include -/* Gawk doesn't use Gnulib, so don't assume that setlocale and - static_assert are present. */ -#ifndef LC_ALL -# define setlocale(category, locale) NULL -#endif +/* Gawk doesn't use Gnulib, so don't assume static_assert is present. */ #ifndef static_assert # define static_assert(cond, diagnostic) \ extern int (*foo (void)) [!!sizeof (struct { int foo: (cond) ? 8 : -1; })] -- 1.9.0 From debbugs-submit-bounces@debbugs.gnu.org Tue Apr 01 05:33:38 2014 Received: (at 17157) by debbugs.gnu.org; 1 Apr 2014 09:33:38 +0000 Received: from localhost ([127.0.0.1]:58812 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WUv4b-0005Zq-H9 for submit@debbugs.gnu.org; Tue, 01 Apr 2014 05:33:38 -0400 Received: from frenzy.freefriends.org ([66.54.153.139]:36709 helo=freefriends.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WUv4Y-0005Ze-65 for 17157@debbugs.gnu.org; Tue, 01 Apr 2014 05:33:35 -0400 X-Envelope-From: arnold@skeeve.com Received: from freefriends.org (localhost [127.0.0.1]) by freefriends.org (8.14.8/8.14.8) with ESMTP id s319XWJF023409; Tue, 1 Apr 2014 03:33:33 -0600 Received: (from arnold@localhost) by freefriends.org (8.14.8/8.14.8/submit) id s319XWUR023408; Tue, 1 Apr 2014 09:33:32 GMT From: arnold@skeeve.com Message-Id: <201404010933.s319XWUR023408@freefriends.org> X-Authentication-Warning: frenzy.freefriends.org: arnold set sender to arnold@skeeve.com using -f Date: Tue, 01 Apr 2014 03:33:32 -0600 To: bonzini@gnu.org, 17157@debbugs.gnu.org Subject: Re: bug#17157: [PATCH 1/5] Partially revert "dfa: improve port to freestanding DJGPP" References: <1396343926-1394-1-git-send-email-bonzini@gnu.org> <1396343926-1394-2-git-send-email-bonzini@gnu.org> In-Reply-To: <1396343926-1394-2-git-send-email-bonzini@gnu.org> User-Agent: Heirloom mailx 12.4 7/29/08 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 17157 Cc: meyering@fb.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) Hi. Please don't revert this change. dfa.c is *shared* code, and there's no reason for gawk to put stuff needed ONLY by dfa.c into its config.h file. (Gawk doesn't have a system.h - most of that stuff is in awk.h at the momment. The rest is in custom.h which is used to override defaults from configure, and not for portability.) I understand that grep doesn't need it, but dfa serves more than one master. I appreciate the grep team's accommodating gawk's needs. Thanks, Arnold ------------------ Paolo Bonzini wrote: > This partially reverts the following commits: > - df6da5d40a47abbc6e3451cb9fab7a8c9ede12cc. > - c40e7f7158109985b901ae67e5faa06160547471. > - 0995fc11214ebbb1c99a4b6d675fe615b0ed8539. > > As far as grep is concerned, the #define *does* belong in gnulib. gawk > can apply the fix in a common header file like grep's src/system.h. > --- > src/dfa.c | 6 +----- > 1 file changed, 1 insertion(+), 5 deletions(-) > > diff --git a/src/dfa.c b/src/dfa.c > index b22fe97..a7f0056 100644 > --- a/src/dfa.c > +++ b/src/dfa.c > @@ -34,11 +34,7 @@ > #include > #include > > -/* Gawk doesn't use Gnulib, so don't assume that setlocale and > - static_assert are present. */ > -#ifndef LC_ALL > -# define setlocale(category, locale) NULL > -#endif > +/* Gawk doesn't use Gnulib, so don't assume static_assert is present. */ > #ifndef static_assert > # define static_assert(cond, diagnostic) \ > extern int (*foo (void)) [!!sizeof (struct { int foo: (cond) ? 8 : -1; })] > -- > 1.9.0 > > > > > From bug-grep-bounces+arnold=skeeve.com@gnu.org Tue Apr 1 03:19:14 2014 > X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on > frenzy.freefriends.org > X-Spam-Level: > X-Spam-Status: No, score=-7.5 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_HI, > RP_MATCHES_RCVD autolearn=ham version=3.3.1 > X-Envelope-From: bug-grep-bounces+arnold=skeeve.com@gnu.org > Return-Path: > X-Loop: help-debbugs@gnu.org > Subject: bug#17157: [PATCH 1/5] Partially revert "dfa: improve port to > freestanding DJGPP" > Resent-From: Paolo Bonzini > Original-Sender: "Debbugs-submit" > Resent-CC: bug-grep@gnu.org > Resent-Date: Tue, 01 Apr 2014 09:19:03 +0000 > Resent-Message-ID: > Resent-Sender: help-debbugs@gnu.org > X-GNU-PR-Message: report 17157 > X-GNU-PR-Package: grep > X-GNU-PR-Keywords: patch > To: 17157@debbugs.gnu.org > X-Debbugs-Original-To: bug-grep@gnu.org > From: Paolo Bonzini > Date: Tue, 1 Apr 2014 11:18:42 +0200 > X-Mailer: git-send-email 1.9.0 > X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address > (bad octet value). > X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x > X-BeenThere: debbugs-submit@debbugs.gnu.org > X-Mailman-Version: 2.1.15 > Precedence: list > X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x > X-Received-From: 140.186.70.43 > Cc: meyering@fb.com > X-BeenThere: bug-grep@gnu.org > List-Id: Bug reports for GNU grep > List-Unsubscribe: , > > List-Archive: > List-Post: > List-Help: > List-Subscribe: , > > Errors-To: bug-grep-bounces+arnold=skeeve.com@gnu.org > Sender: bug-grep-bounces+arnold=skeeve.com@gnu.org > Status: R > > This partially reverts the following commits: > - df6da5d40a47abbc6e3451cb9fab7a8c9ede12cc. > - c40e7f7158109985b901ae67e5faa06160547471. > - 0995fc11214ebbb1c99a4b6d675fe615b0ed8539. > > As far as grep is concerned, the #define *does* belong in gnulib. gawk > can apply the fix in a common header file like grep's src/system.h. > --- > src/dfa.c | 6 +----- > 1 file changed, 1 insertion(+), 5 deletions(-) > > diff --git a/src/dfa.c b/src/dfa.c > index b22fe97..a7f0056 100644 > --- a/src/dfa.c > +++ b/src/dfa.c > @@ -34,11 +34,7 @@ > #include > #include > > -/* Gawk doesn't use Gnulib, so don't assume that setlocale and > - static_assert are present. */ > -#ifndef LC_ALL > -# define setlocale(category, locale) NULL > -#endif > +/* Gawk doesn't use Gnulib, so don't assume static_assert is present. */ > #ifndef static_assert > # define static_assert(cond, diagnostic) \ > extern int (*foo (void)) [!!sizeof (struct { int foo: (cond) ? 8 : -1; })] > -- > 1.9.0 > > > > > From debbugs-submit-bounces@debbugs.gnu.org Tue Apr 01 05:48:02 2014 Received: (at 17157) by debbugs.gnu.org; 1 Apr 2014 09:48:02 +0000 Received: from localhost ([127.0.0.1]:58822 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WUvIX-0005vp-LN for submit@debbugs.gnu.org; Tue, 01 Apr 2014 05:48:01 -0400 Received: from mail-wg0-f41.google.com ([74.125.82.41]:58690) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WUvIV-0005vO-9N for 17157@debbugs.gnu.org; Tue, 01 Apr 2014 05:48:00 -0400 Received: by mail-wg0-f41.google.com with SMTP id n12so7296370wgh.24 for <17157@debbugs.gnu.org>; Tue, 01 Apr 2014 02:47:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=MRLByKlOc6TsJOLLCrLhE1ESZ8/5UebjdYM7Y5TYWVU=; b=SVVVdh89XxqjulgMbpMinYKoNCY+qK+TEr5n03gk6wJ+hr07bt942rMR3fuyc9ptL+ Ih9vlPZXIqzSH2bnd8CAegqyfFwbttFnbyD/Ar820FvmlFkooHS6x+POrvH+H43vnzey 4SGK8N8h9X1a1cTDw7UPqk+0NCW0/1PKuym4J8WrOcSOTwGEnJ+MxL96mYSPbwpxQag3 8u1AuBTnMf3FiJazXVG+h4DCbvGo4CQ7vqIhW9QFuP8Aeex2x5ktw36/cwqcuhkubGWz F0If5jAfzltHOnfTXK9HTeSooyD8d6SGGf+bP66qEoAwxuikUYNIKKO/36dCDFzGxaZp iPXA== X-Received: by 10.180.164.229 with SMTP id yt5mr10680733wib.41.1396345678252; Tue, 01 Apr 2014 02:47:58 -0700 (PDT) Received: from yakj.usersys.redhat.com (net-37-117-156-129.cust.vodafonedsl.it. [37.117.156.129]) by mx.google.com with ESMTPSA id e42sm39329949eev.32.2014.04.01.02.47.56 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Tue, 01 Apr 2014 02:47:57 -0700 (PDT) Message-ID: <533A8B4B.40008@gnu.org> Date: Tue, 01 Apr 2014 11:47:55 +0200 From: Paolo Bonzini User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 MIME-Version: 1.0 To: arnold@skeeve.com, 17157@debbugs.gnu.org Subject: Re: bug#17157: [PATCH 1/5] Partially revert "dfa: improve port to freestanding DJGPP" References: <1396343926-1394-1-git-send-email-bonzini@gnu.org> <1396343926-1394-2-git-send-email-bonzini@gnu.org> <201404010933.s319XWUR023408@freefriends.org> In-Reply-To: <201404010933.s319XWUR023408@freefriends.org> X-Enigmail-Version: 1.6 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 17157 Cc: meyering@fb.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) Il 01/04/2014 11:33, arnold@skeeve.com ha scritto: > Please don't revert this change. dfa.c is *shared* code, and there's no > reason for gawk to put stuff needed ONLY by dfa.c into its config.h > file. (Gawk doesn't have a system.h - most of that stuff is in awk.h > at the momment. The rest is in custom.h which is used to override defaults > from configure, and not for portability.) > > I understand that grep doesn't need it, but dfa serves more than > one master. I appreciate the grep team's accommodating gawk's needs. Then we should add a separate header for this purpose. One thing is serving more than one master and having the occasional #ifndef GREP, another thing is doing things twice in grep (via gnulib and explicitly in dfa.c). setlocale, static_assert etc. should be in a dfacompat.h file that is not shared between grep and gawk and could also include the #define for GREP and GAWK symbols. Paolo From debbugs-submit-bounces@debbugs.gnu.org Tue Apr 01 06:54:42 2014 Received: (at 17157) by debbugs.gnu.org; 1 Apr 2014 10:54:42 +0000 Received: from localhost ([127.0.0.1]:58852 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WUwL2-0007hF-UM for submit@debbugs.gnu.org; Tue, 01 Apr 2014 06:54:41 -0400 Received: from frenzy.freefriends.org ([66.54.153.139]:37225 helo=freefriends.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WUwKz-0007h6-RV for 17157@debbugs.gnu.org; Tue, 01 Apr 2014 06:54:38 -0400 X-Envelope-From: arnold@skeeve.com Received: from freefriends.org (localhost [127.0.0.1]) by freefriends.org (8.14.8/8.14.8) with ESMTP id s31AsI3H026550; Tue, 1 Apr 2014 04:54:18 -0600 Received: (from arnold@localhost) by freefriends.org (8.14.8/8.14.8/submit) id s31AsIpI026549; Tue, 1 Apr 2014 10:54:18 GMT From: arnold@skeeve.com Message-Id: <201404011054.s31AsIpI026549@freefriends.org> X-Authentication-Warning: frenzy.freefriends.org: arnold set sender to arnold@skeeve.com using -f Date: Tue, 01 Apr 2014 04:54:17 -0600 To: bonzini@gnu.org, arnold@skeeve.com, 17157@debbugs.gnu.org Subject: Re: bug#17157: [PATCH 1/5] Partially revert "dfa: improve port to freestanding DJGPP" References: <1396343926-1394-1-git-send-email-bonzini@gnu.org> <1396343926-1394-2-git-send-email-bonzini@gnu.org> <201404010933.s319XWUR023408@freefriends.org> <533A8B4B.40008@gnu.org> In-Reply-To: <533A8B4B.40008@gnu.org> User-Agent: Heirloom mailx 12.4 7/29/08 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 17157 Cc: meyering@fb.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) Hi Paolo. > One thing is serving more than one master and having the occasional > #ifndef GREP, another thing is doing things twice in grep (via gnulib > and explicitly in dfa.c). > > setlocale, static_assert etc. should be in a dfacompat.h file that is > not shared between grep and gawk and could also include the #define for > GREP and GAWK symbols. I could live with that. It's a good idea. Thanks, Arnold From debbugs-submit-bounces@debbugs.gnu.org Tue Apr 01 08:01:15 2014 Received: (at 17157) by debbugs.gnu.org; 1 Apr 2014 12:01:15 +0000 Received: from localhost ([127.0.0.1]:58900 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WUxNS-00024z-R5 for submit@debbugs.gnu.org; Tue, 01 Apr 2014 08:01:15 -0400 Received: from frenzy.freefriends.org ([66.54.153.139]:37609 helo=freefriends.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WUxNP-00024n-O4 for 17157@debbugs.gnu.org; Tue, 01 Apr 2014 08:01:12 -0400 X-Envelope-From: arnold@skeeve.com Received: from freefriends.org (localhost [127.0.0.1]) by freefriends.org (8.14.8/8.14.8) with ESMTP id s31C0pfC029190; Tue, 1 Apr 2014 06:00:51 -0600 Received: (from arnold@localhost) by freefriends.org (8.14.8/8.14.8/submit) id s31C0pYa029189; Tue, 1 Apr 2014 12:00:51 GMT From: arnold@skeeve.com Message-Id: <201404011200.s31C0pYa029189@freefriends.org> X-Authentication-Warning: frenzy.freefriends.org: arnold set sender to arnold@skeeve.com using -f Date: Tue, 01 Apr 2014 06:00:51 -0600 To: bonzini@gnu.org, arnold@skeeve.com, 17157@debbugs.gnu.org Subject: Re: bug#17157: [PATCH 1/5] Partially revert "dfa: improve port to freestanding DJGPP" References: <1396343926-1394-1-git-send-email-bonzini@gnu.org> <1396343926-1394-2-git-send-email-bonzini@gnu.org> <201404010933.s319XWUR023408@freefriends.org> <533A8B4B.40008@gnu.org> <201404011054.s31AsIpI026549@freefriends.org> In-Reply-To: <201404011054.s31AsIpI026549@freefriends.org> User-Agent: Heirloom mailx 12.4 7/29/08 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 17157 Cc: meyering@fb.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) Hi. > > One thing is serving more than one master and having the occasional > > #ifndef GREP, another thing is doing things twice in grep (via gnulib > > and explicitly in dfa.c). > > > > setlocale, static_assert etc. should be in a dfacompat.h file that is > > not shared between grep and gawk and could also include the #define for > > GREP and GAWK symbols. > > I could live with that. It's a good idea. I should point out that defining GAWK in dfacompat.h is not the right thing - I define it globally since there are a few gawk-specific bits in the regex code too. Thanks, Arnold From debbugs-submit-bounces@debbugs.gnu.org Tue Apr 01 10:43:10 2014 Received: (at 17157) by debbugs.gnu.org; 1 Apr 2014 14:43:10 +0000 Received: from localhost ([127.0.0.1]:59453 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WUzu9-0007Xz-CI for submit@debbugs.gnu.org; Tue, 01 Apr 2014 10:43:09 -0400 Received: from smtp.cs.ucla.edu ([131.179.128.62]:53979) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WUzu2-0007Xo-La for 17157@debbugs.gnu.org; Tue, 01 Apr 2014 10:43:07 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp.cs.ucla.edu (Postfix) with ESMTP id 4C0FEA6000B; Tue, 1 Apr 2014 07:43:01 -0700 (PDT) X-Virus-Scanned: amavisd-new at smtp.cs.ucla.edu Received: from smtp.cs.ucla.edu ([127.0.0.1]) by localhost (smtp.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id yF3kr+l2zl7n; Tue, 1 Apr 2014 07:43:00 -0700 (PDT) Received: from [192.168.1.9] (pool-108-0-233-62.lsanca.fios.verizon.net [108.0.233.62]) by smtp.cs.ucla.edu (Postfix) with ESMTPSA id A9FEBA60009; Tue, 1 Apr 2014 07:43:00 -0700 (PDT) Message-ID: <533AD074.60209@cs.ucla.edu> Date: Tue, 01 Apr 2014 07:43:00 -0700 From: Paul Eggert Organization: UCLA Computer Science Department User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 MIME-Version: 1.0 To: Paolo Bonzini , arnold@skeeve.com, 17157@debbugs.gnu.org Subject: Re: bug#17157: [PATCH 1/5] Partially revert "dfa: improve port to freestanding DJGPP" References: <1396343926-1394-1-git-send-email-bonzini@gnu.org> <1396343926-1394-2-git-send-email-bonzini@gnu.org> <201404010933.s319XWUR023408@freefriends.org> <533A8B4B.40008@gnu.org> In-Reply-To: <533A8B4B.40008@gnu.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -2.9 (--) X-Debbugs-Envelope-To: 17157 Cc: meyering@fb.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.9 (--) Paolo Bonzini wrote: > setlocale, static_assert etc. should be in a dfacompat.h file We already have a file that serves this function, called mbsupport.h. We could rename it to dfaconfig.h (a better name than dfacompat.h, as it's basically a separate config.h for dfa.c). While we're on the topic, does anybody build gawk or grep with -DMBS_SUPPORT=0? I suspect not, which means we could simplify dfaconfig.h compared to mbsupport.h. (And if somebody does build it that way, I suspect it's buggy....) From debbugs-submit-bounces@debbugs.gnu.org Tue Apr 01 11:08:57 2014 Received: (at 17157) by debbugs.gnu.org; 1 Apr 2014 15:08:58 +0000 Received: from localhost ([127.0.0.1]:59503 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WV0J7-0008G5-8u for submit@debbugs.gnu.org; Tue, 01 Apr 2014 11:08:57 -0400 Received: from mail-wg0-f51.google.com ([74.125.82.51]:56181) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WV0J4-0008Fw-9q for 17157@debbugs.gnu.org; Tue, 01 Apr 2014 11:08:54 -0400 Received: by mail-wg0-f51.google.com with SMTP id k14so7661201wgh.10 for <17157@debbugs.gnu.org>; Tue, 01 Apr 2014 08:08:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=ejpajQshLXJ1stso0U6f17fztEPjm6lBt2rd3LwO4hI=; b=C6OPM7DB2oNO7pwi/hYrYP1pMz9jIZMPdnvkVd0k7eYDiu5E4JATf3IdC/+FQiaWxt QavfhHoEqxvnismQMgy2mSUlD9mpjC30kz7ahl8JILyu4i3AE7CIbSAwnl1tqjff583Y fXu8bKGExVNEoF8z7uhmfanTNiKIIj07PGRHO2NShWeVDZg3Ak8sGgZvtnhSdRVyi7TQ sWXAAc9CfwUduhmJnsA84FVzkvtNcE/6bbtFm9OfHvRDncLUg/a4/2sMIAMI41DnYwhN MFJgj5DtUxWRnO6IhahijG88v4fdcnvq9PS/Oa/LVBlgcj+4m1X4T6f6YI/LspGEJy4I p3HA== X-Received: by 10.194.189.201 with SMTP id gk9mr21313919wjc.13.1396364933004; Tue, 01 Apr 2014 08:08:53 -0700 (PDT) Received: from yakj.usersys.redhat.com (net-37-117-156-129.cust.vodafonedsl.it. [37.117.156.129]) by mx.google.com with ESMTPSA id 45sm41169234eeh.9.2014.04.01.08.08.51 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Tue, 01 Apr 2014 08:08:52 -0700 (PDT) Message-ID: <533AD682.9080508@gnu.org> Date: Tue, 01 Apr 2014 17:08:50 +0200 From: Paolo Bonzini User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 MIME-Version: 1.0 To: Paul Eggert , arnold@skeeve.com, 17157@debbugs.gnu.org Subject: Re: bug#17157: [PATCH 1/5] Partially revert "dfa: improve port to freestanding DJGPP" References: <1396343926-1394-1-git-send-email-bonzini@gnu.org> <1396343926-1394-2-git-send-email-bonzini@gnu.org> <201404010933.s319XWUR023408@freefriends.org> <533A8B4B.40008@gnu.org> <533AD074.60209@cs.ucla.edu> In-Reply-To: <533AD074.60209@cs.ucla.edu> X-Enigmail-Version: 1.6 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 17157 Cc: meyering@fb.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) Il 01/04/2014 16:43, Paul Eggert ha scritto: > Paolo Bonzini wrote: >> setlocale, static_assert etc. should be in a dfacompat.h file > > We already have a file that serves this function, called mbsupport.h. We > could rename it to dfaconfig.h (a better name than dfacompat.h, as it's > basically a separate config.h for dfa.c). Good idea. Paolo From debbugs-submit-bounces@debbugs.gnu.org Tue Apr 01 14:36:40 2014 Received: (at 17157) by debbugs.gnu.org; 1 Apr 2014 18:36:40 +0000 Received: from localhost ([127.0.0.1]:59695 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WV3Y6-0007m5-Qo for submit@debbugs.gnu.org; Tue, 01 Apr 2014 14:36:39 -0400 Received: from frenzy.freefriends.org ([66.54.153.139]:41428 helo=freefriends.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WV3Y3-0007lw-Oo for 17157@debbugs.gnu.org; Tue, 01 Apr 2014 14:36:36 -0400 X-Envelope-From: arnold@skeeve.com Received: from freefriends.org (localhost [127.0.0.1]) by freefriends.org (8.14.8/8.14.8) with ESMTP id s31Ia9vM023325; Tue, 1 Apr 2014 12:36:09 -0600 Received: (from arnold@localhost) by freefriends.org (8.14.8/8.14.8/submit) id s31Ia8gi023324; Tue, 1 Apr 2014 18:36:08 GMT From: arnold@skeeve.com Message-Id: <201404011836.s31Ia8gi023324@freefriends.org> X-Authentication-Warning: frenzy.freefriends.org: arnold set sender to arnold@skeeve.com using -f Date: Tue, 01 Apr 2014 12:36:08 -0600 To: eggert@cs.ucla.edu, bonzini@gnu.org, arnold@skeeve.com, 17157@debbugs.gnu.org Subject: Re: bug#17157: [PATCH 1/5] Partially revert "dfa: improve port to freestanding DJGPP" References: <1396343926-1394-1-git-send-email-bonzini@gnu.org> <1396343926-1394-2-git-send-email-bonzini@gnu.org> <201404010933.s319XWUR023408@freefriends.org> <533A8B4B.40008@gnu.org> <533AD074.60209@cs.ucla.edu> <533AD682.9080508@gnu.org> In-Reply-To: <533AD682.9080508@gnu.org> User-Agent: Heirloom mailx 12.4 7/29/08 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 17157 Cc: meyering@fb.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) Hi Paul & Paolo, Paolo Bonzini wrote: > Il 01/04/2014 16:43, Paul Eggert ha scritto: > > Paolo Bonzini wrote: > >> setlocale, static_assert etc. should be in a dfacompat.h file > > > > We already have a file that serves this function, called mbsupport.h. We > > could rename it to dfaconfig.h (a better name than dfacompat.h, as it's > > basically a separate config.h for dfa.c). > > Good idea. > > Paolo Not really such a good idea. mbsupport.h is used in multiple places in gawk to define if MBS support is availble. It needs to stay that way. Since we're discussing keeping dfa simple in both its environments, then it needs to be in a header that only dfa uses. At the moment, the best candidate is xalloc.h, which differs somewhat grep vs. gawk. But here too, in reality that file is mainly for allocation stuff and dfa portability doesn't really belong there. I respectfully suggest dfaconfig.h (or dfacustom.h) with #ifdef GAWK #ifndef HAVE_SETLOCALE #define selocale(x, y) NULL #endif #define static_assert(cond) ... #endif as the initial contents. Much thanks, Arnold From debbugs-submit-bounces@debbugs.gnu.org Wed Apr 02 03:10:51 2014 Received: (at 17157) by debbugs.gnu.org; 2 Apr 2014 07:10:51 +0000 Received: from localhost ([127.0.0.1]:60244 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WVFJy-0004wq-Ok for submit@debbugs.gnu.org; Wed, 02 Apr 2014 03:10:51 -0400 Received: from mail-wi0-f180.google.com ([209.85.212.180]:65129) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WVFJw-0004wh-3g for 17157@debbugs.gnu.org; Wed, 02 Apr 2014 03:10:49 -0400 Received: by mail-wi0-f180.google.com with SMTP id q5so6442997wiv.7 for <17157@debbugs.gnu.org>; Wed, 02 Apr 2014 00:10:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=MtexDnJX/wt8PtFxGD03IbD6B9UXQLmz+bsVCT8Hr0g=; b=coGiUABDmH6KdpH6DBVMUvgDtCD8kzaz0BjeVRyDsOGlIVwjB8KawV5wfcdcJbk0FU FnaidFTjuNRjQ3yzC6/jaV/KhkLUjGDQWnZ9ZqzU5m8gIAo4ikg8+o4NHovmIV3dWkqu KH/EcFu/psXRUKOdt0M8HLJkZtMf8OTV3H15/OO3I+kEiQzEQxyvS7X3h/LTknPkaWmV sG/8RunTR96Lpx5kI8ubgDEO5llRQRu8WMcqTihWkz1HtlJ/hb/pjleeKAwECCqOT97x GPcgJQEPolfzncov3FJUNvGaSZEKYA3jwlWIbgEEgivyfsnQZ3vj5ps6AXhryyngERHs e0/A== X-Received: by 10.194.192.132 with SMTP id hg4mr28875770wjc.28.1396422647180; Wed, 02 Apr 2014 00:10:47 -0700 (PDT) Received: from yakj.usersys.redhat.com (net-37-117-156-129.cust.vodafonedsl.it. [37.117.156.129]) by mx.google.com with ESMTPSA id u1sm2412715eex.31.2014.04.02.00.10.45 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 02 Apr 2014 00:10:46 -0700 (PDT) Message-ID: <533BB7F2.8020700@gnu.org> Date: Wed, 02 Apr 2014 09:10:42 +0200 From: Paolo Bonzini User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 MIME-Version: 1.0 To: arnold@skeeve.com, eggert@cs.ucla.edu, 17157@debbugs.gnu.org Subject: Re: bug#17157: [PATCH 1/5] Partially revert "dfa: improve port to freestanding DJGPP" References: <1396343926-1394-1-git-send-email-bonzini@gnu.org> <1396343926-1394-2-git-send-email-bonzini@gnu.org> <201404010933.s319XWUR023408@freefriends.org> <533A8B4B.40008@gnu.org> <533AD074.60209@cs.ucla.edu> <533AD682.9080508@gnu.org> <201404011836.s31Ia8gi023324@freefriends.org> In-Reply-To: <201404011836.s31Ia8gi023324@freefriends.org> X-Enigmail-Version: 1.6 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 17157 Cc: meyering@fb.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) Il 01/04/2014 20:36, arnold@skeeve.com ha scritto: > Not really such a good idea. mbsupport.h is used in multiple places > in gawk to define if MBS support is availble. It needs to stay > that way. Since we're discussing keeping dfa simple in both its > environments, then it needs to be in a header that only dfa uses. > > At the moment, the best candidate is xalloc.h, which differs somewhat > grep vs. gawk. > > But here too, in reality that file is mainly for allocation stuff > and dfa portability doesn't really belong there. > > I respectfully suggest dfaconfig.h (or dfacustom.h) with > > #ifdef GAWK > #ifndef HAVE_SETLOCALE > #define selocale(x, y) NULL > #endif > #define static_assert(cond) ... > #endif > > as the initial contents. Couldn't gawk's dfaconfig.h include gawk's mbsupport.h? Paolo From debbugs-submit-bounces@debbugs.gnu.org Wed Apr 02 03:40:41 2014 Received: (at 17157) by debbugs.gnu.org; 2 Apr 2014 07:40:41 +0000 Received: from localhost ([127.0.0.1]:60303 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WVFmp-0005jj-Ho for submit@debbugs.gnu.org; Wed, 02 Apr 2014 03:40:40 -0400 Received: from frenzy.freefriends.org ([66.54.153.139]:46806 helo=freefriends.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WVFmm-0005jZ-Ir for 17157@debbugs.gnu.org; Wed, 02 Apr 2014 03:40:37 -0400 X-Envelope-From: arnold@skeeve.com Received: from freefriends.org (localhost [127.0.0.1]) by freefriends.org (8.14.8/8.14.8) with ESMTP id s327eF3t032375; Wed, 2 Apr 2014 01:40:15 -0600 Received: (from arnold@localhost) by freefriends.org (8.14.8/8.14.8/submit) id s327eFxG032374; Wed, 2 Apr 2014 07:40:15 GMT From: arnold@skeeve.com Message-Id: <201404020740.s327eFxG032374@freefriends.org> X-Authentication-Warning: frenzy.freefriends.org: arnold set sender to arnold@skeeve.com using -f Date: Wed, 02 Apr 2014 01:40:15 -0600 To: eggert@cs.ucla.edu, bonzini@gnu.org, arnold@skeeve.com, 17157@debbugs.gnu.org Subject: Re: bug#17157: [PATCH 1/5] Partially revert "dfa: improve port to freestanding DJGPP" References: <1396343926-1394-1-git-send-email-bonzini@gnu.org> <1396343926-1394-2-git-send-email-bonzini@gnu.org> <201404010933.s319XWUR023408@freefriends.org> <533A8B4B.40008@gnu.org> <533AD074.60209@cs.ucla.edu> In-Reply-To: <533AD074.60209@cs.ucla.edu> User-Agent: Heirloom mailx 12.4 7/29/08 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 17157 Cc: meyering@fb.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) Paul Eggert wrote: > While we're on the topic, does anybody build gawk or grep with > -DMBS_SUPPORT=0? I suspect not, which means we could simplify > dfaconfig.h compared to mbsupport.h. (And if somebody does build it > that way, I suspect it's buggy....) MBS_SUPPORT is defined by the checks in mbsupport.h - noone should be setting it on the command line. I build gawk that way once in a blue moon just to test. It may be that VMS and OS/2 don't have the MBS support, I'm not sure. Please see my other mail about why mbsupport.h cannot be renamed dfaconfig.h and that a separate file is needed. Thanks, Arnold From debbugs-submit-bounces@debbugs.gnu.org Wed Apr 02 03:59:33 2014 Received: (at 17157) by debbugs.gnu.org; 2 Apr 2014 07:59:33 +0000 Received: from localhost ([127.0.0.1]:60323 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WVG51-0006E1-7N for submit@debbugs.gnu.org; Wed, 02 Apr 2014 03:59:32 -0400 Received: from frenzy.freefriends.org ([66.54.153.139]:46947 helo=freefriends.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WVG4x-0006Dq-7u for 17157@debbugs.gnu.org; Wed, 02 Apr 2014 03:59:23 -0400 X-Envelope-From: arnold@skeeve.com Received: from freefriends.org (localhost [127.0.0.1]) by freefriends.org (8.14.8/8.14.8) with ESMTP id s327x366000631; Wed, 2 Apr 2014 01:59:03 -0600 Received: (from arnold@localhost) by freefriends.org (8.14.8/8.14.8/submit) id s327x2LX000630; Wed, 2 Apr 2014 07:59:02 GMT From: arnold@skeeve.com Message-Id: <201404020759.s327x2LX000630@freefriends.org> X-Authentication-Warning: frenzy.freefriends.org: arnold set sender to arnold@skeeve.com using -f Date: Wed, 02 Apr 2014 01:59:02 -0600 To: eggert@cs.ucla.edu, bonzini@gnu.org, arnold@skeeve.com, 17157@debbugs.gnu.org Subject: Re: bug#17157: [PATCH 1/5] Partially revert "dfa: improve port to freestanding DJGPP" References: <1396343926-1394-1-git-send-email-bonzini@gnu.org> <1396343926-1394-2-git-send-email-bonzini@gnu.org> <201404010933.s319XWUR023408@freefriends.org> <533A8B4B.40008@gnu.org> <533AD074.60209@cs.ucla.edu> <533AD682.9080508@gnu.org> <201404011836.s31Ia8gi023324@freefriends.org> <533BB7F2.8020700@gnu.org> In-Reply-To: <533BB7F2.8020700@gnu.org> User-Agent: Heirloom mailx 12.4 7/29/08 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 17157 Cc: meyering@fb.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) Paolo Bonzini wrote: > Il 01/04/2014 20:36, arnold@skeeve.com ha scritto: > > Not really such a good idea. mbsupport.h is used in multiple places > > in gawk to define if MBS support is availble. It needs to stay > > that way. Since we're discussing keeping dfa simple in both its > > environments, then it needs to be in a header that only dfa uses. > > > > At the moment, the best candidate is xalloc.h, which differs somewhat > > grep vs. gawk. > > > > But here too, in reality that file is mainly for allocation stuff > > and dfa portability doesn't really belong there. > > > > I respectfully suggest dfaconfig.h (or dfacustom.h) with > > > > #ifdef GAWK > > #ifndef HAVE_SETLOCALE > > #define selocale(x, y) NULL > > #endif > > #define static_assert(cond) ... > > #endif > > > > as the initial contents. > > Couldn't gawk's dfaconfig.h include gawk's mbsupport.h? Yes, but why? dfa.c needs mbsuport.h no matter what. Using Paul's separation of concerns: * mbsupport.h - provide definition for MBSUPPORT. Opaque to dfa.c. * xalloc.h - provide declarations (and maybe definitions) for **alloc, opaque to dfa.c * dfaconfg.h - provide other definitions needed by dfa.c which may not be in standard headers for when gnulib isn't being used Thanks, Arnold From debbugs-submit-bounces@debbugs.gnu.org Wed Apr 02 07:19:39 2014 Received: (at 17157) by debbugs.gnu.org; 2 Apr 2014 11:19:39 +0000 Received: from localhost ([127.0.0.1]:60404 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WVJCk-000357-Kk for submit@debbugs.gnu.org; Wed, 02 Apr 2014 07:19:38 -0400 Received: from mail-wg0-f45.google.com ([74.125.82.45]:54748) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WVJCh-00034y-If for 17157@debbugs.gnu.org; Wed, 02 Apr 2014 07:19:36 -0400 Received: by mail-wg0-f45.google.com with SMTP id l18so41897wgh.28 for <17157@debbugs.gnu.org>; Wed, 02 Apr 2014 04:19:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=/gju2bnDhtQJBhkn1wqvQ0tgQzofCvCIyaSM/4KPPAU=; b=OcsyPDSMvZ2wP0Znih/8EIuuQEGOKjt7hsLjdbedpMmhp5krOIRqSpPAHp9G/PyEBG o/Nt6RaNWS36XMtKNaHcW07DRFIPJd6eXmpjrwziuFlUuiEsxoS2zbZrQ9oF831czCFG 4zhf0N+2qUz0HseWA5OPRqxSEafTVih5k2V0TrJl77MffEEp//vsvZ8EFYTs2sDY/NrK lK62/YvyvZhYooF60em1x8fffnPGyHfMnCV+Mve1ufa/ap9+rtSYKwFM6o1djN1R5+3J o0mu3qg/nYvqOuBwJ7yYBJBxkUh1dOn67Ba+72mTjEu7jquWCJEYjlva5BToI5FN6dfa 81tg== X-Received: by 10.194.78.77 with SMTP id z13mr22045689wjw.64.1396437574617; Wed, 02 Apr 2014 04:19:34 -0700 (PDT) Received: from yakj.usersys.redhat.com (net-37-117-156-129.cust.vodafonedsl.it. [37.117.156.129]) by mx.google.com with ESMTPSA id u1sm3812110eex.31.2014.04.02.04.19.31 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 02 Apr 2014 04:19:32 -0700 (PDT) Message-ID: <533BF242.3040406@gnu.org> Date: Wed, 02 Apr 2014 13:19:30 +0200 From: Paolo Bonzini User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 MIME-Version: 1.0 To: arnold@skeeve.com, eggert@cs.ucla.edu, 17157@debbugs.gnu.org Subject: Re: bug#17157: [PATCH 1/5] Partially revert "dfa: improve port to freestanding DJGPP" References: <1396343926-1394-1-git-send-email-bonzini@gnu.org> <1396343926-1394-2-git-send-email-bonzini@gnu.org> <201404010933.s319XWUR023408@freefriends.org> <533A8B4B.40008@gnu.org> <533AD074.60209@cs.ucla.edu> <533AD682.9080508@gnu.org> <201404011836.s31Ia8gi023324@freefriends.org> <533BB7F2.8020700@gnu.org> <201404020759.s327x2LX000630@freefriends.org> In-Reply-To: <201404020759.s327x2LX000630@freefriends.org> X-Enigmail-Version: 1.6 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 17157 Cc: meyering@fb.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) Il 02/04/2014 09:59, arnold@skeeve.com ha scritto: > Using Paul's separation of concerns: > > * mbsupport.h - provide definition for MBSUPPORT. Opaque to dfa.c. > * xalloc.h - provide declarations (and maybe definitions) for **alloc, > opaque to dfa.c > * dfaconfg.h - provide other definitions needed by dfa.c which may not be > in standard headers for when gnulib isn't being used You're right, I was missing that grep uses mbsupport.h elsewhere than in dfa.c. Paolo From debbugs-submit-bounces@debbugs.gnu.org Wed Apr 02 16:58:48 2014 Received: (at 17157) by debbugs.gnu.org; 2 Apr 2014 20:58:48 +0000 Received: from localhost ([127.0.0.1]:33376 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WVSFD-0006Ja-H4 for submit@debbugs.gnu.org; Wed, 02 Apr 2014 16:58:47 -0400 Received: from smtp.cs.ucla.edu ([131.179.128.62]:58312) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WVSF9-0006JP-RE for 17157@debbugs.gnu.org; Wed, 02 Apr 2014 16:58:44 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp.cs.ucla.edu (Postfix) with ESMTP id DB6A339E8018; Wed, 2 Apr 2014 13:58:42 -0700 (PDT) X-Virus-Scanned: amavisd-new at smtp.cs.ucla.edu Received: from smtp.cs.ucla.edu ([127.0.0.1]) by localhost (smtp.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 1JmkSayCtCQy; Wed, 2 Apr 2014 13:58:37 -0700 (PDT) Received: from penguin.cs.ucla.edu (Penguin.CS.UCLA.EDU [131.179.64.200]) by smtp.cs.ucla.edu (Postfix) with ESMTPSA id B648F39E8014; Wed, 2 Apr 2014 13:58:37 -0700 (PDT) Message-ID: <533C79FD.2020807@cs.ucla.edu> Date: Wed, 02 Apr 2014 13:58:37 -0700 From: Paul Eggert Organization: UCLA Computer Science Department User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 MIME-Version: 1.0 To: arnold@skeeve.com, bonzini@gnu.org, 17157@debbugs.gnu.org Subject: Re: bug#17157: [PATCH 1/5] Partially revert "dfa: improve port to freestanding DJGPP" References: <1396343926-1394-1-git-send-email-bonzini@gnu.org> <1396343926-1394-2-git-send-email-bonzini@gnu.org> <201404010933.s319XWUR023408@freefriends.org> <533A8B4B.40008@gnu.org> <533AD074.60209@cs.ucla.edu> <201404020740.s327eFxG032374@freefriends.org> In-Reply-To: <201404020740.s327eFxG032374@freefriends.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -2.9 (--) X-Debbugs-Envelope-To: 17157 Cc: meyering@fb.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.9 (--) On 04/02/2014 12:40 AM, arnold@skeeve.com wrote: > It may be that VMS and OS/2 don't have the MBS support VMS and OS/2 both have MBS support, as far as I can see. Certainly OpenVMS does. Gawk's ChangeLogs suggest that mbsupport.h is needed only to support a port of Gawk to VAX C circa 2004, one where Pat Rankin ran into a problem with VAX C. This predates the gawk git first checkin, and predates bug-gawk, so I don't know what the problem was -- all I know is the bit of info that's in the Gawk changelogs. However, whatever the problem was, it should be possible to work around it without affecting dfa.c, and dfa.c should be able to be consistent about simply using MB_CUR_MAX to test whether we're in a unibyte locale. I'll look into writing patches for that, one for grep (which affects dfa.c), one for gawk (which will use the same patches to dfa.c). From debbugs-submit-bounces@debbugs.gnu.org Thu Apr 03 22:22:15 2014 Received: (at 17157) by debbugs.gnu.org; 4 Apr 2014 02:22:15 +0000 Received: from localhost ([127.0.0.1]:34834 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WVtli-0004Ls-2s for submit@debbugs.gnu.org; Thu, 03 Apr 2014 22:22:15 -0400 Received: from smtp.cs.ucla.edu ([131.179.128.62]:53241) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WVtlb-0004Lc-7h for 17157@debbugs.gnu.org; Thu, 03 Apr 2014 22:22:06 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp.cs.ucla.edu (Postfix) with ESMTP id 383CF39E8018; Thu, 3 Apr 2014 19:22:02 -0700 (PDT) X-Virus-Scanned: amavisd-new at smtp.cs.ucla.edu Received: from smtp.cs.ucla.edu ([127.0.0.1]) by localhost (smtp.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id gefP4lru6YaI; Thu, 3 Apr 2014 19:21:57 -0700 (PDT) Received: from [192.168.1.9] (pool-108-0-233-62.lsanca.fios.verizon.net [108.0.233.62]) by smtp.cs.ucla.edu (Postfix) with ESMTPSA id 3C08C39E8014; Thu, 3 Apr 2014 19:21:57 -0700 (PDT) Message-ID: <533E1744.3050806@cs.ucla.edu> Date: Thu, 03 Apr 2014 19:21:56 -0700 From: Paul Eggert Organization: UCLA Computer Science Department User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 MIME-Version: 1.0 To: arnold@skeeve.com, bonzini@gnu.org, 17157@debbugs.gnu.org Subject: Re: bug#17157: [PATCH 1/5] Partially revert "dfa: improve port to freestanding DJGPP" References: <1396343926-1394-1-git-send-email-bonzini@gnu.org> <1396343926-1394-2-git-send-email-bonzini@gnu.org> <201404010933.s319XWUR023408@freefriends.org> <533A8B4B.40008@gnu.org> <533AD074.60209@cs.ucla.edu> <201404020740.s327eFxG032374@freefriends.org> <533C79FD.2020807@cs.ucla.edu> In-Reply-To: <533C79FD.2020807@cs.ucla.edu> Content-Type: multipart/mixed; boundary="------------030802080703030800020706" X-Spam-Score: -2.9 (--) X-Debbugs-Envelope-To: 17157 Cc: meyering@fb.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.9 (--) This is a multi-part message in MIME format. --------------030802080703030800020706 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Paul Eggert wrote: > I'll look into writing patches for that, one for grep (which affects > dfa.c), one for gawk (which will use the same patches to dfa.c). OK, I got it to work, and it simplifies grep (not surprising) and gawk as well (a bit surprising, but there it is). I'm attaching the patches, one for each program. These patches include Paolo's original suggestion at the start of bug#17157, plus several other simplifications to dfa.c. --------------030802080703030800020706 Content-Type: text/plain; charset=UTF-8; name="0001-grep-simplify-dfa.c-by-having-it-not-include-mbsuppo.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="0001-grep-simplify-dfa.c-by-having-it-not-include-mbsuppo.pa"; filename*1="tch" RnJvbSAzYTBlOTJmMDU2OTExMzdiZDk1MTMwZGYyOTY5NTZlNTQ4ODc2ZjM5IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QHBlbmd1aW4uY3Mu dWNsYS5lZHU+CkRhdGU6IFRodSwgMyBBcHIgMjAxNCAxODoxNDoxNSAtMDcwMApTdWJqZWN0 OiBbUEFUQ0hdIGdyZXA6IHNpbXBsaWZ5IGRmYS5jIGJ5IGhhdmluZyBpdCBub3QgaW5jbHVk ZSBtYnN1cHBvcnQuaAogZGlyZWN0bHkKCiogc3JjL21ic3VwcG9ydC5oOiBSZW1vdmUuCiog c3JjL01ha2VmaWxlLmFtIChub2luc3RfSEVBREVSUyk6IFJlbW92ZSBtYnN1cHBvcnQuaC4K KiBzcmMvZGZhLmMsIHNyYy9ncmVwLmMsIHNyYy9zZWFyY2guaDogRG9uJ3QgaW5jbHVkZSBt YnN1cHBvcnQuaC4KKiBzcmMvZGZhLmM6IEluY2x1ZGUgd2NoYXIuaCBhbmQgd2N0eXBlLmgg dW5jb25kaXRpb25hbGx5LCBhcwp0aGlzIHNpbXBsaWZpZXMgdGhlIHVzZSBvZiBkZmEuYyBp biBncmVwLCBhbmQgaXQgZG9lcyBubyBoYXJtCmluIGdhd2suCihzZXRsb2NhbGUsIHN0YXRp Y19hc3NlcnQpOiBSZW1vdmUgZ2F3ay1zcGVjaWZpYyBoYWNrcywgYXMKZ2F3ayBub3cgZG9l cyB0aGVzZSBpdHNlbGYuCihzdHJ1Y3QgZGZhLCBkZmFtYmNhY2hlLCBtYnNfdG9fd2NoYXIp Cihpc192YWxpZF91bmlieXRlX2NoYXJhY3Rlciwgc2V0Yml0X3djLCB1c2luZ191dGY4LCBG RVRDSF9XQykKKGFkZHRva193YywgYWRkX3V0ZjhfYW55Y2hhciwgYXRvbSwgc3RhdGVfaW5k ZXgsIGVwc2Nsb3N1cmUpCihkZmFhbmFseXplLCBkZmFzdGF0ZSwgcHJlcGFyZV93Y19idWYs IGRmYW9wdGltaXplLCBkZmFmcmVlLCBkZmFtdXN0KToKKiBzcmMvZGZhc2VhcmNoLmMgKEVH ZXhlY3V0ZSk6Ciogc3JjL2dyZXAuYyAobWFpbik6Ciogc3JjL3NlYXJjaHV0aWxzLmMgKG1i dG91cHBlcik6CkFzc3VtZSBNQlNfU1VQUE9SVC4KLS0tCiBzcmMvTWFrZWZpbGUuYW0gICB8 ICAyICstCiBzcmMvZGZhLmMgICAgICAgICB8IDk0ICsrKysrKysrKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIHNyYy9kZmFzZWFyY2guYyAgIHwg IDMgLS0KIHNyYy9ncmVwLmMgICAgICAgIHwgIDMgLS0KIHNyYy9tYnN1cHBvcnQuaCAgIHwg MjkgLS0tLS0tLS0tLS0tLS0tLS0KIHNyYy9zZWFyY2guaCAgICAgIHwgIDMgLS0KIHNyYy9z ZWFyY2h1dGlscy5jIHwgIDIgLS0KIDcgZmlsZXMgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygr KSwgMTIwIGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyYy9tYnN1cHBvcnQu aAoKZGlmZiAtLWdpdCBhL3NyYy9NYWtlZmlsZS5hbSBiL3NyYy9NYWtlZmlsZS5hbQppbmRl eCAzNDg3ODQ4Li5mOGM5NDE1IDEwMDY0NAotLS0gYS9zcmMvTWFrZWZpbGUuYW0KKysrIGIv c3JjL01ha2VmaWxlLmFtCkBAIC0yNyw3ICsyNyw3IEBAIGdyZXBfU09VUkNFUyA9IGdyZXAu YyBzZWFyY2h1dGlscy5jIFwKICAgICAgICAgICBkZmEuYyBkZmFzZWFyY2guYyBcCiAgICAg ICAgICAga3dzZXQuYyBrd3NlYXJjaC5jIFwKICAgICAgICAgICBwY3Jlc2VhcmNoLmMKLW5v aW5zdF9IRUFERVJTID0gZ3JlcC5oIGRmYS5oIGt3c2V0Lmggc2VhcmNoLmggc3lzdGVtLmgg bWJzdXBwb3J0LmgKK25vaW5zdF9IRUFERVJTID0gZ3JlcC5oIGRmYS5oIGt3c2V0Lmggc2Vh cmNoLmggc3lzdGVtLmgKIAogIyBTb21ldGltZXMsIHRoZSBleHBhbnNpb24gb2YgJChMSUJJ TlRMKSBpbmNsdWRlcyAtbGMgd2hpY2ggbWF5CiAjIGluY2x1ZGUgbW9kdWxlcyBkZWZpbmlu ZyB2YXJpYWJsZXMgbGlrZSAnb3B0aW5kJywgc28gbGliZ3JlcHV0aWxzLmEKZGlmZiAtLWdp dCBhL3NyYy9kZmEuYyBiL3NyYy9kZmEuYwppbmRleCBiNmZiZDU4Li4wZDdlYWI1IDEwMDY0 NAotLS0gYS9zcmMvZGZhLmMKKysrIGIvc3JjL2RmYS5jCkBAIC0zNCwxNiArMzQsNiBAQAog I2luY2x1ZGUgPGxvY2FsZS5oPgogI2luY2x1ZGUgPHN0ZGJvb2wuaD4KIAotLyogR2F3ayBk b2Vzbid0IHVzZSBHbnVsaWIsIHNvIGRvbid0IGFzc3VtZSB0aGF0IHNldGxvY2FsZSBhbmQK LSAgIHN0YXRpY19hc3NlcnQgYXJlIHByZXNlbnQuICAqLwotI2lmbmRlZiBMQ19BTEwKLSMg ZGVmaW5lIHNldGxvY2FsZShjYXRlZ29yeSwgbG9jYWxlKSBOVUxMCi0jZW5kaWYKLSNpZm5k ZWYgc3RhdGljX2Fzc2VydAotIyBkZWZpbmUgc3RhdGljX2Fzc2VydChjb25kLCBkaWFnbm9z dGljKSBcCi0gICAgZXh0ZXJuIGludCAoKmZvbyAodm9pZCkpIFshIXNpemVvZiAoc3RydWN0 IHsgaW50IGZvbzogKGNvbmQpID8gOCA6IC0xOyB9KV0KLSNlbmRpZgotCiAjZGVmaW5lIFNU UkVRKGEsIGIpIChzdHJjbXAgKGEsIGIpID09IDApCiAKIC8qIElTQVNDSUlESUdJVCBkaWZm ZXJzIGZyb20gaXNkaWdpdCwgYXMgZm9sbG93czoKQEAgLTYwLDEyICs1MCw4IEBACiAjaW5j bHVkZSAiZ2V0dGV4dC5oIgogI2RlZmluZSBfKHN0cikgZ2V0dGV4dCAoc3RyKQogCi0jaW5j bHVkZSAibWJzdXBwb3J0LmgiIC8qIERlZmluZSBNQlNfU1VQUE9SVCB0byAxIG9yIDAsIGFz IGFwcHJvcHJpYXRlLiAgKi8KLSNpZiBNQlNfU1VQUE9SVAotLyogV2UgY2FuIGhhbmRsZSBt dWx0aWJ5dGUgc3RyaW5ncy4gICovCi0jIGluY2x1ZGUgPHdjaGFyLmg+Ci0jIGluY2x1ZGUg PHdjdHlwZS5oPgotI2VuZGlmCisjaW5jbHVkZSA8d2NoYXIuaD4KKyNpbmNsdWRlIDx3Y3R5 cGUuaD4KIAogI2lmIEhBVkVfTEFOR0lORk9fQ09ERVNFVAogIyBpbmNsdWRlIDxsYW5naW5m by5oPgpAQCAtMzc2LDEzICszNjIsMTEgQEAgc3RydWN0IGRmYQogICBzaXplX3Qgbm11bHRp Ynl0ZV9wcm9wOwogICBpbnQgKm11bHRpYnl0ZV9wcm9wOwogCi0jaWYgTUJTX1NVUFBPUlQK ICAgLyogQSB0YWJsZSBpbmRleGVkIGJ5IGJ5dGUgdmFsdWVzIHRoYXQgY29udGFpbnMgdGhl IGNvcnJlc3BvbmRpbmcgd2lkZQogICAgICBjaGFyYWN0ZXIgKGlmIGFueSkgZm9yIHRoYXQg Ynl0ZS4gIFdFT0YgbWVhbnMgdGhlIGJ5dGUgaXMgdGhlCiAgICAgIGxlYWRpbmcgYnl0ZSBv ZiBhIG11bHRpYnl0ZSBjaGFyYWN0ZXIuICBJbnZhbGlkIGFuZCBudWxsIGJ5dGVzIGFyZQog ICAgICBtYXBwZWQgdG8gdGhlbXNlbHZlcy4gICovCiAgIHdpbnRfdCBtYnJ0b3djX2NhY2hl W05PVENIQVJdOwotI2VuZGlmCiAKICAgLyogQXJyYXkgb2YgdGhlIGJyYWNrZXQgZXhwcmVz c2lvbiBpbiB0aGUgREZBLiAgKi8KICAgc3RydWN0IG1iX2NoYXJfY2xhc3NlcyAqbWJjc2V0 czsKQEAgLTQ4OCw3ICs0NzIsNiBAQCBzdGF0aWMgdm9pZCByZWdleHAgKHZvaWQpOwogc3Rh dGljIHZvaWQKIGRmYW1iY2FjaGUgKHN0cnVjdCBkZmEgKmQpCiB7Ci0jaWYgTUJTX1NVUFBP UlQKICAgaW50IGk7CiAgIGZvciAoaSA9IENIQVJfTUlOOyBpIDw9IENIQVJfTUFYOyArK2kp CiAgICAgewpAQCAtNTA1LDEwICs0ODgsOCBAQCBkZmFtYmNhY2hlIChzdHJ1Y3QgZGZhICpk KQogICAgICAgICB9CiAgICAgICBkLT5tYnJ0b3djX2NhY2hlW3VjXSA9IHdpOwogICAgIH0K LSNlbmRpZgogfQogCi0jaWYgTUJTX1NVUFBPUlQKIC8qIEdpdmVuIHRoZSBkZmEgRCwgc3Rv cmUgaW50byAqUFdDIHRoZSByZXN1bHQgb2YgY29udmVydGluZyB0aGUKICAgIGxlYWRpbmcg Ynl0ZXMgb2YgdGhlIG11bHRpYnl0ZSBidWZmZXIgUyBvZiBsZW5ndGggTiBieXRlcywgdXBk YXRpbmcKICAgIHRoZSBjb252ZXJzaW9uIHN0YXRlIGluICpNQlMuICBPbiBjb252ZXJzaW9u IGVycm9yLCBjb252ZXJ0IGp1c3QgYQpAQCAtNTQyLDcgKzUyMyw2IEBAIG1ic190b193Y2hh ciAoc3RydWN0IGRmYSAqZCwgd2NoYXJfdCAqcHdjLCBjaGFyIGNvbnN0ICpzLCBzaXplX3Qg biwKICAgKnB3YyA9IHdjOwogICByZXR1cm4gMTsKIH0KLSNlbmRpZgogCiAjaWZkZWYgREVC VUcKIApAQCAtNzEyLDcgKzY5Miw3IEBAIHN0YXRpYyBjaGFyY2xhc3MgbmV3bGluZTsKICNp ZmRlZiBfX0dMSUJDX18KICMgZGVmaW5lIGlzX3ZhbGlkX3VuaWJ5dGVfY2hhcmFjdGVyKGMp IDEKICNlbHNlCi0jIGRlZmluZSBpc192YWxpZF91bmlieXRlX2NoYXJhY3RlcihjKSAoISAo TUJTX1NVUFBPUlQgJiYgYnRvd2MgKGMpID09IFdFT0YpKQorIyBkZWZpbmUgaXNfdmFsaWRf dW5pYnl0ZV9jaGFyYWN0ZXIoYykgKGJ0b3djIChjKSAhPSBXRU9GKQogI2VuZGlmCiAKIC8q IFJldHVybiBub24temVybyBpZiBDIGlzIGEgIndvcmQtY29uc3RpdHVlbnQiIGJ5dGU7IHpl cm8gb3RoZXJ3aXNlLiAgKi8KQEAgLTc3MywxNyArNzUzLDEyIEBAIGRmYXN5bnRheCAocmVn X3N5bnRheF90IGJpdHMsIGludCBmb2xkLCB1bnNpZ25lZCBjaGFyIGVvbCkKIHN0YXRpYyBi b29sCiBzZXRiaXRfd2MgKHdpbnRfdCB3YywgY2hhcmNsYXNzIGMpCiB7Ci0jaWYgTUJTX1NV UFBPUlQKICAgaW50IGIgPSB3Y3RvYiAod2MpOwogICBpZiAoYiA9PSBFT0YpCiAgICAgcmV0 dXJuIGZhbHNlOwogCiAgIHNldGJpdCAoYiwgYyk7CiAgIHJldHVybiB0cnVlOwotI2Vsc2UK LSAgYWJvcnQgKCk7Ci0gICAvKk5PVFJFQUNIRUQqLyByZXR1cm4gZmFsc2U7Ci0jZW5kaWYK IH0KIAogLyogU2V0IGEgYml0IGZvciBCIGFuZCBpdHMgY2FzZSB2YXJpYW50cyBpbiB0aGUg Y2hhcmNsYXNzIEMuCkBAIC04MDgsNyArNzgzLDcgQEAgdXNpbmdfdXRmOCAodm9pZCkKICAg c3RhdGljIGludCB1dGY4ID0gLTE7CiAgIGlmICh1dGY4ID09IC0xKQogICAgIHsKLSNpZiBk ZWZpbmVkIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAmJiBNQlNfU1VQUE9SVAorI2lmIGRlZmlu ZWQgSEFWRV9MQU5HSU5GT19DT0RFU0VUCiAgICAgICB1dGY4ID0gKFNUUkVRIChubF9sYW5n aW5mbyAoQ09ERVNFVCksICJVVEYtOCIpKTsKICNlbHNlCiAgICAgICB1dGY4ID0gMDsKQEAg LTg5Nyw3ICs4NzIsNiBAQCBzdGF0aWMgdW5zaWduZWQgY2hhciBjb25zdCAqYnVmX2JlZ2lu OyAgLyogcmVmZXJlbmNlIHRvIGJlZ2luIGluIGRmYWV4ZWMuICAqLwogc3RhdGljIHVuc2ln bmVkIGNoYXIgY29uc3QgKmJ1Zl9lbmQ7ICAgIC8qIHJlZmVyZW5jZSB0byBlbmQgaW4gZGZh ZXhlYy4gICovCiAKIAotI2lmIE1CU19TVVBQT1JUCiAvKiBOb3RlIHRoYXQgY2hhcmFjdGVy cyBiZWNvbWUgdW5zaWduZWQgaGVyZS4gICovCiAjIGRlZmluZSBGRVRDSF9XQyhjLCB3Yywg ZW9mZXJyKQkJXAogICBkbyB7CQkJCQkJXApAQCAtOTIwLDIzICs4OTQsNiBAQCBzdGF0aWMg dW5zaWduZWQgY2hhciBjb25zdCAqYnVmX2VuZDsgICAgLyogcmVmZXJlbmNlIHRvIGVuZCBp biBkZmFleGVjLiAgKi8KICAgICAgIH0JCQkJCQlcCiAgIH0gd2hpbGUgKDApCiAKLSNlbHNl Ci0vKiBOb3RlIHRoYXQgY2hhcmFjdGVycyBiZWNvbWUgdW5zaWduZWQgaGVyZS4gICovCi0j IGRlZmluZSBGRVRDSF9XQyhjLCB1bnVzZWQsIGVvZmVycikgIFwKLSAgZG8gewkJCQkgICAg ICBcCi0gICAgaWYgKCEgbGV4bGVmdCkJCSAgICAgIFwKLSAgICAgIHsJCQkJICAgICAgXAot ICAgICAgICBpZiAoKGVvZmVycikgIT0gMCkJICAgICAgXAotICAgICAgICAgIGRmYWVycm9y IChlb2ZlcnIpOwkgICAgICBcCi0gICAgICAgIGVsc2UJCQkgICAgICBcCi0gICAgICAgICAg cmV0dXJuIGxhc3R0b2sgPSBFTkQ7CSAgICAgIFwKLSAgICAgIH0JCQkJICAgICAgXAotICAg IChjKSA9IHRvX3VjaGFyICgqbGV4cHRyKyspOyAgICAgICBcCi0gICAgLS1sZXhsZWZ0OwkJ CSAgICAgIFwKLSAgfSB3aGlsZSAoMCkKLQotI2VuZGlmIC8qIE1CU19TVVBQT1JUICovCi0K ICNpZm5kZWYgTUlOCiAjIGRlZmluZSBNSU4oYSxiKSAoKGEpIDwgKGIpID8gKGEpIDogKGIp KQogI2VuZGlmCkBAIC0xNzIwLDcgKzE2NzcsNiBAQCBhZGR0b2sgKHRva2VuIHQpCiAgICAg fQogfQogCi0jaWYgTUJTX1NVUFBPUlQKIC8qIFdlIHRyZWF0IGEgbXVsdGlieXRlIGNoYXJh Y3RlciBhcyBhIHNpbmdsZSBhdG9tLCBzbyB0aGF0IERGQQogICAgY2FuIHRyZWF0IGEgbXVs dGlieXRlIGNoYXJhY3RlciBhcyBhIHNpbmdsZSBleHByZXNzaW9uLgogCkBAIC0xNzUyLDE3 ICsxNzA4LDEwIEBAIGFkZHRva193YyAod2ludF90IHdjKQogICAgICAgYWRkdG9rIChDQVQp OwogICAgIH0KIH0KLSNlbHNlCi1zdGF0aWMgdm9pZAotYWRkdG9rX3djICh3aW50X3Qgd2Mp Ci17Ci19Ci0jZW5kaWYKIAogc3RhdGljIHZvaWQKIGFkZF91dGY4X2FueWNoYXIgKHZvaWQp CiB7Ci0jaWYgTUJTX1NVUFBPUlQKICAgc3RhdGljIGNvbnN0IGNoYXJjbGFzcyB1dGY4X2Ns YXNzZXNbNV0gPSB7CiAgICAgezAsIDAsIDAsIDAsIH4wLCB+MCwgMCwgMH0sCQkvKiA4MC1i Zjogbm9uLWxlYWRpbmcgYnl0ZXMgKi8KICAgICB7fjAsIH4wLCB+MCwgfjAsIDAsIDAsIDAs IDB9LCAgICAgICAvKiAwMC03ZjogMS1ieXRlIHNlcXVlbmNlICovCkBAIC0xODA3LDcgKzE3 NTYsNiBAQCBhZGRfdXRmOF9hbnljaGFyICh2b2lkKQogICAgICAgYWRkdG9rIChDQVQpOwog ICAgICAgYWRkdG9rIChPUik7CiAgICAgfQotI2VuZGlmCiB9CiAKIC8qIFRoZSBncmFtbWFy IHVuZGVyc3Rvb2QgYnkgdGhlIHBhcnNlciBpcyBhcyBmb2xsb3dzLgpAQCAtMTg0OCw3ICsx Nzk2LDcgQEAgYWRkX3V0ZjhfYW55Y2hhciAodm9pZCkKIHN0YXRpYyB2b2lkCiBhdG9tICh2 b2lkKQogewotICBpZiAoTUJTX1NVUFBPUlQgJiYgdG9rID09IFdDSEFSKQorICBpZiAodG9r ID09IFdDSEFSKQogICAgIHsKICAgICAgIGFkZHRva193YyAod2N0b2spOwogCkBAIC0xODY1 LDcgKzE4MTMsNyBAQCBhdG9tICh2b2lkKQogCiAgICAgICB0b2sgPSBsZXggKCk7CiAgICAg fQotICBlbHNlIGlmIChNQlNfU1VQUE9SVCAmJiB0b2sgPT0gQU5ZQ0hBUiAmJiB1c2luZ191 dGY4ICgpKQorICBlbHNlIGlmICh0b2sgPT0gQU5ZQ0hBUiAmJiB1c2luZ191dGY4ICgpKQog ICAgIHsKICAgICAgIC8qIEZvciBVVEYtOCBleHBhbmQgdGhlIHBlcmlvZCB0byBhIHNlcmll cyBvZiBDU0VUcyB0aGF0IGRlZmluZSBhIHZhbGlkCiAgICAgICAgICBVVEYtOCBjaGFyYWN0 ZXIuICBUaGlzIGF2b2lkcyB1c2luZyB0aGUgc2xvdyBtdWx0aWJ5dGUgcGF0aC4gIEknbQpA QCAtMTg3OSw5ICsxODI3LDcgQEAgYXRvbSAodm9pZCkKICAgICB9CiAgIGVsc2UgaWYgKCh0 b2sgPj0gMCAmJiB0b2sgPCBOT1RDSEFSKSB8fCB0b2sgPj0gQ1NFVCB8fCB0b2sgPT0gQkFD S1JFRgogICAgICAgICAgICB8fCB0b2sgPT0gQkVHTElORSB8fCB0b2sgPT0gRU5ETElORSB8 fCB0b2sgPT0gQkVHV09SRAotI2lmIE1CU19TVVBQT1JUCiAgICAgICAgICAgIHx8IHRvayA9 PSBBTllDSEFSIHx8IHRvayA9PSBNQkNTRVQKLSNlbmRpZiAvKiBNQlNfU1VQUE9SVCAqLwog ICAgICAgICAgICB8fCB0b2sgPT0gRU5EV09SRCB8fCB0b2sgPT0gTElNV09SRCB8fCB0b2sg PT0gTk9UTElNV09SRCkKICAgICB7CiAgICAgICBhZGR0b2sgKHRvayk7CkBAIC0yMTY0LDEx ICsyMTEwLDkgQEAgc3RhdGVfaW5kZXggKHN0cnVjdCBkZmEgKmQsIHBvc2l0aW9uX3NldCBj b25zdCAqcywgaW50IGNvbnRleHQpCiAgIGQtPnN0YXRlc1tpXS5iYWNrcmVmID0gMDsKICAg ZC0+c3RhdGVzW2ldLmNvbnN0cmFpbnQgPSAwOwogICBkLT5zdGF0ZXNbaV0uZmlyc3RfZW5k ID0gMDsKLSAgaWYgKE1CU19TVVBQT1JUKQotICAgIHsKLSAgICAgIGQtPnN0YXRlc1tpXS5t YnBzLm5lbGVtID0gMDsKLSAgICAgIGQtPnN0YXRlc1tpXS5tYnBzLmVsZW1zID0gTlVMTDsK LSAgICB9CisgIGQtPnN0YXRlc1tpXS5tYnBzLm5lbGVtID0gMDsKKyAgZC0+c3RhdGVzW2ld Lm1icHMuZWxlbXMgPSBOVUxMOworCiAgIGZvciAoaiA9IDA7IGogPCBzLT5uZWxlbTsgKytq KQogICAgIGlmIChkLT50b2tlbnNbcy0+ZWxlbXNbal0uaW5kZXhdIDwgMCkKICAgICAgIHsK QEAgLTIyMDYsMTAgKzIxNTAsOCBAQCBlcHNjbG9zdXJlIChwb3NpdGlvbl9zZXQgKiBzLCBz dHJ1Y3QgZGZhIGNvbnN0ICpkKQogICBmb3IgKGkgPSAwOyBpIDwgcy0+bmVsZW07ICsraSkK ICAgICBpZiAoZC0+dG9rZW5zW3MtPmVsZW1zW2ldLmluZGV4XSA+PSBOT1RDSEFSCiAgICAg ICAgICYmIGQtPnRva2Vuc1tzLT5lbGVtc1tpXS5pbmRleF0gIT0gQkFDS1JFRgotI2lmIE1C U19TVVBQT1JUCiAgICAgICAgICYmIGQtPnRva2Vuc1tzLT5lbGVtc1tpXS5pbmRleF0gIT0g QU5ZQ0hBUgogICAgICAgICAmJiBkLT50b2tlbnNbcy0+ZWxlbXNbaV0uaW5kZXhdICE9IE1C Q1NFVAotI2VuZGlmCiAgICAgICAgICYmIGQtPnRva2Vuc1tzLT5lbGVtc1tpXS5pbmRleF0g PCBDU0VUKQogICAgICAgewogICAgICAgICBvbGQgPSBzLT5lbGVtc1tpXTsKQEAgLTI1MjYs OSArMjQ2OCw3IEBAIGRmYWFuYWx5emUgKHN0cnVjdCBkZmEgKmQsIGludCBzZWFyY2hmbGFn KQogICAgICBpdCB3aXRoIGl0cyBlcHNpbG9uIGNsb3N1cmUuICAqLwogICBmb3IgKGkgPSAw OyBpIDwgZC0+dGluZGV4OyArK2kpCiAgICAgaWYgKGQtPnRva2Vuc1tpXSA8IE5PVENIQVIg fHwgZC0+dG9rZW5zW2ldID09IEJBQ0tSRUYKLSNpZiBNQlNfU1VQUE9SVAogICAgICAgICB8 fCBkLT50b2tlbnNbaV0gPT0gQU5ZQ0hBUiB8fCBkLT50b2tlbnNbaV0gPT0gTUJDU0VUCi0j ZW5kaWYKICAgICAgICAgfHwgZC0+dG9rZW5zW2ldID49IENTRVQpCiAgICAgICB7CiAjaWZk ZWYgREVCVUcKQEAgLTI2MzgsOSArMjU3OCw4IEBAIGRmYXN0YXRlIChzdGF0ZV9udW0gcywg c3RydWN0IGRmYSAqZCwgc3RhdGVfbnVtIHRyYW5zW10pCiAgICAgICAgIHNldGJpdCAoZC0+ dG9rZW5zW3Bvcy5pbmRleF0sIG1hdGNoZXMpOwogICAgICAgZWxzZSBpZiAoZC0+dG9rZW5z W3Bvcy5pbmRleF0gPj0gQ1NFVCkKICAgICAgICAgY29weXNldCAoZC0+Y2hhcmNsYXNzZXNb ZC0+dG9rZW5zW3Bvcy5pbmRleF0gLSBDU0VUXSwgbWF0Y2hlcyk7Ci0gICAgICBlbHNlIGlm IChNQlNfU1VQUE9SVAotICAgICAgICAgICAgICAgJiYgKGQtPnRva2Vuc1twb3MuaW5kZXhd ID09IEFOWUNIQVIKLSAgICAgICAgICAgICAgICAgICB8fCBkLT50b2tlbnNbcG9zLmluZGV4 XSA9PSBNQkNTRVQpKQorICAgICAgZWxzZSBpZiAoZC0+dG9rZW5zW3Bvcy5pbmRleF0gPT0g QU5ZQ0hBUgorICAgICAgICAgICAgICAgfHwgZC0+dG9rZW5zW3Bvcy5pbmRleF0gPT0gTUJD U0VUKQogICAgICAgICAvKiBNQl9DVVJfTUFYID4gMSAgKi8KICAgICAgICAgewogICAgICAg ICAgIC8qIEFOWUNIQVIgYW5kIE1CQ1NFVCBtdXN0IG1hdGNoIHdpdGggYSBzaW5nbGUgY2hh cmFjdGVyLCBzbyB3ZQpAQCAtMjgxNCw3ICsyNzUzLDcgQEAgZGZhc3RhdGUgKHN0YXRlX251 bSBzLCBzdHJ1Y3QgZGZhICpkLCBzdGF0ZV9udW0gdHJhbnNbXSkKICAgICAgIC8qIElmIHdl IGFyZSBidWlsZGluZyBhIHNlYXJjaGluZyBtYXRjaGVyLCB0aHJvdyBpbiB0aGUgcG9zaXRp b25zCiAgICAgICAgICBvZiBzdGF0ZSAwIGFzIHdlbGwuICAqLwogICAgICAgaWYgKGQtPnNl YXJjaGZsYWcKLSAgICAgICAgICAmJiAoIU1CU19TVVBQT1JUIHx8IChkLT5tYl9jdXJfbWF4 ID09IDEgfHwgIW5leHRfaXNudF8xc3RfYnl0ZSkpKQorICAgICAgICAgICYmIChkLT5tYl9j dXJfbWF4ID09IDEgfHwgIW5leHRfaXNudF8xc3RfYnl0ZSkpCiAgICAgICAgIGZvciAoaiA9 IDA7IGogPCBkLT5zdGF0ZXNbMF0uZWxlbXMubmVsZW07ICsraikKICAgICAgICAgICBpbnNl cnQgKGQtPnN0YXRlc1swXS5lbGVtcy5lbGVtc1tqXSwgJmZvbGxvd3MpOwogCkBAIC0zMzY2 LDcgKzMzMDUsNiBAQCB0cmFuc2l0X3N0YXRlIChzdHJ1Y3QgZGZhICpkLCBzdGF0ZV9udW0g cywgdW5zaWduZWQgY2hhciBjb25zdCAqKnBwKQogc3RhdGljIHZvaWQKIHByZXBhcmVfd2Nf YnVmIChzdHJ1Y3QgZGZhICpkLCBjb25zdCBjaGFyICpiZWdpbiwgY29uc3QgY2hhciAqZW5k KQogewotI2lmIE1CU19TVVBQT1JUCiAgIHVuc2lnbmVkIGNoYXIgZW9sID0gZW9sYnl0ZTsK ICAgc2l6ZV90IGk7CiAgIHNpemVfdCBpbGltID0gZW5kIC0gYmVnaW4gKyAxOwpAQCAtMzM5 MCw3ICszMzI4LDYgQEAgcHJlcGFyZV93Y19idWYgKHN0cnVjdCBkZmEgKmQsIGNvbnN0IGNo YXIgKmJlZ2luLCBjb25zdCBjaGFyICplbmQpCiAgIGJ1Zl9lbmQgPSAodW5zaWduZWQgY2hh ciAqKSAoYmVnaW4gKyBpKTsKICAgbWJsZW5fYnVmW2ldID0gMDsKICAgaW5wdXR3Y3NbaV0g PSAwOyAgICAgICAgICAgICAgLyogc2VudGluZWwgKi8KLSNlbmRpZiAvKiBNQlNfU1VQUE9S VCAqLwogfQogCiAvKiBTZWFyY2ggdGhyb3VnaCBhIGJ1ZmZlciBsb29raW5nIGZvciBhIG1h dGNoIHRvIHRoZSBnaXZlbiBzdHJ1Y3QgZGZhLgpAQCAtMzYxMyw3ICszNTUwLDcgQEAgZGZh b3B0aW1pemUgKHN0cnVjdCBkZmEgKmQpCiB7CiAgIHNpemVfdCBpOwogCi0gIGlmICghTUJT X1NVUFBPUlQgfHwgIXVzaW5nX3V0ZjggKCkpCisgIGlmICghdXNpbmdfdXRmOCAoKSkKICAg ICByZXR1cm47CiAKICAgZm9yIChpID0gMDsgaSA8IGQtPnRpbmRleDsgKytpKQpAQCAtMzY2 Myw4ICszNjAwLDcgQEAgZGZhZnJlZSAoc3RydWN0IGRmYSAqZCkKICAgZm9yIChpID0gMDsg aSA8IGQtPnNpbmRleDsgKytpKQogICAgIHsKICAgICAgIGZyZWUgKGQtPnN0YXRlc1tpXS5l bGVtcy5lbGVtcyk7Ci0gICAgICBpZiAoTUJTX1NVUFBPUlQpCi0gICAgICAgIGZyZWUgKGQt PnN0YXRlc1tpXS5tYnBzLmVsZW1zKTsKKyAgICAgIGZyZWUgKGQtPnN0YXRlc1tpXS5tYnBz LmVsZW1zKTsKICAgICB9CiAgIGZyZWUgKGQtPnN0YXRlcyk7CiAgIGZvciAoaSA9IDA7IGkg PCBkLT50aW5kZXg7ICsraSkKQEAgLTQxMzksNyArNDA3NSw3IEBAIGRmYW11c3QgKHN0cnVj dCBkZmEgKmQpCiAgICAgICAgICAgICAgIC8qIG5vdCBvbiAqbXkqIHNoaWZ0ICovCiAgICAg ICAgICAgICAgIGdvdG8gZG9uZTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICBlbHNlIGlm ICh0ID49IENTRVQgfHwgIU1CU19TVVBQT1JUIHx8IHQgPT0gQU5ZQ0hBUiB8fCB0ID09IE1C Q1NFVCkKKyAgICAgICAgICBlbHNlIGlmICh0ID49IENTRVQgfHwgdCA9PSBBTllDSEFSIHx8 IHQgPT0gTUJDU0VUKQogICAgICAgICAgICAgewogICAgICAgICAgICAgICAvKiBlYXN5IGVu b3VnaCAqLwogICAgICAgICAgICAgICByZXNldG11c3QgKG1wKTsKZGlmZiAtLWdpdCBhL3Ny Yy9kZmFzZWFyY2guYyBiL3NyYy9kZmFzZWFyY2guYwppbmRleCBkMDk4YTliLi41NjY1Yjgy IDEwMDY0NAotLS0gYS9zcmMvZGZhc2VhcmNoLmMKKysrIGIvc3JjL2RmYXNlYXJjaC5jCkBA IC0yMzksOSArMjM5LDYgQEAgRUdleGVjdXRlIChjaGFyIGNvbnN0ICpidWYsIHNpemVfdCBz aXplLCBzaXplX3QgKm1hdGNoX3NpemUsCiAgICAgICAgICAgICAgIGNoYXIgY29uc3QgKmRm YV9zdGFydCA9IGJlZzsKICAgICAgICAgICAgICAgaWYgKGt3c20uaW5kZXggPCBrd3NldF9l eGFjdF9tYXRjaGVzKQogICAgICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAgIGlm ICghTUJTX1NVUFBPUlQpCi0gICAgICAgICAgICAgICAgICAgIGdvdG8gc3VjY2VzczsKLQog ICAgICAgICAgICAgICAgICAgaWYgKG1iX3N0YXJ0IDwgYmVnKQogICAgICAgICAgICAgICAg ICAgICBtYl9zdGFydCA9IGJlZzsKICAgICAgICAgICAgICAgICAgIGlmIChNQl9DVVJfTUFY ID09IDEKZGlmZiAtLWdpdCBhL3NyYy9ncmVwLmMgYi9zcmMvZ3JlcC5jCmluZGV4IGExYmNj ZGIuLjcwMzM3MzAgMTAwNjQ0Ci0tLSBhL3NyYy9ncmVwLmMKKysrIGIvc3JjL2dyZXAuYwpA QCAtMjEsNyArMjEsNiBAQAogI2luY2x1ZGUgPGNvbmZpZy5oPgogI2luY2x1ZGUgPHN5cy90 eXBlcy5oPgogI2luY2x1ZGUgPHN5cy9zdGF0Lmg+Ci0jaW5jbHVkZSAibWJzdXBwb3J0Lmgi CiAjaW5jbHVkZSA8d2NoYXIuaD4KICNpbmNsdWRlIDx3Y3R5cGUuaD4KICNpbmNsdWRlIDxm Y250bC5oPgpAQCAtMjQ2MSwxMCArMjQ2MCw4IEBAIG1haW4gKGludCBhcmdjLCBjaGFyICoq YXJndikKICAgICAgICAgfQogICAgIH0KIAotI2lmIE1CU19TVVBQT1JUCiAgIGlmIChNQl9D VVJfTUFYID4gMSkKICAgICBidWlsZF9tYmNsZW5fY2FjaGUgKCk7Ci0jZW5kaWYKIAogICBj b21waWxlIChrZXlzLCBrZXljYyk7CiAgIGZyZWUgKGtleXMpOwpkaWZmIC0tZ2l0IGEvc3Jj L21ic3VwcG9ydC5oIGIvc3JjL21ic3VwcG9ydC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCA0OWM3OTI2Li4wMDAwMDAwCi0tLSBhL3NyYy9tYnN1cHBvcnQuaAorKysgL2Rl di9udWxsCkBAIC0xLDI5ICswLDAgQEAKLS8qIG1ic3VwcG9ydC5oIC0tLSBMb2NhbGl6ZSBk ZXRlcm1pbmF0aW9uIG9mIHdoZXRoZXIgd2UgaGF2ZSBtdWx0aWJ5dGUgc3R1ZmYuCi0KLSAg IENvcHlyaWdodCAoQykgMjAwNC0yMDA1LCAyMDA3LCAyMDA5LTIwMTQgRnJlZSBTb2Z0d2Fy ZSBGb3VuZGF0aW9uLCBJbmMuCi0KLSAgIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJl OyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5Ci0gICBpdCB1bmRlciB0 aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hl ZCBieQotICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24g Mywgb3IgKGF0IHlvdXIgb3B0aW9uKQotICAgYW55IGxhdGVyIHZlcnNpb24uCi0KLSAgIFRo aXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUg dXNlZnVsLAotICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhl IGltcGxpZWQgd2FycmFudHkgb2YKLSAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZP UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKLSAgIEdOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCi0KLSAgIFlvdSBzaG91bGQgaGF2ZSByZWNl aXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCi0gICBhbG9u ZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2Fy ZQotICAgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0IC0gRmlmdGggRmxv b3IsIEJvc3RvbiwgTUEKLSAgIDAyMTEwLTEzMDEsIFVTQS4gICovCi0KLSNpbmNsdWRlIDxz dGRsaWIuaD4KLQotI2lmbmRlZiBNQlNfU1VQUE9SVAotIyBkZWZpbmUgTUJTX1NVUFBPUlQg MQotI2VuZGlmCi0KLSNpZiAhIE1CU19TVVBQT1JUCi0jIHVuZGVmIE1CX0NVUl9NQVgKLSMg ZGVmaW5lIE1CX0NVUl9NQVggMQotI2VuZGlmCmRpZmYgLS1naXQgYS9zcmMvc2VhcmNoLmgg Yi9zcmMvc2VhcmNoLmgKaW5kZXggNjllM2FmZC4uODcxYjdkNSAxMDA2NDQKLS0tIGEvc3Jj L3NlYXJjaC5oCisrKyBiL3NyYy9zZWFyY2guaApAQCAtMjMsOSArMjMsNiBAQAogCiAjaW5j bHVkZSA8c3lzL3R5cGVzLmg+CiAjaW5jbHVkZSA8c3RkaW50Lmg+Ci0KLSNpbmNsdWRlICJt YnN1cHBvcnQuaCIKLQogI2luY2x1ZGUgPHdjaGFyLmg+CiAjaW5jbHVkZSA8d2N0eXBlLmg+ CiAjaW5jbHVkZSA8cmVnZXguaD4KZGlmZiAtLWdpdCBhL3NyYy9zZWFyY2h1dGlscy5jIGIv c3JjL3NlYXJjaHV0aWxzLmMKaW5kZXggYmFiYjMxZi4uNjc0OTk0NSAxMDA2NDQKLS0tIGEv c3JjL3NlYXJjaHV0aWxzLmMKKysrIGIvc3JjL3NlYXJjaHV0aWxzLmMKQEAgLTQ4LDcgKzQ4 LDYgQEAga3dzaW5pdCAoa3dzZXRfdCAqa3dzZXQpCiAgICAgeGFsbG9jX2RpZSAoKTsKIH0K IAotI2lmIE1CU19TVVBQT1JUCiAvKiBDb252ZXJ0IEJFRywgYW4gKk4tYnl0ZSBzdHJpbmcs IHRvIHVwcGVyY2FzZSwgYW5kIHdyaXRlIHRoZQogICAgTlVMLXRlcm1pbmF0ZWQgcmVzdWx0 IGludG8gbWFsbG9jJ2Qgc3RvcmFnZS4gIFVwb24gc3VjY2Vzcywgc2V0ICpOCiAgICB0byB0 aGUgbGVuZ3RoIChpbiBieXRlcykgb2YgdGhlIHJlc3VsdGluZyBzdHJpbmcgKG5vdCBpbmNs dWRpbmcgdGhlCkBAIC0yNzYsNCArMjc1LDMgQEAgaXNfbWJfbWlkZGxlIChjb25zdCBjaGFy ICoqZ29vZCwgY29uc3QgY2hhciAqYnVmLCBjb25zdCBjaGFyICplbmQsCiAgIC8qIFAgPT0g QlVGIGhlcmUuICAqLwogICByZXR1cm4gMCA8IG1hdGNoX2xlbiAmJiBtYXRjaF9sZW4gPCBt YnJsZW4gKHAsIGVuZCAtIHAsICZjdXJfc3RhdGUpOwogfQotI2VuZGlmIC8qIE1CU19TVVBQ T1JUICovCi0tIAoxLjkuMAoK --------------030802080703030800020706 Content-Type: text/plain; charset=UTF-8; name="0001-awk-simplify-dfa.c-by-having-it-not-include-mbsuppor.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="0001-awk-simplify-dfa.c-by-having-it-not-include-mbsuppor.pa"; filename*1="tch" RnJvbSA3ZTJiNTFkMDAxMzNhYjhhMGRiY2QyMWI1ZTBmMzlhNjk4NGY4NThmIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QGNzLnVjbGEuZWR1 PgpEYXRlOiBUaHUsIDMgQXByIDIwMTQgMTg6MDQ6NTIgLTA3MDAKU3ViamVjdDogW1BBVENI XSBhd2s6IHNpbXBsaWZ5IGRmYS5jIGJ5IGhhdmluZyBpdCBub3QgaW5jbHVkZSBtYnN1cHBv cnQuaAogZGlyZWN0bHkKClRoaXMgc3luY3MgZGZhLmMgYmV0dGVyIHdpdGggJ2dyZXAnLgoq IGF3ay5oLCByZWdleF9pbnRlcm5hbC5oLCBkZmEuYzogRG9uJ3QgaW5jbHVkZSBtYnN1cHBv cnQuaC4KKiBjdXN0b20uaDogSW5jbHVkZSBtYnN1cHBvcnQuaCBoZXJlIGluc3RlYWQuCihf R0xfQVRUUklCVVRFX1BVUkUpOiBNb3ZlIGhlcmUgZnJvbSBkZmEuYywgdG8gbGVzc2VuIHRo ZQpudW1iZXIgb2YgZGlmZmVyZW5jZXMgYmV0d2VlbiBncmVwJ3MgZGZhLmMgYW5kIG91cnMu CiogZGZhLmM6IEluY2x1ZGUgd2NoYXIuaCBhbmQgd2N0eXBlLmggdW5jb25kaXRpb25hbGx5 LCBhcwp0aGlzIHNpbXBsaWZpZXMgdGhlIHVzZSBvZiBkZmEuYyBpbiBncmVwLCBhbmQgaXQg ZG9lcyBubyBoYXJtCmluIGdhd2suCihnYXdrX21iX2N1cl9tYXgsIE1CX0NVUl9NQVgsIG1i cnRvd2MpIFtMSUJDX0lTX0JPUktFRF06Ck1vdmUgdG8gbWJzdXBwb3J0LmggKG5lZWRlZCBm b3IgY29uc2lzdGVuY3kgaW4gYWxsIHVzZXMpLAphbmQgZml4IG1icnRvd2MgdG8gcmV0dXJu IHNpemVfdC4KKHNldGxvY2FsZSwgc3RhdGljX2Fzc2VydCk6IExpa2V3aXNlLgooc3RydWN0 IGRmYSwgZGZhbWJjYWNoZSwgbWJzX3RvX3djaGFyKQooaXNfdmFsaWRfdW5pYnl0ZV9jaGFy YWN0ZXIsIHNldGJpdF93YywgdXNpbmdfdXRmOCwgRkVUQ0hfV0MpCihhZGR0b2tfd2MsIGFk ZF91dGY4X2FueWNoYXIsIGF0b20sIHN0YXRlX2luZGV4LCBlcHNjbG9zdXJlKQooZGZhYW5h bHl6ZSwgZGZhc3RhdGUsIHByZXBhcmVfd2NfYnVmLCBkZmFvcHRpbWl6ZSwgZGZhZnJlZSwg ZGZhbXVzdCk6CiogZGZhc2VhcmNoLmMgKEVHZXhlY3V0ZSk6CiogZ3JlcC5jIChtYWluKToK KiBzZWFyY2h1dGlscy5jIChtYnRvdXBwZXIpOgpBc3N1bWUgTUJTX1NVUFBPUlQuCiogbWJz dXBwb3J0LmggWyFNQlNfU1VQUE9SVF06IEluY2x1ZGUgd2NoYXIuaCwgd2N0eXBlLmgKYmVm b3JlIG92ZXJyaWRpbmcgdGhlaXIgZGVmaW5pdGlvbnMuCihXRU9GLCB0b3d1cHBlciwgdG93 bG93ZXIsIGJ0b3djLCBpc3dhbG51bSwgaXN3YWxwaGEsIGlzd3VwcGVyKQooaXN3bG93ZXIs IG1icnRvd2MsIHdjcnRvbWIsIHdjdHlwZSwgaXN3Y3R5cGUsIHdjc2NvbGwpOgooYnRvd2Mp OiBQYXJlbnRoZXNpemUgcHJvcGVybHkuCihtYnJ0b3djLCB3Y3J0b21iKTogTmV3IG1hY3Jv cy4KKHdjdHlwZSwgaXN3Y3R5cGUsIHdjc2NvbGwpOiBEZWZpbmUgdG8gZ2F3a193Y3R5cGUg ZXRjLiB0byBhdm9pZApjb2xsaXNpb25zIHdpdGggc3RhbmRhcmQgbGlicmFyeS4KKiBtaXNz aW5nX2Qvd2NtaXNjLmM6IFJlbW92ZSBub3ctdW5uZWNlc3NhcnkgaWZkZWZzLgotLS0KIENo YW5nZUxvZyAgICAgICAgICAgfCAgMzIgKysrKysrKysrKysrKysrCiBhd2suaCAgICAgICAg ICAgICAgIHwgICAyIC0KIGN1c3RvbS5oICAgICAgICAgICAgfCAgIDkgKysrKysKIGRmYS5j ICAgICAgICAgICAgICAgfCAxMTEgKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQogbWJzdXBwb3J0LmggICAgICAgICB8ICA1NCArKysrKysr KysrKysrKysrKysrKysrKy0tCiBtaXNzaW5nX2QvQ2hhbmdlTG9nIHwgICA0ICsrCiBtaXNz aW5nX2Qvd2NtaXNjLmMgIHwgIDEwIC0tLS0tCiByZWdleF9pbnRlcm5hbC5oICAgIHwgICAy IC0KIDggZmlsZXMgY2hhbmdlZCwgMTEwIGluc2VydGlvbnMoKyksIDExNCBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9DaGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXggYTBlZmQ4OS4u MzZmYjBmNCAxMDA2NDQKLS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwz ICsxLDM1IEBACisyMDE0LTA0LTAzICBQYXVsIEVnZ2VydCAgPGVnZ2VydEBjcy51Y2xhLmVk dT4KKworCWF3azogc2ltcGxpZnkgZGZhLmMgYnkgaGF2aW5nIGl0IG5vdCBpbmNsdWRlIG1i c3VwcG9ydC5oIGRpcmVjdGx5CisJVGhpcyBzeW5jcyBkZmEuYyBiZXR0ZXIgd2l0aCAnZ3Jl cCcuCisJKiBhd2suaCwgcmVnZXhfaW50ZXJuYWwuaCwgZGZhLmM6IERvbid0IGluY2x1ZGUg bWJzdXBwb3J0LmguCisJKiBjdXN0b20uaDogSW5jbHVkZSBtYnN1cHBvcnQuaCBoZXJlIGlu c3RlYWQuCisJKF9HTF9BVFRSSUJVVEVfUFVSRSk6IE1vdmUgaGVyZSBmcm9tIGRmYS5jLCB0 byBsZXNzZW4gdGhlCisJbnVtYmVyIG9mIGRpZmZlcmVuY2VzIGJldHdlZW4gZ3JlcCdzIGRm YS5jIGFuZCBvdXJzLgorCSogZGZhLmM6IEluY2x1ZGUgd2NoYXIuaCBhbmQgd2N0eXBlLmgg dW5jb25kaXRpb25hbGx5LCBhcworCXRoaXMgc2ltcGxpZmllcyB0aGUgdXNlIG9mIGRmYS5j IGluIGdyZXAsIGFuZCBpdCBkb2VzIG5vIGhhcm0KKwlpbiBnYXdrLgorCShnYXdrX21iX2N1 cl9tYXgsIE1CX0NVUl9NQVgsIG1icnRvd2MpIFtMSUJDX0lTX0JPUktFRF06CisJTW92ZSB0 byBtYnN1cHBvcnQuaCAobmVlZGVkIGZvciBjb25zaXN0ZW5jeSBpbiBhbGwgdXNlcyksCisJ YW5kIGZpeCBtYnJ0b3djIHRvIHJldHVybiBzaXplX3QuCisJKHN0cnVjdCBkZmEsIGRmYW1i Y2FjaGUsIG1ic190b193Y2hhcikKKwkoaXNfdmFsaWRfdW5pYnl0ZV9jaGFyYWN0ZXIsIHNl dGJpdF93YywgdXNpbmdfdXRmOCwgRkVUQ0hfV0MpCisJKGFkZHRva193YywgYWRkX3V0Zjhf YW55Y2hhciwgYXRvbSwgc3RhdGVfaW5kZXgsIGVwc2Nsb3N1cmUpCisJKGRmYWFuYWx5emUs IGRmYXN0YXRlLCBwcmVwYXJlX3djX2J1ZiwgZGZhb3B0aW1pemUsIGRmYWZyZWUsIGRmYW11 c3QpOgorCSogZGZhc2VhcmNoLmMgKEVHZXhlY3V0ZSk6CisJKiBncmVwLmMgKG1haW4pOgor CSogc2VhcmNodXRpbHMuYyAobWJ0b3VwcGVyKToKKwlBc3N1bWUgTUJTX1NVUFBPUlQuCisJ KiBtYnN1cHBvcnQuaCBbIU1CU19TVVBQT1JUXTogSW5jbHVkZSB3Y2hhci5oLCB3Y3R5cGUu aAorCWJlZm9yZSBvdmVycmlkaW5nIHRoZWlyIGRlZmluaXRpb25zLgorCShXRU9GLCB0b3d1 cHBlciwgdG93bG93ZXIsIGJ0b3djLCBpc3dhbG51bSwgaXN3YWxwaGEsIGlzd3VwcGVyKQor CShpc3dsb3dlciwgbWJydG93Yywgd2NydG9tYiwgd2N0eXBlLCBpc3djdHlwZSwgd2NzY29s bCk6CisJI3VuZGVmIGJlZm9yZSAjZGVmaW5pbmcuCisJKGJ0b3djKTogUGFyZW50aGVzaXpl IHByb3Blcmx5LgorCShtYnJ0b3djLCB3Y3J0b21iKTogTmV3IG1hY3Jvcy4KKwkod2N0eXBl LCBpc3djdHlwZSwgd2NzY29sbCk6IERlZmluZSB0byBnYXdrX3djdHlwZSBldGMuIHRvIGF2 b2lkCisJY29sbGlzaW9ucyB3aXRoIHN0YW5kYXJkIGxpYnJhcnkuCisKIDIwMTQtMDQtMDMg ICAgICAgICBBcm5vbGQgRC4gUm9iYmlucyAgICAgPGFybm9sZEBza2VldmUuY29tPgogCiAJ KiByZWdjb21wLmMgKHBhcnNlX2JyYWNrZXRfZXhwKTogTW92ZSBhIGNhbGwgdG8gYHJlX2Zy ZWUnIGluc2lkZQpkaWZmIC0tZ2l0IGEvYXdrLmggYi9hd2suaAppbmRleCBhZWZkZDA3Li5j ZGJhN2E4IDEwMDY0NAotLS0gYS9hd2suaAorKysgYi9hd2suaApAQCAtOTUsOCArOTUsNiBA QCBleHRlcm4gaW50IGVycm5vOwogI2luY2x1ZGUgIm1pc3NpbmdfZC9nYXdrYm9vbC5oIgog I2VuZGlmCiAKLSNpbmNsdWRlICJtYnN1cHBvcnQuaCIgLyogZGVmaW5lcyBNQlNfU1VQUE9S VCAqLwotCiAjaWYgTUJTX1NVUFBPUlQKIC8qIFdlIGNhbiBoYW5kbGUgbXVsdGlieXRlIHN0 cmluZ3MuICAqLwogI2luY2x1ZGUgPHdjaGFyLmg+CmRpZmYgLS1naXQgYS9jdXN0b20uaCBi L2N1c3RvbS5oCmluZGV4IDM2YjRhYTAuLmJhZGU0Y2YgMTAwNjQ0Ci0tLSBhL2N1c3RvbS5o CisrKyBiL2N1c3RvbS5oCkBAIC03NiwzICs3NiwxMiBAQAogZXh0ZXJuIGludCBzZXRlbnYo Y29uc3QgY2hhciAqbmFtZSwgY29uc3QgY2hhciAqdmFsdWUsIGludCByZXdyaXRlKTsKIGV4 dGVybiBpbnQgdW5zZXRlbnYoY29uc3QgY2hhciAqbmFtZSk7CiAjZW5kaWYKKworLyogVGhl IF9fcHVyZV9fIGF0dHJpYnV0ZSB3YXMgYWRkZWQgaW4gZ2NjIDIuOTYuICAqLworI2lmIF9f R05VQ19fID4gMiB8fCAoX19HTlVDX18gPT0gMiAmJiBfX0dOVUNfTUlOT1JfXyA+PSA5NikK KyMgZGVmaW5lIF9HTF9BVFRSSUJVVEVfUFVSRSBfX2F0dHJpYnV0ZV9fICgoX19wdXJlX18p KQorI2Vsc2UKKyMgZGVmaW5lIF9HTF9BVFRSSUJVVEVfUFVSRSAvKiBlbXB0eSAqLworI2Vu ZGlmCisKKyNpbmNsdWRlICJtYnN1cHBvcnQuaCIKZGlmZiAtLWdpdCBhL2RmYS5jIGIvZGZh LmMKaW5kZXggMzc4MzA1ZC4uZWU2ZWRkOCAxMDA2NDQKLS0tIGEvZGZhLmMKKysrIGIvZGZh LmMKQEAgLTQzLDE2ICs0Myw2IEBACiAjaW5jbHVkZSAibWlzc2luZ19kL2dhd2tib29sLmgi CiAjZW5kaWYgLyogSEFWRV9TVERCT09MX0ggKi8KIAotLyogR2F3ayBkb2Vzbid0IHVzZSBH bnVsaWIsIHNvIGRvbid0IGFzc3VtZSB0aGF0IHNldGxvY2FsZSBhbmQKLSAgIHN0YXRpY19h c3NlcnQgYXJlIHByZXNlbnQuICAqLwotI2lmbmRlZiBMQ19BTEwKLSMgZGVmaW5lIHNldGxv Y2FsZShjYXRlZ29yeSwgbG9jYWxlKSBOVUxMCi0jZW5kaWYKLSNpZm5kZWYgc3RhdGljX2Fz c2VydAotIyBkZWZpbmUgc3RhdGljX2Fzc2VydChjb25kLCBkaWFnbm9zdGljKSBcCi0gICAg ZXh0ZXJuIGludCAoKmZvbyAodm9pZCkpIFshIXNpemVvZiAoc3RydWN0IHsgaW50IGZvbzog KGNvbmQpID8gOCA6IC0xOyB9KV0KLSNlbmRpZgotCiAjZGVmaW5lIFNUUkVRKGEsIGIpIChz dHJjbXAgKGEsIGIpID09IDApCiAKIC8qIElTQVNDSUlESUdJVCBkaWZmZXJzIGZyb20gaXNk aWdpdCwgYXMgZm9sbG93czoKQEAgLTY5LDIxICs1OSw4IEBACiAjaW5jbHVkZSAiZ2V0dGV4 dC5oIgogI2RlZmluZSBfKHN0cikgZ2V0dGV4dCAoc3RyKQogCi0jaW5jbHVkZSAibWJzdXBw b3J0LmgiIC8qIERlZmluZSBNQlNfU1VQUE9SVCB0byAxIG9yIDAsIGFzIGFwcHJvcHJpYXRl LiAgKi8KLSNpZiBNQlNfU1VQUE9SVAotLyogV2UgY2FuIGhhbmRsZSBtdWx0aWJ5dGUgc3Ry aW5ncy4gICovCi0jIGluY2x1ZGUgPHdjaGFyLmg+Ci0jIGluY2x1ZGUgPHdjdHlwZS5oPgot I2VuZGlmCi0KLSNpZmRlZiBHQVdLCi0vKiBUaGUgX19wdXJlX18gYXR0cmlidXRlIHdhcyBh ZGRlZCBpbiBnY2MgMi45Ni4gICovCi0jaWYgX19HTlVDX18gPiAyIHx8IChfX0dOVUNfXyA9 PSAyICYmIF9fR05VQ19NSU5PUl9fID49IDk2KQotIyBkZWZpbmUgX0dMX0FUVFJJQlVURV9Q VVJFIF9fYXR0cmlidXRlX18gKChfX3B1cmVfXykpCi0jZWxzZQotIyBkZWZpbmUgX0dMX0FU VFJJQlVURV9QVVJFIC8qIGVtcHR5ICovCi0jZW5kaWYKLSNlbmRpZiAvKiBHQVdLICovCisj aW5jbHVkZSA8d2NoYXIuaD4KKyNpbmNsdWRlIDx3Y3R5cGUuaD4KIAogI2lmIEhBVkVfTEFO R0lORk9fQ09ERVNFVAogIyBpbmNsdWRlIDxsYW5naW5mby5oPgpAQCAtMTAxLDE0ICs3OCw2 IEBAIGlzX2JsYW5rIChpbnQgYykKIH0KICNlbmRpZiAvKiBHQVdLICovCiAKLSNpZmRlZiBM SUJDX0lTX0JPUktFRAotZXh0ZXJuIGludCBnYXdrX21iX2N1cl9tYXg7Ci0jdW5kZWYgTUJf Q1VSX01BWAotI2RlZmluZSBNQl9DVVJfTUFYIGdhd2tfbWJfY3VyX21heAotI3VuZGVmIG1i cnRvd2MKLSNkZWZpbmUgbWJydG93YyhhLCBiLCBjLCBkKSAoLTEpCi0jZW5kaWYKLQogLyog SFBVWCBkZWZpbmVzIHRoZXNlIGFzIG1hY3JvcyBpbiBzeXMvcGFyYW0uaC4gICovCiAjaWZk ZWYgc2V0Yml0CiAjIHVuZGVmIHNldGJpdApAQCAtNDEyLDEzICszODEsMTEgQEAgc3RydWN0 IGRmYQogICBzaXplX3Qgbm11bHRpYnl0ZV9wcm9wOwogICBpbnQgKm11bHRpYnl0ZV9wcm9w OwogCi0jaWYgTUJTX1NVUFBPUlQKICAgLyogQSB0YWJsZSBpbmRleGVkIGJ5IGJ5dGUgdmFs dWVzIHRoYXQgY29udGFpbnMgdGhlIGNvcnJlc3BvbmRpbmcgd2lkZQogICAgICBjaGFyYWN0 ZXIgKGlmIGFueSkgZm9yIHRoYXQgYnl0ZS4gIFdFT0YgbWVhbnMgdGhlIGJ5dGUgaXMgdGhl CiAgICAgIGxlYWRpbmcgYnl0ZSBvZiBhIG11bHRpYnl0ZSBjaGFyYWN0ZXIuICBJbnZhbGlk IGFuZCBudWxsIGJ5dGVzIGFyZQogICAgICBtYXBwZWQgdG8gdGhlbXNlbHZlcy4gICovCiAg IHdpbnRfdCBtYnJ0b3djX2NhY2hlW05PVENIQVJdOwotI2VuZGlmCiAKICAgLyogQXJyYXkg b2YgdGhlIGJyYWNrZXQgZXhwcmVzc2lvbiBpbiB0aGUgREZBLiAgKi8KICAgc3RydWN0IG1i X2NoYXJfY2xhc3NlcyAqbWJjc2V0czsKQEAgLTUyNSw3ICs0OTIsNiBAQCBzdGF0aWMgdm9p ZCByZWdleHAgKHZvaWQpOwogc3RhdGljIHZvaWQKIGRmYW1iY2FjaGUgKHN0cnVjdCBkZmEg KmQpCiB7Ci0jaWYgTUJTX1NVUFBPUlQKICAgaW50IGk7CiAgIGZvciAoaSA9IENIQVJfTUlO OyBpIDw9IENIQVJfTUFYOyArK2kpCiAgICAgewpAQCAtNTQyLDEwICs1MDgsOCBAQCBkZmFt YmNhY2hlIChzdHJ1Y3QgZGZhICpkKQogICAgICAgICB9CiAgICAgICBkLT5tYnJ0b3djX2Nh Y2hlW3VjXSA9IHdpOwogICAgIH0KLSNlbmRpZgogfQogCi0jaWYgTUJTX1NVUFBPUlQKIC8q IEdpdmVuIHRoZSBkZmEgRCwgc3RvcmUgaW50byAqUFdDIHRoZSByZXN1bHQgb2YgY29udmVy dGluZyB0aGUKICAgIGxlYWRpbmcgYnl0ZXMgb2YgdGhlIG11bHRpYnl0ZSBidWZmZXIgUyBv ZiBsZW5ndGggTiBieXRlcywgdXBkYXRpbmcKICAgIHRoZSBjb252ZXJzaW9uIHN0YXRlIGlu ICpNQlMuICBPbiBjb252ZXJzaW9uIGVycm9yLCBjb252ZXJ0IGp1c3QgYQpAQCAtNTc5LDcg KzU0Myw2IEBAIG1ic190b193Y2hhciAoc3RydWN0IGRmYSAqZCwgd2NoYXJfdCAqcHdjLCBj aGFyIGNvbnN0ICpzLCBzaXplX3QgbiwKICAgKnB3YyA9IHdjOwogICByZXR1cm4gMTsKIH0K LSNlbmRpZgogCiAjaWZkZWYgREVCVUcKIApAQCAtNzQ5LDcgKzcxMiw3IEBAIHN0YXRpYyBj aGFyY2xhc3MgbmV3bGluZTsKICNpZmRlZiBfX0dMSUJDX18KICMgZGVmaW5lIGlzX3ZhbGlk X3VuaWJ5dGVfY2hhcmFjdGVyKGMpIDEKICNlbHNlCi0jIGRlZmluZSBpc192YWxpZF91bmli eXRlX2NoYXJhY3RlcihjKSAoISAoTUJTX1NVUFBPUlQgJiYgYnRvd2MgKGMpID09IFdFT0Yp KQorIyBkZWZpbmUgaXNfdmFsaWRfdW5pYnl0ZV9jaGFyYWN0ZXIoYykgKGJ0b3djIChjKSAh PSBXRU9GKQogI2VuZGlmCiAKIC8qIFJldHVybiBub24temVybyBpZiBDIGlzIGEgIndvcmQt Y29uc3RpdHVlbnQiIGJ5dGU7IHplcm8gb3RoZXJ3aXNlLiAgKi8KQEAgLTgxMCwxNyArNzcz LDEyIEBAIGRmYXN5bnRheCAocmVnX3N5bnRheF90IGJpdHMsIGludCBmb2xkLCB1bnNpZ25l ZCBjaGFyIGVvbCkKIHN0YXRpYyBib29sCiBzZXRiaXRfd2MgKHdpbnRfdCB3YywgY2hhcmNs YXNzIGMpCiB7Ci0jaWYgTUJTX1NVUFBPUlQKICAgaW50IGIgPSB3Y3RvYiAod2MpOwogICBp ZiAoYiA9PSBFT0YpCiAgICAgcmV0dXJuIGZhbHNlOwogCiAgIHNldGJpdCAoYiwgYyk7CiAg IHJldHVybiB0cnVlOwotI2Vsc2UKLSAgYWJvcnQgKCk7Ci0gICAvKk5PVFJFQUNIRUQqLyBy ZXR1cm4gZmFsc2U7Ci0jZW5kaWYKIH0KIAogLyogU2V0IGEgYml0IGZvciBCIGFuZCBpdHMg Y2FzZSB2YXJpYW50cyBpbiB0aGUgY2hhcmNsYXNzIEMuCkBAIC04NDUsNyArODAzLDcgQEAg dXNpbmdfdXRmOCAodm9pZCkKICAgc3RhdGljIGludCB1dGY4ID0gLTE7CiAgIGlmICh1dGY4 ID09IC0xKQogICAgIHsKLSNpZiBkZWZpbmVkIEhBVkVfTEFOR0lORk9fQ09ERVNFVCAmJiBN QlNfU1VQUE9SVAorI2lmIGRlZmluZWQgSEFWRV9MQU5HSU5GT19DT0RFU0VUCiAgICAgICB1 dGY4ID0gKFNUUkVRIChubF9sYW5naW5mbyAoQ09ERVNFVCksICJVVEYtOCIpKTsKICNlbHNl CiAgICAgICB1dGY4ID0gMDsKQEAgLTkzOCw3ICs4OTYsNiBAQCBzdGF0aWMgdW5zaWduZWQg Y2hhciBjb25zdCAqYnVmX2JlZ2luOyAgLyogcmVmZXJlbmNlIHRvIGJlZ2luIGluIGRmYWV4 ZWMuICAqLwogc3RhdGljIHVuc2lnbmVkIGNoYXIgY29uc3QgKmJ1Zl9lbmQ7ICAgIC8qIHJl ZmVyZW5jZSB0byBlbmQgaW4gZGZhZXhlYy4gICovCiAKIAotI2lmIE1CU19TVVBQT1JUCiAv KiBOb3RlIHRoYXQgY2hhcmFjdGVycyBiZWNvbWUgdW5zaWduZWQgaGVyZS4gICovCiAjIGRl ZmluZSBGRVRDSF9XQyhjLCB3YywgZW9mZXJyKQkJXAogICBkbyB7CQkJCQkJXApAQCAtOTYx LDIzICs5MTgsNiBAQCBzdGF0aWMgdW5zaWduZWQgY2hhciBjb25zdCAqYnVmX2VuZDsgICAg LyogcmVmZXJlbmNlIHRvIGVuZCBpbiBkZmFleGVjLiAgKi8KICAgICAgIH0JCQkJCQlcCiAg IH0gd2hpbGUgKDApCiAKLSNlbHNlCi0vKiBOb3RlIHRoYXQgY2hhcmFjdGVycyBiZWNvbWUg dW5zaWduZWQgaGVyZS4gICovCi0jIGRlZmluZSBGRVRDSF9XQyhjLCB1bnVzZWQsIGVvZmVy cikgIFwKLSAgZG8gewkJCQkgICAgICBcCi0gICAgaWYgKCEgbGV4bGVmdCkJCSAgICAgIFwK LSAgICAgIHsJCQkJICAgICAgXAotICAgICAgICBpZiAoKGVvZmVycikgIT0gMCkJICAgICAg XAotICAgICAgICAgIGRmYWVycm9yIChlb2ZlcnIpOwkgICAgICBcCi0gICAgICAgIGVsc2UJ CQkgICAgICBcCi0gICAgICAgICAgcmV0dXJuIGxhc3R0b2sgPSBFTkQ7CSAgICAgIFwKLSAg ICAgIH0JCQkJICAgICAgXAotICAgIChjKSA9IHRvX3VjaGFyICgqbGV4cHRyKyspOyAgICAg ICBcCi0gICAgLS1sZXhsZWZ0OwkJCSAgICAgIFwKLSAgfSB3aGlsZSAoMCkKLQotI2VuZGlm IC8qIE1CU19TVVBQT1JUICovCi0KICNpZm5kZWYgTUlOCiAjIGRlZmluZSBNSU4oYSxiKSAo KGEpIDwgKGIpID8gKGEpIDogKGIpKQogI2VuZGlmCkBAIC0xNzYxLDcgKzE3MDEsNiBAQCBh ZGR0b2sgKHRva2VuIHQpCiAgICAgfQogfQogCi0jaWYgTUJTX1NVUFBPUlQKIC8qIFdlIHRy ZWF0IGEgbXVsdGlieXRlIGNoYXJhY3RlciBhcyBhIHNpbmdsZSBhdG9tLCBzbyB0aGF0IERG QQogICAgY2FuIHRyZWF0IGEgbXVsdGlieXRlIGNoYXJhY3RlciBhcyBhIHNpbmdsZSBleHBy ZXNzaW9uLgogCkBAIC0xNzkzLDE3ICsxNzMyLDEwIEBAIGFkZHRva193YyAod2ludF90IHdj KQogICAgICAgYWRkdG9rIChDQVQpOwogICAgIH0KIH0KLSNlbHNlCi1zdGF0aWMgdm9pZAot YWRkdG9rX3djICh3aW50X3Qgd2MpCi17Ci19Ci0jZW5kaWYKIAogc3RhdGljIHZvaWQKIGFk ZF91dGY4X2FueWNoYXIgKHZvaWQpCiB7Ci0jaWYgTUJTX1NVUFBPUlQKICAgc3RhdGljIGNv bnN0IGNoYXJjbGFzcyB1dGY4X2NsYXNzZXNbNV0gPSB7CiAgICAgezAsIDAsIDAsIDAsIH4w LCB+MCwgMCwgMH0sCQkvKiA4MC1iZjogbm9uLWxlYWRpbmcgYnl0ZXMgKi8KICAgICB7fjAs IH4wLCB+MCwgfjAsIDAsIDAsIDAsIDB9LCAgICAgICAvKiAwMC03ZjogMS1ieXRlIHNlcXVl bmNlICovCkBAIC0xODQ4LDcgKzE3ODAsNiBAQCBhZGRfdXRmOF9hbnljaGFyICh2b2lkKQog ICAgICAgYWRkdG9rIChDQVQpOwogICAgICAgYWRkdG9rIChPUik7CiAgICAgfQotI2VuZGlm CiB9CiAKIC8qIFRoZSBncmFtbWFyIHVuZGVyc3Rvb2QgYnkgdGhlIHBhcnNlciBpcyBhcyBm b2xsb3dzLgpAQCAtMTg4OSw3ICsxODIwLDcgQEAgYWRkX3V0ZjhfYW55Y2hhciAodm9pZCkK IHN0YXRpYyB2b2lkCiBhdG9tICh2b2lkKQogewotICBpZiAoTUJTX1NVUFBPUlQgJiYgdG9r ID09IFdDSEFSKQorICBpZiAodG9rID09IFdDSEFSKQogICAgIHsKICAgICAgIGFkZHRva193 YyAod2N0b2spOwogCkBAIC0xOTA2LDcgKzE4MzcsNyBAQCBhdG9tICh2b2lkKQogCiAgICAg ICB0b2sgPSBsZXggKCk7CiAgICAgfQotICBlbHNlIGlmIChNQlNfU1VQUE9SVCAmJiB0b2sg PT0gQU5ZQ0hBUiAmJiB1c2luZ191dGY4ICgpKQorICBlbHNlIGlmICh0b2sgPT0gQU5ZQ0hB UiAmJiB1c2luZ191dGY4ICgpKQogICAgIHsKICAgICAgIC8qIEZvciBVVEYtOCBleHBhbmQg dGhlIHBlcmlvZCB0byBhIHNlcmllcyBvZiBDU0VUcyB0aGF0IGRlZmluZSBhIHZhbGlkCiAg ICAgICAgICBVVEYtOCBjaGFyYWN0ZXIuICBUaGlzIGF2b2lkcyB1c2luZyB0aGUgc2xvdyBt dWx0aWJ5dGUgcGF0aC4gIEknbQpAQCAtMTkyMCw5ICsxODUxLDcgQEAgYXRvbSAodm9pZCkK ICAgICB9CiAgIGVsc2UgaWYgKCh0b2sgPj0gMCAmJiB0b2sgPCBOT1RDSEFSKSB8fCB0b2sg Pj0gQ1NFVCB8fCB0b2sgPT0gQkFDS1JFRgogICAgICAgICAgICB8fCB0b2sgPT0gQkVHTElO RSB8fCB0b2sgPT0gRU5ETElORSB8fCB0b2sgPT0gQkVHV09SRAotI2lmIE1CU19TVVBQT1JU CiAgICAgICAgICAgIHx8IHRvayA9PSBBTllDSEFSIHx8IHRvayA9PSBNQkNTRVQKLSNlbmRp ZiAvKiBNQlNfU1VQUE9SVCAqLwogICAgICAgICAgICB8fCB0b2sgPT0gRU5EV09SRCB8fCB0 b2sgPT0gTElNV09SRCB8fCB0b2sgPT0gTk9UTElNV09SRCkKICAgICB7CiAgICAgICBhZGR0 b2sgKHRvayk7CkBAIC0yMjA1LDExICsyMTM0LDkgQEAgc3RhdGVfaW5kZXggKHN0cnVjdCBk ZmEgKmQsIHBvc2l0aW9uX3NldCBjb25zdCAqcywgaW50IGNvbnRleHQpCiAgIGQtPnN0YXRl c1tpXS5iYWNrcmVmID0gMDsKICAgZC0+c3RhdGVzW2ldLmNvbnN0cmFpbnQgPSAwOwogICBk LT5zdGF0ZXNbaV0uZmlyc3RfZW5kID0gMDsKLSAgaWYgKE1CU19TVVBQT1JUKQotICAgIHsK LSAgICAgIGQtPnN0YXRlc1tpXS5tYnBzLm5lbGVtID0gMDsKLSAgICAgIGQtPnN0YXRlc1tp XS5tYnBzLmVsZW1zID0gTlVMTDsKLSAgICB9CisgIGQtPnN0YXRlc1tpXS5tYnBzLm5lbGVt ID0gMDsKKyAgZC0+c3RhdGVzW2ldLm1icHMuZWxlbXMgPSBOVUxMOworCiAgIGZvciAoaiA9 IDA7IGogPCBzLT5uZWxlbTsgKytqKQogICAgIGlmIChkLT50b2tlbnNbcy0+ZWxlbXNbal0u aW5kZXhdIDwgMCkKICAgICAgIHsKQEAgLTIyNDcsMTAgKzIxNzQsOCBAQCBlcHNjbG9zdXJl IChwb3NpdGlvbl9zZXQgKiBzLCBzdHJ1Y3QgZGZhIGNvbnN0ICpkKQogICBmb3IgKGkgPSAw OyBpIDwgcy0+bmVsZW07ICsraSkKICAgICBpZiAoZC0+dG9rZW5zW3MtPmVsZW1zW2ldLmlu ZGV4XSA+PSBOT1RDSEFSCiAgICAgICAgICYmIGQtPnRva2Vuc1tzLT5lbGVtc1tpXS5pbmRl eF0gIT0gQkFDS1JFRgotI2lmIE1CU19TVVBQT1JUCiAgICAgICAgICYmIGQtPnRva2Vuc1tz LT5lbGVtc1tpXS5pbmRleF0gIT0gQU5ZQ0hBUgogICAgICAgICAmJiBkLT50b2tlbnNbcy0+ ZWxlbXNbaV0uaW5kZXhdICE9IE1CQ1NFVAotI2VuZGlmCiAgICAgICAgICYmIGQtPnRva2Vu c1tzLT5lbGVtc1tpXS5pbmRleF0gPCBDU0VUKQogICAgICAgewogICAgICAgICBvbGQgPSBz LT5lbGVtc1tpXTsKQEAgLTI1NjcsOSArMjQ5Miw3IEBAIGRmYWFuYWx5emUgKHN0cnVjdCBk ZmEgKmQsIGludCBzZWFyY2hmbGFnKQogICAgICBpdCB3aXRoIGl0cyBlcHNpbG9uIGNsb3N1 cmUuICAqLwogICBmb3IgKGkgPSAwOyBpIDwgZC0+dGluZGV4OyArK2kpCiAgICAgaWYgKGQt PnRva2Vuc1tpXSA8IE5PVENIQVIgfHwgZC0+dG9rZW5zW2ldID09IEJBQ0tSRUYKLSNpZiBN QlNfU1VQUE9SVAogICAgICAgICB8fCBkLT50b2tlbnNbaV0gPT0gQU5ZQ0hBUiB8fCBkLT50 b2tlbnNbaV0gPT0gTUJDU0VUCi0jZW5kaWYKICAgICAgICAgfHwgZC0+dG9rZW5zW2ldID49 IENTRVQpCiAgICAgICB7CiAjaWZkZWYgREVCVUcKQEAgLTI2NzksOSArMjYwMiw4IEBAIGRm YXN0YXRlIChzdGF0ZV9udW0gcywgc3RydWN0IGRmYSAqZCwgc3RhdGVfbnVtIHRyYW5zW10p CiAgICAgICAgIHNldGJpdCAoZC0+dG9rZW5zW3Bvcy5pbmRleF0sIG1hdGNoZXMpOwogICAg ICAgZWxzZSBpZiAoZC0+dG9rZW5zW3Bvcy5pbmRleF0gPj0gQ1NFVCkKICAgICAgICAgY29w eXNldCAoZC0+Y2hhcmNsYXNzZXNbZC0+dG9rZW5zW3Bvcy5pbmRleF0gLSBDU0VUXSwgbWF0 Y2hlcyk7Ci0gICAgICBlbHNlIGlmIChNQlNfU1VQUE9SVAotICAgICAgICAgICAgICAgJiYg KGQtPnRva2Vuc1twb3MuaW5kZXhdID09IEFOWUNIQVIKLSAgICAgICAgICAgICAgICAgICB8 fCBkLT50b2tlbnNbcG9zLmluZGV4XSA9PSBNQkNTRVQpKQorICAgICAgZWxzZSBpZiAoZC0+ dG9rZW5zW3Bvcy5pbmRleF0gPT0gQU5ZQ0hBUgorICAgICAgICAgICAgICAgfHwgZC0+dG9r ZW5zW3Bvcy5pbmRleF0gPT0gTUJDU0VUKQogICAgICAgICAvKiBNQl9DVVJfTUFYID4gMSAg Ki8KICAgICAgICAgewogICAgICAgICAgIC8qIEFOWUNIQVIgYW5kIE1CQ1NFVCBtdXN0IG1h dGNoIHdpdGggYSBzaW5nbGUgY2hhcmFjdGVyLCBzbyB3ZQpAQCAtMjg1NSw3ICsyNzc3LDcg QEAgZGZhc3RhdGUgKHN0YXRlX251bSBzLCBzdHJ1Y3QgZGZhICpkLCBzdGF0ZV9udW0gdHJh bnNbXSkKICAgICAgIC8qIElmIHdlIGFyZSBidWlsZGluZyBhIHNlYXJjaGluZyBtYXRjaGVy LCB0aHJvdyBpbiB0aGUgcG9zaXRpb25zCiAgICAgICAgICBvZiBzdGF0ZSAwIGFzIHdlbGwu ICAqLwogICAgICAgaWYgKGQtPnNlYXJjaGZsYWcKLSAgICAgICAgICAmJiAoIU1CU19TVVBQ T1JUIHx8IChkLT5tYl9jdXJfbWF4ID09IDEgfHwgIW5leHRfaXNudF8xc3RfYnl0ZSkpKQor ICAgICAgICAgICYmIChkLT5tYl9jdXJfbWF4ID09IDEgfHwgIW5leHRfaXNudF8xc3RfYnl0 ZSkpCiAgICAgICAgIGZvciAoaiA9IDA7IGogPCBkLT5zdGF0ZXNbMF0uZWxlbXMubmVsZW07 ICsraikKICAgICAgICAgICBpbnNlcnQgKGQtPnN0YXRlc1swXS5lbGVtcy5lbGVtc1tqXSwg JmZvbGxvd3MpOwogCkBAIC0zNDA3LDcgKzMzMjksNiBAQCB0cmFuc2l0X3N0YXRlIChzdHJ1 Y3QgZGZhICpkLCBzdGF0ZV9udW0gcywgdW5zaWduZWQgY2hhciBjb25zdCAqKnBwKQogc3Rh dGljIHZvaWQKIHByZXBhcmVfd2NfYnVmIChzdHJ1Y3QgZGZhICpkLCBjb25zdCBjaGFyICpi ZWdpbiwgY29uc3QgY2hhciAqZW5kKQogewotI2lmIE1CU19TVVBQT1JUCiAgIHVuc2lnbmVk IGNoYXIgZW9sID0gZW9sYnl0ZTsKICAgc2l6ZV90IGk7CiAgIHNpemVfdCBpbGltID0gZW5k IC0gYmVnaW4gKyAxOwpAQCAtMzQzMSw3ICszMzUyLDYgQEAgcHJlcGFyZV93Y19idWYgKHN0 cnVjdCBkZmEgKmQsIGNvbnN0IGNoYXIgKmJlZ2luLCBjb25zdCBjaGFyICplbmQpCiAgIGJ1 Zl9lbmQgPSAodW5zaWduZWQgY2hhciAqKSAoYmVnaW4gKyBpKTsKICAgbWJsZW5fYnVmW2ld ID0gMDsKICAgaW5wdXR3Y3NbaV0gPSAwOyAgICAgICAgICAgICAgLyogc2VudGluZWwgKi8K LSNlbmRpZiAvKiBNQlNfU1VQUE9SVCAqLwogfQogCiAvKiBTZWFyY2ggdGhyb3VnaCBhIGJ1 ZmZlciBsb29raW5nIGZvciBhIG1hdGNoIHRvIHRoZSBnaXZlbiBzdHJ1Y3QgZGZhLgpAQCAt MzY1Myw3ICszNTczLDcgQEAgZGZhb3B0aW1pemUgKHN0cnVjdCBkZmEgKmQpCiB7CiAgIHNp emVfdCBpOwogCi0gIGlmICghTUJTX1NVUFBPUlQgfHwgIXVzaW5nX3V0ZjggKCkpCisgIGlm ICghdXNpbmdfdXRmOCAoKSkKICAgICByZXR1cm47CiAKICAgZm9yIChpID0gMDsgaSA8IGQt PnRpbmRleDsgKytpKQpAQCAtMzcwMyw4ICszNjIzLDcgQEAgZGZhZnJlZSAoc3RydWN0IGRm YSAqZCkKICAgZm9yIChpID0gMDsgaSA8IGQtPnNpbmRleDsgKytpKQogICAgIHsKICAgICAg IGZyZWUgKGQtPnN0YXRlc1tpXS5lbGVtcy5lbGVtcyk7Ci0gICAgICBpZiAoTUJTX1NVUFBP UlQpCi0gICAgICAgIGZyZWUgKGQtPnN0YXRlc1tpXS5tYnBzLmVsZW1zKTsKKyAgICAgIGZy ZWUgKGQtPnN0YXRlc1tpXS5tYnBzLmVsZW1zKTsKICAgICB9CiAgIGZyZWUgKGQtPnN0YXRl cyk7CiAgIGZvciAoaSA9IDA7IGkgPCBkLT50aW5kZXg7ICsraSkKQEAgLTQxNzksNyArNDA5 OCw3IEBAIGRmYW11c3QgKHN0cnVjdCBkZmEgKmQpCiAgICAgICAgICAgICAgIC8qIG5vdCBv biAqbXkqIHNoaWZ0ICovCiAgICAgICAgICAgICAgIGdvdG8gZG9uZTsKICAgICAgICAgICAg IH0KLSAgICAgICAgICBlbHNlIGlmICh0ID49IENTRVQgfHwgIU1CU19TVVBQT1JUIHx8IHQg PT0gQU5ZQ0hBUiB8fCB0ID09IE1CQ1NFVCkKKyAgICAgICAgICBlbHNlIGlmICh0ID49IENT RVQgfHwgdCA9PSBBTllDSEFSIHx8IHQgPT0gTUJDU0VUKQogICAgICAgICAgICAgewogICAg ICAgICAgICAgICAvKiBlYXN5IGVub3VnaCAqLwogICAgICAgICAgICAgICByZXNldG11c3Qg KG1wKTsKZGlmZiAtLWdpdCBhL21ic3VwcG9ydC5oIGIvbWJzdXBwb3J0LmgKaW5kZXggOWE2 MjQ4Ni4uYWIzM2U5MSAxMDA2NDQKLS0tIGEvbWJzdXBwb3J0LmgKKysrIGIvbWJzdXBwb3J0 LmgKQEAgLTY2LDYgKzY2LDE1IEBACiAjZW5kaWYKIAogI2lmICEgTUJTX1NVUFBPUlQKKwor LyogSW5jbHVkZSB3Y2hhci5oIGFuZCB3Y3R5cGUuaCBzbyB0aGVpciBkZWZpbml0aW9ucyBj YW4gYmUgb3ZlcnJpZGRlbi4gICovCisKKyMgaW5jbHVkZSA8d2NoYXIuaD4KKyMgaW5jbHVk ZSA8d2N0eXBlLmg+CisKKy8qIE92ZXJyaWRlIHRoZSBkZWZpbml0aW9ucyBvZiB3Y2hhci5o IGFuZCB3Y3R5cGUuaCB0byBwcm92aWRlIGEKKyAgIHVuaWJ5dGUgc3Vic3RpdHV0ZSB0aGF0 IGlzIGdvb2QgZW5vdWdoIGZvciBHYXdrLiAgKi8KKwogIyB1bmRlZiBNQl9DVVJfTUFYCiAj IGRlZmluZSBNQl9DVVJfTUFYIDEKIApAQCAtNzgsMTUgKzg3LDI0IEBACiAjZGVmaW5lIHdj dHlwZV90CWludAogI2RlZmluZSB3aW50X3QJCWludAogI2RlZmluZSBtYnN0YXRlX3QJaW50 CisjdW5kZWYgV0VPRgogI2RlZmluZSBXRU9GCQlFT0YKKyN1bmRlZiB0b3d1cHBlcgogI2Rl ZmluZSB0b3d1cHBlcgl0b3VwcGVyCisjdW5kZWYgdG93bG93ZXIKICNkZWZpbmUgdG93bG93 ZXIJdG9sb3dlcgogI2lmbmRlZiBfX0RKR1BQX18KLSNkZWZpbmUgYnRvd2MoeCkJKChpbnQp eCkKKyN1bmRlZiBidG93YworI2RlZmluZSBidG93Yyh4KQkoKGludCkgKHgpKQogI2VuZGlm CisjdW5kZWYgaXN3YWxudW0KICNkZWZpbmUgaXN3YWxudW0JaXNhbG51bQorI3VuZGVmIGlz d2FscGhhCiAjZGVmaW5lIGlzd2FscGhhCWlzYWxwaGEKKyN1bmRlZiBpc3d1cHBlcgogI2Rl ZmluZSBpc3d1cHBlcglpc3VwcGVyCisjdW5kZWYgaXN3bG93ZXIKKyNkZWZpbmUgaXN3bG93 ZXIJaXNsb3dlcgogI2lmIGRlZmluZWQoWk9TX1VTUykKICN1bmRlZiB0b3d1cHBlcgogI3Vu ZGVmIHRvd2xvd2VyCkBAIC05NCwxMiArMTEyLDQwIEBACiAjdW5kZWYgaXN3YWxudW0KICN1 bmRlZiBpc3dhbHBoYQogI3VuZGVmIGlzd3VwcGVyCi0jdW5kZWYgd2N0eXBlCi0jdW5kZWYg aXN3Y3R5cGUKLSN1bmRlZiB3Y3Njb2xsCiAjZW5kaWYKIAorI3VuZGVmIG1icnRvd2MKKyNk ZWZpbmUgbWJydG93Yyhwd2MsIHMsIG4sIHBzKSAoKHNpemVfdCkgLTEpCisjdW5kZWYgd2Ny dG9tYgorI2RlZmluZSB3Y3J0b21iKHMsIHdjLCBwcykgKChzaXplX3QpIC0xKQorCisjdW5k ZWYgd2N0eXBlCisjZGVmaW5lIHdjdHlwZSBnYXdrX3djdHlwZQogZXh0ZXJuIHdjdHlwZV90 IHdjdHlwZShjb25zdCBjaGFyICpuYW1lKTsKKyN1bmRlZiBpc3djdHlwZQorI2RlZmluZSBp c3djdHlwZSBnYXdrX2lzd2N0eXBlCiBleHRlcm4gaW50IGlzd2N0eXBlKHdpbnRfdCB3Yywg d2N0eXBlX3QgZGVzYyk7CisjdW5kZWYgd2NzY29sbAorI2RlZmluZSB3Y3Njb2xsIGdhd2tf d2NzY29sbAogZXh0ZXJuIGludCB3Y3Njb2xsKGNvbnN0IHdjaGFyX3QgKndzMSwgY29uc3Qg d2NoYXJfdCAqd3MyKTsKICNlbmRpZgorCisjaWZkZWYgTElCQ19JU19CT1JLRUQKKyMgaW5j bHVkZSA8d2NoYXIuaD4KK2V4dGVybiBpbnQgZ2F3a19tYl9jdXJfbWF4OworIyB1bmRlZiBN Ql9DVVJfTUFYCisjIHVuZGVmIG1icnRvd2MKKyMgZGVmaW5lIE1CX0NVUl9NQVggZ2F3a19t Yl9jdXJfbWF4CisjIGRlZmluZSBtYnJ0b3djKGEsIGIsIGMsIGQpICgoc2l6ZV90KSAtMSkK KyNlbmRpZgorCisjaW5jbHVkZSA8bG9jYWxlLmg+CisjaWZuZGVmIExDX0FMTAorIyBkZWZp bmUgc2V0bG9jYWxlKGNhdGVnb3J5LCBsb2NhbGUpIE5VTEwKKyNlbmRpZgorCisjaW5jbHVk ZSA8YXNzZXJ0Lmg+CisjaWZuZGVmIHN0YXRpY19hc3NlcnQKKyMgZGVmaW5lIHN0YXRpY19h c3NlcnQoY29uZCwgZGlhZ25vc3RpYykgXAorICAgIGV4dGVybiBpbnQgKCpmb28gKHZvaWQp KSBbISFzaXplb2YgKHN0cnVjdCB7IGludCBmb286IChjb25kKSA/IDggOiAtMTsgfSldCisj ZW5kaWYKZGlmZiAtLWdpdCBhL21pc3NpbmdfZC9DaGFuZ2VMb2cgYi9taXNzaW5nX2QvQ2hh bmdlTG9nCmluZGV4IGY5NGMwNzAuLjdmYTY1NDEgMTAwNjQ0Ci0tLSBhL21pc3NpbmdfZC9D aGFuZ2VMb2cKKysrIGIvbWlzc2luZ19kL0NoYW5nZUxvZwpAQCAtMSwzICsxLDcgQEAKKzIw MTQtMDQtMDMgIFBhdWwgRWdnZXJ0ICA8ZWdnZXJ0QGNzLnVjbGEuZWR1PgorCisJKiB3Y21p c2MuYzogUmVtb3ZlIG5vdy11bm5lY2Vzc2FyeSBpZmRlZnMuCisKIDIwMTMtMDUtMDkgICAg ICAgICBBcm5vbGQgRC4gUm9iYmlucyAgICAgPGFybm9sZEBza2VldmUuY29tPgogCiAJKiA0 LjEuMDogUmVsZWFzZSB0YXIgYmFsbCBtYWRlLgpkaWZmIC0tZ2l0IGEvbWlzc2luZ19kL3dj bWlzYy5jIGIvbWlzc2luZ19kL3djbWlzYy5jCmluZGV4IGQyYjdhYTAuLjg5ZTI0YzkgMTAw NjQ0Ci0tLSBhL21pc3NpbmdfZC93Y21pc2MuYworKysgYi9taXNzaW5nX2Qvd2NtaXNjLmMK QEAgLTE2LDcgKzE2LDYgQEAKICAgIEZvdW5kYXRpb24sIEluYy4sCiAgICA1MSBGcmFua2xp biBTdHJlZXQgLSBGaWZ0aCBGbG9vciwgQm9zdG9uLCBNQSAgMDIxMTAtMTMwMSwgVVNBICov CiAKLSNpZiAhZGVmaW5lZChIQVZFX1dDVFlQRSkgfHwgIWRlZmluZWQoSEFWRV9JU1dDVFlQ RSkKIHN0YXRpYyBjb25zdCBjaGFyICpjbGFzc2VzW10gPSB7CiAJIjxkdW1teT4iLAogCSJh bG51bSIsCkBAIC0zMywxNiArMzIsMTIgQEAgc3RhdGljIGNvbnN0IGNoYXIgKmNsYXNzZXNb XSA9IHsKIAkieGRpZ2l0IiwKIAlOVUxMCiB9OwotI2VuZGlmCiAKLSNpZm5kZWYgSEFWRV9J U1dDVFlQRQogc3RhdGljIGludCBpc19ibGFuayAoaW50IGMpCiB7CiAgICByZXR1cm4gKGMg PT0gJyAnIHx8IGMgPT0gJ1x0Jyk7CiB9Ci0jZW5kaWYKIAotI2lmbmRlZiBIQVZFX1dDVFlQ RQogd2N0eXBlX3Qgd2N0eXBlKGNvbnN0IGNoYXIgKm5hbWUpCiB7CiAJaW50IGk7CkBAIC01 Myw5ICs0OCw3IEBAIHdjdHlwZV90IHdjdHlwZShjb25zdCBjaGFyICpuYW1lKQogCiAJcmV0 dXJuIDA7CiB9Ci0jZW5kaWYKIAotI2lmbmRlZiBIQVZFX0lTV0NUWVBFCiBpbnQgaXN3Y3R5 cGUod2ludF90IHdjLCB3Y3R5cGVfdCBkZXNjKQogewogCWludCBqID0gc2l6ZW9mKGNsYXNz ZXMpIC8gc2l6ZW9mKGNsYXNzZXNbMF0pOwpAQCAtNzksOSArNzIsNyBAQCBpbnQgaXN3Y3R5 cGUod2ludF90IHdjLCB3Y3R5cGVfdCBkZXNjKQogCWRlZmF1bHQ6CXJldHVybiAwOwogCX0K IH0KLSNlbmRpZgogCi0jaWZuZGVmIEhBVkVfV0NTQ09MTAogaW50IHdjc2NvbGwoY29uc3Qg d2NoYXJfdCAqd3MxLCBjb25zdCB3Y2hhcl90ICp3czIpCiB7CiAJc2l6ZV90IGk7CkBAIC05 NSw2ICs4Niw1IEBAIGludCB3Y3Njb2xsKGNvbnN0IHdjaGFyX3QgKndzMSwgY29uc3Qgd2No YXJfdCAqd3MyKQogCiAJcmV0dXJuICh3czFbaV0gLSB3czJbaV0pOwogfQotI2VuZGlmCiAK IC8qd2NtaXNjLmMqLwpkaWZmIC0tZ2l0IGEvcmVnZXhfaW50ZXJuYWwuaCBiL3JlZ2V4X2lu dGVybmFsLmgKaW5kZXggYzg5ODFhMC4uNzU4Y2Y0NyAxMDA2NDQKLS0tIGEvcmVnZXhfaW50 ZXJuYWwuaAorKysgYi9yZWdleF9pbnRlcm5hbC5oCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5j bHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSA8c3RyaW5nLmg+CiAKLSNpbmNsdWRlICJtYnN1 cHBvcnQuaCIgLyogZ2F3ayAqLwotCiAjaWYgZGVmaW5lZCBIQVZFX0xBTkdJTkZPX0ggfHwg ZGVmaW5lZCBIQVZFX0xBTkdJTkZPX0NPREVTRVQgfHwgZGVmaW5lZCBfTElCQwogIyBpbmNs dWRlIDxsYW5naW5mby5oPgogI2VuZGlmCi0tIAoxLjkuMAoK --------------030802080703030800020706-- From debbugs-submit-bounces@debbugs.gnu.org Fri Apr 04 11:04:53 2014 Received: (at 17157) by debbugs.gnu.org; 4 Apr 2014 15:04:53 +0000 Received: from localhost ([127.0.0.1]:35534 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WW5fp-0003CA-Aa for submit@debbugs.gnu.org; Fri, 04 Apr 2014 11:04:53 -0400 Received: from mail-pb0-f51.google.com ([209.85.160.51]:64225) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WW5fm-0003Bz-6X for 17157@debbugs.gnu.org; Fri, 04 Apr 2014 11:04:51 -0400 Received: by mail-pb0-f51.google.com with SMTP id uo5so3550929pbc.24 for <17157@debbugs.gnu.org>; Fri, 04 Apr 2014 08:04:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; bh=JwqNN+bmX2p6MdotLShPX5TmU8m5FJMOUcpYGPWCHz4=; b=F7uLWGDM2J7mwKPuB75ArSwpoB77bRr2nYzerMENRNHLNS0etxM/1vHuImUOxnvwHz scBH6GgHPt9RuXJ9lehMaItkpdBayvuHZBGuiPkpTZzeDS7OgrIZW3p+l4TOAEL23rKd S7RNP0OQL4UZUaqKv1BgazxzY1IiRKtRp54AnketXVGeW0G6h/iIwNFQuFmLELqSgCYZ NoiSXzilpeuUeN82SK052D5yaQp4VFoCX1/anEYSzJK4nQO5itLAVXxz8RDRjgfjmvjP 9IkCZS6xJQgAyYuKOTdtfyDny4xKqXdyED/XRaTh3VLAgqb1IHybdoMImDH1l10dnzH2 paIg== X-Received: by 10.66.164.135 with SMTP id yq7mr15654186pab.126.1396623889207; Fri, 04 Apr 2014 08:04:49 -0700 (PDT) MIME-Version: 1.0 Received: by 10.68.201.231 with HTTP; Fri, 4 Apr 2014 08:04:28 -0700 (PDT) In-Reply-To: <533E1744.3050806@cs.ucla.edu> References: <1396343926-1394-1-git-send-email-bonzini@gnu.org> <1396343926-1394-2-git-send-email-bonzini@gnu.org> <201404010933.s319XWUR023408@freefriends.org> <533A8B4B.40008@gnu.org> <533AD074.60209@cs.ucla.edu> <201404020740.s327eFxG032374@freefriends.org> <533C79FD.2020807@cs.ucla.edu> <533E1744.3050806@cs.ucla.edu> From: Jim Meyering Date: Fri, 4 Apr 2014 08:04:28 -0700 X-Google-Sender-Auth: SeHq2GQk_qtC-ImVYrocNoujsoU Message-ID: Subject: Re: bug#17157: [PATCH 1/5] Partially revert "dfa: improve port to freestanding DJGPP" To: Paul Eggert Content-Type: text/plain; charset=ISO-8859-1 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 17157 Cc: Jim Meyering , Paolo Bonzini , Aharon Robbins , 17157@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) On Thu, Apr 3, 2014 at 7:21 PM, Paul Eggert wrote: > Paul Eggert wrote: >> >> I'll look into writing patches for that, one for grep (which affects >> dfa.c), one for gawk (which will use the same patches to dfa.c). > > OK, I got it to work, and it simplifies grep (not surprising) and gawk as > well (a bit surprising, but there it is). I'm attaching the patches, one > for each program. These patches include Paolo's original suggestion at the > start of bug#17157, plus several other simplifications to dfa.c. Thanks! The grep changes all look fine. From debbugs-submit-bounces@debbugs.gnu.org Sat Apr 05 19:36:32 2014 Received: (at 17157-done) by debbugs.gnu.org; 5 Apr 2014 23:36:32 +0000 Received: from localhost ([127.0.0.1]:37184 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WWa8W-0003cZ-91 for submit@debbugs.gnu.org; Sat, 05 Apr 2014 19:36:32 -0400 Received: from smtp.cs.ucla.edu ([131.179.128.62]:38129) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WWa8T-0003cP-Vi for 17157-done@debbugs.gnu.org; Sat, 05 Apr 2014 19:36:30 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp.cs.ucla.edu (Postfix) with ESMTP id 54FFA39E8014; Sat, 5 Apr 2014 16:36:29 -0700 (PDT) X-Virus-Scanned: amavisd-new at smtp.cs.ucla.edu Received: from smtp.cs.ucla.edu ([127.0.0.1]) by localhost (smtp.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id mzXLQucIAU5J; Sat, 5 Apr 2014 16:36:20 -0700 (PDT) Received: from [192.168.1.9] (pool-108-0-233-62.lsanca.fios.verizon.net [108.0.233.62]) by smtp.cs.ucla.edu (Postfix) with ESMTPSA id B5966A60002; Sat, 5 Apr 2014 16:36:20 -0700 (PDT) Message-ID: <53409374.30804@cs.ucla.edu> Date: Sat, 05 Apr 2014 16:36:20 -0700 From: Paul Eggert Organization: UCLA Computer Science Department User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 MIME-Version: 1.0 To: Jim Meyering Subject: Re: bug#17157: [PATCH 1/5] Partially revert "dfa: improve port to freestanding DJGPP" References: <1396343926-1394-1-git-send-email-bonzini@gnu.org> <1396343926-1394-2-git-send-email-bonzini@gnu.org> <201404010933.s319XWUR023408@freefriends.org> <533A8B4B.40008@gnu.org> <533AD074.60209@cs.ucla.edu> <201404020740.s327eFxG032374@freefriends.org> <533C79FD.2020807@cs.ucla.edu> <533E1744.3050806@cs.ucla.edu> In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -2.9 (--) X-Debbugs-Envelope-To: 17157-done Cc: Paolo Bonzini , Aharon Robbins , 17157-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.9 (--) Jim Meyering wrote: > Thanks! The grep changes all look fine. OK, thanks, I installed them and am marking this bug as done. As I understand it, Aharon is in the middle of a gawk release and so now's not a good time to install the gawk changes, but we can address any integration issues if they later come up. From debbugs-submit-bounces@debbugs.gnu.org Sun Apr 06 13:01:39 2014 Received: (at 17157-done) by debbugs.gnu.org; 6 Apr 2014 17:01:39 +0000 Received: from localhost ([127.0.0.1]:38276 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WWqRu-0004Wh-DE for submit@debbugs.gnu.org; Sun, 06 Apr 2014 13:01:38 -0400 Received: from mail-pd0-f177.google.com ([209.85.192.177]:62445) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WWqRs-0004WY-1i for 17157-done@debbugs.gnu.org; Sun, 06 Apr 2014 13:01:36 -0400 Received: by mail-pd0-f177.google.com with SMTP id y10so5434337pdj.8 for <17157-done@debbugs.gnu.org>; Sun, 06 Apr 2014 10:01:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; bh=Dozwj6st26RYOibHRMScRuZ6x/jwraukg3/P7yJz2G0=; b=JbwifaBhQ+BjxIZlARa6dOeJkAxUkMVgAFmFvKUzIZP8FZKiVWM8EiyNOuyJ2lP0z3 zS1XKlrt5ypskaMULVdLCkdIgPiQELkBe6aLIRHYn9Jv/LyrlkowC0T+ZtMpbuwlk6rW TmJH1NBza3/4ibXHD+Ph116gnHr3b6TT5bm+YfeD+nGPz+rIAUm+8dsTTVhcbBfjvy5z gdQ05HYi2ois3A2iqDliZaTGcPCeMQeOLMHIn9gMyH5OLT6gJ23KZEWmGzKSFTbGgDAl rJmpT9Z1dRtvwz/ZWC6J7dH/kP5T0ccS817ErQBF3Yz1QHwsxUnoIRot8AbiDt8ZqJ4+ 7U+Q== X-Received: by 10.66.156.4 with SMTP id wa4mr26515566pab.49.1396803695107; Sun, 06 Apr 2014 10:01:35 -0700 (PDT) MIME-Version: 1.0 Received: by 10.68.201.231 with HTTP; Sun, 6 Apr 2014 10:01:15 -0700 (PDT) In-Reply-To: <53409374.30804@cs.ucla.edu> References: <1396343926-1394-1-git-send-email-bonzini@gnu.org> <1396343926-1394-2-git-send-email-bonzini@gnu.org> <201404010933.s319XWUR023408@freefriends.org> <533A8B4B.40008@gnu.org> <533AD074.60209@cs.ucla.edu> <201404020740.s327eFxG032374@freefriends.org> <533C79FD.2020807@cs.ucla.edu> <533E1744.3050806@cs.ucla.edu> <53409374.30804@cs.ucla.edu> From: Jim Meyering Date: Sun, 6 Apr 2014 10:01:15 -0700 X-Google-Sender-Auth: WUxf-3PyePvp6a3mdz9t7Qgpv6A Message-ID: Subject: Re: bug#17157: [PATCH 1/5] Partially revert "dfa: improve port to freestanding DJGPP" To: Paul Eggert Content-Type: multipart/mixed; boundary=047d7b86f5b811c65004f662b45c X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 17157-done Cc: Paolo Bonzini , Aharon Robbins , 17157-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) --047d7b86f5b811c65004f662b45c Content-Type: text/plain; charset=ISO-8859-1 On Sat, Apr 5, 2014 at 4:36 PM, Paul Eggert wrote: > Jim Meyering wrote: >> >> Thanks! The grep changes all look fine. > > > OK, thanks, I installed them and am marking this bug as done. As I > understand it, Aharon is in the middle of a gawk release and so now's not a > good time to install the gawk changes, but we can address any integration > issues if they later come up. Hi Paul, I see that dfa.c now fails to compile on systems without static_assert support, e.g., OS X 10.8.5 (even with gcc-4.9.0 20140324): dfa.c:918:16: error: expected declaration specifiers or '...' before '(' token static_assert ((sizeof lonesome_lower / sizeof *lonesome_lower + 2 I've pushed the attached to make grep buildable again. --047d7b86f5b811c65004f662b45c Content-Type: text/plain; charset=US-ASCII; name="k.txt" Content-Disposition: attachment; filename="k.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_htokjgl80 RnJvbSBhMDljZWM4YjY2N2JjYmFlMmY5NmM4YjNkZTEyZGM5ZGU0YTNhYjg3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gTWV5ZXJpbmcgPG1leWVyaW5nQGZiLmNvbT4KRGF0ZTog U3VuLCA2IEFwciAyMDE0IDA5OjI1OjQxIC0wNzAwClN1YmplY3Q6IFtQQVRDSF0gYnVpbGQ6IGF2 b2lkIE9TIFggMTAuOC41IGJ1aWxkIGZhaWx1cmUgZHVlIHRvIGxhY2sgb2YKIHN0YXRpY19hc3Nl cnQKCiogYm9vdHN0cmFwLmNvbmYgKGdudWxpYl9tb2R1bGVzKTogQWRkIGFzc2VydC1oLCB0byBh Y2NvbW1vZGF0ZSB0aGUKbmV3IHVzZSBvZiBzdGF0aWNfYXNzZXJ0IG9uIHN5c3RlbXMgbGFja2lu ZyBzdXBwb3J0IGZvciB0aGF0IGNvbnN0cnVjdC4KV2l0aG91dCB0aGlzIGNoYW5nZSwgY29tcGls YXRpb24gb2YgZGZhLmMgZmFpbGVkIG9uIE9TIFggMTAuOC41IHdpdGgKZ2NjLTQuOS4wIDIwMTQw MzI0LiAgV2Ugc2hvdWxkIGJlIHVzaW5nIGdudWxpYidzIGFzc2VydC1oIG1vZHVsZSwKcmVnYXJk bGVzcywgZm9yIGl0cyBub21pbmFsIGltcHJvdmVkIHBvcnRhYmlsaXR5LCBzaW5jZSBncmVwIGlu Y2x1ZGVzCmFzc2VydC5oIGFuZCB1c2VzIGFzc2VydC4KLS0tCiBib290c3RyYXAuY29uZiB8IDEg KwogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspCgpkaWZmIC0tZ2l0IGEvYm9vdHN0cmFw LmNvbmYgYi9ib290c3RyYXAuY29uZgppbmRleCAzNjc0MjdkLi44NmNkODFkIDEwMDY0NAotLS0g YS9ib290c3RyYXAuY29uZgorKysgYi9ib290c3RyYXAuY29uZgpAQCAtMjQsNiArMjQsNyBAQCBn bnVsaWJfbW9kdWxlcz0nCiBhbGxvY2EKIGFubm91bmNlLWdlbgogYXJnbWF0Y2gKK2Fzc2VydC1o CiBiaW5hcnktaW8KIGJ0b3djCiBjLWN0eXBlCi0tIAoxLjkuMC4yNTguZzAwZWRhMjMKCg== --047d7b86f5b811c65004f662b45c-- From debbugs-submit-bounces@debbugs.gnu.org Sun Apr 06 14:01:10 2014 Received: (at 17157) by debbugs.gnu.org; 6 Apr 2014 18:01:10 +0000 Received: from localhost ([127.0.0.1]:38304 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WWrNU-00079W-PH for submit@debbugs.gnu.org; Sun, 06 Apr 2014 14:01:10 -0400 Received: from smtp.cs.ucla.edu ([131.179.128.62]:37684) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WWrNP-00079G-Eu; Sun, 06 Apr 2014 14:01:05 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp.cs.ucla.edu (Postfix) with ESMTP id 03762A60002; Sun, 6 Apr 2014 11:01:03 -0700 (PDT) X-Virus-Scanned: amavisd-new at smtp.cs.ucla.edu Received: from smtp.cs.ucla.edu ([127.0.0.1]) by localhost (smtp.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6CufPUa0eCtE; Sun, 6 Apr 2014 11:00:58 -0700 (PDT) Received: from [192.168.1.9] (pool-108-0-233-62.lsanca.fios.verizon.net [108.0.233.62]) by smtp.cs.ucla.edu (Postfix) with ESMTPSA id 822B439E8018; Sun, 6 Apr 2014 11:00:58 -0700 (PDT) Message-ID: <5341965A.6050400@cs.ucla.edu> Date: Sun, 06 Apr 2014 11:00:58 -0700 From: Paul Eggert Organization: UCLA Computer Science Department User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 MIME-Version: 1.0 To: 17072-done@debbugs.gnu.org Subject: Re: bug#17072: dfa change apparently needed on Irix References: <201403231932.s2NJWLYA003481@skeeve.com> <532F4A30.2010606@cs.ucla.edu> In-Reply-To: <532F4A30.2010606@cs.ucla.edu> Content-Type: multipart/mixed; boundary="------------030007020205000705070305" X-Spam-Score: -2.6 (--) X-Debbugs-Envelope-To: 17157 Cc: 17157@debbugs.gnu.org, bug-gawk@gnu.org, "Nelson H. F. Beebe" X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.6 (--) This is a multi-part message in MIME format. --------------030007020205000705070305 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Thanks to Nelson H.F. Beebe's machines I've reproduced Bug#17072 on IRIX and have verified that the attached gawk patch fixes it. This patch is almost identical to the gawk patch I submitted in . It improves on the earlier patch only by changing gawk's dfa.c to look more like grep's dfa.c in one more way: include "dfa.h" before all other include files (except config.h). I'll CC: this to Bug#17157 so that the patch is visible there too. No further change should be needed to grep for this. --------------030007020205000705070305 Content-Type: text/plain; charset=UTF-8; name="0001-awk-simplify-dfa.c-by-having-it-not-include-mbsuppor.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="0001-awk-simplify-dfa.c-by-having-it-not-include-mbsuppor.pa"; filename*1="tch" RnJvbSA0NjIyZDUxMTA0ZmViNDdmMTM3OWU4ZDhmZDkwOWIxZGQ0MjU5OGEzIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QGNzLnVjbGEuZWR1 PgpEYXRlOiBUaHUsIDMgQXByIDIwMTQgMTg6MDQ6NTIgLTA3MDAKU3ViamVjdDogW1BBVENI XSBhd2s6IHNpbXBsaWZ5IGRmYS5jIGJ5IGhhdmluZyBpdCBub3QgaW5jbHVkZSBtYnN1cHBv cnQuaAogZGlyZWN0bHkKClRoaXMgc3luY3MgZGZhLmMgYmV0dGVyIHdpdGggJ2dyZXAnLgoq IGF3ay5oLCByZWdleF9pbnRlcm5hbC5oLCBkZmEuYzogRG9uJ3QgaW5jbHVkZSBtYnN1cHBv cnQuaC4KKiBjdXN0b20uaDogSW5jbHVkZSBtYnN1cHBvcnQuaCBoZXJlIGluc3RlYWQuCihf R0xfQVRUUklCVVRFX1BVUkUpOiBNb3ZlIGhlcmUgZnJvbSBkZmEuYywgdG8gbGVzc2VuIHRo ZQpudW1iZXIgb2YgZGlmZmVyZW5jZXMgYmV0d2VlbiBncmVwJ3MgZGZhLmMgYW5kIG91cnMu CiogZGZhLmM6IEluY2x1ZGUgZGZhLmggZmlyc3Q7IHRoYXQgd29ya3Mgbm93LgpJbmNsdWRl IHdjaGFyLmggYW5kIHdjdHlwZS5oIHVuY29uZGl0aW9uYWxseSwgYXMKdGhpcyBzaW1wbGlm aWVzIHRoZSB1c2Ugb2YgZGZhLmMgaW4gZ3JlcCwgYW5kIGl0IGRvZXMgbm8gaGFybQppbiBn YXdrLgooZ2F3a19tYl9jdXJfbWF4LCBNQl9DVVJfTUFYLCBtYnJ0b3djKSBbTElCQ19JU19C T1JLRURdOgpNb3ZlIHRvIG1ic3VwcG9ydC5oIChuZWVkZWQgZm9yIGNvbnNpc3RlbmN5IGlu IGFsbCB1c2VzKSwKYW5kIGZpeCBtYnJ0b3djIHRvIHJldHVybiBzaXplX3QuCihzZXRsb2Nh bGUsIHN0YXRpY19hc3NlcnQpOiBMaWtld2lzZS4KKHN0cnVjdCBkZmEsIGRmYW1iY2FjaGUs IG1ic190b193Y2hhcikKKGlzX3ZhbGlkX3VuaWJ5dGVfY2hhcmFjdGVyLCBzZXRiaXRfd2Ms IHVzaW5nX3V0ZjgsIEZFVENIX1dDKQooYWRkdG9rX3djLCBhZGRfdXRmOF9hbnljaGFyLCBh dG9tLCBzdGF0ZV9pbmRleCwgZXBzY2xvc3VyZSkKKGRmYWFuYWx5emUsIGRmYXN0YXRlLCBw cmVwYXJlX3djX2J1ZiwgZGZhb3B0aW1pemUsIGRmYWZyZWUsIGRmYW11c3QpOgoqIGRmYXNl YXJjaC5jIChFR2V4ZWN1dGUpOgoqIGdyZXAuYyAobWFpbik6Ciogc2VhcmNodXRpbHMuYyAo bWJ0b3VwcGVyKToKQXNzdW1lIE1CU19TVVBQT1JULgoqIG1ic3VwcG9ydC5oIFshTUJTX1NV UFBPUlRdOiBJbmNsdWRlIHdjaGFyLmgsIHdjdHlwZS5oCmJlZm9yZSBvdmVycmlkaW5nIHRo ZWlyIGRlZmluaXRpb25zLgooV0VPRiwgdG93dXBwZXIsIHRvd2xvd2VyLCBidG93YywgaXN3 YWxudW0sIGlzd2FscGhhLCBpc3d1cHBlcikKKGlzd2xvd2VyLCBtYnJ0b3djLCB3Y3J0b21i LCB3Y3R5cGUsIGlzd2N0eXBlLCB3Y3Njb2xsKToKKGJ0b3djKTogUGFyZW50aGVzaXplIHBy b3Blcmx5LgoobWJydG93Yywgd2NydG9tYik6IE5ldyBtYWNyb3MuCih3Y3R5cGUsIGlzd2N0 eXBlLCB3Y3Njb2xsKTogRGVmaW5lIHRvIGdhd2tfd2N0eXBlIGV0Yy4gdG8gYXZvaWQKY29s bGlzaW9ucyB3aXRoIHN0YW5kYXJkIGxpYnJhcnkuCiogbWlzc2luZ19kL3djbWlzYy5jOiBS ZW1vdmUgbm93LXVubmVjZXNzYXJ5IGlmZGVmcy4KLS0tCiBDaGFuZ2VMb2cgICAgICAgICAg IHwgIDMyICsrKysrKysrKysrKysrKwogYXdrLmggICAgICAgICAgICAgICB8ICAgMiAtCiBj dXN0b20uaCAgICAgICAgICAgIHwgICA5ICsrKysKIGRmYS5jICAgICAgICAgICAgICAgfCAx MTUgKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQogbWJzdXBwb3J0LmggICAgICAgICB8ICA1NCArKysrKysrKysrKysrKysrKysrKysrLS0K IG1pc3NpbmdfZC9DaGFuZ2VMb2cgfCAgIDQgKysKIG1pc3NpbmdfZC93Y21pc2MuYyAgfCAg MTAgLS0tLS0KIHJlZ2V4X2ludGVybmFsLmggICAgfCAgIDIgLQogOCBmaWxlcyBjaGFuZ2Vk LCAxMTIgaW5zZXJ0aW9ucygrKSwgMTE2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL0No YW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCBhMGVmZDg5Li4zNmZiMGY0IDEwMDY0NAotLS0g YS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzUgQEAKKzIwMTQtMDQt MDMgIFBhdWwgRWdnZXJ0ICA8ZWdnZXJ0QGNzLnVjbGEuZWR1PgorCisJYXdrOiBzaW1wbGlm eSBkZmEuYyBieSBoYXZpbmcgaXQgbm90IGluY2x1ZGUgbWJzdXBwb3J0LmggZGlyZWN0bHkK KwlUaGlzIHN5bmNzIGRmYS5jIGJldHRlciB3aXRoICdncmVwJy4KKwkqIGF3ay5oLCByZWdl eF9pbnRlcm5hbC5oLCBkZmEuYzogRG9uJ3QgaW5jbHVkZSBtYnN1cHBvcnQuaC4KKwkqIGN1 c3RvbS5oOiBJbmNsdWRlIG1ic3VwcG9ydC5oIGhlcmUgaW5zdGVhZC4KKwkoX0dMX0FUVFJJ QlVURV9QVVJFKTogTW92ZSBoZXJlIGZyb20gZGZhLmMsIHRvIGxlc3NlbiB0aGUKKwludW1i ZXIgb2YgZGlmZmVyZW5jZXMgYmV0d2VlbiBncmVwJ3MgZGZhLmMgYW5kIG91cnMuCisJKiBk ZmEuYzogSW5jbHVkZSB3Y2hhci5oIGFuZCB3Y3R5cGUuaCB1bmNvbmRpdGlvbmFsbHksIGFz CisJdGhpcyBzaW1wbGlmaWVzIHRoZSB1c2Ugb2YgZGZhLmMgaW4gZ3JlcCwgYW5kIGl0IGRv ZXMgbm8gaGFybQorCWluIGdhd2suCisJKGdhd2tfbWJfY3VyX21heCwgTUJfQ1VSX01BWCwg bWJydG93YykgW0xJQkNfSVNfQk9SS0VEXToKKwlNb3ZlIHRvIG1ic3VwcG9ydC5oIChuZWVk ZWQgZm9yIGNvbnNpc3RlbmN5IGluIGFsbCB1c2VzKSwKKwlhbmQgZml4IG1icnRvd2MgdG8g cmV0dXJuIHNpemVfdC4KKwkoc3RydWN0IGRmYSwgZGZhbWJjYWNoZSwgbWJzX3RvX3djaGFy KQorCShpc192YWxpZF91bmlieXRlX2NoYXJhY3Rlciwgc2V0Yml0X3djLCB1c2luZ191dGY4 LCBGRVRDSF9XQykKKwkoYWRkdG9rX3djLCBhZGRfdXRmOF9hbnljaGFyLCBhdG9tLCBzdGF0 ZV9pbmRleCwgZXBzY2xvc3VyZSkKKwkoZGZhYW5hbHl6ZSwgZGZhc3RhdGUsIHByZXBhcmVf d2NfYnVmLCBkZmFvcHRpbWl6ZSwgZGZhZnJlZSwgZGZhbXVzdCk6CisJKiBkZmFzZWFyY2gu YyAoRUdleGVjdXRlKToKKwkqIGdyZXAuYyAobWFpbik6CisJKiBzZWFyY2h1dGlscy5jICht YnRvdXBwZXIpOgorCUFzc3VtZSBNQlNfU1VQUE9SVC4KKwkqIG1ic3VwcG9ydC5oIFshTUJT X1NVUFBPUlRdOiBJbmNsdWRlIHdjaGFyLmgsIHdjdHlwZS5oCisJYmVmb3JlIG92ZXJyaWRp bmcgdGhlaXIgZGVmaW5pdGlvbnMuCisJKFdFT0YsIHRvd3VwcGVyLCB0b3dsb3dlciwgYnRv d2MsIGlzd2FsbnVtLCBpc3dhbHBoYSwgaXN3dXBwZXIpCisJKGlzd2xvd2VyLCBtYnJ0b3dj LCB3Y3J0b21iLCB3Y3R5cGUsIGlzd2N0eXBlLCB3Y3Njb2xsKToKKwkjdW5kZWYgYmVmb3Jl ICNkZWZpbmluZy4KKwkoYnRvd2MpOiBQYXJlbnRoZXNpemUgcHJvcGVybHkuCisJKG1icnRv d2MsIHdjcnRvbWIpOiBOZXcgbWFjcm9zLgorCSh3Y3R5cGUsIGlzd2N0eXBlLCB3Y3Njb2xs KTogRGVmaW5lIHRvIGdhd2tfd2N0eXBlIGV0Yy4gdG8gYXZvaWQKKwljb2xsaXNpb25zIHdp dGggc3RhbmRhcmQgbGlicmFyeS4KKwogMjAxNC0wNC0wMyAgICAgICAgIEFybm9sZCBELiBS b2JiaW5zICAgICA8YXJub2xkQHNrZWV2ZS5jb20+CiAKIAkqIHJlZ2NvbXAuYyAocGFyc2Vf YnJhY2tldF9leHApOiBNb3ZlIGEgY2FsbCB0byBgcmVfZnJlZScgaW5zaWRlCmRpZmYgLS1n aXQgYS9hd2suaCBiL2F3ay5oCmluZGV4IGFlZmRkMDcuLmNkYmE3YTggMTAwNjQ0Ci0tLSBh L2F3ay5oCisrKyBiL2F3ay5oCkBAIC05NSw4ICs5NSw2IEBAIGV4dGVybiBpbnQgZXJybm87 CiAjaW5jbHVkZSAibWlzc2luZ19kL2dhd2tib29sLmgiCiAjZW5kaWYKIAotI2luY2x1ZGUg Im1ic3VwcG9ydC5oIiAvKiBkZWZpbmVzIE1CU19TVVBQT1JUICovCi0KICNpZiBNQlNfU1VQ UE9SVAogLyogV2UgY2FuIGhhbmRsZSBtdWx0aWJ5dGUgc3RyaW5ncy4gICovCiAjaW5jbHVk ZSA8d2NoYXIuaD4KZGlmZiAtLWdpdCBhL2N1c3RvbS5oIGIvY3VzdG9tLmgKaW5kZXggMzZi NGFhMC4uYmFkZTRjZiAxMDA2NDQKLS0tIGEvY3VzdG9tLmgKKysrIGIvY3VzdG9tLmgKQEAg LTc2LDMgKzc2LDEyIEBACiBleHRlcm4gaW50IHNldGVudihjb25zdCBjaGFyICpuYW1lLCBj b25zdCBjaGFyICp2YWx1ZSwgaW50IHJld3JpdGUpOwogZXh0ZXJuIGludCB1bnNldGVudihj b25zdCBjaGFyICpuYW1lKTsKICNlbmRpZgorCisvKiBUaGUgX19wdXJlX18gYXR0cmlidXRl IHdhcyBhZGRlZCBpbiBnY2MgMi45Ni4gICovCisjaWYgX19HTlVDX18gPiAyIHx8IChfX0dO VUNfXyA9PSAyICYmIF9fR05VQ19NSU5PUl9fID49IDk2KQorIyBkZWZpbmUgX0dMX0FUVFJJ QlVURV9QVVJFIF9fYXR0cmlidXRlX18gKChfX3B1cmVfXykpCisjZWxzZQorIyBkZWZpbmUg X0dMX0FUVFJJQlVURV9QVVJFIC8qIGVtcHR5ICovCisjZW5kaWYKKworI2luY2x1ZGUgIm1i c3VwcG9ydC5oIgpkaWZmIC0tZ2l0IGEvZGZhLmMgYi9kZmEuYwppbmRleCAzNzgzMDVkLi5i NWY2OGJhIDEwMDY0NAotLS0gYS9kZmEuYworKysgYi9kZmEuYwpAQCAtMjIsNiArMjIsOCBA QAogCiAjaW5jbHVkZSA8Y29uZmlnLmg+CiAKKyNpbmNsdWRlICJkZmEuaCIKKwogI2luY2x1 ZGUgPGFzc2VydC5oPgogI2luY2x1ZGUgPGN0eXBlLmg+CiAjaW5jbHVkZSA8c3RkaW8uaD4K QEAgLTQzLDE2ICs0NSw2IEBACiAjaW5jbHVkZSAibWlzc2luZ19kL2dhd2tib29sLmgiCiAj ZW5kaWYgLyogSEFWRV9TVERCT09MX0ggKi8KIAotLyogR2F3ayBkb2Vzbid0IHVzZSBHbnVs aWIsIHNvIGRvbid0IGFzc3VtZSB0aGF0IHNldGxvY2FsZSBhbmQKLSAgIHN0YXRpY19hc3Nl cnQgYXJlIHByZXNlbnQuICAqLwotI2lmbmRlZiBMQ19BTEwKLSMgZGVmaW5lIHNldGxvY2Fs ZShjYXRlZ29yeSwgbG9jYWxlKSBOVUxMCi0jZW5kaWYKLSNpZm5kZWYgc3RhdGljX2Fzc2Vy dAotIyBkZWZpbmUgc3RhdGljX2Fzc2VydChjb25kLCBkaWFnbm9zdGljKSBcCi0gICAgZXh0 ZXJuIGludCAoKmZvbyAodm9pZCkpIFshIXNpemVvZiAoc3RydWN0IHsgaW50IGZvbzogKGNv bmQpID8gOCA6IC0xOyB9KV0KLSNlbmRpZgotCiAjZGVmaW5lIFNUUkVRKGEsIGIpIChzdHJj bXAgKGEsIGIpID09IDApCiAKIC8qIElTQVNDSUlESUdJVCBkaWZmZXJzIGZyb20gaXNkaWdp dCwgYXMgZm9sbG93czoKQEAgLTY5LDIxICs2MSw4IEBACiAjaW5jbHVkZSAiZ2V0dGV4dC5o IgogI2RlZmluZSBfKHN0cikgZ2V0dGV4dCAoc3RyKQogCi0jaW5jbHVkZSAibWJzdXBwb3J0 LmgiIC8qIERlZmluZSBNQlNfU1VQUE9SVCB0byAxIG9yIDAsIGFzIGFwcHJvcHJpYXRlLiAg Ki8KLSNpZiBNQlNfU1VQUE9SVAotLyogV2UgY2FuIGhhbmRsZSBtdWx0aWJ5dGUgc3RyaW5n cy4gICovCi0jIGluY2x1ZGUgPHdjaGFyLmg+Ci0jIGluY2x1ZGUgPHdjdHlwZS5oPgotI2Vu ZGlmCi0KLSNpZmRlZiBHQVdLCi0vKiBUaGUgX19wdXJlX18gYXR0cmlidXRlIHdhcyBhZGRl ZCBpbiBnY2MgMi45Ni4gICovCi0jaWYgX19HTlVDX18gPiAyIHx8IChfX0dOVUNfXyA9PSAy ICYmIF9fR05VQ19NSU5PUl9fID49IDk2KQotIyBkZWZpbmUgX0dMX0FUVFJJQlVURV9QVVJF IF9fYXR0cmlidXRlX18gKChfX3B1cmVfXykpCi0jZWxzZQotIyBkZWZpbmUgX0dMX0FUVFJJ QlVURV9QVVJFIC8qIGVtcHR5ICovCi0jZW5kaWYKLSNlbmRpZiAvKiBHQVdLICovCisjaW5j bHVkZSA8d2NoYXIuaD4KKyNpbmNsdWRlIDx3Y3R5cGUuaD4KIAogI2lmIEhBVkVfTEFOR0lO Rk9fQ09ERVNFVAogIyBpbmNsdWRlIDxsYW5naW5mby5oPgpAQCAtOTEsOCArNzAsNiBAQAog CiAjaW5jbHVkZSAieGFsbG9jLmgiCiAKLSNpbmNsdWRlICJkZmEuaCIKLQogI2lmZGVmIEdB V0sKIHN0YXRpYyBpbnQKIGlzX2JsYW5rIChpbnQgYykKQEAgLTEwMSwxNCArNzgsNiBAQCBp c19ibGFuayAoaW50IGMpCiB9CiAjZW5kaWYgLyogR0FXSyAqLwogCi0jaWZkZWYgTElCQ19J U19CT1JLRUQKLWV4dGVybiBpbnQgZ2F3a19tYl9jdXJfbWF4OwotI3VuZGVmIE1CX0NVUl9N QVgKLSNkZWZpbmUgTUJfQ1VSX01BWCBnYXdrX21iX2N1cl9tYXgKLSN1bmRlZiBtYnJ0b3dj Ci0jZGVmaW5lIG1icnRvd2MoYSwgYiwgYywgZCkgKC0xKQotI2VuZGlmCi0KIC8qIEhQVVgg ZGVmaW5lcyB0aGVzZSBhcyBtYWNyb3MgaW4gc3lzL3BhcmFtLmguICAqLwogI2lmZGVmIHNl dGJpdAogIyB1bmRlZiBzZXRiaXQKQEAgLTQxMiwxMyArMzgxLDExIEBAIHN0cnVjdCBkZmEK ICAgc2l6ZV90IG5tdWx0aWJ5dGVfcHJvcDsKICAgaW50ICptdWx0aWJ5dGVfcHJvcDsKIAot I2lmIE1CU19TVVBQT1JUCiAgIC8qIEEgdGFibGUgaW5kZXhlZCBieSBieXRlIHZhbHVlcyB0 aGF0IGNvbnRhaW5zIHRoZSBjb3JyZXNwb25kaW5nIHdpZGUKICAgICAgY2hhcmFjdGVyIChp ZiBhbnkpIGZvciB0aGF0IGJ5dGUuICBXRU9GIG1lYW5zIHRoZSBieXRlIGlzIHRoZQogICAg ICBsZWFkaW5nIGJ5dGUgb2YgYSBtdWx0aWJ5dGUgY2hhcmFjdGVyLiAgSW52YWxpZCBhbmQg bnVsbCBieXRlcyBhcmUKICAgICAgbWFwcGVkIHRvIHRoZW1zZWx2ZXMuICAqLwogICB3aW50 X3QgbWJydG93Y19jYWNoZVtOT1RDSEFSXTsKLSNlbmRpZgogCiAgIC8qIEFycmF5IG9mIHRo ZSBicmFja2V0IGV4cHJlc3Npb24gaW4gdGhlIERGQS4gICovCiAgIHN0cnVjdCBtYl9jaGFy X2NsYXNzZXMgKm1iY3NldHM7CkBAIC01MjUsNyArNDkyLDYgQEAgc3RhdGljIHZvaWQgcmVn ZXhwICh2b2lkKTsKIHN0YXRpYyB2b2lkCiBkZmFtYmNhY2hlIChzdHJ1Y3QgZGZhICpkKQog ewotI2lmIE1CU19TVVBQT1JUCiAgIGludCBpOwogICBmb3IgKGkgPSBDSEFSX01JTjsgaSA8 PSBDSEFSX01BWDsgKytpKQogICAgIHsKQEAgLTU0MiwxMCArNTA4LDggQEAgZGZhbWJjYWNo ZSAoc3RydWN0IGRmYSAqZCkKICAgICAgICAgfQogICAgICAgZC0+bWJydG93Y19jYWNoZVt1 Y10gPSB3aTsKICAgICB9Ci0jZW5kaWYKIH0KIAotI2lmIE1CU19TVVBQT1JUCiAvKiBHaXZl biB0aGUgZGZhIEQsIHN0b3JlIGludG8gKlBXQyB0aGUgcmVzdWx0IG9mIGNvbnZlcnRpbmcg dGhlCiAgICBsZWFkaW5nIGJ5dGVzIG9mIHRoZSBtdWx0aWJ5dGUgYnVmZmVyIFMgb2YgbGVu Z3RoIE4gYnl0ZXMsIHVwZGF0aW5nCiAgICB0aGUgY29udmVyc2lvbiBzdGF0ZSBpbiAqTUJT LiAgT24gY29udmVyc2lvbiBlcnJvciwgY29udmVydCBqdXN0IGEKQEAgLTU3OSw3ICs1NDMs NiBAQCBtYnNfdG9fd2NoYXIgKHN0cnVjdCBkZmEgKmQsIHdjaGFyX3QgKnB3YywgY2hhciBj b25zdCAqcywgc2l6ZV90IG4sCiAgICpwd2MgPSB3YzsKICAgcmV0dXJuIDE7CiB9Ci0jZW5k aWYKIAogI2lmZGVmIERFQlVHCiAKQEAgLTc0OSw3ICs3MTIsNyBAQCBzdGF0aWMgY2hhcmNs YXNzIG5ld2xpbmU7CiAjaWZkZWYgX19HTElCQ19fCiAjIGRlZmluZSBpc192YWxpZF91bmli eXRlX2NoYXJhY3RlcihjKSAxCiAjZWxzZQotIyBkZWZpbmUgaXNfdmFsaWRfdW5pYnl0ZV9j aGFyYWN0ZXIoYykgKCEgKE1CU19TVVBQT1JUICYmIGJ0b3djIChjKSA9PSBXRU9GKSkKKyMg ZGVmaW5lIGlzX3ZhbGlkX3VuaWJ5dGVfY2hhcmFjdGVyKGMpIChidG93YyAoYykgIT0gV0VP RikKICNlbmRpZgogCiAvKiBSZXR1cm4gbm9uLXplcm8gaWYgQyBpcyBhICJ3b3JkLWNvbnN0 aXR1ZW50IiBieXRlOyB6ZXJvIG90aGVyd2lzZS4gICovCkBAIC04MTAsMTcgKzc3MywxMiBA QCBkZmFzeW50YXggKHJlZ19zeW50YXhfdCBiaXRzLCBpbnQgZm9sZCwgdW5zaWduZWQgY2hh ciBlb2wpCiBzdGF0aWMgYm9vbAogc2V0Yml0X3djICh3aW50X3Qgd2MsIGNoYXJjbGFzcyBj KQogewotI2lmIE1CU19TVVBQT1JUCiAgIGludCBiID0gd2N0b2IgKHdjKTsKICAgaWYgKGIg PT0gRU9GKQogICAgIHJldHVybiBmYWxzZTsKIAogICBzZXRiaXQgKGIsIGMpOwogICByZXR1 cm4gdHJ1ZTsKLSNlbHNlCi0gIGFib3J0ICgpOwotICAgLypOT1RSRUFDSEVEKi8gcmV0dXJu IGZhbHNlOwotI2VuZGlmCiB9CiAKIC8qIFNldCBhIGJpdCBmb3IgQiBhbmQgaXRzIGNhc2Ug dmFyaWFudHMgaW4gdGhlIGNoYXJjbGFzcyBDLgpAQCAtODQ1LDcgKzgwMyw3IEBAIHVzaW5n X3V0ZjggKHZvaWQpCiAgIHN0YXRpYyBpbnQgdXRmOCA9IC0xOwogICBpZiAodXRmOCA9PSAt MSkKICAgICB7Ci0jaWYgZGVmaW5lZCBIQVZFX0xBTkdJTkZPX0NPREVTRVQgJiYgTUJTX1NV UFBPUlQKKyNpZiBkZWZpbmVkIEhBVkVfTEFOR0lORk9fQ09ERVNFVAogICAgICAgdXRmOCA9 IChTVFJFUSAobmxfbGFuZ2luZm8gKENPREVTRVQpLCAiVVRGLTgiKSk7CiAjZWxzZQogICAg ICAgdXRmOCA9IDA7CkBAIC05MzgsNyArODk2LDYgQEAgc3RhdGljIHVuc2lnbmVkIGNoYXIg Y29uc3QgKmJ1Zl9iZWdpbjsgIC8qIHJlZmVyZW5jZSB0byBiZWdpbiBpbiBkZmFleGVjLiAg Ki8KIHN0YXRpYyB1bnNpZ25lZCBjaGFyIGNvbnN0ICpidWZfZW5kOyAgICAvKiByZWZlcmVu Y2UgdG8gZW5kIGluIGRmYWV4ZWMuICAqLwogCiAKLSNpZiBNQlNfU1VQUE9SVAogLyogTm90 ZSB0aGF0IGNoYXJhY3RlcnMgYmVjb21lIHVuc2lnbmVkIGhlcmUuICAqLwogIyBkZWZpbmUg RkVUQ0hfV0MoYywgd2MsIGVvZmVycikJCVwKICAgZG8gewkJCQkJCVwKQEAgLTk2MSwyMyAr OTE4LDYgQEAgc3RhdGljIHVuc2lnbmVkIGNoYXIgY29uc3QgKmJ1Zl9lbmQ7ICAgIC8qIHJl ZmVyZW5jZSB0byBlbmQgaW4gZGZhZXhlYy4gICovCiAgICAgICB9CQkJCQkJXAogICB9IHdo aWxlICgwKQogCi0jZWxzZQotLyogTm90ZSB0aGF0IGNoYXJhY3RlcnMgYmVjb21lIHVuc2ln bmVkIGhlcmUuICAqLwotIyBkZWZpbmUgRkVUQ0hfV0MoYywgdW51c2VkLCBlb2ZlcnIpICBc Ci0gIGRvIHsJCQkJICAgICAgXAotICAgIGlmICghIGxleGxlZnQpCQkgICAgICBcCi0gICAg ICB7CQkJCSAgICAgIFwKLSAgICAgICAgaWYgKChlb2ZlcnIpICE9IDApCSAgICAgIFwKLSAg ICAgICAgICBkZmFlcnJvciAoZW9mZXJyKTsJICAgICAgXAotICAgICAgICBlbHNlCQkJICAg ICAgXAotICAgICAgICAgIHJldHVybiBsYXN0dG9rID0gRU5EOwkgICAgICBcCi0gICAgICB9 CQkJCSAgICAgIFwKLSAgICAoYykgPSB0b191Y2hhciAoKmxleHB0cisrKTsgICAgICAgXAot ICAgIC0tbGV4bGVmdDsJCQkgICAgICBcCi0gIH0gd2hpbGUgKDApCi0KLSNlbmRpZiAvKiBN QlNfU1VQUE9SVCAqLwotCiAjaWZuZGVmIE1JTgogIyBkZWZpbmUgTUlOKGEsYikgKChhKSA8 IChiKSA/IChhKSA6IChiKSkKICNlbmRpZgpAQCAtMTc2MSw3ICsxNzAxLDYgQEAgYWRkdG9r ICh0b2tlbiB0KQogICAgIH0KIH0KIAotI2lmIE1CU19TVVBQT1JUCiAvKiBXZSB0cmVhdCBh IG11bHRpYnl0ZSBjaGFyYWN0ZXIgYXMgYSBzaW5nbGUgYXRvbSwgc28gdGhhdCBERkEKICAg IGNhbiB0cmVhdCBhIG11bHRpYnl0ZSBjaGFyYWN0ZXIgYXMgYSBzaW5nbGUgZXhwcmVzc2lv bi4KIApAQCAtMTc5MywxNyArMTczMiwxMCBAQCBhZGR0b2tfd2MgKHdpbnRfdCB3YykKICAg ICAgIGFkZHRvayAoQ0FUKTsKICAgICB9CiB9Ci0jZWxzZQotc3RhdGljIHZvaWQKLWFkZHRv a193YyAod2ludF90IHdjKQotewotfQotI2VuZGlmCiAKIHN0YXRpYyB2b2lkCiBhZGRfdXRm OF9hbnljaGFyICh2b2lkKQogewotI2lmIE1CU19TVVBQT1JUCiAgIHN0YXRpYyBjb25zdCBj aGFyY2xhc3MgdXRmOF9jbGFzc2VzWzVdID0gewogICAgIHswLCAwLCAwLCAwLCB+MCwgfjAs IDAsIDB9LAkJLyogODAtYmY6IG5vbi1sZWFkaW5nIGJ5dGVzICovCiAgICAge34wLCB+MCwg fjAsIH4wLCAwLCAwLCAwLCAwfSwgICAgICAgLyogMDAtN2Y6IDEtYnl0ZSBzZXF1ZW5jZSAq LwpAQCAtMTg0OCw3ICsxNzgwLDYgQEAgYWRkX3V0ZjhfYW55Y2hhciAodm9pZCkKICAgICAg IGFkZHRvayAoQ0FUKTsKICAgICAgIGFkZHRvayAoT1IpOwogICAgIH0KLSNlbmRpZgogfQog CiAvKiBUaGUgZ3JhbW1hciB1bmRlcnN0b29kIGJ5IHRoZSBwYXJzZXIgaXMgYXMgZm9sbG93 cy4KQEAgLTE4ODksNyArMTgyMCw3IEBAIGFkZF91dGY4X2FueWNoYXIgKHZvaWQpCiBzdGF0 aWMgdm9pZAogYXRvbSAodm9pZCkKIHsKLSAgaWYgKE1CU19TVVBQT1JUICYmIHRvayA9PSBX Q0hBUikKKyAgaWYgKHRvayA9PSBXQ0hBUikKICAgICB7CiAgICAgICBhZGR0b2tfd2MgKHdj dG9rKTsKIApAQCAtMTkwNiw3ICsxODM3LDcgQEAgYXRvbSAodm9pZCkKIAogICAgICAgdG9r ID0gbGV4ICgpOwogICAgIH0KLSAgZWxzZSBpZiAoTUJTX1NVUFBPUlQgJiYgdG9rID09IEFO WUNIQVIgJiYgdXNpbmdfdXRmOCAoKSkKKyAgZWxzZSBpZiAodG9rID09IEFOWUNIQVIgJiYg dXNpbmdfdXRmOCAoKSkKICAgICB7CiAgICAgICAvKiBGb3IgVVRGLTggZXhwYW5kIHRoZSBw ZXJpb2QgdG8gYSBzZXJpZXMgb2YgQ1NFVHMgdGhhdCBkZWZpbmUgYSB2YWxpZAogICAgICAg ICAgVVRGLTggY2hhcmFjdGVyLiAgVGhpcyBhdm9pZHMgdXNpbmcgdGhlIHNsb3cgbXVsdGli eXRlIHBhdGguICBJJ20KQEAgLTE5MjAsOSArMTg1MSw3IEBAIGF0b20gKHZvaWQpCiAgICAg fQogICBlbHNlIGlmICgodG9rID49IDAgJiYgdG9rIDwgTk9UQ0hBUikgfHwgdG9rID49IENT RVQgfHwgdG9rID09IEJBQ0tSRUYKICAgICAgICAgICAgfHwgdG9rID09IEJFR0xJTkUgfHwg dG9rID09IEVORExJTkUgfHwgdG9rID09IEJFR1dPUkQKLSNpZiBNQlNfU1VQUE9SVAogICAg ICAgICAgICB8fCB0b2sgPT0gQU5ZQ0hBUiB8fCB0b2sgPT0gTUJDU0VUCi0jZW5kaWYgLyog TUJTX1NVUFBPUlQgKi8KICAgICAgICAgICAgfHwgdG9rID09IEVORFdPUkQgfHwgdG9rID09 IExJTVdPUkQgfHwgdG9rID09IE5PVExJTVdPUkQpCiAgICAgewogICAgICAgYWRkdG9rICh0 b2spOwpAQCAtMjIwNSwxMSArMjEzNCw5IEBAIHN0YXRlX2luZGV4IChzdHJ1Y3QgZGZhICpk LCBwb3NpdGlvbl9zZXQgY29uc3QgKnMsIGludCBjb250ZXh0KQogICBkLT5zdGF0ZXNbaV0u YmFja3JlZiA9IDA7CiAgIGQtPnN0YXRlc1tpXS5jb25zdHJhaW50ID0gMDsKICAgZC0+c3Rh dGVzW2ldLmZpcnN0X2VuZCA9IDA7Ci0gIGlmIChNQlNfU1VQUE9SVCkKLSAgICB7Ci0gICAg ICBkLT5zdGF0ZXNbaV0ubWJwcy5uZWxlbSA9IDA7Ci0gICAgICBkLT5zdGF0ZXNbaV0ubWJw cy5lbGVtcyA9IE5VTEw7Ci0gICAgfQorICBkLT5zdGF0ZXNbaV0ubWJwcy5uZWxlbSA9IDA7 CisgIGQtPnN0YXRlc1tpXS5tYnBzLmVsZW1zID0gTlVMTDsKKwogICBmb3IgKGogPSAwOyBq IDwgcy0+bmVsZW07ICsraikKICAgICBpZiAoZC0+dG9rZW5zW3MtPmVsZW1zW2pdLmluZGV4 XSA8IDApCiAgICAgICB7CkBAIC0yMjQ3LDEwICsyMTc0LDggQEAgZXBzY2xvc3VyZSAocG9z aXRpb25fc2V0ICogcywgc3RydWN0IGRmYSBjb25zdCAqZCkKICAgZm9yIChpID0gMDsgaSA8 IHMtPm5lbGVtOyArK2kpCiAgICAgaWYgKGQtPnRva2Vuc1tzLT5lbGVtc1tpXS5pbmRleF0g Pj0gTk9UQ0hBUgogICAgICAgICAmJiBkLT50b2tlbnNbcy0+ZWxlbXNbaV0uaW5kZXhdICE9 IEJBQ0tSRUYKLSNpZiBNQlNfU1VQUE9SVAogICAgICAgICAmJiBkLT50b2tlbnNbcy0+ZWxl bXNbaV0uaW5kZXhdICE9IEFOWUNIQVIKICAgICAgICAgJiYgZC0+dG9rZW5zW3MtPmVsZW1z W2ldLmluZGV4XSAhPSBNQkNTRVQKLSNlbmRpZgogICAgICAgICAmJiBkLT50b2tlbnNbcy0+ ZWxlbXNbaV0uaW5kZXhdIDwgQ1NFVCkKICAgICAgIHsKICAgICAgICAgb2xkID0gcy0+ZWxl bXNbaV07CkBAIC0yNTY3LDkgKzI0OTIsNyBAQCBkZmFhbmFseXplIChzdHJ1Y3QgZGZhICpk LCBpbnQgc2VhcmNoZmxhZykKICAgICAgaXQgd2l0aCBpdHMgZXBzaWxvbiBjbG9zdXJlLiAg Ki8KICAgZm9yIChpID0gMDsgaSA8IGQtPnRpbmRleDsgKytpKQogICAgIGlmIChkLT50b2tl bnNbaV0gPCBOT1RDSEFSIHx8IGQtPnRva2Vuc1tpXSA9PSBCQUNLUkVGCi0jaWYgTUJTX1NV UFBPUlQKICAgICAgICAgfHwgZC0+dG9rZW5zW2ldID09IEFOWUNIQVIgfHwgZC0+dG9rZW5z W2ldID09IE1CQ1NFVAotI2VuZGlmCiAgICAgICAgIHx8IGQtPnRva2Vuc1tpXSA+PSBDU0VU KQogICAgICAgewogI2lmZGVmIERFQlVHCkBAIC0yNjc5LDkgKzI2MDIsOCBAQCBkZmFzdGF0 ZSAoc3RhdGVfbnVtIHMsIHN0cnVjdCBkZmEgKmQsIHN0YXRlX251bSB0cmFuc1tdKQogICAg ICAgICBzZXRiaXQgKGQtPnRva2Vuc1twb3MuaW5kZXhdLCBtYXRjaGVzKTsKICAgICAgIGVs c2UgaWYgKGQtPnRva2Vuc1twb3MuaW5kZXhdID49IENTRVQpCiAgICAgICAgIGNvcHlzZXQg KGQtPmNoYXJjbGFzc2VzW2QtPnRva2Vuc1twb3MuaW5kZXhdIC0gQ1NFVF0sIG1hdGNoZXMp OwotICAgICAgZWxzZSBpZiAoTUJTX1NVUFBPUlQKLSAgICAgICAgICAgICAgICYmIChkLT50 b2tlbnNbcG9zLmluZGV4XSA9PSBBTllDSEFSCi0gICAgICAgICAgICAgICAgICAgfHwgZC0+ dG9rZW5zW3Bvcy5pbmRleF0gPT0gTUJDU0VUKSkKKyAgICAgIGVsc2UgaWYgKGQtPnRva2Vu c1twb3MuaW5kZXhdID09IEFOWUNIQVIKKyAgICAgICAgICAgICAgIHx8IGQtPnRva2Vuc1tw b3MuaW5kZXhdID09IE1CQ1NFVCkKICAgICAgICAgLyogTUJfQ1VSX01BWCA+IDEgICovCiAg ICAgICAgIHsKICAgICAgICAgICAvKiBBTllDSEFSIGFuZCBNQkNTRVQgbXVzdCBtYXRjaCB3 aXRoIGEgc2luZ2xlIGNoYXJhY3Rlciwgc28gd2UKQEAgLTI4NTUsNyArMjc3Nyw3IEBAIGRm YXN0YXRlIChzdGF0ZV9udW0gcywgc3RydWN0IGRmYSAqZCwgc3RhdGVfbnVtIHRyYW5zW10p CiAgICAgICAvKiBJZiB3ZSBhcmUgYnVpbGRpbmcgYSBzZWFyY2hpbmcgbWF0Y2hlciwgdGhy b3cgaW4gdGhlIHBvc2l0aW9ucwogICAgICAgICAgb2Ygc3RhdGUgMCBhcyB3ZWxsLiAgKi8K ICAgICAgIGlmIChkLT5zZWFyY2hmbGFnCi0gICAgICAgICAgJiYgKCFNQlNfU1VQUE9SVCB8 fCAoZC0+bWJfY3VyX21heCA9PSAxIHx8ICFuZXh0X2lzbnRfMXN0X2J5dGUpKSkKKyAgICAg ICAgICAmJiAoZC0+bWJfY3VyX21heCA9PSAxIHx8ICFuZXh0X2lzbnRfMXN0X2J5dGUpKQog ICAgICAgICBmb3IgKGogPSAwOyBqIDwgZC0+c3RhdGVzWzBdLmVsZW1zLm5lbGVtOyArK2op CiAgICAgICAgICAgaW5zZXJ0IChkLT5zdGF0ZXNbMF0uZWxlbXMuZWxlbXNbal0sICZmb2xs b3dzKTsKIApAQCAtMzQwNyw3ICszMzI5LDYgQEAgdHJhbnNpdF9zdGF0ZSAoc3RydWN0IGRm YSAqZCwgc3RhdGVfbnVtIHMsIHVuc2lnbmVkIGNoYXIgY29uc3QgKipwcCkKIHN0YXRpYyB2 b2lkCiBwcmVwYXJlX3djX2J1ZiAoc3RydWN0IGRmYSAqZCwgY29uc3QgY2hhciAqYmVnaW4s IGNvbnN0IGNoYXIgKmVuZCkKIHsKLSNpZiBNQlNfU1VQUE9SVAogICB1bnNpZ25lZCBjaGFy IGVvbCA9IGVvbGJ5dGU7CiAgIHNpemVfdCBpOwogICBzaXplX3QgaWxpbSA9IGVuZCAtIGJl Z2luICsgMTsKQEAgLTM0MzEsNyArMzM1Miw2IEBAIHByZXBhcmVfd2NfYnVmIChzdHJ1Y3Qg ZGZhICpkLCBjb25zdCBjaGFyICpiZWdpbiwgY29uc3QgY2hhciAqZW5kKQogICBidWZfZW5k ID0gKHVuc2lnbmVkIGNoYXIgKikgKGJlZ2luICsgaSk7CiAgIG1ibGVuX2J1ZltpXSA9IDA7 CiAgIGlucHV0d2NzW2ldID0gMDsgICAgICAgICAgICAgIC8qIHNlbnRpbmVsICovCi0jZW5k aWYgLyogTUJTX1NVUFBPUlQgKi8KIH0KIAogLyogU2VhcmNoIHRocm91Z2ggYSBidWZmZXIg bG9va2luZyBmb3IgYSBtYXRjaCB0byB0aGUgZ2l2ZW4gc3RydWN0IGRmYS4KQEAgLTM2NTMs NyArMzU3Myw3IEBAIGRmYW9wdGltaXplIChzdHJ1Y3QgZGZhICpkKQogewogICBzaXplX3Qg aTsKIAotICBpZiAoIU1CU19TVVBQT1JUIHx8ICF1c2luZ191dGY4ICgpKQorICBpZiAoIXVz aW5nX3V0ZjggKCkpCiAgICAgcmV0dXJuOwogCiAgIGZvciAoaSA9IDA7IGkgPCBkLT50aW5k ZXg7ICsraSkKQEAgLTM3MDMsOCArMzYyMyw3IEBAIGRmYWZyZWUgKHN0cnVjdCBkZmEgKmQp CiAgIGZvciAoaSA9IDA7IGkgPCBkLT5zaW5kZXg7ICsraSkKICAgICB7CiAgICAgICBmcmVl IChkLT5zdGF0ZXNbaV0uZWxlbXMuZWxlbXMpOwotICAgICAgaWYgKE1CU19TVVBQT1JUKQot ICAgICAgICBmcmVlIChkLT5zdGF0ZXNbaV0ubWJwcy5lbGVtcyk7CisgICAgICBmcmVlIChk LT5zdGF0ZXNbaV0ubWJwcy5lbGVtcyk7CiAgICAgfQogICBmcmVlIChkLT5zdGF0ZXMpOwog ICBmb3IgKGkgPSAwOyBpIDwgZC0+dGluZGV4OyArK2kpCkBAIC00MTc5LDcgKzQwOTgsNyBA QCBkZmFtdXN0IChzdHJ1Y3QgZGZhICpkKQogICAgICAgICAgICAgICAvKiBub3Qgb24gKm15 KiBzaGlmdCAqLwogICAgICAgICAgICAgICBnb3RvIGRvbmU7CiAgICAgICAgICAgICB9Ci0g ICAgICAgICAgZWxzZSBpZiAodCA+PSBDU0VUIHx8ICFNQlNfU1VQUE9SVCB8fCB0ID09IEFO WUNIQVIgfHwgdCA9PSBNQkNTRVQpCisgICAgICAgICAgZWxzZSBpZiAodCA+PSBDU0VUIHx8 IHQgPT0gQU5ZQ0hBUiB8fCB0ID09IE1CQ1NFVCkKICAgICAgICAgICAgIHsKICAgICAgICAg ICAgICAgLyogZWFzeSBlbm91Z2ggKi8KICAgICAgICAgICAgICAgcmVzZXRtdXN0IChtcCk7 CmRpZmYgLS1naXQgYS9tYnN1cHBvcnQuaCBiL21ic3VwcG9ydC5oCmluZGV4IDlhNjI0ODYu LmFiMzNlOTEgMTAwNjQ0Ci0tLSBhL21ic3VwcG9ydC5oCisrKyBiL21ic3VwcG9ydC5oCkBA IC02Niw2ICs2NiwxNSBAQAogI2VuZGlmCiAKICNpZiAhIE1CU19TVVBQT1JUCisKKy8qIElu Y2x1ZGUgd2NoYXIuaCBhbmQgd2N0eXBlLmggc28gdGhlaXIgZGVmaW5pdGlvbnMgY2FuIGJl IG92ZXJyaWRkZW4uICAqLworCisjIGluY2x1ZGUgPHdjaGFyLmg+CisjIGluY2x1ZGUgPHdj dHlwZS5oPgorCisvKiBPdmVycmlkZSB0aGUgZGVmaW5pdGlvbnMgb2Ygd2NoYXIuaCBhbmQg d2N0eXBlLmggdG8gcHJvdmlkZSBhCisgICB1bmlieXRlIHN1YnN0aXR1dGUgdGhhdCBpcyBn b29kIGVub3VnaCBmb3IgR2F3ay4gICovCisKICMgdW5kZWYgTUJfQ1VSX01BWAogIyBkZWZp bmUgTUJfQ1VSX01BWCAxCiAKQEAgLTc4LDE1ICs4NywyNCBAQAogI2RlZmluZSB3Y3R5cGVf dAlpbnQKICNkZWZpbmUgd2ludF90CQlpbnQKICNkZWZpbmUgbWJzdGF0ZV90CWludAorI3Vu ZGVmIFdFT0YKICNkZWZpbmUgV0VPRgkJRU9GCisjdW5kZWYgdG93dXBwZXIKICNkZWZpbmUg dG93dXBwZXIJdG91cHBlcgorI3VuZGVmIHRvd2xvd2VyCiAjZGVmaW5lIHRvd2xvd2VyCXRv bG93ZXIKICNpZm5kZWYgX19ESkdQUF9fCi0jZGVmaW5lIGJ0b3djKHgpCSgoaW50KXgpCisj dW5kZWYgYnRvd2MKKyNkZWZpbmUgYnRvd2MoeCkJKChpbnQpICh4KSkKICNlbmRpZgorI3Vu ZGVmIGlzd2FsbnVtCiAjZGVmaW5lIGlzd2FsbnVtCWlzYWxudW0KKyN1bmRlZiBpc3dhbHBo YQogI2RlZmluZSBpc3dhbHBoYQlpc2FscGhhCisjdW5kZWYgaXN3dXBwZXIKICNkZWZpbmUg aXN3dXBwZXIJaXN1cHBlcgorI3VuZGVmIGlzd2xvd2VyCisjZGVmaW5lIGlzd2xvd2VyCWlz bG93ZXIKICNpZiBkZWZpbmVkKFpPU19VU1MpCiAjdW5kZWYgdG93dXBwZXIKICN1bmRlZiB0 b3dsb3dlcgpAQCAtOTQsMTIgKzExMiw0MCBAQAogI3VuZGVmIGlzd2FsbnVtCiAjdW5kZWYg aXN3YWxwaGEKICN1bmRlZiBpc3d1cHBlcgotI3VuZGVmIHdjdHlwZQotI3VuZGVmIGlzd2N0 eXBlCi0jdW5kZWYgd2NzY29sbAogI2VuZGlmCiAKKyN1bmRlZiBtYnJ0b3djCisjZGVmaW5l IG1icnRvd2MocHdjLCBzLCBuLCBwcykgKChzaXplX3QpIC0xKQorI3VuZGVmIHdjcnRvbWIK KyNkZWZpbmUgd2NydG9tYihzLCB3YywgcHMpICgoc2l6ZV90KSAtMSkKKworI3VuZGVmIHdj dHlwZQorI2RlZmluZSB3Y3R5cGUgZ2F3a193Y3R5cGUKIGV4dGVybiB3Y3R5cGVfdCB3Y3R5 cGUoY29uc3QgY2hhciAqbmFtZSk7CisjdW5kZWYgaXN3Y3R5cGUKKyNkZWZpbmUgaXN3Y3R5 cGUgZ2F3a19pc3djdHlwZQogZXh0ZXJuIGludCBpc3djdHlwZSh3aW50X3Qgd2MsIHdjdHlw ZV90IGRlc2MpOworI3VuZGVmIHdjc2NvbGwKKyNkZWZpbmUgd2NzY29sbCBnYXdrX3djc2Nv bGwKIGV4dGVybiBpbnQgd2NzY29sbChjb25zdCB3Y2hhcl90ICp3czEsIGNvbnN0IHdjaGFy X3QgKndzMik7CiAjZW5kaWYKKworI2lmZGVmIExJQkNfSVNfQk9SS0VECisjIGluY2x1ZGUg PHdjaGFyLmg+CitleHRlcm4gaW50IGdhd2tfbWJfY3VyX21heDsKKyMgdW5kZWYgTUJfQ1VS X01BWAorIyB1bmRlZiBtYnJ0b3djCisjIGRlZmluZSBNQl9DVVJfTUFYIGdhd2tfbWJfY3Vy X21heAorIyBkZWZpbmUgbWJydG93YyhhLCBiLCBjLCBkKSAoKHNpemVfdCkgLTEpCisjZW5k aWYKKworI2luY2x1ZGUgPGxvY2FsZS5oPgorI2lmbmRlZiBMQ19BTEwKKyMgZGVmaW5lIHNl dGxvY2FsZShjYXRlZ29yeSwgbG9jYWxlKSBOVUxMCisjZW5kaWYKKworI2luY2x1ZGUgPGFz c2VydC5oPgorI2lmbmRlZiBzdGF0aWNfYXNzZXJ0CisjIGRlZmluZSBzdGF0aWNfYXNzZXJ0 KGNvbmQsIGRpYWdub3N0aWMpIFwKKyAgICBleHRlcm4gaW50ICgqZm9vICh2b2lkKSkgWyEh c2l6ZW9mIChzdHJ1Y3QgeyBpbnQgZm9vOiAoY29uZCkgPyA4IDogLTE7IH0pXQorI2VuZGlm CmRpZmYgLS1naXQgYS9taXNzaW5nX2QvQ2hhbmdlTG9nIGIvbWlzc2luZ19kL0NoYW5nZUxv ZwppbmRleCBmOTRjMDcwLi43ZmE2NTQxIDEwMDY0NAotLS0gYS9taXNzaW5nX2QvQ2hhbmdl TG9nCisrKyBiL21pc3NpbmdfZC9DaGFuZ2VMb2cKQEAgLTEsMyArMSw3IEBACisyMDE0LTA0 LTAzICBQYXVsIEVnZ2VydCAgPGVnZ2VydEBjcy51Y2xhLmVkdT4KKworCSogd2NtaXNjLmM6 IFJlbW92ZSBub3ctdW5uZWNlc3NhcnkgaWZkZWZzLgorCiAyMDEzLTA1LTA5ICAgICAgICAg QXJub2xkIEQuIFJvYmJpbnMgICAgIDxhcm5vbGRAc2tlZXZlLmNvbT4KIAogCSogNC4xLjA6 IFJlbGVhc2UgdGFyIGJhbGwgbWFkZS4KZGlmZiAtLWdpdCBhL21pc3NpbmdfZC93Y21pc2Mu YyBiL21pc3NpbmdfZC93Y21pc2MuYwppbmRleCBkMmI3YWEwLi44OWUyNGM5IDEwMDY0NAot LS0gYS9taXNzaW5nX2Qvd2NtaXNjLmMKKysrIGIvbWlzc2luZ19kL3djbWlzYy5jCkBAIC0x Niw3ICsxNiw2IEBACiAgICBGb3VuZGF0aW9uLCBJbmMuLAogICAgNTEgRnJhbmtsaW4gU3Ry ZWV0IC0gRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgIDAyMTEwLTEzMDEsIFVTQSAqLwogCi0j aWYgIWRlZmluZWQoSEFWRV9XQ1RZUEUpIHx8ICFkZWZpbmVkKEhBVkVfSVNXQ1RZUEUpCiBz dGF0aWMgY29uc3QgY2hhciAqY2xhc3Nlc1tdID0gewogCSI8ZHVtbXk+IiwKIAkiYWxudW0i LApAQCAtMzMsMTYgKzMyLDEyIEBAIHN0YXRpYyBjb25zdCBjaGFyICpjbGFzc2VzW10gPSB7 CiAJInhkaWdpdCIsCiAJTlVMTAogfTsKLSNlbmRpZgogCi0jaWZuZGVmIEhBVkVfSVNXQ1RZ UEUKIHN0YXRpYyBpbnQgaXNfYmxhbmsgKGludCBjKQogewogICAgcmV0dXJuIChjID09ICcg JyB8fCBjID09ICdcdCcpOwogfQotI2VuZGlmCiAKLSNpZm5kZWYgSEFWRV9XQ1RZUEUKIHdj dHlwZV90IHdjdHlwZShjb25zdCBjaGFyICpuYW1lKQogewogCWludCBpOwpAQCAtNTMsOSAr NDgsNyBAQCB3Y3R5cGVfdCB3Y3R5cGUoY29uc3QgY2hhciAqbmFtZSkKIAogCXJldHVybiAw OwogfQotI2VuZGlmCiAKLSNpZm5kZWYgSEFWRV9JU1dDVFlQRQogaW50IGlzd2N0eXBlKHdp bnRfdCB3Yywgd2N0eXBlX3QgZGVzYykKIHsKIAlpbnQgaiA9IHNpemVvZihjbGFzc2VzKSAv IHNpemVvZihjbGFzc2VzWzBdKTsKQEAgLTc5LDkgKzcyLDcgQEAgaW50IGlzd2N0eXBlKHdp bnRfdCB3Yywgd2N0eXBlX3QgZGVzYykKIAlkZWZhdWx0OglyZXR1cm4gMDsKIAl9CiB9Ci0j ZW5kaWYKIAotI2lmbmRlZiBIQVZFX1dDU0NPTEwKIGludCB3Y3Njb2xsKGNvbnN0IHdjaGFy X3QgKndzMSwgY29uc3Qgd2NoYXJfdCAqd3MyKQogewogCXNpemVfdCBpOwpAQCAtOTUsNiAr ODYsNSBAQCBpbnQgd2NzY29sbChjb25zdCB3Y2hhcl90ICp3czEsIGNvbnN0IHdjaGFyX3Qg KndzMikKIAogCXJldHVybiAod3MxW2ldIC0gd3MyW2ldKTsKIH0KLSNlbmRpZgogCiAvKndj bWlzYy5jKi8KZGlmZiAtLWdpdCBhL3JlZ2V4X2ludGVybmFsLmggYi9yZWdleF9pbnRlcm5h bC5oCmluZGV4IGM4OTgxYTAuLjc1OGNmNDcgMTAwNjQ0Ci0tLSBhL3JlZ2V4X2ludGVybmFs LmgKKysrIGIvcmVnZXhfaW50ZXJuYWwuaApAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUg PHN0ZGxpYi5oPgogI2luY2x1ZGUgPHN0cmluZy5oPgogCi0jaW5jbHVkZSAibWJzdXBwb3J0 LmgiIC8qIGdhd2sgKi8KLQogI2lmIGRlZmluZWQgSEFWRV9MQU5HSU5GT19IIHx8IGRlZmlu ZWQgSEFWRV9MQU5HSU5GT19DT0RFU0VUIHx8IGRlZmluZWQgX0xJQkMKICMgaW5jbHVkZSA8 bGFuZ2luZm8uaD4KICNlbmRpZgotLSAKMS45LjAKCg== --------------030007020205000705070305-- From debbugs-submit-bounces@debbugs.gnu.org Sun Apr 06 17:26:18 2014 Received: (at 17157) by debbugs.gnu.org; 6 Apr 2014 21:26:18 +0000 Received: from localhost ([127.0.0.1]:38446 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WWua0-0006Ri-Ey for submit@debbugs.gnu.org; Sun, 06 Apr 2014 17:26:17 -0400 Received: from smtp.cs.ucla.edu ([131.179.128.62]:43135) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WWuZt-0006RO-IO; Sun, 06 Apr 2014 17:26:11 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp.cs.ucla.edu (Postfix) with ESMTP id 76DD539E8013; Sun, 6 Apr 2014 14:26:08 -0700 (PDT) X-Virus-Scanned: amavisd-new at smtp.cs.ucla.edu Received: from smtp.cs.ucla.edu ([127.0.0.1]) by localhost (smtp.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id L1I8WuL2vnJn; Sun, 6 Apr 2014 14:26:04 -0700 (PDT) Received: from [192.168.1.9] (pool-108-0-233-62.lsanca.fios.verizon.net [108.0.233.62]) by smtp.cs.ucla.edu (Postfix) with ESMTPSA id E7DBA39E8018; Sun, 6 Apr 2014 14:26:03 -0700 (PDT) Message-ID: <5341C66B.9070008@cs.ucla.edu> Date: Sun, 06 Apr 2014 14:26:03 -0700 From: Paul Eggert Organization: UCLA Computer Science Department User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 MIME-Version: 1.0 To: arnold@skeeve.com, 17072@debbugs.gnu.org Subject: Re: bug#17072: closed (Re: bug#17072: dfa change apparently needed on Irix) References: <5341965A.6050400@cs.ucla.edu> <201403231932.s2NJWLYA003481@skeeve.com> <201404062027.s36KREqx009829@freefriends.org> In-Reply-To: <201404062027.s36KREqx009829@freefriends.org> Content-Type: multipart/mixed; boundary="------------050903030004050401040207" X-Spam-Score: -2.6 (--) X-Debbugs-Envelope-To: 17157 Cc: 17157@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.6 (--) This is a multi-part message in MIME format. --------------050903030004050401040207 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit arnold@skeeve.com wrote: > 2013-01-31 Arnold D. Robbins > > * dfa.c: Include "dfa.h" which includes regex.h after limits.h > so that RE_DUP_MAX gets the correct value. Sorry, I missed that one. We ran into that problem in Gnulib in March 2012 and I should have included the fix in the proposed Gawk patch. Revised Gawk patch attached. This affects only regex.h (to make it like gnulib regex.h with respect to RE_DUP_MAX) and mbsupport.h (to add a #define). --------------050903030004050401040207 Content-Type: text/plain; charset=UTF-8; name="0001-awk-simplify-dfa.c-by-having-it-not-include-mbsuppor.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="0001-awk-simplify-dfa.c-by-having-it-not-include-mbsuppor.pa"; filename*1="tch" RnJvbSA4ZDVmZDQ0ZmY4ZWVmOGViMjMyZDk2ZGYxNGNlMzU1YWZlY2NhOTJjIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QGNzLnVjbGEuZWR1 PgpEYXRlOiBUaHUsIDMgQXByIDIwMTQgMTg6MDQ6NTIgLTA3MDAKU3ViamVjdDogW1BBVENI XSBhd2s6IHNpbXBsaWZ5IGRmYS5jIGJ5IGhhdmluZyBpdCBub3QgaW5jbHVkZSBtYnN1cHBv cnQuaAogZGlyZWN0bHkKClRoaXMgc3luY3MgZGZhLmMgYmV0dGVyIHdpdGggJ2dyZXAnLgoq IGF3ay5oLCByZWdleF9pbnRlcm5hbC5oLCBkZmEuYzogRG9uJ3QgaW5jbHVkZSBtYnN1cHBv cnQuaC4KKiBjdXN0b20uaDogSW5jbHVkZSBtYnN1cHBvcnQuaCBoZXJlIGluc3RlYWQuCihf R0xfQVRUUklCVVRFX1BVUkUpOiBNb3ZlIGhlcmUgZnJvbSBkZmEuYywgdG8gbGVzc2VuIHRo ZQpudW1iZXIgb2YgZGlmZmVyZW5jZXMgYmV0d2VlbiBncmVwJ3MgZGZhLmMgYW5kIG91cnMu CiogZGZhLmM6IEluY2x1ZGUgZGZhLmggZmlyc3Q7IHRoYXQgd29ya3Mgbm93LgpJbmNsdWRl IHdjaGFyLmggYW5kIHdjdHlwZS5oIHVuY29uZGl0aW9uYWxseSwgYXMKdGhpcyBzaW1wbGlm aWVzIHRoZSB1c2Ugb2YgZGZhLmMgaW4gZ3JlcCwgYW5kIGl0IGRvZXMgbm8gaGFybQppbiBn YXdrLgooZ2F3a19tYl9jdXJfbWF4LCBNQl9DVVJfTUFYLCBtYnJ0b3djKSBbTElCQ19JU19C T1JLRURdOgpNb3ZlIHRvIG1ic3VwcG9ydC5oIChuZWVkZWQgZm9yIGNvbnNpc3RlbmN5IGlu IGFsbCB1c2VzKSwKYW5kIGZpeCBtYnJ0b3djIHRvIHJldHVybiBzaXplX3QuCihzZXRsb2Nh bGUsIHN0YXRpY19hc3NlcnQpOiBMaWtld2lzZS4KKHN0cnVjdCBkZmEsIGRmYW1iY2FjaGUs IG1ic190b193Y2hhcikKKGlzX3ZhbGlkX3VuaWJ5dGVfY2hhcmFjdGVyLCBzZXRiaXRfd2Ms IHVzaW5nX3V0ZjgsIEZFVENIX1dDKQooYWRkdG9rX3djLCBhZGRfdXRmOF9hbnljaGFyLCBh dG9tLCBzdGF0ZV9pbmRleCwgZXBzY2xvc3VyZSkKKGRmYWFuYWx5emUsIGRmYXN0YXRlLCBw cmVwYXJlX3djX2J1ZiwgZGZhb3B0aW1pemUsIGRmYWZyZWUsIGRmYW11c3QpOgoqIGRmYXNl YXJjaC5jIChFR2V4ZWN1dGUpOgoqIGdyZXAuYyAobWFpbik6Ciogc2VhcmNodXRpbHMuYyAo bWJ0b3VwcGVyKToKQXNzdW1lIE1CU19TVVBQT1JULgoqIG1ic3VwcG9ydC5oIFshTUJTX1NV UFBPUlRdOiBJbmNsdWRlIHdjaGFyLmgsIHdjdHlwZS5oCmJlZm9yZSBvdmVycmlkaW5nIHRo ZWlyIGRlZmluaXRpb25zLgooV0VPRiwgdG93dXBwZXIsIHRvd2xvd2VyLCBidG93YywgaXN3 YWxudW0sIGlzd2FscGhhLCBpc3d1cHBlcikKKGlzd2xvd2VyLCBtYnJ0b3djLCB3Y3J0b21i LCB3Y3R5cGUsIGlzd2N0eXBlLCB3Y3Njb2xsKToKKGJ0b3djKTogUGFyZW50aGVzaXplIHBy b3Blcmx5LgoobWJydG93Yywgd2NydG9tYiwgX1JFR0VYX0lOQ0xVREVfTElNSVRTX0gpOiBO ZXcgbWFjcm9zLgood2N0eXBlLCBpc3djdHlwZSwgd2NzY29sbCk6IERlZmluZSB0byBnYXdr X3djdHlwZSBldGMuIHRvIGF2b2lkCmNvbGxpc2lvbnMgd2l0aCBzdGFuZGFyZCBsaWJyYXJ5 LgoqIHJlZ2V4LmggW19SRUdFWF9JTkNMVURFX0xJTUlUU19IXTogSW5jbHVkZSBsaW1pdHMu aDsKdGhpcyBzeW5jcyB0aGlzIHBhcnQgb2YgcmVnZXguaCB3aXRoIGdudWxpYi4KKiBtaXNz aW5nX2Qvd2NtaXNjLmM6IFJlbW92ZSBub3ctdW5uZWNlc3NhcnkgaWZkZWZzLgotLS0KIENo YW5nZUxvZyAgICAgICAgICAgfCAgMzIgKysrKysrKysrKysrKysrCiBhd2suaCAgICAgICAg ICAgICAgIHwgICAyIC0KIGN1c3RvbS5oICAgICAgICAgICAgfCAgIDkgKysrKwogZGZhLmMg ICAgICAgICAgICAgICB8IDExNSArKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCiBtYnN1cHBvcnQuaCAgICAgICAgIHwgIDU3ICsrKysrKysr KysrKysrKysrKysrKysrKy0tCiBtaXNzaW5nX2QvQ2hhbmdlTG9nIHwgICA0ICsrCiBtaXNz aW5nX2Qvd2NtaXNjLmMgIHwgIDEwIC0tLS0tCiByZWdleC5oICAgICAgICAgICAgIHwgIDE4 ICsrKysrKy0tCiByZWdleF9pbnRlcm5hbC5oICAgIHwgICAyIC0KIDkgZmlsZXMgY2hhbmdl ZCwgMTI5IGluc2VydGlvbnMoKyksIDEyMCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9D aGFuZ2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXggYTBlZmQ4OS4uMzZmYjBmNCAxMDA2NDQKLS0t IGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDE0LTA0 LTAzICBQYXVsIEVnZ2VydCAgPGVnZ2VydEBjcy51Y2xhLmVkdT4KKworCWF3azogc2ltcGxp ZnkgZGZhLmMgYnkgaGF2aW5nIGl0IG5vdCBpbmNsdWRlIG1ic3VwcG9ydC5oIGRpcmVjdGx5 CisJVGhpcyBzeW5jcyBkZmEuYyBiZXR0ZXIgd2l0aCAnZ3JlcCcuCisJKiBhd2suaCwgcmVn ZXhfaW50ZXJuYWwuaCwgZGZhLmM6IERvbid0IGluY2x1ZGUgbWJzdXBwb3J0LmguCisJKiBj dXN0b20uaDogSW5jbHVkZSBtYnN1cHBvcnQuaCBoZXJlIGluc3RlYWQuCisJKF9HTF9BVFRS SUJVVEVfUFVSRSk6IE1vdmUgaGVyZSBmcm9tIGRmYS5jLCB0byBsZXNzZW4gdGhlCisJbnVt YmVyIG9mIGRpZmZlcmVuY2VzIGJldHdlZW4gZ3JlcCdzIGRmYS5jIGFuZCBvdXJzLgorCSog ZGZhLmM6IEluY2x1ZGUgd2NoYXIuaCBhbmQgd2N0eXBlLmggdW5jb25kaXRpb25hbGx5LCBh cworCXRoaXMgc2ltcGxpZmllcyB0aGUgdXNlIG9mIGRmYS5jIGluIGdyZXAsIGFuZCBpdCBk b2VzIG5vIGhhcm0KKwlpbiBnYXdrLgorCShnYXdrX21iX2N1cl9tYXgsIE1CX0NVUl9NQVgs IG1icnRvd2MpIFtMSUJDX0lTX0JPUktFRF06CisJTW92ZSB0byBtYnN1cHBvcnQuaCAobmVl ZGVkIGZvciBjb25zaXN0ZW5jeSBpbiBhbGwgdXNlcyksCisJYW5kIGZpeCBtYnJ0b3djIHRv IHJldHVybiBzaXplX3QuCisJKHN0cnVjdCBkZmEsIGRmYW1iY2FjaGUsIG1ic190b193Y2hh cikKKwkoaXNfdmFsaWRfdW5pYnl0ZV9jaGFyYWN0ZXIsIHNldGJpdF93YywgdXNpbmdfdXRm OCwgRkVUQ0hfV0MpCisJKGFkZHRva193YywgYWRkX3V0ZjhfYW55Y2hhciwgYXRvbSwgc3Rh dGVfaW5kZXgsIGVwc2Nsb3N1cmUpCisJKGRmYWFuYWx5emUsIGRmYXN0YXRlLCBwcmVwYXJl X3djX2J1ZiwgZGZhb3B0aW1pemUsIGRmYWZyZWUsIGRmYW11c3QpOgorCSogZGZhc2VhcmNo LmMgKEVHZXhlY3V0ZSk6CisJKiBncmVwLmMgKG1haW4pOgorCSogc2VhcmNodXRpbHMuYyAo bWJ0b3VwcGVyKToKKwlBc3N1bWUgTUJTX1NVUFBPUlQuCisJKiBtYnN1cHBvcnQuaCBbIU1C U19TVVBQT1JUXTogSW5jbHVkZSB3Y2hhci5oLCB3Y3R5cGUuaAorCWJlZm9yZSBvdmVycmlk aW5nIHRoZWlyIGRlZmluaXRpb25zLgorCShXRU9GLCB0b3d1cHBlciwgdG93bG93ZXIsIGJ0 b3djLCBpc3dhbG51bSwgaXN3YWxwaGEsIGlzd3VwcGVyKQorCShpc3dsb3dlciwgbWJydG93 Yywgd2NydG9tYiwgd2N0eXBlLCBpc3djdHlwZSwgd2NzY29sbCk6CisJI3VuZGVmIGJlZm9y ZSAjZGVmaW5pbmcuCisJKGJ0b3djKTogUGFyZW50aGVzaXplIHByb3Blcmx5LgorCShtYnJ0 b3djLCB3Y3J0b21iKTogTmV3IG1hY3Jvcy4KKwkod2N0eXBlLCBpc3djdHlwZSwgd2NzY29s bCk6IERlZmluZSB0byBnYXdrX3djdHlwZSBldGMuIHRvIGF2b2lkCisJY29sbGlzaW9ucyB3 aXRoIHN0YW5kYXJkIGxpYnJhcnkuCisKIDIwMTQtMDQtMDMgICAgICAgICBBcm5vbGQgRC4g Um9iYmlucyAgICAgPGFybm9sZEBza2VldmUuY29tPgogCiAJKiByZWdjb21wLmMgKHBhcnNl X2JyYWNrZXRfZXhwKTogTW92ZSBhIGNhbGwgdG8gYHJlX2ZyZWUnIGluc2lkZQpkaWZmIC0t Z2l0IGEvYXdrLmggYi9hd2suaAppbmRleCBhZWZkZDA3Li5jZGJhN2E4IDEwMDY0NAotLS0g YS9hd2suaAorKysgYi9hd2suaApAQCAtOTUsOCArOTUsNiBAQCBleHRlcm4gaW50IGVycm5v OwogI2luY2x1ZGUgIm1pc3NpbmdfZC9nYXdrYm9vbC5oIgogI2VuZGlmCiAKLSNpbmNsdWRl ICJtYnN1cHBvcnQuaCIgLyogZGVmaW5lcyBNQlNfU1VQUE9SVCAqLwotCiAjaWYgTUJTX1NV UFBPUlQKIC8qIFdlIGNhbiBoYW5kbGUgbXVsdGlieXRlIHN0cmluZ3MuICAqLwogI2luY2x1 ZGUgPHdjaGFyLmg+CmRpZmYgLS1naXQgYS9jdXN0b20uaCBiL2N1c3RvbS5oCmluZGV4IDM2 YjRhYTAuLmJhZGU0Y2YgMTAwNjQ0Ci0tLSBhL2N1c3RvbS5oCisrKyBiL2N1c3RvbS5oCkBA IC03NiwzICs3NiwxMiBAQAogZXh0ZXJuIGludCBzZXRlbnYoY29uc3QgY2hhciAqbmFtZSwg Y29uc3QgY2hhciAqdmFsdWUsIGludCByZXdyaXRlKTsKIGV4dGVybiBpbnQgdW5zZXRlbnYo Y29uc3QgY2hhciAqbmFtZSk7CiAjZW5kaWYKKworLyogVGhlIF9fcHVyZV9fIGF0dHJpYnV0 ZSB3YXMgYWRkZWQgaW4gZ2NjIDIuOTYuICAqLworI2lmIF9fR05VQ19fID4gMiB8fCAoX19H TlVDX18gPT0gMiAmJiBfX0dOVUNfTUlOT1JfXyA+PSA5NikKKyMgZGVmaW5lIF9HTF9BVFRS SUJVVEVfUFVSRSBfX2F0dHJpYnV0ZV9fICgoX19wdXJlX18pKQorI2Vsc2UKKyMgZGVmaW5l IF9HTF9BVFRSSUJVVEVfUFVSRSAvKiBlbXB0eSAqLworI2VuZGlmCisKKyNpbmNsdWRlICJt YnN1cHBvcnQuaCIKZGlmZiAtLWdpdCBhL2RmYS5jIGIvZGZhLmMKaW5kZXggMzc4MzA1ZC4u YjVmNjhiYSAxMDA2NDQKLS0tIGEvZGZhLmMKKysrIGIvZGZhLmMKQEAgLTIyLDYgKzIyLDgg QEAKIAogI2luY2x1ZGUgPGNvbmZpZy5oPgogCisjaW5jbHVkZSAiZGZhLmgiCisKICNpbmNs dWRlIDxhc3NlcnQuaD4KICNpbmNsdWRlIDxjdHlwZS5oPgogI2luY2x1ZGUgPHN0ZGlvLmg+ CkBAIC00MywxNiArNDUsNiBAQAogI2luY2x1ZGUgIm1pc3NpbmdfZC9nYXdrYm9vbC5oIgog I2VuZGlmIC8qIEhBVkVfU1REQk9PTF9IICovCiAKLS8qIEdhd2sgZG9lc24ndCB1c2UgR251 bGliLCBzbyBkb24ndCBhc3N1bWUgdGhhdCBzZXRsb2NhbGUgYW5kCi0gICBzdGF0aWNfYXNz ZXJ0IGFyZSBwcmVzZW50LiAgKi8KLSNpZm5kZWYgTENfQUxMCi0jIGRlZmluZSBzZXRsb2Nh bGUoY2F0ZWdvcnksIGxvY2FsZSkgTlVMTAotI2VuZGlmCi0jaWZuZGVmIHN0YXRpY19hc3Nl cnQKLSMgZGVmaW5lIHN0YXRpY19hc3NlcnQoY29uZCwgZGlhZ25vc3RpYykgXAotICAgIGV4 dGVybiBpbnQgKCpmb28gKHZvaWQpKSBbISFzaXplb2YgKHN0cnVjdCB7IGludCBmb286IChj b25kKSA/IDggOiAtMTsgfSldCi0jZW5kaWYKLQogI2RlZmluZSBTVFJFUShhLCBiKSAoc3Ry Y21wIChhLCBiKSA9PSAwKQogCiAvKiBJU0FTQ0lJRElHSVQgZGlmZmVycyBmcm9tIGlzZGln aXQsIGFzIGZvbGxvd3M6CkBAIC02OSwyMSArNjEsOCBAQAogI2luY2x1ZGUgImdldHRleHQu aCIKICNkZWZpbmUgXyhzdHIpIGdldHRleHQgKHN0cikKIAotI2luY2x1ZGUgIm1ic3VwcG9y dC5oIiAvKiBEZWZpbmUgTUJTX1NVUFBPUlQgdG8gMSBvciAwLCBhcyBhcHByb3ByaWF0ZS4g ICovCi0jaWYgTUJTX1NVUFBPUlQKLS8qIFdlIGNhbiBoYW5kbGUgbXVsdGlieXRlIHN0cmlu Z3MuICAqLwotIyBpbmNsdWRlIDx3Y2hhci5oPgotIyBpbmNsdWRlIDx3Y3R5cGUuaD4KLSNl bmRpZgotCi0jaWZkZWYgR0FXSwotLyogVGhlIF9fcHVyZV9fIGF0dHJpYnV0ZSB3YXMgYWRk ZWQgaW4gZ2NjIDIuOTYuICAqLwotI2lmIF9fR05VQ19fID4gMiB8fCAoX19HTlVDX18gPT0g MiAmJiBfX0dOVUNfTUlOT1JfXyA+PSA5NikKLSMgZGVmaW5lIF9HTF9BVFRSSUJVVEVfUFVS RSBfX2F0dHJpYnV0ZV9fICgoX19wdXJlX18pKQotI2Vsc2UKLSMgZGVmaW5lIF9HTF9BVFRS SUJVVEVfUFVSRSAvKiBlbXB0eSAqLwotI2VuZGlmCi0jZW5kaWYgLyogR0FXSyAqLworI2lu Y2x1ZGUgPHdjaGFyLmg+CisjaW5jbHVkZSA8d2N0eXBlLmg+CiAKICNpZiBIQVZFX0xBTkdJ TkZPX0NPREVTRVQKICMgaW5jbHVkZSA8bGFuZ2luZm8uaD4KQEAgLTkxLDggKzcwLDYgQEAK IAogI2luY2x1ZGUgInhhbGxvYy5oIgogCi0jaW5jbHVkZSAiZGZhLmgiCi0KICNpZmRlZiBH QVdLCiBzdGF0aWMgaW50CiBpc19ibGFuayAoaW50IGMpCkBAIC0xMDEsMTQgKzc4LDYgQEAg aXNfYmxhbmsgKGludCBjKQogfQogI2VuZGlmIC8qIEdBV0sgKi8KIAotI2lmZGVmIExJQkNf SVNfQk9SS0VECi1leHRlcm4gaW50IGdhd2tfbWJfY3VyX21heDsKLSN1bmRlZiBNQl9DVVJf TUFYCi0jZGVmaW5lIE1CX0NVUl9NQVggZ2F3a19tYl9jdXJfbWF4Ci0jdW5kZWYgbWJydG93 YwotI2RlZmluZSBtYnJ0b3djKGEsIGIsIGMsIGQpICgtMSkKLSNlbmRpZgotCiAvKiBIUFVY IGRlZmluZXMgdGhlc2UgYXMgbWFjcm9zIGluIHN5cy9wYXJhbS5oLiAgKi8KICNpZmRlZiBz ZXRiaXQKICMgdW5kZWYgc2V0Yml0CkBAIC00MTIsMTMgKzM4MSwxMSBAQCBzdHJ1Y3QgZGZh CiAgIHNpemVfdCBubXVsdGlieXRlX3Byb3A7CiAgIGludCAqbXVsdGlieXRlX3Byb3A7CiAK LSNpZiBNQlNfU1VQUE9SVAogICAvKiBBIHRhYmxlIGluZGV4ZWQgYnkgYnl0ZSB2YWx1ZXMg dGhhdCBjb250YWlucyB0aGUgY29ycmVzcG9uZGluZyB3aWRlCiAgICAgIGNoYXJhY3RlciAo aWYgYW55KSBmb3IgdGhhdCBieXRlLiAgV0VPRiBtZWFucyB0aGUgYnl0ZSBpcyB0aGUKICAg ICAgbGVhZGluZyBieXRlIG9mIGEgbXVsdGlieXRlIGNoYXJhY3Rlci4gIEludmFsaWQgYW5k IG51bGwgYnl0ZXMgYXJlCiAgICAgIG1hcHBlZCB0byB0aGVtc2VsdmVzLiAgKi8KICAgd2lu dF90IG1icnRvd2NfY2FjaGVbTk9UQ0hBUl07Ci0jZW5kaWYKIAogICAvKiBBcnJheSBvZiB0 aGUgYnJhY2tldCBleHByZXNzaW9uIGluIHRoZSBERkEuICAqLwogICBzdHJ1Y3QgbWJfY2hh cl9jbGFzc2VzICptYmNzZXRzOwpAQCAtNTI1LDcgKzQ5Miw2IEBAIHN0YXRpYyB2b2lkIHJl Z2V4cCAodm9pZCk7CiBzdGF0aWMgdm9pZAogZGZhbWJjYWNoZSAoc3RydWN0IGRmYSAqZCkK IHsKLSNpZiBNQlNfU1VQUE9SVAogICBpbnQgaTsKICAgZm9yIChpID0gQ0hBUl9NSU47IGkg PD0gQ0hBUl9NQVg7ICsraSkKICAgICB7CkBAIC01NDIsMTAgKzUwOCw4IEBAIGRmYW1iY2Fj aGUgKHN0cnVjdCBkZmEgKmQpCiAgICAgICAgIH0KICAgICAgIGQtPm1icnRvd2NfY2FjaGVb dWNdID0gd2k7CiAgICAgfQotI2VuZGlmCiB9CiAKLSNpZiBNQlNfU1VQUE9SVAogLyogR2l2 ZW4gdGhlIGRmYSBELCBzdG9yZSBpbnRvICpQV0MgdGhlIHJlc3VsdCBvZiBjb252ZXJ0aW5n IHRoZQogICAgbGVhZGluZyBieXRlcyBvZiB0aGUgbXVsdGlieXRlIGJ1ZmZlciBTIG9mIGxl bmd0aCBOIGJ5dGVzLCB1cGRhdGluZwogICAgdGhlIGNvbnZlcnNpb24gc3RhdGUgaW4gKk1C Uy4gIE9uIGNvbnZlcnNpb24gZXJyb3IsIGNvbnZlcnQganVzdCBhCkBAIC01NzksNyArNTQz LDYgQEAgbWJzX3RvX3djaGFyIChzdHJ1Y3QgZGZhICpkLCB3Y2hhcl90ICpwd2MsIGNoYXIg Y29uc3QgKnMsIHNpemVfdCBuLAogICAqcHdjID0gd2M7CiAgIHJldHVybiAxOwogfQotI2Vu ZGlmCiAKICNpZmRlZiBERUJVRwogCkBAIC03NDksNyArNzEyLDcgQEAgc3RhdGljIGNoYXJj bGFzcyBuZXdsaW5lOwogI2lmZGVmIF9fR0xJQkNfXwogIyBkZWZpbmUgaXNfdmFsaWRfdW5p Ynl0ZV9jaGFyYWN0ZXIoYykgMQogI2Vsc2UKLSMgZGVmaW5lIGlzX3ZhbGlkX3VuaWJ5dGVf Y2hhcmFjdGVyKGMpICghIChNQlNfU1VQUE9SVCAmJiBidG93YyAoYykgPT0gV0VPRikpCisj IGRlZmluZSBpc192YWxpZF91bmlieXRlX2NoYXJhY3RlcihjKSAoYnRvd2MgKGMpICE9IFdF T0YpCiAjZW5kaWYKIAogLyogUmV0dXJuIG5vbi16ZXJvIGlmIEMgaXMgYSAid29yZC1jb25z dGl0dWVudCIgYnl0ZTsgemVybyBvdGhlcndpc2UuICAqLwpAQCAtODEwLDE3ICs3NzMsMTIg QEAgZGZhc3ludGF4IChyZWdfc3ludGF4X3QgYml0cywgaW50IGZvbGQsIHVuc2lnbmVkIGNo YXIgZW9sKQogc3RhdGljIGJvb2wKIHNldGJpdF93YyAod2ludF90IHdjLCBjaGFyY2xhc3Mg YykKIHsKLSNpZiBNQlNfU1VQUE9SVAogICBpbnQgYiA9IHdjdG9iICh3Yyk7CiAgIGlmIChi ID09IEVPRikKICAgICByZXR1cm4gZmFsc2U7CiAKICAgc2V0Yml0IChiLCBjKTsKICAgcmV0 dXJuIHRydWU7Ci0jZWxzZQotICBhYm9ydCAoKTsKLSAgIC8qTk9UUkVBQ0hFRCovIHJldHVy biBmYWxzZTsKLSNlbmRpZgogfQogCiAvKiBTZXQgYSBiaXQgZm9yIEIgYW5kIGl0cyBjYXNl IHZhcmlhbnRzIGluIHRoZSBjaGFyY2xhc3MgQy4KQEAgLTg0NSw3ICs4MDMsNyBAQCB1c2lu Z191dGY4ICh2b2lkKQogICBzdGF0aWMgaW50IHV0ZjggPSAtMTsKICAgaWYgKHV0ZjggPT0g LTEpCiAgICAgewotI2lmIGRlZmluZWQgSEFWRV9MQU5HSU5GT19DT0RFU0VUICYmIE1CU19T VVBQT1JUCisjaWYgZGVmaW5lZCBIQVZFX0xBTkdJTkZPX0NPREVTRVQKICAgICAgIHV0Zjgg PSAoU1RSRVEgKG5sX2xhbmdpbmZvIChDT0RFU0VUKSwgIlVURi04IikpOwogI2Vsc2UKICAg ICAgIHV0ZjggPSAwOwpAQCAtOTM4LDcgKzg5Niw2IEBAIHN0YXRpYyB1bnNpZ25lZCBjaGFy IGNvbnN0ICpidWZfYmVnaW47ICAvKiByZWZlcmVuY2UgdG8gYmVnaW4gaW4gZGZhZXhlYy4g ICovCiBzdGF0aWMgdW5zaWduZWQgY2hhciBjb25zdCAqYnVmX2VuZDsgICAgLyogcmVmZXJl bmNlIHRvIGVuZCBpbiBkZmFleGVjLiAgKi8KIAogCi0jaWYgTUJTX1NVUFBPUlQKIC8qIE5v dGUgdGhhdCBjaGFyYWN0ZXJzIGJlY29tZSB1bnNpZ25lZCBoZXJlLiAgKi8KICMgZGVmaW5l IEZFVENIX1dDKGMsIHdjLCBlb2ZlcnIpCQlcCiAgIGRvIHsJCQkJCQlcCkBAIC05NjEsMjMg KzkxOCw2IEBAIHN0YXRpYyB1bnNpZ25lZCBjaGFyIGNvbnN0ICpidWZfZW5kOyAgICAvKiBy ZWZlcmVuY2UgdG8gZW5kIGluIGRmYWV4ZWMuICAqLwogICAgICAgfQkJCQkJCVwKICAgfSB3 aGlsZSAoMCkKIAotI2Vsc2UKLS8qIE5vdGUgdGhhdCBjaGFyYWN0ZXJzIGJlY29tZSB1bnNp Z25lZCBoZXJlLiAgKi8KLSMgZGVmaW5lIEZFVENIX1dDKGMsIHVudXNlZCwgZW9mZXJyKSAg XAotICBkbyB7CQkJCSAgICAgIFwKLSAgICBpZiAoISBsZXhsZWZ0KQkJICAgICAgXAotICAg ICAgewkJCQkgICAgICBcCi0gICAgICAgIGlmICgoZW9mZXJyKSAhPSAwKQkgICAgICBcCi0g ICAgICAgICAgZGZhZXJyb3IgKGVvZmVycik7CSAgICAgIFwKLSAgICAgICAgZWxzZQkJCSAg ICAgIFwKLSAgICAgICAgICByZXR1cm4gbGFzdHRvayA9IEVORDsJICAgICAgXAotICAgICAg fQkJCQkgICAgICBcCi0gICAgKGMpID0gdG9fdWNoYXIgKCpsZXhwdHIrKyk7ICAgICAgIFwK LSAgICAtLWxleGxlZnQ7CQkJICAgICAgXAotICB9IHdoaWxlICgwKQotCi0jZW5kaWYgLyog TUJTX1NVUFBPUlQgKi8KLQogI2lmbmRlZiBNSU4KICMgZGVmaW5lIE1JTihhLGIpICgoYSkg PCAoYikgPyAoYSkgOiAoYikpCiAjZW5kaWYKQEAgLTE3NjEsNyArMTcwMSw2IEBAIGFkZHRv ayAodG9rZW4gdCkKICAgICB9CiB9CiAKLSNpZiBNQlNfU1VQUE9SVAogLyogV2UgdHJlYXQg YSBtdWx0aWJ5dGUgY2hhcmFjdGVyIGFzIGEgc2luZ2xlIGF0b20sIHNvIHRoYXQgREZBCiAg ICBjYW4gdHJlYXQgYSBtdWx0aWJ5dGUgY2hhcmFjdGVyIGFzIGEgc2luZ2xlIGV4cHJlc3Np b24uCiAKQEAgLTE3OTMsMTcgKzE3MzIsMTAgQEAgYWRkdG9rX3djICh3aW50X3Qgd2MpCiAg ICAgICBhZGR0b2sgKENBVCk7CiAgICAgfQogfQotI2Vsc2UKLXN0YXRpYyB2b2lkCi1hZGR0 b2tfd2MgKHdpbnRfdCB3YykKLXsKLX0KLSNlbmRpZgogCiBzdGF0aWMgdm9pZAogYWRkX3V0 ZjhfYW55Y2hhciAodm9pZCkKIHsKLSNpZiBNQlNfU1VQUE9SVAogICBzdGF0aWMgY29uc3Qg Y2hhcmNsYXNzIHV0ZjhfY2xhc3Nlc1s1XSA9IHsKICAgICB7MCwgMCwgMCwgMCwgfjAsIH4w LCAwLCAwfSwJCS8qIDgwLWJmOiBub24tbGVhZGluZyBieXRlcyAqLwogICAgIHt+MCwgfjAs IH4wLCB+MCwgMCwgMCwgMCwgMH0sICAgICAgIC8qIDAwLTdmOiAxLWJ5dGUgc2VxdWVuY2Ug Ki8KQEAgLTE4NDgsNyArMTc4MCw2IEBAIGFkZF91dGY4X2FueWNoYXIgKHZvaWQpCiAgICAg ICBhZGR0b2sgKENBVCk7CiAgICAgICBhZGR0b2sgKE9SKTsKICAgICB9Ci0jZW5kaWYKIH0K IAogLyogVGhlIGdyYW1tYXIgdW5kZXJzdG9vZCBieSB0aGUgcGFyc2VyIGlzIGFzIGZvbGxv d3MuCkBAIC0xODg5LDcgKzE4MjAsNyBAQCBhZGRfdXRmOF9hbnljaGFyICh2b2lkKQogc3Rh dGljIHZvaWQKIGF0b20gKHZvaWQpCiB7Ci0gIGlmIChNQlNfU1VQUE9SVCAmJiB0b2sgPT0g V0NIQVIpCisgIGlmICh0b2sgPT0gV0NIQVIpCiAgICAgewogICAgICAgYWRkdG9rX3djICh3 Y3Rvayk7CiAKQEAgLTE5MDYsNyArMTgzNyw3IEBAIGF0b20gKHZvaWQpCiAKICAgICAgIHRv ayA9IGxleCAoKTsKICAgICB9Ci0gIGVsc2UgaWYgKE1CU19TVVBQT1JUICYmIHRvayA9PSBB TllDSEFSICYmIHVzaW5nX3V0ZjggKCkpCisgIGVsc2UgaWYgKHRvayA9PSBBTllDSEFSICYm IHVzaW5nX3V0ZjggKCkpCiAgICAgewogICAgICAgLyogRm9yIFVURi04IGV4cGFuZCB0aGUg cGVyaW9kIHRvIGEgc2VyaWVzIG9mIENTRVRzIHRoYXQgZGVmaW5lIGEgdmFsaWQKICAgICAg ICAgIFVURi04IGNoYXJhY3Rlci4gIFRoaXMgYXZvaWRzIHVzaW5nIHRoZSBzbG93IG11bHRp Ynl0ZSBwYXRoLiAgSSdtCkBAIC0xOTIwLDkgKzE4NTEsNyBAQCBhdG9tICh2b2lkKQogICAg IH0KICAgZWxzZSBpZiAoKHRvayA+PSAwICYmIHRvayA8IE5PVENIQVIpIHx8IHRvayA+PSBD U0VUIHx8IHRvayA9PSBCQUNLUkVGCiAgICAgICAgICAgIHx8IHRvayA9PSBCRUdMSU5FIHx8 IHRvayA9PSBFTkRMSU5FIHx8IHRvayA9PSBCRUdXT1JECi0jaWYgTUJTX1NVUFBPUlQKICAg ICAgICAgICAgfHwgdG9rID09IEFOWUNIQVIgfHwgdG9rID09IE1CQ1NFVAotI2VuZGlmIC8q IE1CU19TVVBQT1JUICovCiAgICAgICAgICAgIHx8IHRvayA9PSBFTkRXT1JEIHx8IHRvayA9 PSBMSU1XT1JEIHx8IHRvayA9PSBOT1RMSU1XT1JEKQogICAgIHsKICAgICAgIGFkZHRvayAo dG9rKTsKQEAgLTIyMDUsMTEgKzIxMzQsOSBAQCBzdGF0ZV9pbmRleCAoc3RydWN0IGRmYSAq ZCwgcG9zaXRpb25fc2V0IGNvbnN0ICpzLCBpbnQgY29udGV4dCkKICAgZC0+c3RhdGVzW2ld LmJhY2tyZWYgPSAwOwogICBkLT5zdGF0ZXNbaV0uY29uc3RyYWludCA9IDA7CiAgIGQtPnN0 YXRlc1tpXS5maXJzdF9lbmQgPSAwOwotICBpZiAoTUJTX1NVUFBPUlQpCi0gICAgewotICAg ICAgZC0+c3RhdGVzW2ldLm1icHMubmVsZW0gPSAwOwotICAgICAgZC0+c3RhdGVzW2ldLm1i cHMuZWxlbXMgPSBOVUxMOwotICAgIH0KKyAgZC0+c3RhdGVzW2ldLm1icHMubmVsZW0gPSAw OworICBkLT5zdGF0ZXNbaV0ubWJwcy5lbGVtcyA9IE5VTEw7CisKICAgZm9yIChqID0gMDsg aiA8IHMtPm5lbGVtOyArK2opCiAgICAgaWYgKGQtPnRva2Vuc1tzLT5lbGVtc1tqXS5pbmRl eF0gPCAwKQogICAgICAgewpAQCAtMjI0NywxMCArMjE3NCw4IEBAIGVwc2Nsb3N1cmUgKHBv c2l0aW9uX3NldCAqIHMsIHN0cnVjdCBkZmEgY29uc3QgKmQpCiAgIGZvciAoaSA9IDA7IGkg PCBzLT5uZWxlbTsgKytpKQogICAgIGlmIChkLT50b2tlbnNbcy0+ZWxlbXNbaV0uaW5kZXhd ID49IE5PVENIQVIKICAgICAgICAgJiYgZC0+dG9rZW5zW3MtPmVsZW1zW2ldLmluZGV4XSAh PSBCQUNLUkVGCi0jaWYgTUJTX1NVUFBPUlQKICAgICAgICAgJiYgZC0+dG9rZW5zW3MtPmVs ZW1zW2ldLmluZGV4XSAhPSBBTllDSEFSCiAgICAgICAgICYmIGQtPnRva2Vuc1tzLT5lbGVt c1tpXS5pbmRleF0gIT0gTUJDU0VUCi0jZW5kaWYKICAgICAgICAgJiYgZC0+dG9rZW5zW3Mt PmVsZW1zW2ldLmluZGV4XSA8IENTRVQpCiAgICAgICB7CiAgICAgICAgIG9sZCA9IHMtPmVs ZW1zW2ldOwpAQCAtMjU2Nyw5ICsyNDkyLDcgQEAgZGZhYW5hbHl6ZSAoc3RydWN0IGRmYSAq ZCwgaW50IHNlYXJjaGZsYWcpCiAgICAgIGl0IHdpdGggaXRzIGVwc2lsb24gY2xvc3VyZS4g ICovCiAgIGZvciAoaSA9IDA7IGkgPCBkLT50aW5kZXg7ICsraSkKICAgICBpZiAoZC0+dG9r ZW5zW2ldIDwgTk9UQ0hBUiB8fCBkLT50b2tlbnNbaV0gPT0gQkFDS1JFRgotI2lmIE1CU19T VVBQT1JUCiAgICAgICAgIHx8IGQtPnRva2Vuc1tpXSA9PSBBTllDSEFSIHx8IGQtPnRva2Vu c1tpXSA9PSBNQkNTRVQKLSNlbmRpZgogICAgICAgICB8fCBkLT50b2tlbnNbaV0gPj0gQ1NF VCkKICAgICAgIHsKICNpZmRlZiBERUJVRwpAQCAtMjY3OSw5ICsyNjAyLDggQEAgZGZhc3Rh dGUgKHN0YXRlX251bSBzLCBzdHJ1Y3QgZGZhICpkLCBzdGF0ZV9udW0gdHJhbnNbXSkKICAg ICAgICAgc2V0Yml0IChkLT50b2tlbnNbcG9zLmluZGV4XSwgbWF0Y2hlcyk7CiAgICAgICBl bHNlIGlmIChkLT50b2tlbnNbcG9zLmluZGV4XSA+PSBDU0VUKQogICAgICAgICBjb3B5c2V0 IChkLT5jaGFyY2xhc3Nlc1tkLT50b2tlbnNbcG9zLmluZGV4XSAtIENTRVRdLCBtYXRjaGVz KTsKLSAgICAgIGVsc2UgaWYgKE1CU19TVVBQT1JUCi0gICAgICAgICAgICAgICAmJiAoZC0+ dG9rZW5zW3Bvcy5pbmRleF0gPT0gQU5ZQ0hBUgotICAgICAgICAgICAgICAgICAgIHx8IGQt PnRva2Vuc1twb3MuaW5kZXhdID09IE1CQ1NFVCkpCisgICAgICBlbHNlIGlmIChkLT50b2tl bnNbcG9zLmluZGV4XSA9PSBBTllDSEFSCisgICAgICAgICAgICAgICB8fCBkLT50b2tlbnNb cG9zLmluZGV4XSA9PSBNQkNTRVQpCiAgICAgICAgIC8qIE1CX0NVUl9NQVggPiAxICAqLwog ICAgICAgICB7CiAgICAgICAgICAgLyogQU5ZQ0hBUiBhbmQgTUJDU0VUIG11c3QgbWF0Y2gg d2l0aCBhIHNpbmdsZSBjaGFyYWN0ZXIsIHNvIHdlCkBAIC0yODU1LDcgKzI3NzcsNyBAQCBk ZmFzdGF0ZSAoc3RhdGVfbnVtIHMsIHN0cnVjdCBkZmEgKmQsIHN0YXRlX251bSB0cmFuc1td KQogICAgICAgLyogSWYgd2UgYXJlIGJ1aWxkaW5nIGEgc2VhcmNoaW5nIG1hdGNoZXIsIHRo cm93IGluIHRoZSBwb3NpdGlvbnMKICAgICAgICAgIG9mIHN0YXRlIDAgYXMgd2VsbC4gICov CiAgICAgICBpZiAoZC0+c2VhcmNoZmxhZwotICAgICAgICAgICYmICghTUJTX1NVUFBPUlQg fHwgKGQtPm1iX2N1cl9tYXggPT0gMSB8fCAhbmV4dF9pc250XzFzdF9ieXRlKSkpCisgICAg ICAgICAgJiYgKGQtPm1iX2N1cl9tYXggPT0gMSB8fCAhbmV4dF9pc250XzFzdF9ieXRlKSkK ICAgICAgICAgZm9yIChqID0gMDsgaiA8IGQtPnN0YXRlc1swXS5lbGVtcy5uZWxlbTsgKytq KQogICAgICAgICAgIGluc2VydCAoZC0+c3RhdGVzWzBdLmVsZW1zLmVsZW1zW2pdLCAmZm9s bG93cyk7CiAKQEAgLTM0MDcsNyArMzMyOSw2IEBAIHRyYW5zaXRfc3RhdGUgKHN0cnVjdCBk ZmEgKmQsIHN0YXRlX251bSBzLCB1bnNpZ25lZCBjaGFyIGNvbnN0ICoqcHApCiBzdGF0aWMg dm9pZAogcHJlcGFyZV93Y19idWYgKHN0cnVjdCBkZmEgKmQsIGNvbnN0IGNoYXIgKmJlZ2lu LCBjb25zdCBjaGFyICplbmQpCiB7Ci0jaWYgTUJTX1NVUFBPUlQKICAgdW5zaWduZWQgY2hh ciBlb2wgPSBlb2xieXRlOwogICBzaXplX3QgaTsKICAgc2l6ZV90IGlsaW0gPSBlbmQgLSBi ZWdpbiArIDE7CkBAIC0zNDMxLDcgKzMzNTIsNiBAQCBwcmVwYXJlX3djX2J1ZiAoc3RydWN0 IGRmYSAqZCwgY29uc3QgY2hhciAqYmVnaW4sIGNvbnN0IGNoYXIgKmVuZCkKICAgYnVmX2Vu ZCA9ICh1bnNpZ25lZCBjaGFyICopIChiZWdpbiArIGkpOwogICBtYmxlbl9idWZbaV0gPSAw OwogICBpbnB1dHdjc1tpXSA9IDA7ICAgICAgICAgICAgICAvKiBzZW50aW5lbCAqLwotI2Vu ZGlmIC8qIE1CU19TVVBQT1JUICovCiB9CiAKIC8qIFNlYXJjaCB0aHJvdWdoIGEgYnVmZmVy IGxvb2tpbmcgZm9yIGEgbWF0Y2ggdG8gdGhlIGdpdmVuIHN0cnVjdCBkZmEuCkBAIC0zNjUz LDcgKzM1NzMsNyBAQCBkZmFvcHRpbWl6ZSAoc3RydWN0IGRmYSAqZCkKIHsKICAgc2l6ZV90 IGk7CiAKLSAgaWYgKCFNQlNfU1VQUE9SVCB8fCAhdXNpbmdfdXRmOCAoKSkKKyAgaWYgKCF1 c2luZ191dGY4ICgpKQogICAgIHJldHVybjsKIAogICBmb3IgKGkgPSAwOyBpIDwgZC0+dGlu ZGV4OyArK2kpCkBAIC0zNzAzLDggKzM2MjMsNyBAQCBkZmFmcmVlIChzdHJ1Y3QgZGZhICpk KQogICBmb3IgKGkgPSAwOyBpIDwgZC0+c2luZGV4OyArK2kpCiAgICAgewogICAgICAgZnJl ZSAoZC0+c3RhdGVzW2ldLmVsZW1zLmVsZW1zKTsKLSAgICAgIGlmIChNQlNfU1VQUE9SVCkK LSAgICAgICAgZnJlZSAoZC0+c3RhdGVzW2ldLm1icHMuZWxlbXMpOworICAgICAgZnJlZSAo ZC0+c3RhdGVzW2ldLm1icHMuZWxlbXMpOwogICAgIH0KICAgZnJlZSAoZC0+c3RhdGVzKTsK ICAgZm9yIChpID0gMDsgaSA8IGQtPnRpbmRleDsgKytpKQpAQCAtNDE3OSw3ICs0MDk4LDcg QEAgZGZhbXVzdCAoc3RydWN0IGRmYSAqZCkKICAgICAgICAgICAgICAgLyogbm90IG9uICpt eSogc2hpZnQgKi8KICAgICAgICAgICAgICAgZ290byBkb25lOwogICAgICAgICAgICAgfQot ICAgICAgICAgIGVsc2UgaWYgKHQgPj0gQ1NFVCB8fCAhTUJTX1NVUFBPUlQgfHwgdCA9PSBB TllDSEFSIHx8IHQgPT0gTUJDU0VUKQorICAgICAgICAgIGVsc2UgaWYgKHQgPj0gQ1NFVCB8 fCB0ID09IEFOWUNIQVIgfHwgdCA9PSBNQkNTRVQpCiAgICAgICAgICAgICB7CiAgICAgICAg ICAgICAgIC8qIGVhc3kgZW5vdWdoICovCiAgICAgICAgICAgICAgIHJlc2V0bXVzdCAobXAp OwpkaWZmIC0tZ2l0IGEvbWJzdXBwb3J0LmggYi9tYnN1cHBvcnQuaAppbmRleCA5YTYyNDg2 Li4xOThhMGYzIDEwMDY0NAotLS0gYS9tYnN1cHBvcnQuaAorKysgYi9tYnN1cHBvcnQuaApA QCAtNjYsNiArNjYsMTUgQEAKICNlbmRpZgogCiAjaWYgISBNQlNfU1VQUE9SVAorCisvKiBJ bmNsdWRlIHdjaGFyLmggYW5kIHdjdHlwZS5oIHNvIHRoZWlyIGRlZmluaXRpb25zIGNhbiBi ZSBvdmVycmlkZGVuLiAgKi8KKworIyBpbmNsdWRlIDx3Y2hhci5oPgorIyBpbmNsdWRlIDx3 Y3R5cGUuaD4KKworLyogT3ZlcnJpZGUgdGhlIGRlZmluaXRpb25zIG9mIHdjaGFyLmggYW5k IHdjdHlwZS5oIHRvIHByb3ZpZGUgYQorICAgdW5pYnl0ZSBzdWJzdGl0dXRlIHRoYXQgaXMg Z29vZCBlbm91Z2ggZm9yIEdhd2suICAqLworCiAjIHVuZGVmIE1CX0NVUl9NQVgKICMgZGVm aW5lIE1CX0NVUl9NQVggMQogCkBAIC03OCwxNSArODcsMjQgQEAKICNkZWZpbmUgd2N0eXBl X3QJaW50CiAjZGVmaW5lIHdpbnRfdAkJaW50CiAjZGVmaW5lIG1ic3RhdGVfdAlpbnQKKyN1 bmRlZiBXRU9GCiAjZGVmaW5lIFdFT0YJCUVPRgorI3VuZGVmIHRvd3VwcGVyCiAjZGVmaW5l IHRvd3VwcGVyCXRvdXBwZXIKKyN1bmRlZiB0b3dsb3dlcgogI2RlZmluZSB0b3dsb3dlcgl0 b2xvd2VyCiAjaWZuZGVmIF9fREpHUFBfXwotI2RlZmluZSBidG93Yyh4KQkoKGludCl4KQor I3VuZGVmIGJ0b3djCisjZGVmaW5lIGJ0b3djKHgpCSgoaW50KSAoeCkpCiAjZW5kaWYKKyN1 bmRlZiBpc3dhbG51bQogI2RlZmluZSBpc3dhbG51bQlpc2FsbnVtCisjdW5kZWYgaXN3YWxw aGEKICNkZWZpbmUgaXN3YWxwaGEJaXNhbHBoYQorI3VuZGVmIGlzd3VwcGVyCiAjZGVmaW5l IGlzd3VwcGVyCWlzdXBwZXIKKyN1bmRlZiBpc3dsb3dlcgorI2RlZmluZSBpc3dsb3dlcglp c2xvd2VyCiAjaWYgZGVmaW5lZChaT1NfVVNTKQogI3VuZGVmIHRvd3VwcGVyCiAjdW5kZWYg dG93bG93ZXIKQEAgLTk0LDEyICsxMTIsNDMgQEAKICN1bmRlZiBpc3dhbG51bQogI3VuZGVm IGlzd2FscGhhCiAjdW5kZWYgaXN3dXBwZXIKLSN1bmRlZiB3Y3R5cGUKLSN1bmRlZiBpc3dj dHlwZQotI3VuZGVmIHdjc2NvbGwKICNlbmRpZgogCisjdW5kZWYgbWJydG93YworI2RlZmlu ZSBtYnJ0b3djKHB3YywgcywgbiwgcHMpICgoc2l6ZV90KSAtMSkKKyN1bmRlZiB3Y3J0b21i CisjZGVmaW5lIHdjcnRvbWIocywgd2MsIHBzKSAoKHNpemVfdCkgLTEpCisKKyN1bmRlZiB3 Y3R5cGUKKyNkZWZpbmUgd2N0eXBlIGdhd2tfd2N0eXBlCiBleHRlcm4gd2N0eXBlX3Qgd2N0 eXBlKGNvbnN0IGNoYXIgKm5hbWUpOworI3VuZGVmIGlzd2N0eXBlCisjZGVmaW5lIGlzd2N0 eXBlIGdhd2tfaXN3Y3R5cGUKIGV4dGVybiBpbnQgaXN3Y3R5cGUod2ludF90IHdjLCB3Y3R5 cGVfdCBkZXNjKTsKKyN1bmRlZiB3Y3Njb2xsCisjZGVmaW5lIHdjc2NvbGwgZ2F3a193Y3Nj b2xsCiBleHRlcm4gaW50IHdjc2NvbGwoY29uc3Qgd2NoYXJfdCAqd3MxLCBjb25zdCB3Y2hh cl90ICp3czIpOwogI2VuZGlmCisKKyNpZmRlZiBMSUJDX0lTX0JPUktFRAorIyBpbmNsdWRl IDx3Y2hhci5oPgorZXh0ZXJuIGludCBnYXdrX21iX2N1cl9tYXg7CisjIHVuZGVmIE1CX0NV Ul9NQVgKKyMgdW5kZWYgbWJydG93YworIyBkZWZpbmUgTUJfQ1VSX01BWCBnYXdrX21iX2N1 cl9tYXgKKyMgZGVmaW5lIG1icnRvd2MoYSwgYiwgYywgZCkgKChzaXplX3QpIC0xKQorI2Vu ZGlmCisKKyNpbmNsdWRlIDxsb2NhbGUuaD4KKyNpZm5kZWYgTENfQUxMCisjIGRlZmluZSBz ZXRsb2NhbGUoY2F0ZWdvcnksIGxvY2FsZSkgTlVMTAorI2VuZGlmCisKKyNpbmNsdWRlIDxh c3NlcnQuaD4KKyNpZm5kZWYgc3RhdGljX2Fzc2VydAorIyBkZWZpbmUgc3RhdGljX2Fzc2Vy dChjb25kLCBkaWFnbm9zdGljKSBcCisgICAgZXh0ZXJuIGludCAoKmZvbyAodm9pZCkpIFsh IXNpemVvZiAoc3RydWN0IHsgaW50IGZvbzogKGNvbmQpID8gOCA6IC0xOyB9KV0KKyNlbmRp ZgorCisvKiBNYWtlIHN1cmUgUkVfRFVQX01BWCBnZXRzIHRoZSBjb3JyZWN0IHZhbHVlLiAg Ki8KKyNkZWZpbmUgX1JFR0VYX0lOQ0xVREVfTElNSVRTX0gKZGlmZiAtLWdpdCBhL21pc3Np bmdfZC9DaGFuZ2VMb2cgYi9taXNzaW5nX2QvQ2hhbmdlTG9nCmluZGV4IGY5NGMwNzAuLjdm YTY1NDEgMTAwNjQ0Ci0tLSBhL21pc3NpbmdfZC9DaGFuZ2VMb2cKKysrIGIvbWlzc2luZ19k L0NoYW5nZUxvZwpAQCAtMSwzICsxLDcgQEAKKzIwMTQtMDQtMDMgIFBhdWwgRWdnZXJ0ICA8 ZWdnZXJ0QGNzLnVjbGEuZWR1PgorCisJKiB3Y21pc2MuYzogUmVtb3ZlIG5vdy11bm5lY2Vz c2FyeSBpZmRlZnMuCisKIDIwMTMtMDUtMDkgICAgICAgICBBcm5vbGQgRC4gUm9iYmlucyAg ICAgPGFybm9sZEBza2VldmUuY29tPgogCiAJKiA0LjEuMDogUmVsZWFzZSB0YXIgYmFsbCBt YWRlLgpkaWZmIC0tZ2l0IGEvbWlzc2luZ19kL3djbWlzYy5jIGIvbWlzc2luZ19kL3djbWlz Yy5jCmluZGV4IGQyYjdhYTAuLjg5ZTI0YzkgMTAwNjQ0Ci0tLSBhL21pc3NpbmdfZC93Y21p c2MuYworKysgYi9taXNzaW5nX2Qvd2NtaXNjLmMKQEAgLTE2LDcgKzE2LDYgQEAKICAgIEZv dW5kYXRpb24sIEluYy4sCiAgICA1MSBGcmFua2xpbiBTdHJlZXQgLSBGaWZ0aCBGbG9vciwg Qm9zdG9uLCBNQSAgMDIxMTAtMTMwMSwgVVNBICovCiAKLSNpZiAhZGVmaW5lZChIQVZFX1dD VFlQRSkgfHwgIWRlZmluZWQoSEFWRV9JU1dDVFlQRSkKIHN0YXRpYyBjb25zdCBjaGFyICpj bGFzc2VzW10gPSB7CiAJIjxkdW1teT4iLAogCSJhbG51bSIsCkBAIC0zMywxNiArMzIsMTIg QEAgc3RhdGljIGNvbnN0IGNoYXIgKmNsYXNzZXNbXSA9IHsKIAkieGRpZ2l0IiwKIAlOVUxM CiB9OwotI2VuZGlmCiAKLSNpZm5kZWYgSEFWRV9JU1dDVFlQRQogc3RhdGljIGludCBpc19i bGFuayAoaW50IGMpCiB7CiAgICByZXR1cm4gKGMgPT0gJyAnIHx8IGMgPT0gJ1x0Jyk7CiB9 Ci0jZW5kaWYKIAotI2lmbmRlZiBIQVZFX1dDVFlQRQogd2N0eXBlX3Qgd2N0eXBlKGNvbnN0 IGNoYXIgKm5hbWUpCiB7CiAJaW50IGk7CkBAIC01Myw5ICs0OCw3IEBAIHdjdHlwZV90IHdj dHlwZShjb25zdCBjaGFyICpuYW1lKQogCiAJcmV0dXJuIDA7CiB9Ci0jZW5kaWYKIAotI2lm bmRlZiBIQVZFX0lTV0NUWVBFCiBpbnQgaXN3Y3R5cGUod2ludF90IHdjLCB3Y3R5cGVfdCBk ZXNjKQogewogCWludCBqID0gc2l6ZW9mKGNsYXNzZXMpIC8gc2l6ZW9mKGNsYXNzZXNbMF0p OwpAQCAtNzksOSArNzIsNyBAQCBpbnQgaXN3Y3R5cGUod2ludF90IHdjLCB3Y3R5cGVfdCBk ZXNjKQogCWRlZmF1bHQ6CXJldHVybiAwOwogCX0KIH0KLSNlbmRpZgogCi0jaWZuZGVmIEhB VkVfV0NTQ09MTAogaW50IHdjc2NvbGwoY29uc3Qgd2NoYXJfdCAqd3MxLCBjb25zdCB3Y2hh cl90ICp3czIpCiB7CiAJc2l6ZV90IGk7CkBAIC05NSw2ICs4Niw1IEBAIGludCB3Y3Njb2xs KGNvbnN0IHdjaGFyX3QgKndzMSwgY29uc3Qgd2NoYXJfdCAqd3MyKQogCiAJcmV0dXJuICh3 czFbaV0gLSB3czJbaV0pOwogfQotI2VuZGlmCiAKIC8qd2NtaXNjLmMqLwpkaWZmIC0tZ2l0 IGEvcmVnZXguaCBiL3JlZ2V4LmgKaW5kZXggNTY2MDI5Ni4uNDAwYjQwNyAxMDA2NDQKLS0t IGEvcmVnZXguaAorKysgYi9yZWdleC5oCkBAIC0yNjQsMTQgKzI2NCwyNCBAQCBleHRlcm4g cmVnX3N5bnRheF90IHJlX3N5bnRheF9vcHRpb25zOwogICAgfCBSRV9OT19CS19QQVJFTlMg ICAgICAgIHwgUkVfTk9fQktfUkVGUwkJCQlcCiAgICB8IFJFX05PX0JLX1ZCQVIJICAgIHwg UkVfVU5NQVRDSEVEX1JJR0hUX1BBUkVOX09SRCkKIC8qIFtbW2VuZCBzeW50YXhlc11dXSAq LwotDAotLyogTWF4aW11bSBudW1iZXIgb2YgZHVwbGljYXRlcyBhbiBpbnRlcnZhbCBjYW4g YWxsb3cuICBTb21lIHN5c3RlbXMKLSAgIChlcnJvbmVvdXNseSkgZGVmaW5lIHRoaXMgaW4g b3RoZXIgaGVhZGVyIGZpbGVzLCBidXQgd2Ugd2FudCBvdXIKKworLyogTWF4aW11bSBudW1i ZXIgb2YgZHVwbGljYXRlcyBhbiBpbnRlcnZhbCBjYW4gYWxsb3cuICBQT1NJWC1jb25mb3Jt aW5nCisgICBzeXN0ZW1zIG1pZ2h0IGRlZmluZSB0aGlzIGluIDxsaW1pdHMuaD4sIGJ1dCB3 ZSB3YW50IG91cgogICAgdmFsdWUsIHNvIHJlbW92ZSBhbnkgcHJldmlvdXMgZGVmaW5lLiAg Ki8KKyMgaWZkZWYgX1JFR0VYX0lOQ0xVREVfTElNSVRTX0gKKyMgIGluY2x1ZGUgPGxpbWl0 cy5oPgorIyBlbmRpZgogIyBpZmRlZiBSRV9EVVBfTUFYCiAjICB1bmRlZiBSRV9EVVBfTUFY CiAjIGVuZGlmCi0vKiBJZiBzaXplb2YoaW50KSA9PSAyLCB0aGVuICgoMSA8PCAxNSkgLSAx KSBvdmVyZmxvd3MuICAqLworCisvKiBSRV9EVVBfTUFYIGlzIDIqKjE1IC0gMSBiZWNhdXNl IGFuIGVhcmxpZXIgaW1wbGVtZW50YXRpb24gc3RvcmVkCisgICB0aGUgY291bnRlciBhcyBh IDItYnl0ZSBzaWduZWQgaW50ZWdlci4gIFRoaXMgaXMgbm8gbG9uZ2VyIHRydWUsIHNvCisg ICBSRV9EVVBfTUFYIGNvdWxkIGJlIGluY3JlYXNlZCB0byAoSU5UX01BWCAvIDEwIC0gMSks IG9yIHRvCisgICAoKFNJWkVfTUFYIC0gOSkgLyAxMCkgaWYgX1JFR0VYX0xBUkdFX09GRlNF VFMgaXMgZGVmaW5lZC4KKyAgIEhvd2V2ZXIsIHRoZXJlIHdvdWxkIGJlIGEgaHVnZSBwZXJm b3JtYW5jZSBwcm9ibGVtIGlmIHNvbWVvbmUKKyAgIGFjdHVhbGx5IHVzZWQgYSBwYXR0ZXJu IGxpa2UgYVx7MjE0NzQ4MzYzXH0sIHNvIFJFX0RVUF9NQVggcmV0YWlucworICAgaXRzIGhp c3RvcmljYWwgdmFsdWUuICAqLwogIyBkZWZpbmUgUkVfRFVQX01BWCAoMHg3ZmZmKQogI2Vu ZGlmCiAKZGlmZiAtLWdpdCBhL3JlZ2V4X2ludGVybmFsLmggYi9yZWdleF9pbnRlcm5hbC5o CmluZGV4IGM4OTgxYTAuLjc1OGNmNDcgMTAwNjQ0Ci0tLSBhL3JlZ2V4X2ludGVybmFsLmgK KysrIGIvcmVnZXhfaW50ZXJuYWwuaApAQCAtMjYsOCArMjYsNiBAQAogI2luY2x1ZGUgPHN0 ZGxpYi5oPgogI2luY2x1ZGUgPHN0cmluZy5oPgogCi0jaW5jbHVkZSAibWJzdXBwb3J0Lmgi IC8qIGdhd2sgKi8KLQogI2lmIGRlZmluZWQgSEFWRV9MQU5HSU5GT19IIHx8IGRlZmluZWQg SEFWRV9MQU5HSU5GT19DT0RFU0VUIHx8IGRlZmluZWQgX0xJQkMKICMgaW5jbHVkZSA8bGFu Z2luZm8uaD4KICNlbmRpZgotLSAKMS45LjAKCg== --------------050903030004050401040207-- From debbugs-submit-bounces@debbugs.gnu.org Fri May 02 02:11:26 2014 Received: (at 17157) by debbugs.gnu.org; 2 May 2014 06:11:26 +0000 Received: from localhost ([127.0.0.1]:47870 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Wg6gu-0004Ma-Hk for submit@debbugs.gnu.org; Fri, 02 May 2014 02:11:26 -0400 Received: from smtp.cs.ucla.edu ([131.179.128.62]:47137) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Wg6gn-0004M2-Ke; Fri, 02 May 2014 02:11:20 -0400 Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp.cs.ucla.edu (Postfix) with ESMTP id 6B944A60049; Thu, 1 May 2014 23:11:11 -0700 (PDT) X-Virus-Scanned: amavisd-new at smtp.cs.ucla.edu Received: from smtp.cs.ucla.edu ([127.0.0.1]) by localhost (smtp.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id uYzbHjlCoa6o; Thu, 1 May 2014 23:11:07 -0700 (PDT) Received: from [192.168.1.9] (pool-108-0-233-62.lsanca.fios.verizon.net [108.0.233.62]) by smtp.cs.ucla.edu (Postfix) with ESMTPSA id F302039E8014; Thu, 1 May 2014 23:11:06 -0700 (PDT) Message-ID: <536336FA.8020109@cs.ucla.edu> Date: Thu, 01 May 2014 23:11:06 -0700 From: Paul Eggert Organization: UCLA Computer Science Department User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0 MIME-Version: 1.0 To: Aharon Robbins , 17381@debbugs.gnu.org Subject: Re: bug#17381: _GL_ATTRIBUTE_PURE in dfa.h References: <201405010619.s416JeNl020893@freefriends.org> <5361EAD7.7040507@cs.ucla.edu> <201405011829.s41IThl8004128@skeeve.com> In-Reply-To: <201405011829.s41IThl8004128@skeeve.com> Content-Type: multipart/mixed; boundary="------------030302090000050300070904" X-Spam-Score: -3.0 (---) X-Debbugs-Envelope-To: 17157 Cc: 17072@debbugs.gnu.org, 17157@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.0 (---) This is a multi-part message in MIME format. --------------030302090000050300070904 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 05/01/2014 11:29 AM, Aharon Robbins wrote: > custom.h is for system customization to override things that Autoconf > can't figure out or gets wrong OK, it's easy to have something else include mbsupport.h instead. config.h, say. The attached patch does that. It doesn't really matter what includes it, so long as it's done before dfa.c and dfa.h start using the multibyte functions. > Requiring gnulib in that header makes it less attractive to other > projects that might want to use dfa as a black box. Are there such? I > don't know. (I thought I'd heard something about gettext using dfa but > I am unsure if that is true.) gettext uses gnulib, so that's not an issue. > Does the GL_PURE stuff have to be on every declaration? Or can it just > be on the body? It should be on the declaration for external functions, so that the function's caller knows to optimize it. > What does it even mean It means the function has no effects except the return value and that the return value depends only on the parameters and/or global variables. > Does whatever optimization it enables *really* make a big difference, > or is it just a micro-optimization? We put it in because GCC nowadays complains if we leave it out, if we configure with --enable-gcc-warnings. The optimization seems to be a win in general and (more important) an aid for humans reading the code, so we typically just add the pure attribute and move on. > Yes, I know. I am unsure if your patch, which totally eliminates the > ability to compile gawk on systems without multibyte support It's not supposed to do that. It's supposed to work on those hosts, by supplying substitutes for wchar_t, wctype_t, etc. Hmm, are you worried about hosts that don't even have wchar.h and wctype.h? If so, that can be worked around reasonably easily; please see attached patch. > I just looked at the patch again. It really doesn't do the trick; > there are lots of places where MBS_SUPPORT is checked in the gawk code > and pulling mbsupport.h out of awk.h is likely to break things No, it should still work. With the revised patch, config.h includes mbsupport.h, so MBS_SUPPORT will be defined appropriately for gawk code and gawk's other MBS_SUPPORT usages will continue to work as before. I'll CC: this to Bug#17157 and Bug#17072 as it's following up to the last messages in both those threads, too. --------------030302090000050300070904 Content-Type: text/plain; charset=UTF-8; name="0001-awk-simplify-dfa.c-by-having-it-not-include-mbsuppor.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="0001-awk-simplify-dfa.c-by-having-it-not-include-mbsuppor.pa"; filename*1="tch" RnJvbSBmNjExMmFjYTQxZWE4YmQyMDI4ZWE1YjAwYTNhNzVkYjE0YTMyZWVmIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QGNzLnVjbGEuZWR1 PgpEYXRlOiBUaHUsIDEgTWF5IDIwMTQgMjM6MDk6MDAgLTA3MDAKU3ViamVjdDogW1BBVENI XSBhd2s6IHNpbXBsaWZ5IGRmYS5jIGJ5IGhhdmluZyBpdCBub3QgaW5jbHVkZSBtYnN1cHBv cnQuaAogZGlyZWN0bHkKClRoaXMgc3luY3MgZGZhLmMgYmV0dGVyIHdpdGggJ2dyZXAnLgoq IE1ha2VmaWxlLmFtIChTVERCT09MX0gsIFdDSEFSX0gsIFdDVFlQRV9IKTogTmV3IG1hY3Jv cy4KKCQoZ2F3a19PQkpDRVRTKSk6IERlcGVuZCBvbiB0aGVtLgooc3RkYm9vbC5oLCB3Y2hh ci5oLCB3Y3R5cGUuaCk6IE5ldyBydWxlcy4KKENMRUFORklMRVMpOiBBZGQgdGhlIG5ldyBm aWxlcyB0byB0aGlzIGxpc3QuCiogYXdrLmgsIHJlZ2V4X2ludGVybmFsLmgsIGRmYS5jOiBE b24ndCBpbmNsdWRlIG1ic3VwcG9ydC5oLgoqIGNvbmZpZ3VyZS5hYzogQXJyYW5nZSBmb3Ig Y29uZmlnLmggdG8gaW5jbHVkZSBpdCBpbnN0ZWFkLgooU1REQk9PTF9ILCBXQ0hBUl9ILCBX Q1RZUEVfSCk6IE5ldyBjb25maWd1cmF0aW9uIGl0ZW1zLgoqIGN1c3RvbS5oIChfR0xfQVRU UklCVVRFX1BVUkUpOiBNb3ZlIGhlcmUgZnJvbSBkZmEuYywgdG8gbGVzc2VuIHRoZQpudW1i ZXIgb2YgZGlmZmVyZW5jZXMgYmV0d2VlbiBncmVwJ3MgZGZhLmMgYW5kIG91cnMuCiogZGZh LmM6IEluY2x1ZGUgd2NoYXIuaCBhbmQgd2N0eXBlLmggdW5jb25kaXRpb25hbGx5LCBhcwp0 aGlzIHNpbXBsaWZpZXMgdGhlIHVzZSBvZiBkZmEuYyBpbiBncmVwLCBhbmQgaXQgZG9lcyBu byBoYXJtCmluIGdhd2suCihzZXRsb2NhbGUpIFshTENfQUxMXToKKGdhd2tfbWJfY3VyX21h eCwgTUJfQ1VSX01BWCwgbWJydG93YykgW0xJQkNfSVNfQk9SS0VEXToKTW92ZSB0byBtYnN1 cHBvcnQuaCAobmVlZGVkIGZvciBjb25zaXN0ZW5jeSBpbiBhbGwgdXNlcyksCmFuZCBmaXgg bWJydG93YyB0byByZXR1cm4gc2l6ZV90Lgooc3RydWN0IGRmYSwgZGZhbWJjYWNoZSwgbWJz X3RvX3djaGFyKQooaXNfdmFsaWRfdW5pYnl0ZV9jaGFyYWN0ZXIsIHNldGJpdF93YywgdXNp bmdfdXRmOCwgRkVUQ0hfV0MpCihhZGR0b2tfd2MsIGFkZF91dGY4X2FueWNoYXIsIGF0b20s IHN0YXRlX2luZGV4LCBlcHNjbG9zdXJlKQooZGZhYW5hbHl6ZSwgZGZhc3RhdGUsIHByZXBh cmVfd2NfYnVmLCBkZmFvcHRpbWl6ZSwgZGZhZnJlZSwgZGZhbXVzdCk6CiogZGZhc2VhcmNo LmMgKEVHZXhlY3V0ZSk6CiogZ3JlcC5jIChtYWluKToKKiBzZWFyY2h1dGlscy5jIChtYnRv dXBwZXIpOgpBc3N1bWUgTUJTX1NVUFBPUlQuCiogZGZhLmg6IEluY2x1ZGUgc3RkYm9vbC5o IHVuY29uZGl0aW9uYWxseSwgc28gdGhhdCB0aGlzIGZpbGUgaXMKY2xvc2VyIHRvIHdoYXQn cyBpbiBncmVwLgoqIG1ic3VwcG9ydC5oIFshTUJTX1NVUFBPUlRdOiBJbmNsdWRlIHdjaGFy LmgsIHdjdHlwZS5oCmJlZm9yZSBvdmVycmlkaW5nIHRoZWlyIGRlZmluaXRpb25zLgooV0VP RiwgdG93dXBwZXIsIHRvd2xvd2VyLCBidG93YywgaXN3YWxudW0sIGlzd2FscGhhLCBpc3d1 cHBlcikKKGlzd2xvd2VyLCBtYnJ0b3djLCB3Y3J0b21iLCB3Y3R5cGUsIGlzd2N0eXBlLCB3 Y3Njb2xsKToKKGJ0b3djKTogUGFyZW50aGVzaXplIHByb3Blcmx5LgoobWJydG93Yywgd2Ny dG9tYik6IE5ldyBtYWNyb3MuCih3Y3R5cGUsIGlzd2N0eXBlLCB3Y3Njb2xsKTogRGVmaW5l IHRvIGdhd2tfd2N0eXBlIGV0Yy4gdG8gYXZvaWQKY29sbGlzaW9ucyB3aXRoIHN0YW5kYXJk IGxpYnJhcnkuCi0tLQogQ2hhbmdlTG9nICAgICAgICAgICB8IDQwICsrKysrKysrKysrKysr KysrKysrKysrCiBNYWtlZmlsZS5hbSAgICAgICAgIHwgMTEgKysrKysrKwogYXdrLmggICAg ICAgICAgICAgICB8ICAyIC0tCiBjb25maWd1cmUuYWMgICAgICAgIHwgIDkgKysrKysrCiBj dXN0b20uaCAgICAgICAgICAgIHwgIDcgKysrKwogZGZhLmMgICAgICAgICAgICAgICB8IDkz ICsrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t CiBkZmEuaCAgICAgICAgICAgICAgIHwgIDQgLS0tCiBtYnN1cHBvcnQuaCAgICAgICAgIHwg NTcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0KIG1pc3NpbmdfZC9DaGFuZ2VM b2cgfCAgNCArKysKIG1pc3NpbmdfZC93Y21pc2MuYyAgfCAxMCAtLS0tLS0KIHJlZ2V4Lmgg ICAgICAgICAgICAgfCAxOCArKysrKysrKy0tLQogcmVnZXhfaW50ZXJuYWwuaCAgICB8ICAy IC0tCiAxMiBmaWxlcyBjaGFuZ2VkLCAxNDkgaW5zZXJ0aW9ucygrKSwgMTA4IGRlbGV0aW9u cygtKQoKZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCBjMWIyOTRi Li44ZWJmYWVkIDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0x LDMgKzEsNDMgQEAKKzIwMTQtMDUtMDEgIFBhdWwgRWdnZXJ0ICA8ZWdnZXJ0QGNzLnVjbGEu ZWR1PgorCisJYXdrOiBzaW1wbGlmeSBkZmEuYyBieSBoYXZpbmcgaXQgbm90IGluY2x1ZGUg bWJzdXBwb3J0LmggZGlyZWN0bHkKKwlUaGlzIHN5bmNzIGRmYS5jIGJldHRlciB3aXRoICdn cmVwJy4KKwkqIE1ha2VmaWxlLmFtIChTVERCT09MX0gsIFdDSEFSX0gsIFdDVFlQRV9IKTog TmV3IG1hY3Jvcy4KKwkoJChnYXdrX09CSkNFVFMpKTogRGVwZW5kIG9uIHRoZW0uCisJKHN0 ZGJvb2wuaCwgd2NoYXIuaCwgd2N0eXBlLmgpOiBOZXcgcnVsZXMuCisJKENMRUFORklMRVMp OiBBZGQgdGhlIG5ldyBmaWxlcyB0byB0aGlzIGxpc3QuCisJKiBhd2suaCwgcmVnZXhfaW50 ZXJuYWwuaCwgZGZhLmM6IERvbid0IGluY2x1ZGUgbWJzdXBwb3J0LmguCisJKiBjb25maWd1 cmUuYWM6IEFycmFuZ2UgZm9yIGNvbmZpZy5oIHRvIGluY2x1ZGUgaXQgaW5zdGVhZC4KKwko U1REQk9PTF9ILCBXQ0hBUl9ILCBXQ1RZUEVfSCk6IE5ldyBjb25maWd1cmF0aW9uIGl0ZW1z LgorCSogY3VzdG9tLmggKF9HTF9BVFRSSUJVVEVfUFVSRSk6IE1vdmUgaGVyZSBmcm9tIGRm YS5jLCB0byBsZXNzZW4gdGhlCisJbnVtYmVyIG9mIGRpZmZlcmVuY2VzIGJldHdlZW4gZ3Jl cCdzIGRmYS5jIGFuZCBvdXJzLgorCSogZGZhLmM6IEluY2x1ZGUgd2NoYXIuaCBhbmQgd2N0 eXBlLmggdW5jb25kaXRpb25hbGx5LCBhcworCXRoaXMgc2ltcGxpZmllcyB0aGUgdXNlIG9m IGRmYS5jIGluIGdyZXAsIGFuZCBpdCBkb2VzIG5vIGhhcm0KKwlpbiBnYXdrLgorCShzZXRs b2NhbGUpIFshTENfQUxMXToKKwkoZ2F3a19tYl9jdXJfbWF4LCBNQl9DVVJfTUFYLCBtYnJ0 b3djKSBbTElCQ19JU19CT1JLRURdOgorCU1vdmUgdG8gbWJzdXBwb3J0LmggKG5lZWRlZCBm b3IgY29uc2lzdGVuY3kgaW4gYWxsIHVzZXMpLAorCWFuZCBmaXggbWJydG93YyB0byByZXR1 cm4gc2l6ZV90LgorCShzdHJ1Y3QgZGZhLCBkZmFtYmNhY2hlLCBtYnNfdG9fd2NoYXIpCisJ KGlzX3ZhbGlkX3VuaWJ5dGVfY2hhcmFjdGVyLCBzZXRiaXRfd2MsIHVzaW5nX3V0ZjgsIEZF VENIX1dDKQorCShhZGR0b2tfd2MsIGFkZF91dGY4X2FueWNoYXIsIGF0b20sIHN0YXRlX2lu ZGV4LCBlcHNjbG9zdXJlKQorCShkZmFhbmFseXplLCBkZmFzdGF0ZSwgcHJlcGFyZV93Y19i dWYsIGRmYW9wdGltaXplLCBkZmFmcmVlLCBkZmFtdXN0KToKKwkqIGRmYXNlYXJjaC5jIChF R2V4ZWN1dGUpOgorCSogZ3JlcC5jIChtYWluKToKKwkqIHNlYXJjaHV0aWxzLmMgKG1idG91 cHBlcik6CisJQXNzdW1lIE1CU19TVVBQT1JULgorCSogZGZhLmg6IEluY2x1ZGUgc3RkYm9v bC5oIHVuY29uZGl0aW9uYWxseSwgc28gdGhhdCB0aGlzIGZpbGUgaXMKKwljbG9zZXIgdG8g d2hhdCdzIGluIGdyZXAuCisJKiBtYnN1cHBvcnQuaCBbIU1CU19TVVBQT1JUXTogSW5jbHVk ZSB3Y2hhci5oLCB3Y3R5cGUuaAorCWJlZm9yZSBvdmVycmlkaW5nIHRoZWlyIGRlZmluaXRp b25zLgorCShXRU9GLCB0b3d1cHBlciwgdG93bG93ZXIsIGJ0b3djLCBpc3dhbG51bSwgaXN3 YWxwaGEsIGlzd3VwcGVyKQorCShpc3dsb3dlciwgbWJydG93Yywgd2NydG9tYiwgd2N0eXBl LCBpc3djdHlwZSwgd2NzY29sbCk6CisJI3VuZGVmIGJlZm9yZSAjZGVmaW5pbmcuCisJKGJ0 b3djKTogUGFyZW50aGVzaXplIHByb3Blcmx5LgorCShtYnJ0b3djLCB3Y3J0b21iKTogTmV3 IG1hY3Jvcy4KKwkod2N0eXBlLCBpc3djdHlwZSwgd2NzY29sbCk6IERlZmluZSB0byBnYXdr X3djdHlwZSBldGMuIHRvIGF2b2lkCisJY29sbGlzaW9ucyB3aXRoIHN0YW5kYXJkIGxpYnJh cnkuCisKIDIwMTQtMDQtMjUgICAgICAgICBBbmRyZXcgSi4gU2Nob3JyICAgICA8YXNjaG9y ckB0ZWxlbWV0cnktaW52ZXN0bWVudHMuY29tPgogCiAJKiBpby5jICh0d29fd2F5X29wZW4p OiBJbiBmb3JrZWQgY2hpbGQsIHJlc2V0IFNJR1BJUEUgdG8gU0lHX0RGTC4KZGlmZiAtLWdp dCBhL01ha2VmaWxlLmFtIGIvTWFrZWZpbGUuYW0KaW5kZXggNmU1NzE1ZC4uZjFhNzI1YSAx MDA2NDQKLS0tIGEvTWFrZWZpbGUuYW0KKysrIGIvTWFrZWZpbGUuYW0KQEAgLTE5Niw2ICsx OTYsMTcgQEAgY29tbWFuZC5jOiBjb21tYW5kLnkKIAkkKFlBQ0MpIC1wIHp6ICQ8CiAJc2Vk ICdzL3BhcnNlIGVycm9yL3N5bnRheCBlcnJvci9nJyA8IHkudGFiLmMgfCBhd2sgLWYgJChz cmNkaXIpL2Jpc29uZml4LmF3ayBjb21tYW5kID4gJCouYyAmJiBybSB5LnRhYi5jCiAKKyMg QXJyYW5nZSBmb3Igc29tZSBzdGFuZGFyZCBoZWFkZXJzIG9uIHBsYXRmb3JtcyB0aGF0IGxh Y2sgdGhlbS4KK1NUREJPT0xfSCA9IEBTVERCT09MX0hACitXQ0hBUl9IID0gQFdDSEFSX0hA CitXQ1RZUEVfSCA9IEBXQ1RZUEVfSEAKKyQoZ2F3a19PQkpFQ1RTKTogJChTVERCT09MX0gp ICQoV0NIQVJfSCkgJChXQ1RZUEVfSCkKK3N0ZGJvb2wuaDoKKwllY2hvICcjaW5jbHVkZSAi bWlzc2luZ19kL2dhd2tib29sLmgiJyA+JEAKK3djaGFyLmggd2N0eXBlLmg6CisJZWNobyAn JyA+JEAKK0NMRUFORklMRVMgKz0gc3RkYm9vbC5oIHdjaGFyLmggd2N0eXBlLmgKKwogIyBU aGlzIGlzIGZvciBteSBkZXZlbG9wbWVudCAmIHRlc3RpbmcuCiBlZmVuY2U6IGdhd2sKIAkk KENDKSAkKExERkxBR1MpIC1vIGdhd2sgJCQobHMgKi5vIHwgZ3JlcCAtdiAnX3AubyQkJykg JChMSUJTKSAtbGVmZW5jZQpkaWZmIC0tZ2l0IGEvYXdrLmggYi9hd2suaAppbmRleCBhZWZk ZDA3Li5jZGJhN2E4IDEwMDY0NAotLS0gYS9hd2suaAorKysgYi9hd2suaApAQCAtOTUsOCAr OTUsNiBAQCBleHRlcm4gaW50IGVycm5vOwogI2luY2x1ZGUgIm1pc3NpbmdfZC9nYXdrYm9v bC5oIgogI2VuZGlmCiAKLSNpbmNsdWRlICJtYnN1cHBvcnQuaCIgLyogZGVmaW5lcyBNQlNf U1VQUE9SVCAqLwotCiAjaWYgTUJTX1NVUFBPUlQKIC8qIFdlIGNhbiBoYW5kbGUgbXVsdGli eXRlIHN0cmluZ3MuICAqLwogI2luY2x1ZGUgPHdjaGFyLmg+CmRpZmYgLS1naXQgYS9jb25m aWd1cmUuYWMgYi9jb25maWd1cmUuYWMKaW5kZXggZTdlMmQ1Zi4uMjQ0N2MzMiAxMDA2NDQK LS0tIGEvY29uZmlndXJlLmFjCisrKyBiL2NvbmZpZ3VyZS5hYwpAQCAtMTUzLDYgKzE1Mywx NCBAQCBlbHNlCiAJQUNfQ0hFQ0tfSEVBREVSUyhzdHJpbmdzLmgpCiBmaQogCitTVERCT09M X0g9IFdDSEFSX0g9IFdDVFlQRV9IPQordGVzdCAiJGFjX2N2X2hlYWRlcl9zdGRib29sX2gi ICE9IHllcyAmJiBTVERCT09MX0g9c3RkYm9vbC5oCit0ZXN0ICIkYWNfY3ZfaGVhZGVyX3dj aGFyX2giICE9IHllcyAmJiBXQ0hBUl9IPXdjaGFyLmgKK3Rlc3QgIiRhY19jdl9oZWFkZXJf d2N0eXBlX2giICE9IHllcyAmJiBXQ1RZUEVfSD13Y3R5cGUuaAorQUNfU1VCU1QoW1NUREJP T0xfSF0pCitBQ19TVUJTVChbV0NIQVJfSF0pCitBQ19TVUJTVChbV0NUWVBFX0hdKQorCiBk bmwgQ2hlY2sgY3Jvc3MgY29tcGlsaW5nCiBBTV9DT05ESVRJT05BTChbVEVTVF9DUk9TU19D T01QSUxFXSwgW3Rlc3QgIngkYnVpbGRfYWxpYXMiICE9ICJ4JGhvc3RfYWxpYXMiXSkKIApA QCAtMzkwLDYgKzM5OCw3IEBAIEFDX0NfU1RSSU5HSVpFCiAKIEFDX0NPTkZJR19IRUFERVJT KFtjb25maWcuaDpjb25maWdoLmluXSkKIEFIX0JPVFRPTShbI2luY2x1ZGUgImN1c3RvbS5o Il0pCitBSF9CT1RUT00oWyNpbmNsdWRlICJtYnN1cHBvcnQuaCJdKQogCiBkbmwgQ3J1ZGUg YnV0IHNtYWxsIGhhY2sgdG8gbWFrZSBwbHVnLWlucyB3b3JrIG9uIE1hYyBPUyBYCiBkbmwg V2Ugc2hvdWxkIHJlYWxseSB1c2UgdGhlIGxpYnRvb2wgdmFsdWUgZm9yIHNocmV4dF9jbWRz LCBidXQgdGhhdApkaWZmIC0tZ2l0IGEvY3VzdG9tLmggYi9jdXN0b20uaAppbmRleCAzNmI0 YWEwLi41YjE5ZGQ0IDEwMDY0NAotLS0gYS9jdXN0b20uaAorKysgYi9jdXN0b20uaApAQCAt NzYsMyArNzYsMTAgQEAKIGV4dGVybiBpbnQgc2V0ZW52KGNvbnN0IGNoYXIgKm5hbWUsIGNv bnN0IGNoYXIgKnZhbHVlLCBpbnQgcmV3cml0ZSk7CiBleHRlcm4gaW50IHVuc2V0ZW52KGNv bnN0IGNoYXIgKm5hbWUpOwogI2VuZGlmCisKKy8qIFRoZSBfX3B1cmVfXyBhdHRyaWJ1dGUg d2FzIGFkZGVkIGluIGdjYyAyLjk2LiAgKi8KKyNpZiBfX0dOVUNfXyA+IDIgfHwgKF9fR05V Q19fID09IDIgJiYgX19HTlVDX01JTk9SX18gPj0gOTYpCisjIGRlZmluZSBfR0xfQVRUUklC VVRFX1BVUkUgX19hdHRyaWJ1dGVfXyAoKF9fcHVyZV9fKSkKKyNlbHNlCisjIGRlZmluZSBf R0xfQVRUUklCVVRFX1BVUkUgLyogZW1wdHkgKi8KKyNlbmRpZgpkaWZmIC0tZ2l0IGEvZGZh LmMgYi9kZmEuYwppbmRleCBkMzA2ZDVjLi45YzQxZmQxIDEwMDY0NAotLS0gYS9kZmEuYwor KysgYi9kZmEuYwpAQCAtMjIsNiArMjIsOCBAQAogCiAjaW5jbHVkZSA8Y29uZmlnLmg+CiAK KyNpbmNsdWRlICJkZmEuaCIKKwogI2luY2x1ZGUgPGFzc2VydC5oPgogI2luY2x1ZGUgPGN0 eXBlLmg+CiAjaW5jbHVkZSA8c3RkaW8uaD4KQEAgLTM4LDExICs0MCw2IEBACiAjaW5jbHVk ZSA8bG9jYWxlLmg+CiAjZW5kaWYKIAotLyogR2F3ayBkb2Vzbid0IHVzZSBHbnVsaWIsIHNv IGRvbid0IGFzc3VtZSB0aGF0IHNldGxvY2FsZSBpcyBwcmVzZW50LiAgKi8KLSNpZm5kZWYg TENfQUxMCi0jIGRlZmluZSBzZXRsb2NhbGUoY2F0ZWdvcnksIGxvY2FsZSkgTlVMTAotI2Vu ZGlmCi0KICNkZWZpbmUgU1RSRVEoYSwgYikgKHN0cmNtcCAoYSwgYikgPT0gMCkKIAogLyog SVNBU0NJSURJR0lUIGRpZmZlcnMgZnJvbSBpc2RpZ2l0LCBhcyBmb2xsb3dzOgpAQCAtNTks MjYgKzU2LDExIEBACiAjaW5jbHVkZSAiZ2V0dGV4dC5oIgogI2RlZmluZSBfKHN0cikgZ2V0 dGV4dCAoc3RyKQogCi0jaW5jbHVkZSAibWJzdXBwb3J0LmgiIC8qIERlZmluZSBNQlNfU1VQ UE9SVCB0byAxIG9yIDAsIGFzIGFwcHJvcHJpYXRlLiAgKi8KLSNpZiBNQlNfU1VQUE9SVAot LyogV2UgY2FuIGhhbmRsZSBtdWx0aWJ5dGUgc3RyaW5ncy4gICovCi0jIGluY2x1ZGUgPHdj aGFyLmg+Ci0jIGluY2x1ZGUgPHdjdHlwZS5oPgotI2VuZGlmCi0KLSNpZmRlZiBHQVdLCi0v KiBUaGUgX19wdXJlX18gYXR0cmlidXRlIHdhcyBhZGRlZCBpbiBnY2MgMi45Ni4gICovCi0j aWYgX19HTlVDX18gPiAyIHx8IChfX0dOVUNfXyA9PSAyICYmIF9fR05VQ19NSU5PUl9fID49 IDk2KQotIyBkZWZpbmUgX0dMX0FUVFJJQlVURV9QVVJFIF9fYXR0cmlidXRlX18gKChfX3B1 cmVfXykpCi0jZWxzZQotIyBkZWZpbmUgX0dMX0FUVFJJQlVURV9QVVJFIC8qIGVtcHR5ICov Ci0jZW5kaWYKLSNlbmRpZiAvKiBHQVdLICovCisjaW5jbHVkZSA8d2NoYXIuaD4KKyNpbmNs dWRlIDx3Y3R5cGUuaD4KIAogI2luY2x1ZGUgInhhbGxvYy5oIgogCi0jaW5jbHVkZSAiZGZh LmgiCi0KICNpZmRlZiBHQVdLCiBzdGF0aWMgaW50CiBpc19ibGFuayAoaW50IGMpCkBAIC04 NywxNCArNjksNiBAQCBpc19ibGFuayAoaW50IGMpCiB9CiAjZW5kaWYgLyogR0FXSyAqLwog Ci0jaWZkZWYgTElCQ19JU19CT1JLRUQKLWV4dGVybiBpbnQgZ2F3a19tYl9jdXJfbWF4Owot I3VuZGVmIE1CX0NVUl9NQVgKLSNkZWZpbmUgTUJfQ1VSX01BWCBnYXdrX21iX2N1cl9tYXgK LSN1bmRlZiBtYnJ0b3djCi0jZGVmaW5lIG1icnRvd2MoYSwgYiwgYywgZCkgKC0xKQotI2Vu ZGlmCi0KIC8qIEhQVVggZGVmaW5lcyB0aGVzZSBhcyBtYWNyb3MgaW4gc3lzL3BhcmFtLmgu ICAqLwogI2lmZGVmIHNldGJpdAogIyB1bmRlZiBzZXRiaXQKQEAgLTQwMiwxMyArMzc2LDEx IEBAIHN0cnVjdCBkZmEKICAgICovCiAgIGludCAqbXVsdGlieXRlX3Byb3A7CiAKLSNpZiBN QlNfU1VQUE9SVAogICAvKiBBIHRhYmxlIGluZGV4ZWQgYnkgYnl0ZSB2YWx1ZXMgdGhhdCBj b250YWlucyB0aGUgY29ycmVzcG9uZGluZyB3aWRlCiAgICAgIGNoYXJhY3RlciAoaWYgYW55 KSBmb3IgdGhhdCBieXRlLiAgV0VPRiBtZWFucyB0aGUgYnl0ZSBpcyB0aGUKICAgICAgbGVh ZGluZyBieXRlIG9mIGEgbXVsdGlieXRlIGNoYXJhY3Rlci4gIEludmFsaWQgYW5kIG51bGwg Ynl0ZXMgYXJlCiAgICAgIG1hcHBlZCB0byB0aGVtc2VsdmVzLiAgKi8KICAgd2ludF90IG1i cnRvd2NfY2FjaGVbTk9UQ0hBUl07Ci0jZW5kaWYKIAogICAvKiBBcnJheSBvZiB0aGUgYnJh Y2tldCBleHByZXNzaW9uIGluIHRoZSBERkEuICAqLwogICBzdHJ1Y3QgbWJfY2hhcl9jbGFz c2VzICptYmNzZXRzOwpAQCAtNDg4LDcgKzQ2MCw2IEBAIHN0YXRpYyB2b2lkIHJlZ2V4cCAo dm9pZCk7CiBzdGF0aWMgdm9pZAogZGZhbWJjYWNoZSAoc3RydWN0IGRmYSAqZCkKIHsKLSNp ZiBNQlNfU1VQUE9SVAogICBpbnQgaTsKICAgZm9yIChpID0gQ0hBUl9NSU47IGkgPD0gQ0hB Ul9NQVg7ICsraSkKICAgICB7CkBAIC01MDUsMTAgKzQ3Niw4IEBAIGRmYW1iY2FjaGUgKHN0 cnVjdCBkZmEgKmQpCiAgICAgICAgIH0KICAgICAgIGQtPm1icnRvd2NfY2FjaGVbdWNdID0g d2k7CiAgICAgfQotI2VuZGlmCiB9CiAKLSNpZiBNQlNfU1VQUE9SVAogLyogU3RvcmUgaW50 byAqUFdDIHRoZSByZXN1bHQgb2YgY29udmVydGluZyB0aGUgbGVhZGluZyBieXRlcyBvZiB0 aGUKICAgIG11bHRpYnl0ZSBidWZmZXIgUyBvZiBsZW5ndGggTiBieXRlcywgdXNpbmcgdGhl IG1icnRvd2NfY2FjaGUgaW4gKkQKICAgIGFuZCB1cGRhdGluZyB0aGUgY29udmVyc2lvbiBz dGF0ZSBpbiAqRC4gIE9uIGNvbnZlcnNpb24gZXJyb3IsCkBAIC01NDMsNyArNTEyLDYgQEAg bWJzX3RvX3djaGFyICh3Y2hhcl90ICpwd2MsIGNoYXIgY29uc3QgKnMsIHNpemVfdCBuLCBz dHJ1Y3QgZGZhICpkKQogICAqcHdjID0gd2M7CiAgIHJldHVybiAxOwogfQotI2VuZGlmCiAK ICNpZmRlZiBERUJVRwogCkBAIC03MzcsNyArNzA1LDcgQEAgc3RhdGljIGNoYXJjbGFzcyBu ZXdsaW5lOwogI2lmZGVmIF9fR0xJQkNfXwogIyBkZWZpbmUgaXNfdmFsaWRfdW5pYnl0ZV9j aGFyYWN0ZXIoYykgMQogI2Vsc2UKLSMgZGVmaW5lIGlzX3ZhbGlkX3VuaWJ5dGVfY2hhcmFj dGVyKGMpICghIChNQlNfU1VQUE9SVCAmJiBidG93YyAoYykgPT0gV0VPRikpCisjIGRlZmlu ZSBpc192YWxpZF91bmlieXRlX2NoYXJhY3RlcihjKSAoYnRvd2MgKGMpICE9IFdFT0YpCiAj ZW5kaWYKIAogLyogUmV0dXJuIG5vbi16ZXJvIGlmIEMgaXMgYSAid29yZC1jb25zdGl0dWVu dCIgYnl0ZTsgemVybyBvdGhlcndpc2UuICAqLwpAQCAtNzk4LDE3ICs3NjYsMTIgQEAgZGZh c3ludGF4IChyZWdfc3ludGF4X3QgYml0cywgaW50IGZvbGQsIHVuc2lnbmVkIGNoYXIgZW9s KQogc3RhdGljIGJvb2wKIHNldGJpdF93YyAod2ludF90IHdjLCBjaGFyY2xhc3MgYykKIHsK LSNpZiBNQlNfU1VQUE9SVAogICBpbnQgYiA9IHdjdG9iICh3Yyk7CiAgIGlmIChiID09IEVP RikKICAgICByZXR1cm4gZmFsc2U7CiAKICAgc2V0Yml0IChiLCBjKTsKICAgcmV0dXJuIHRy dWU7Ci0jZWxzZQotICBhYm9ydCAoKTsKLSAgIC8qTk9UUkVBQ0hFRCovIHJldHVybiBmYWxz ZTsKLSNlbmRpZgogfQogCiAvKiBTZXQgYSBiaXQgZm9yIEIgYW5kIGl0cyBjYXNlIHZhcmlh bnRzIGluIHRoZSBjaGFyY2xhc3MgQy4KQEAgLTkwNCw3ICs4NjcsNiBAQCBzdGF0aWMgd2No YXJfdCB3Y3RvazsgICAgICAgICAgIC8qIFdpZGUgY2hhcmFjdGVyIHJlcHJlc2VudGF0aW9u IG9mIHRoZSBjdXJyZW50CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG11 bHRpYnl0ZSBjaGFyYWN0ZXIuICAqLwogCiAKLSNpZiBNQlNfU1VQUE9SVAogLyogTm90ZSB0 aGF0IGNoYXJhY3RlcnMgYmVjb21lIHVuc2lnbmVkIGhlcmUuICAqLwogIyBkZWZpbmUgRkVU Q0hfV0MoYywgd2MsIGVvZmVycikJCVwKICAgZG8gewkJCQkJCVwKQEAgLTkyNywyMyArODg5 LDYgQEAgc3RhdGljIHdjaGFyX3Qgd2N0b2s7ICAgICAgICAgICAvKiBXaWRlIGNoYXJhY3Rl ciByZXByZXNlbnRhdGlvbiBvZiB0aGUgY3VycmVudAogICAgICAgfQkJCQkJCVwKICAgfSB3 aGlsZSAoMCkKIAotI2Vsc2UKLS8qIE5vdGUgdGhhdCBjaGFyYWN0ZXJzIGJlY29tZSB1bnNp Z25lZCBoZXJlLiAgKi8KLSMgZGVmaW5lIEZFVENIX1dDKGMsIHVudXNlZCwgZW9mZXJyKSAg XAotICBkbyB7CQkJCSAgICAgIFwKLSAgICBpZiAoISBsZXhsZWZ0KQkJICAgICAgXAotICAg ICAgewkJCQkgICAgICBcCi0gICAgICAgIGlmICgoZW9mZXJyKSAhPSAwKQkgICAgICBcCi0g ICAgICAgICAgZGZhZXJyb3IgKGVvZmVycik7CSAgICAgIFwKLSAgICAgICAgZWxzZQkJCSAg ICAgIFwKLSAgICAgICAgICByZXR1cm4gbGFzdHRvayA9IEVORDsJICAgICAgXAotICAgICAg fQkJCQkgICAgICBcCi0gICAgKGMpID0gdG9fdWNoYXIgKCpsZXhwdHIrKyk7ICAgICAgIFwK LSAgICAtLWxleGxlZnQ7CQkJICAgICAgXAotICB9IHdoaWxlICgwKQotCi0jZW5kaWYgLyog TUJTX1NVUFBPUlQgKi8KLQogI2lmbmRlZiBNSU4KICMgZGVmaW5lIE1JTihhLGIpICgoYSkg PCAoYikgPyAoYSkgOiAoYikpCiAjZW5kaWYKQEAgLTE3MjgsNyArMTY3Myw2IEBAIGFkZHRv ayAodG9rZW4gdCkKICAgICB9CiB9CiAKLSNpZiBNQlNfU1VQUE9SVAogLyogV2UgdHJlYXQg YSBtdWx0aWJ5dGUgY2hhcmFjdGVyIGFzIGEgc2luZ2xlIGF0b20sIHNvIHRoYXQgREZBCiAg ICBjYW4gdHJlYXQgYSBtdWx0aWJ5dGUgY2hhcmFjdGVyIGFzIGEgc2luZ2xlIGV4cHJlc3Np b24uCiAKQEAgLTE3NjAsMTcgKzE3MDQsMTAgQEAgYWRkdG9rX3djICh3aW50X3Qgd2MpCiAg ICAgICBhZGR0b2sgKENBVCk7CiAgICAgfQogfQotI2Vsc2UKLXN0YXRpYyB2b2lkCi1hZGR0 b2tfd2MgKHdpbnRfdCB3YykKLXsKLX0KLSNlbmRpZgogCiBzdGF0aWMgdm9pZAogYWRkX3V0 ZjhfYW55Y2hhciAodm9pZCkKIHsKLSNpZiBNQlNfU1VQUE9SVAogICBzdGF0aWMgY29uc3Qg Y2hhcmNsYXNzIHV0ZjhfY2xhc3Nlc1s1XSA9IHsKICAgICB7MCwgMCwgMCwgMCwgfjAsIH4w LCAwLCAwfSwJCS8qIDgwLWJmOiBub24tbGVhZGluZyBieXRlcyAqLwogICAgIHt+MCwgfjAs IH4wLCB+MCwgMCwgMCwgMCwgMH0sICAgICAgIC8qIDAwLTdmOiAxLWJ5dGUgc2VxdWVuY2Ug Ki8KQEAgLTE4MTUsNyArMTc1Miw2IEBAIGFkZF91dGY4X2FueWNoYXIgKHZvaWQpCiAgICAg ICBhZGR0b2sgKENBVCk7CiAgICAgICBhZGR0b2sgKE9SKTsKICAgICB9Ci0jZW5kaWYKIH0K IAogLyogVGhlIGdyYW1tYXIgdW5kZXJzdG9vZCBieSB0aGUgcGFyc2VyIGlzIGFzIGZvbGxv d3MuCkBAIC0xODU2LDcgKzE3OTIsNyBAQCBhZGRfdXRmOF9hbnljaGFyICh2b2lkKQogc3Rh dGljIHZvaWQKIGF0b20gKHZvaWQpCiB7Ci0gIGlmIChNQlNfU1VQUE9SVCAmJiB0b2sgPT0g V0NIQVIpCisgIGlmICh0b2sgPT0gV0NIQVIpCiAgICAgewogICAgICAgYWRkdG9rX3djICh3 Y3Rvayk7CiAKQEAgLTE4NzMsNyArMTgwOSw3IEBAIGF0b20gKHZvaWQpCiAKICAgICAgIHRv ayA9IGxleCAoKTsKICAgICB9Ci0gIGVsc2UgaWYgKE1CU19TVVBQT1JUICYmIHRvayA9PSBB TllDSEFSICYmIHVzaW5nX3V0ZjggKCkpCisgIGVsc2UgaWYgKHRvayA9PSBBTllDSEFSICYm IHVzaW5nX3V0ZjggKCkpCiAgICAgewogICAgICAgLyogRm9yIFVURi04IGV4cGFuZCB0aGUg cGVyaW9kIHRvIGEgc2VyaWVzIG9mIENTRVRzIHRoYXQgZGVmaW5lIGEgdmFsaWQKICAgICAg ICAgIFVURi04IGNoYXJhY3Rlci4gIFRoaXMgYXZvaWRzIHVzaW5nIHRoZSBzbG93IG11bHRp Ynl0ZSBwYXRoLiAgSSdtCkBAIC0xODg3LDkgKzE4MjMsNyBAQCBhdG9tICh2b2lkKQogICAg IH0KICAgZWxzZSBpZiAoKHRvayA+PSAwICYmIHRvayA8IE5PVENIQVIpIHx8IHRvayA+PSBD U0VUIHx8IHRvayA9PSBCQUNLUkVGCiAgICAgICAgICAgIHx8IHRvayA9PSBCRUdMSU5FIHx8 IHRvayA9PSBFTkRMSU5FIHx8IHRvayA9PSBCRUdXT1JECi0jaWYgTUJTX1NVUFBPUlQKICAg ICAgICAgICAgfHwgdG9rID09IEFOWUNIQVIgfHwgdG9rID09IE1CQ1NFVAotI2VuZGlmIC8q IE1CU19TVVBQT1JUICovCiAgICAgICAgICAgIHx8IHRvayA9PSBFTkRXT1JEIHx8IHRvayA9 PSBMSU1XT1JEIHx8IHRvayA9PSBOT1RMSU1XT1JEKQogICAgIHsKICAgICAgIGFkZHRvayAo dG9rKTsKQEAgLTIyMjQsMTAgKzIxNTgsOCBAQCBlcHNjbG9zdXJlIChwb3NpdGlvbl9zZXQg KiBzLCBzdHJ1Y3QgZGZhIGNvbnN0ICpkKQogICBmb3IgKGkgPSAwOyBpIDwgcy0+bmVsZW07 ICsraSkKICAgICBpZiAoZC0+dG9rZW5zW3MtPmVsZW1zW2ldLmluZGV4XSA+PSBOT1RDSEFS CiAgICAgICAgICYmIGQtPnRva2Vuc1tzLT5lbGVtc1tpXS5pbmRleF0gIT0gQkFDS1JFRgot I2lmIE1CU19TVVBQT1JUCiAgICAgICAgICYmIGQtPnRva2Vuc1tzLT5lbGVtc1tpXS5pbmRl eF0gIT0gQU5ZQ0hBUgogICAgICAgICAmJiBkLT50b2tlbnNbcy0+ZWxlbXNbaV0uaW5kZXhd ICE9IE1CQ1NFVAotI2VuZGlmCiAgICAgICAgICYmIGQtPnRva2Vuc1tzLT5lbGVtc1tpXS5p bmRleF0gPCBDU0VUKQogICAgICAgewogICAgICAgICBvbGQgPSBzLT5lbGVtc1tpXTsKQEAg LTI1NDEsOSArMjQ3Myw3IEBAIGRmYWFuYWx5emUgKHN0cnVjdCBkZmEgKmQsIGludCBzZWFy Y2hmbGFnKQogICAgICBpdCB3aXRoIGl0cyBlcHNpbG9uIGNsb3N1cmUuICAqLwogICBmb3Ig KGkgPSAwOyBpIDwgZC0+dGluZGV4OyArK2kpCiAgICAgaWYgKGQtPnRva2Vuc1tpXSA8IE5P VENIQVIgfHwgZC0+dG9rZW5zW2ldID09IEJBQ0tSRUYKLSNpZiBNQlNfU1VQUE9SVAogICAg ICAgICB8fCBkLT50b2tlbnNbaV0gPT0gQU5ZQ0hBUiB8fCBkLT50b2tlbnNbaV0gPT0gTUJD U0VUCi0jZW5kaWYKICAgICAgICAgfHwgZC0+dG9rZW5zW2ldID49IENTRVQpCiAgICAgICB7 CiAjaWZkZWYgREVCVUcKQEAgLTI2NDMsOSArMjU3Myw4IEBAIGRmYXN0YXRlIChzdGF0ZV9u dW0gcywgc3RydWN0IGRmYSAqZCwgc3RhdGVfbnVtIHRyYW5zW10pCiAgICAgICAgIHNldGJp dCAoZC0+dG9rZW5zW3Bvcy5pbmRleF0sIG1hdGNoZXMpOwogICAgICAgZWxzZSBpZiAoZC0+ dG9rZW5zW3Bvcy5pbmRleF0gPj0gQ1NFVCkKICAgICAgICAgY29weXNldCAoZC0+Y2hhcmNs YXNzZXNbZC0+dG9rZW5zW3Bvcy5pbmRleF0gLSBDU0VUXSwgbWF0Y2hlcyk7Ci0gICAgICBl bHNlIGlmIChNQlNfU1VQUE9SVAotICAgICAgICAgICAgICAgJiYgKGQtPnRva2Vuc1twb3Mu aW5kZXhdID09IEFOWUNIQVIKLSAgICAgICAgICAgICAgICAgICB8fCBkLT50b2tlbnNbcG9z LmluZGV4XSA9PSBNQkNTRVQpKQorICAgICAgZWxzZSBpZiAoZC0+dG9rZW5zW3Bvcy5pbmRl eF0gPT0gQU5ZQ0hBUgorICAgICAgICAgICAgICAgfHwgZC0+dG9rZW5zW3Bvcy5pbmRleF0g PT0gTUJDU0VUKQogICAgICAgICAvKiBNQl9DVVJfTUFYID4gMSAgKi8KICAgICAgICAgewog ICAgICAgICAgIC8qIEFOWUNIQVIgYW5kIE1CQ1NFVCBtdXN0IG1hdGNoIHdpdGggYSBzaW5n bGUgY2hhcmFjdGVyLCBzbyB3ZQpAQCAtMjgyMCw3ICsyNzQ5LDcgQEAgZGZhc3RhdGUgKHN0 YXRlX251bSBzLCBzdHJ1Y3QgZGZhICpkLCBzdGF0ZV9udW0gdHJhbnNbXSkKICAgICAgIC8q IElmIHdlIGFyZSBidWlsZGluZyBhIHNlYXJjaGluZyBtYXRjaGVyLCB0aHJvdyBpbiB0aGUg cG9zaXRpb25zCiAgICAgICAgICBvZiBzdGF0ZSAwIGFzIHdlbGwuICAqLwogICAgICAgaWYg KGQtPnNlYXJjaGZsYWcKLSAgICAgICAgICAmJiAoIU1CU19TVVBQT1JUIHx8ICghZC0+bXVs dGlieXRlIHx8ICFuZXh0X2lzbnRfMXN0X2J5dGUpKSkKKyAgICAgICAgICAmJiAoTUJfQ1VS X01BWCA9PSAxIHx8ICFuZXh0X2lzbnRfMXN0X2J5dGUpKQogICAgICAgICBmb3IgKGogPSAw OyBqIDwgZC0+c3RhdGVzWzBdLmVsZW1zLm5lbGVtOyArK2opCiAgICAgICAgICAgaW5zZXJ0 IChkLT5zdGF0ZXNbMF0uZWxlbXMuZWxlbXNbal0sICZmb2xsb3dzKTsKIApAQCAtMzU0MSw3 ICszNDcwLDcgQEAgZGZhb3B0aW1pemUgKHN0cnVjdCBkZmEgKmQpCiB7CiAgIHNpemVfdCBp OwogCi0gIGlmICghTUJTX1NVUFBPUlQgfHwgIXVzaW5nX3V0ZjggKCkpCisgIGlmICghdXNp bmdfdXRmOCAoKSkKICAgICByZXR1cm47CiAKICAgZm9yIChpID0gMDsgaSA8IGQtPnRpbmRl eDsgKytpKQpkaWZmIC0tZ2l0IGEvZGZhLmggYi9kZmEuaAppbmRleCAxNTE0MjM2Li42MGFm ZjExIDEwMDY0NAotLS0gYS9kZmEuaAorKysgYi9kZmEuaApAQCAtMTksMTEgKzE5LDcgQEAK IC8qIFdyaXR0ZW4gSnVuZSwgMTk4OCBieSBNaWtlIEhhZXJ0ZWwgKi8KIAogI2luY2x1ZGUg PHJlZ2V4Lmg+Ci0jaWZkZWYgSEFWRV9TVERCT09MX0gKICNpbmNsdWRlIDxzdGRib29sLmg+ Ci0jZWxzZQotI2luY2x1ZGUgIm1pc3NpbmdfZC9nYXdrYm9vbC5oIgotI2VuZGlmIC8qIEhB VkVfU1REQk9PTF9IICovCiAjaW5jbHVkZSA8c3RkZGVmLmg+CiAKIC8qIEVsZW1lbnQgb2Yg YSBsaXN0IG9mIHN0cmluZ3MsIGF0IGxlYXN0IG9uZSBvZiB3aGljaCBpcyBrbm93biB0bwpk aWZmIC0tZ2l0IGEvbWJzdXBwb3J0LmggYi9tYnN1cHBvcnQuaAppbmRleCA5YTYyNDg2Li4x OThhMGYzIDEwMDY0NAotLS0gYS9tYnN1cHBvcnQuaAorKysgYi9tYnN1cHBvcnQuaApAQCAt NjYsNiArNjYsMTUgQEAKICNlbmRpZgogCiAjaWYgISBNQlNfU1VQUE9SVAorCisvKiBJbmNs dWRlIHdjaGFyLmggYW5kIHdjdHlwZS5oIHNvIHRoZWlyIGRlZmluaXRpb25zIGNhbiBiZSBv dmVycmlkZGVuLiAgKi8KKworIyBpbmNsdWRlIDx3Y2hhci5oPgorIyBpbmNsdWRlIDx3Y3R5 cGUuaD4KKworLyogT3ZlcnJpZGUgdGhlIGRlZmluaXRpb25zIG9mIHdjaGFyLmggYW5kIHdj dHlwZS5oIHRvIHByb3ZpZGUgYQorICAgdW5pYnl0ZSBzdWJzdGl0dXRlIHRoYXQgaXMgZ29v ZCBlbm91Z2ggZm9yIEdhd2suICAqLworCiAjIHVuZGVmIE1CX0NVUl9NQVgKICMgZGVmaW5l IE1CX0NVUl9NQVggMQogCkBAIC03OCwxNSArODcsMjQgQEAKICNkZWZpbmUgd2N0eXBlX3QJ aW50CiAjZGVmaW5lIHdpbnRfdAkJaW50CiAjZGVmaW5lIG1ic3RhdGVfdAlpbnQKKyN1bmRl ZiBXRU9GCiAjZGVmaW5lIFdFT0YJCUVPRgorI3VuZGVmIHRvd3VwcGVyCiAjZGVmaW5lIHRv d3VwcGVyCXRvdXBwZXIKKyN1bmRlZiB0b3dsb3dlcgogI2RlZmluZSB0b3dsb3dlcgl0b2xv d2VyCiAjaWZuZGVmIF9fREpHUFBfXwotI2RlZmluZSBidG93Yyh4KQkoKGludCl4KQorI3Vu ZGVmIGJ0b3djCisjZGVmaW5lIGJ0b3djKHgpCSgoaW50KSAoeCkpCiAjZW5kaWYKKyN1bmRl ZiBpc3dhbG51bQogI2RlZmluZSBpc3dhbG51bQlpc2FsbnVtCisjdW5kZWYgaXN3YWxwaGEK ICNkZWZpbmUgaXN3YWxwaGEJaXNhbHBoYQorI3VuZGVmIGlzd3VwcGVyCiAjZGVmaW5lIGlz d3VwcGVyCWlzdXBwZXIKKyN1bmRlZiBpc3dsb3dlcgorI2RlZmluZSBpc3dsb3dlcglpc2xv d2VyCiAjaWYgZGVmaW5lZChaT1NfVVNTKQogI3VuZGVmIHRvd3VwcGVyCiAjdW5kZWYgdG93 bG93ZXIKQEAgLTk0LDEyICsxMTIsNDMgQEAKICN1bmRlZiBpc3dhbG51bQogI3VuZGVmIGlz d2FscGhhCiAjdW5kZWYgaXN3dXBwZXIKLSN1bmRlZiB3Y3R5cGUKLSN1bmRlZiBpc3djdHlw ZQotI3VuZGVmIHdjc2NvbGwKICNlbmRpZgogCisjdW5kZWYgbWJydG93YworI2RlZmluZSBt YnJ0b3djKHB3YywgcywgbiwgcHMpICgoc2l6ZV90KSAtMSkKKyN1bmRlZiB3Y3J0b21iCisj ZGVmaW5lIHdjcnRvbWIocywgd2MsIHBzKSAoKHNpemVfdCkgLTEpCisKKyN1bmRlZiB3Y3R5 cGUKKyNkZWZpbmUgd2N0eXBlIGdhd2tfd2N0eXBlCiBleHRlcm4gd2N0eXBlX3Qgd2N0eXBl KGNvbnN0IGNoYXIgKm5hbWUpOworI3VuZGVmIGlzd2N0eXBlCisjZGVmaW5lIGlzd2N0eXBl IGdhd2tfaXN3Y3R5cGUKIGV4dGVybiBpbnQgaXN3Y3R5cGUod2ludF90IHdjLCB3Y3R5cGVf dCBkZXNjKTsKKyN1bmRlZiB3Y3Njb2xsCisjZGVmaW5lIHdjc2NvbGwgZ2F3a193Y3Njb2xs CiBleHRlcm4gaW50IHdjc2NvbGwoY29uc3Qgd2NoYXJfdCAqd3MxLCBjb25zdCB3Y2hhcl90 ICp3czIpOwogI2VuZGlmCisKKyNpZmRlZiBMSUJDX0lTX0JPUktFRAorIyBpbmNsdWRlIDx3 Y2hhci5oPgorZXh0ZXJuIGludCBnYXdrX21iX2N1cl9tYXg7CisjIHVuZGVmIE1CX0NVUl9N QVgKKyMgdW5kZWYgbWJydG93YworIyBkZWZpbmUgTUJfQ1VSX01BWCBnYXdrX21iX2N1cl9t YXgKKyMgZGVmaW5lIG1icnRvd2MoYSwgYiwgYywgZCkgKChzaXplX3QpIC0xKQorI2VuZGlm CisKKyNpbmNsdWRlIDxsb2NhbGUuaD4KKyNpZm5kZWYgTENfQUxMCisjIGRlZmluZSBzZXRs b2NhbGUoY2F0ZWdvcnksIGxvY2FsZSkgTlVMTAorI2VuZGlmCisKKyNpbmNsdWRlIDxhc3Nl cnQuaD4KKyNpZm5kZWYgc3RhdGljX2Fzc2VydAorIyBkZWZpbmUgc3RhdGljX2Fzc2VydChj b25kLCBkaWFnbm9zdGljKSBcCisgICAgZXh0ZXJuIGludCAoKmZvbyAodm9pZCkpIFshIXNp emVvZiAoc3RydWN0IHsgaW50IGZvbzogKGNvbmQpID8gOCA6IC0xOyB9KV0KKyNlbmRpZgor CisvKiBNYWtlIHN1cmUgUkVfRFVQX01BWCBnZXRzIHRoZSBjb3JyZWN0IHZhbHVlLiAgKi8K KyNkZWZpbmUgX1JFR0VYX0lOQ0xVREVfTElNSVRTX0gKZGlmZiAtLWdpdCBhL21pc3Npbmdf ZC9DaGFuZ2VMb2cgYi9taXNzaW5nX2QvQ2hhbmdlTG9nCmluZGV4IDcwZmJkZTYuLjQ2ODZj NzQgMTAwNjQ0Ci0tLSBhL21pc3NpbmdfZC9DaGFuZ2VMb2cKKysrIGIvbWlzc2luZ19kL0No YW5nZUxvZwpAQCAtMSwzICsxLDcgQEAKKzIwMTQtMDUtMDEgIFBhdWwgRWdnZXJ0ICA8ZWdn ZXJ0QHBlbmd1aW4uY3MudWNsYS5lZHU+CisKKwkqIHdjbWlzYy5jOiBSZW1vdmUgbm93LXVu bmVjZXNzYXJ5IGlmZGVmcy4KKwogMjAxNC0wNC0wOCAgICAgICAgIEFybm9sZCBELiBSb2Ji aW5zICAgICA8YXJub2xkQHNrZWV2ZS5jb20+CiAKIAkqIDQuMS4xOiBSZWxlYXNlIHRhciBi YWxsIG1hZGUuCmRpZmYgLS1naXQgYS9taXNzaW5nX2Qvd2NtaXNjLmMgYi9taXNzaW5nX2Qv d2NtaXNjLmMKaW5kZXggZDJiN2FhMC4uODllMjRjOSAxMDA2NDQKLS0tIGEvbWlzc2luZ19k L3djbWlzYy5jCisrKyBiL21pc3NpbmdfZC93Y21pc2MuYwpAQCAtMTYsNyArMTYsNiBAQAog ICAgRm91bmRhdGlvbiwgSW5jLiwKICAgIDUxIEZyYW5rbGluIFN0cmVldCAtIEZpZnRoIEZs b29yLCBCb3N0b24sIE1BICAwMjExMC0xMzAxLCBVU0EgKi8KIAotI2lmICFkZWZpbmVkKEhB VkVfV0NUWVBFKSB8fCAhZGVmaW5lZChIQVZFX0lTV0NUWVBFKQogc3RhdGljIGNvbnN0IGNo YXIgKmNsYXNzZXNbXSA9IHsKIAkiPGR1bW15PiIsCiAJImFsbnVtIiwKQEAgLTMzLDE2ICsz MiwxMiBAQCBzdGF0aWMgY29uc3QgY2hhciAqY2xhc3Nlc1tdID0gewogCSJ4ZGlnaXQiLAog CU5VTEwKIH07Ci0jZW5kaWYKIAotI2lmbmRlZiBIQVZFX0lTV0NUWVBFCiBzdGF0aWMgaW50 IGlzX2JsYW5rIChpbnQgYykKIHsKICAgIHJldHVybiAoYyA9PSAnICcgfHwgYyA9PSAnXHQn KTsKIH0KLSNlbmRpZgogCi0jaWZuZGVmIEhBVkVfV0NUWVBFCiB3Y3R5cGVfdCB3Y3R5cGUo Y29uc3QgY2hhciAqbmFtZSkKIHsKIAlpbnQgaTsKQEAgLTUzLDkgKzQ4LDcgQEAgd2N0eXBl X3Qgd2N0eXBlKGNvbnN0IGNoYXIgKm5hbWUpCiAKIAlyZXR1cm4gMDsKIH0KLSNlbmRpZgog Ci0jaWZuZGVmIEhBVkVfSVNXQ1RZUEUKIGludCBpc3djdHlwZSh3aW50X3Qgd2MsIHdjdHlw ZV90IGRlc2MpCiB7CiAJaW50IGogPSBzaXplb2YoY2xhc3NlcykgLyBzaXplb2YoY2xhc3Nl c1swXSk7CkBAIC03OSw5ICs3Miw3IEBAIGludCBpc3djdHlwZSh3aW50X3Qgd2MsIHdjdHlw ZV90IGRlc2MpCiAJZGVmYXVsdDoJcmV0dXJuIDA7CiAJfQogfQotI2VuZGlmCiAKLSNpZm5k ZWYgSEFWRV9XQ1NDT0xMCiBpbnQgd2NzY29sbChjb25zdCB3Y2hhcl90ICp3czEsIGNvbnN0 IHdjaGFyX3QgKndzMikKIHsKIAlzaXplX3QgaTsKQEAgLTk1LDYgKzg2LDUgQEAgaW50IHdj c2NvbGwoY29uc3Qgd2NoYXJfdCAqd3MxLCBjb25zdCB3Y2hhcl90ICp3czIpCiAKIAlyZXR1 cm4gKHdzMVtpXSAtIHdzMltpXSk7CiB9Ci0jZW5kaWYKIAogLyp3Y21pc2MuYyovCmRpZmYg LS1naXQgYS9yZWdleC5oIGIvcmVnZXguaAppbmRleCA1NjYwMjk2Li40MDBiNDA3IDEwMDY0 NAotLS0gYS9yZWdleC5oCisrKyBiL3JlZ2V4LmgKQEAgLTI2NCwxNCArMjY0LDI0IEBAIGV4 dGVybiByZWdfc3ludGF4X3QgcmVfc3ludGF4X29wdGlvbnM7CiAgICB8IFJFX05PX0JLX1BB UkVOUyAgICAgICAgfCBSRV9OT19CS19SRUZTCQkJCVwKICAgIHwgUkVfTk9fQktfVkJBUgkg ICAgfCBSRV9VTk1BVENIRURfUklHSFRfUEFSRU5fT1JEKQogLyogW1tbZW5kIHN5bnRheGVz XV1dICovCi0MCi0vKiBNYXhpbXVtIG51bWJlciBvZiBkdXBsaWNhdGVzIGFuIGludGVydmFs IGNhbiBhbGxvdy4gIFNvbWUgc3lzdGVtcwotICAgKGVycm9uZW91c2x5KSBkZWZpbmUgdGhp cyBpbiBvdGhlciBoZWFkZXIgZmlsZXMsIGJ1dCB3ZSB3YW50IG91cgorCisvKiBNYXhpbXVt IG51bWJlciBvZiBkdXBsaWNhdGVzIGFuIGludGVydmFsIGNhbiBhbGxvdy4gIFBPU0lYLWNv bmZvcm1pbmcKKyAgIHN5c3RlbXMgbWlnaHQgZGVmaW5lIHRoaXMgaW4gPGxpbWl0cy5oPiwg YnV0IHdlIHdhbnQgb3VyCiAgICB2YWx1ZSwgc28gcmVtb3ZlIGFueSBwcmV2aW91cyBkZWZp bmUuICAqLworIyBpZmRlZiBfUkVHRVhfSU5DTFVERV9MSU1JVFNfSAorIyAgaW5jbHVkZSA8 bGltaXRzLmg+CisjIGVuZGlmCiAjIGlmZGVmIFJFX0RVUF9NQVgKICMgIHVuZGVmIFJFX0RV UF9NQVgKICMgZW5kaWYKLS8qIElmIHNpemVvZihpbnQpID09IDIsIHRoZW4gKCgxIDw8IDE1 KSAtIDEpIG92ZXJmbG93cy4gICovCisKKy8qIFJFX0RVUF9NQVggaXMgMioqMTUgLSAxIGJl Y2F1c2UgYW4gZWFybGllciBpbXBsZW1lbnRhdGlvbiBzdG9yZWQKKyAgIHRoZSBjb3VudGVy IGFzIGEgMi1ieXRlIHNpZ25lZCBpbnRlZ2VyLiAgVGhpcyBpcyBubyBsb25nZXIgdHJ1ZSwg c28KKyAgIFJFX0RVUF9NQVggY291bGQgYmUgaW5jcmVhc2VkIHRvIChJTlRfTUFYIC8gMTAg LSAxKSwgb3IgdG8KKyAgICgoU0laRV9NQVggLSA5KSAvIDEwKSBpZiBfUkVHRVhfTEFSR0Vf T0ZGU0VUUyBpcyBkZWZpbmVkLgorICAgSG93ZXZlciwgdGhlcmUgd291bGQgYmUgYSBodWdl IHBlcmZvcm1hbmNlIHByb2JsZW0gaWYgc29tZW9uZQorICAgYWN0dWFsbHkgdXNlZCBhIHBh dHRlcm4gbGlrZSBhXHsyMTQ3NDgzNjNcfSwgc28gUkVfRFVQX01BWCByZXRhaW5zCisgICBp dHMgaGlzdG9yaWNhbCB2YWx1ZS4gICovCiAjIGRlZmluZSBSRV9EVVBfTUFYICgweDdmZmYp CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvcmVnZXhfaW50ZXJuYWwuaCBiL3JlZ2V4X2ludGVy bmFsLmgKaW5kZXggYzg5ODFhMC4uNzU4Y2Y0NyAxMDA2NDQKLS0tIGEvcmVnZXhfaW50ZXJu YWwuaAorKysgYi9yZWdleF9pbnRlcm5hbC5oCkBAIC0yNiw4ICsyNiw2IEBACiAjaW5jbHVk ZSA8c3RkbGliLmg+CiAjaW5jbHVkZSA8c3RyaW5nLmg+CiAKLSNpbmNsdWRlICJtYnN1cHBv cnQuaCIgLyogZ2F3ayAqLwotCiAjaWYgZGVmaW5lZCBIQVZFX0xBTkdJTkZPX0ggfHwgZGVm aW5lZCBIQVZFX0xBTkdJTkZPX0NPREVTRVQgfHwgZGVmaW5lZCBfTElCQwogIyBpbmNsdWRl IDxsYW5naW5mby5oPgogI2VuZGlmCi0tIAoxLjkuMAoK --------------030302090000050300070904-- From unknown Sun Aug 10 16:45:10 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Fri, 30 May 2014 11:24:04 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator