From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11887 invoked by alias); 26 May 2010 16:55:57 -0000 Received: (qmail 11870 invoked by uid 22791); 26 May 2010 16:55:56 -0000 X-SWARE-Spam-Status: No, hits=-1.9 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: sourceware.org Received: from mail-ew0-f210.google.com (HELO mail-ew0-f210.google.com) (209.85.219.210) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 26 May 2010 16:55:50 +0000 Received: by ewy2 with SMTP id 2so867348ewy.16 for ; Wed, 26 May 2010 09:55:47 -0700 (PDT) MIME-Version: 1.0 Received: by 10.213.17.7 with SMTP id q7mr1424274eba.22.1274892947321; Wed, 26 May 2010 09:55:47 -0700 (PDT) Received: by 10.213.8.201 with HTTP; Wed, 26 May 2010 09:55:47 -0700 (PDT) In-Reply-To: References: Date: Wed, 26 May 2010 17:05:00 -0000 Message-ID: Subject: Re: PING: [PATCH] properly check error return from socket() and accept() calls From: Ozkan Sezer To: tromey@redhat.com Cc: gdb-patches@sources.redhat.com Content-Type: multipart/mixed; boundary=0015174c344a40728804878225ce Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2010-05/txt/msg00597.txt.bz2 --0015174c344a40728804878225ce Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-length: 887 On Fri, Apr 9, 2010 at 9:45 PM, Tom Tromey wrote: >>>>>> "Ozkan" =3D=3D Ozkan Sezer writes: > > Ozkan> PING. > > Ozkan> 2010-04-03 =A0Ozkan Sezer =A0 > Ozkan> gdb/ > Ozkan> =A0* ser-tcp.c (net_open): Check error return from socket() call b= y its > Ozkan> =A0equality to -1 not by it being negative. > Ozkan> =A0(net_close): Likewise. > [...] > > It seems reasonable enough to me. > > Do you have a copyright assignment in place? =A0TBH it isn't clear to me > whether this patch requires one -- it is long enough, but I would say > that there is really only one way to write this patch. > > Tom > Hello: My GDB assignment/disclaimer process with the FSF is currently complete (RT 564768). A current, cleanly applying version of the patch is attached. If someone could please apply it for me, I'd be grateful. Thanks. -- Ozkan --0015174c344a40728804878225ce Content-Type: application/octet-stream; name="gdb_socket_err_checks.patch" Content-Disposition: attachment; filename="gdb_socket_err_checks.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g9oecx1u0 Content-length: 11058 MjAxMC0wNS0yNiAgT3prYW4gU2V6ZXIgIDxzZXplcm96QGdtYWlsLmNvbT4K CmdkYi8KCSogc2VyLXRjcC5jIChuZXRfb3Blbik6IENoZWNrIGVycm9yIHJl dHVybiBmcm9tIHNvY2tldCgpIGNhbGwgYnkgaXRzCgllcXVhbGl0eSB0byAt MSBub3QgYnkgaXQgYmVpbmcgbmVnYXRpdmUuCgkobmV0X2Nsb3NlKTogTGlr ZXdpc2UuCgpnZGIvZ2Ric2VydmVyLwoJKiBnZGJyZXBsYXkuYyAocmVtb3Rl X29wZW4pOiBDaGVjayBlcnJvciByZXR1cm4gZnJvbSBzb2NrZXQoKSBjYWxs IGJ5CglpdHMgZXF1YWxpdHkgdG8gLTEgbm90IGJ5IGl0IGJlaW5nIG5lZ2F0 aXZlLgoJKiByZW1vdGUtdXRpbHMuYyAocmVtb3RlX29wZW4pOiBMaWtld2lz ZS4KCnNpbS9hcm0vCgkqIGNvbW11bmljYXRlLmMgKE1ZcmVhZF9jaGFyKTog Q2hlY2sgZXJyb3IgcmV0dXJuIGZyb20gYWNjZXB0KCkgY2FsbAoJYnkgaXRz IGVxdWFsaXR5IHRvIC0xIG5vdCBieSBpdCBiZWluZyBuZWdhdGl2ZS4KCShN WXJlYWRfY2hhcndhaXQpOiBMaWtld2lzZS4KCSogbWFpbi5jIChtYWluKTog TGlrZXdpc2UgZm9yIGJvdGggc29ja2V0KCkgYW5kIGFjY2VwdCgpIGNhbGxz LgoKc2ltL2NvbW1vbi8KCSogZHYtc29ja3Nlci5jIChkdl9zb2Nrc2VyX2lu aXQpOiBDaGVjayBlcnJvciByZXR1cm4gZnJvbSBzb2NrZXQoKQoJY2FsbCBi eSBpdHMgZXF1YWxpdHkgdG8gLTEgbm90IGJ5IGl0IGJlaW5nIG5lZ2F0aXZl LgoJKGNvbm5lY3RlZF9wKTogTGlrZXdpc2UgZm9yIGFjY2VwdCgpIGNhbGwu CgpzaW0vY3Jpcy8KCSogZHYtcnYuYyAoaHdfcnZfaW5pdF9zb2NrZXQpOiBD aGVjayBlcnJvciByZXR1cm4gZnJvbSBzb2NrZXQoKSBjYWxsCglieSBpdHMg ZXF1YWxpdHkgdG8gLTEgbm90IGJ5IGl0IGJlaW5nIG5lZ2F0aXZlLgoJKGh3 X3J2X3dyaXRlKTogTGlrZXdpc2UuCgkoaHdfcnZfaGFuZGxlX2luY29taW5n KTogTGlrZXdpc2UuCgkoaHdfcnZfcG9sbF9vbmNlKTogTGlrZXdpc2UuCgkq IHJ2ZHVtbXkuYyAoc2V0dXBzb2NrZXQpOiBMaWtld2lzZS4KCShtYWluKTog TGlrZXdpc2UgZm9yIGFjY2VwdCgpIGNhbGwgYXMgcmV0dXJuZWQgZnJvbSBz ZXR1cHNvY2tldCgpLgoKc2ltL20zMmMvCgkqIG1haW4uYyAoc2V0dXBfdGNw X2NvbnNvbGUpOiBDaGVjayBlcnJvciByZXR1cm4gZnJvbSBzb2NrZXQoKSBj YWxsCglieSBpdHMgZXF1YWxpdHkgdG8gLTEgbm90IGJ5IGl0IGJlaW5nIG5l Z2F0aXZlLgoKSW5kZXg6IGdkYi9zZXItdGNwLmMKPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PQpSQ1MgZmlsZTogL2N2cy9zcmMvc3JjL2dkYi9zZXItdGNwLmMs dgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMzQKZGlmZiAtdSAtcCAtcjEuMzQg c2VyLXRjcC5jCi0tLSBnZGIvc2VyLXRjcC5jCTE2IE1heSAyMDEwIDIzOjQ5 OjU4IC0wMDAwCTEuMzQKKysrIGdkYi9zZXItdGNwLmMJMjMgTWF5IDIwMTAg MTE6MDI6MDIgLTAwMDAKQEAgLTIwOSw3ICsyMDksNyBAQCBuZXRfb3BlbiAo c3RydWN0IHNlcmlhbCAqc2NiLCBjb25zdCBjaGFyCiAgIGVsc2UKICAgICBz Y2ItPmZkID0gc29ja2V0IChQRl9JTkVULCBTT0NLX1NUUkVBTSwgMCk7CiAK LSAgaWYgKHNjYi0+ZmQgPCAwKQorICBpZiAoc2NiLT5mZCA9PSAtMSkKICAg ICByZXR1cm4gLTE7CiAgIAogICAvKiBzZXQgc29ja2V0IG5vbmJsb2NraW5n ICovCkBAIC0zMjUsNyArMzI1LDcgQEAgbmV0X29wZW4gKHN0cnVjdCBzZXJp YWwgKnNjYiwgY29uc3QgY2hhcgogdm9pZAogbmV0X2Nsb3NlIChzdHJ1Y3Qg c2VyaWFsICpzY2IpCiB7Ci0gIGlmIChzY2ItPmZkIDwgMCkKKyAgaWYgKHNj Yi0+ZmQgPT0gLTEpCiAgICAgcmV0dXJuOwogCiAgIGNsb3NlIChzY2ItPmZk KTsKSW5kZXg6IGdkYi9nZGJzZXJ2ZXIvZ2RicmVwbGF5LmMKPT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9zcmMvc3JjL2dkYi9nZGJz ZXJ2ZXIvZ2RicmVwbGF5LmMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMjQK ZGlmZiAtdSAtcCAtcjEuMjQgZ2RicmVwbGF5LmMKLS0tIGdkYi9nZGJzZXJ2 ZXIvZ2RicmVwbGF5LmMJMSBKYW4gMjAxMCAwNzozMTo0OSAtMDAwMAkxLjI0 CisrKyBnZGIvZ2Ric2VydmVyL2dkYnJlcGxheS5jCTMgQXByIDIwMTAgMDc6 MzA6MjQgLTAwMDAKQEAgLTIxMCw3ICsyMTAsNyBAQCByZW1vdGVfb3BlbiAo Y2hhciAqbmFtZSkKICNlbmRpZgogCiAgICAgICB0bXBfZGVzYyA9IHNvY2tl dCAoUEZfSU5FVCwgU09DS19TVFJFQU0sIDApOwotICAgICAgaWYgKHRtcF9k ZXNjIDwgMCkKKyAgICAgIGlmICh0bXBfZGVzYyA9PSAtMSkKIAlwZXJyb3Jf d2l0aF9uYW1lICgiQ2FuJ3Qgb3BlbiBzb2NrZXQiKTsKIAogICAgICAgLyog QWxsb3cgcmFwaWQgcmV1c2Ugb2YgdGhpcyBwb3J0LiAqLwpJbmRleDogZ2Ri L2dkYnNlcnZlci9yZW1vdGUtdXRpbHMuYwo9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09ClJDUyBmaWxlOiAvY3ZzL3NyYy9zcmMvZ2RiL2dkYnNlcnZlci9yZW1v dGUtdXRpbHMuYyx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS43NgpkaWZmIC11 IC1wIC1yMS43NiByZW1vdGUtdXRpbHMuYwotLS0gZ2RiL2dkYnNlcnZlci9y ZW1vdGUtdXRpbHMuYwkzIE1heSAyMDEwIDIwOjUzOjIxIC0wMDAwCTEuNzYK KysrIGdkYi9nZGJzZXJ2ZXIvcmVtb3RlLXV0aWxzLmMJNSBNYXkgMjAxMCAw NjoyODoxNSAtMDAwMApAQCAtMzA1LDcgKzMwNSw3IEBAIHJlbW90ZV9vcGVu IChjaGFyICpuYW1lKQogI2VuZGlmCiAKICAgICAgIGxpc3Rlbl9kZXNjID0g c29ja2V0IChQRl9JTkVULCBTT0NLX1NUUkVBTSwgSVBQUk9UT19UQ1ApOwot ICAgICAgaWYgKGxpc3Rlbl9kZXNjIDwgMCkKKyAgICAgIGlmIChsaXN0ZW5f ZGVzYyA9PSAtMSkKIAlwZXJyb3Jfd2l0aF9uYW1lICgiQ2FuJ3Qgb3BlbiBz b2NrZXQiKTsKIAogICAgICAgLyogQWxsb3cgcmFwaWQgcmV1c2Ugb2YgdGhp cyBwb3J0LiAqLwoKSW5kZXg6IHNpbS9hcm0vY29tbXVuaWNhdGUuYwo9PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3NyYy9zcmMvc2lt L2FybS9jb21tdW5pY2F0ZS5jLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjIK ZGlmZiAtdSAtcCAtcjEuMiBjb21tdW5pY2F0ZS5jCi0tLSBzaW0vYXJtL2Nv bW11bmljYXRlLmMJMTIgTWF5IDIwMDUgMDc6MzY6NTkgLTAwMDAJMS4yCisr KyBzaW0vYXJtL2NvbW11bmljYXRlLmMJMyBBcHIgMjAxMCAwNzozMDoyNiAt MDAwMApAQCAtODMsNyArODMsNyBAQCByZXRyeToKIAkgIHJldHVybiAtMTsK IAkgIGZwcmludGYgKHN0ZGVyciwgIldhaXRpbmcgZm9yIGNvbm5lY3Rpb24g ZnJvbSBkZWJ1Z2dlci4uLiIpOwogCSAgZGVidWdzb2NrID0gYWNjZXB0IChz b2NrZXRoYW5kbGUsICZpc2EsICZpKTsKLQkgIGlmIChkZWJ1Z3NvY2sgPCAw KQorCSAgaWYgKGRlYnVnc29jayA9PSAtMSkKIAkgICAgewkJCS8qIE5vdyB3 ZSBhcmUgaW4gc2VyaW91cyB0cm91YmxlLi4uICovCiAJICAgICAgcGVycm9y ICgiYWNjZXB0Iik7CiAJICAgICAgcmV0dXJuIC0xOwpAQCAtMTM4LDcgKzEz OCw3IEBAIHJldHJ5OgogCSAgcmV0dXJuIC0xOwogCSAgZnByaW50ZiAoc3Rk ZXJyLCAiV2FpdGluZyBmb3IgY29ubmVjdGlvbiBmcm9tIGRlYnVnZ2VyLi4u Iik7CiAJICBkZWJ1Z3NvY2sgPSBhY2NlcHQgKHNvY2tldGhhbmRsZSwgJmlz YSwgJmkpOwotCSAgaWYgKGRlYnVnc29jayA8IDApCisJICBpZiAoZGVidWdz b2NrID09IC0xKQogCSAgICB7CQkJLyogTm93IHdlIGFyZSBpbiBzZXJpb3Vz IHRyb3VibGUuLi4gKi8KIAkgICAgICBwZXJyb3IgKCJhY2NlcHQiKTsKIAkg ICAgICByZXR1cm4gLTE7CkluZGV4OiBzaW0vYXJtL21haW4uYwo9PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3NyYy9zcmMvc2ltL2Fy bS9tYWluLmMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMgpkaWZmIC11IC1w IC1yMS4yIG1haW4uYwotLS0gc2ltL2FybS9tYWluLmMJMTIgTWF5IDIwMDUg MDc6MzY6NTkgLTAwMDAJMS4yCisrKyBzaW0vYXJtL21haW4uYwkzIEFwciAy MDEwIDA3OjMwOjI2IC0wMDAwCkBAIC0xMTcsNyArMTE3LDcgQEAgbWFpbiAo aW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKIAogICAvKiBPcGVuIGEgc29ja2V0 ICovCiAgIHNvY2tldGhhbmRsZSA9IHNvY2tldCAoaHAtPmhfYWRkcnR5cGUs IFNPQ0tfU1RSRUFNLCAwKTsKLSAgaWYgKHNvY2tldGhhbmRsZSA8IDApCisg IGlmIChzb2NrZXRoYW5kbGUgPT0gLTEpCiAgICAgewogICAgICAgcGVycm9y ICgic29ja2V0Iik7CiAgICAgICByZXR1cm4gMTsKQEAgLTE0Nyw3ICsxNDcs NyBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqYXJndltdKQogICBmcHJpbnRm IChzdGRlcnIsICJXYWl0aW5nIGZvciBjb25uZWN0aW9uIGZyb20gZGVidWdn ZXIuLi4iKTsKIAogICBkZWJ1Z3NvY2sgPSBhY2NlcHQgKHNvY2tldGhhbmRs ZSwgJmlzYSwgJmkpOwotICBpZiAoZGVidWdzb2NrIDwgMCkKKyAgaWYgKGRl YnVnc29jayA9PSAtMSkKICAgICB7CiAgICAgICBwZXJyb3IgKCJhY2NlcHQi KTsKICAgICAgIHJldHVybiAxOwpJbmRleDogc2ltL2NvbW1vbi9kdi1zb2Nr c2VyLmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9z cmMvc3JjL3NpbS9jb21tb24vZHYtc29ja3Nlci5jLHYKcmV0cmlldmluZyBy ZXZpc2lvbiAxLjgKZGlmZiAtdSAtcCAtcjEuOCBkdi1zb2Nrc2VyLmMKLS0t IHNpbS9jb21tb24vZHYtc29ja3Nlci5jCTMwIE1hciAyMDEwIDIzOjA5OjQ4 IC0wMDAwCTEuOAorKysgc2ltL2NvbW1vbi9kdi1zb2Nrc2VyLmMJMyBBcHIg MjAxMCAwNzozMDoyNiAtMDAwMApAQCAtMTY2LDcgKzE2Niw3IEBAIGR2X3Nv Y2tzZXJfaW5pdCAoU0lNX0RFU0Mgc2QpCiAgICAgfQogCiAgIHNvY2tzZXJf bGlzdGVuX2ZkID0gc29ja2V0IChQRl9JTkVULCBTT0NLX1NUUkVBTSwgMCk7 Ci0gIGlmIChzb2Nrc2VyX2xpc3Rlbl9mZCA8IDApCisgIGlmIChzb2Nrc2Vy X2xpc3Rlbl9mZCA9PSAtMSkKICAgICB7CiAgICAgICBzaW1faW9fZXByaW50 ZiAoc2QsICJzb2Nrc2VyIGluaXQ6IHVuYWJsZSB0byBnZXQgc29ja2V0OiAl c1xuIiwKIAkJICAgICAgc3RyZXJyb3IgKGVycm5vKSk7CkBAIC0yNzQsNyAr Mjc0LDcgQEAgY29ubmVjdGVkX3AgKFNJTV9ERVNDIHNkKQogCiAgIGFkZHJs ZW4gPSBzaXplb2YgKHNvY2thZGRyKTsKICAgc29ja3Nlcl9mZCA9IGFjY2Vw dCAoc29ja3Nlcl9saXN0ZW5fZmQsICZzb2NrYWRkciwgJmFkZHJsZW4pOwot ICBpZiAoc29ja3Nlcl9mZCA8IDApCisgIGlmIChzb2Nrc2VyX2ZkID09IC0x KQogICAgIHJldHVybiAwOwogCiAgIC8qIFNldCBub24tYmxvY2tpbmcgaS9v LiAgKi8KSW5kZXg6IHNpbS9jcmlzL2R2LXJ2LmMKPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PQpSQ1MgZmlsZTogL2N2cy9zcmMvc3JjL3NpbS9jcmlzL2R2LXJ2 LmMsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNgpkaWZmIC11IC1wIC1yMS42 IGR2LXJ2LmMKLS0tIHNpbS9jcmlzL2R2LXJ2LmMJMSBKYW4gMjAxMCAxMDow MzoyOCAtMDAwMAkxLjYKKysrIHNpbS9jcmlzL2R2LXJ2LmMJMyBBcHIgMjAx MCAwNzozMDoyNyAtMDAwMApAQCAtNDA0LDcgKzQwNCw3IEBAIGh3X3J2X3dy aXRlIChzdHJ1Y3QgaHcgKm1lLAogCiAgIC8qIElmIHdlIGRvbid0IGhhdmUg YSB2YWxpZCBmZCBoZXJlLCBpdCdzIGJlY2F1c2Ugd2UgZ290IGFuIGVycm9y CiAgICAgIGluaXRpYWxseSwgYW5kIHdlIHN1cHByZXNzZWQgdGhhdCBlcnJv ci4gICovCi0gIGlmIChydi0+ZmQgPCAwKQorICBpZiAocnYtPmZkID09IC0x KQogICAgIGh3X2Fib3J0IChtZSwgImNvdWxkbid0IG9wZW4gYSBjb25uZWN0 aW9uIHRvICVzOiVkIGJlY2F1c2U6ICVzIiwKIAkgICAgICBydi0+aG9zdCwg cnYtPnBvcnQsIHN0cmVycm9yIChydi0+c2F2ZWRfZXJybm8pKTsKIApAQCAt NjM3LDcgKzYzNyw3IEBAIGh3X3J2X2hhbmRsZV9pbmNvbWluZyAoc3RydWN0 IGh3ICptZSwKICAgICB7CiAgICAgICBod19ydl9yZWFkIChtZSwgY2J1Ziwg Myk7CiAKLSAgICAgIGlmIChydi0+ZmQgPCAwKQorICAgICAgaWYgKHJ2LT5m ZCA9PSAtMSkKIAlyZXR1cm47CiAKICAgICAgIGxlbiA9IGNidWZbMF0gKyBj YnVmWzFdICogMjU2IC0gMzsKQEAgLTcyMyw3ICs3MjMsNyBAQCBod19ydl9w b2xsX29uY2UgKHN0cnVjdCBodyAqbWUpCiAgIGludCByZXQ7CiAgIHN0cnVj dCB0aW1ldmFsIHR2OwogCi0gIGlmIChydi0+ZmQgPCAwKQorICBpZiAocnYt PmZkID09IC0xKQogICAgIC8qIENvbm5lY3Rpb24gaGFzIGRpZWQgb3Igd2Fz IG5ldmVyIGluaXRpYXRlZC4gICovCiAgICAgcmV0dXJuOwogCkBAIC04ODcs NyArODg3LDcgQEAgaHdfcnZfaW5pdF9zb2NrZXQgKHN0cnVjdCBodyAqbWUp CiAgIHNlcnZlci5zaW5fcG9ydCA9IGh0b25zIChydi0+cG9ydCk7CiAgIHNv Y2sgPSBzb2NrZXQgKEFGX0lORVQsIFNPQ0tfU1RSRUFNLCAwKTsKIAotICBp ZiAoc29jayA8IDApCisgIGlmIChzb2NrID09IC0xKQogICAgIGh3X2Fib3J0 IChtZSwgImNhbid0IGdldCBhIHNvY2tldCBmb3IgJXM6JWQgY29ubmVjdGlv biIsCiAJICAgICAgcnYtPmhvc3QsIHJ2LT5wb3J0KTsKIApJbmRleDogc2lt L2NyaXMvcnZkdW1teS5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZp bGU6IC9jdnMvc3JjL3NyYy9zaW0vY3Jpcy9ydmR1bW15LmMsdgpyZXRyaWV2 aW5nIHJldmlzaW9uIDEuNgpkaWZmIC11IC1wIC1yMS42IHJ2ZHVtbXkuYwot LS0gc2ltL2NyaXMvcnZkdW1teS5jCTEgSmFuIDIwMTAgMTA6MDM6MjggLTAw MDAJMS42CisrKyBzaW0vY3Jpcy9ydmR1bW15LmMJMyBBcHIgMjAxMCAwNzoz MDoyNyAtMDAwMApAQCAtMTE4LDcgKzExOCw3IEBAIGludCBzZXR1cHNvY2tl dCAodm9pZCkKICAgbWVtc2V0ICgmc2FfaW4sIDAsIHNpemVvZiAoc2FfaW4p KTsKIAogICBzID0gc29ja2V0IChBRl9JTkVULCBTT0NLX1NUUkVBTSwgMCk7 Ci0gIGlmIChzIDwgMCkKKyAgaWYgKHMgPT0gLTEpCiAgICAgcmV0dXJuIC0x OwogCiAgIGlmIChzZXRzb2Nrb3B0IChzLCBTT0xfU09DS0VULCBTT19SRVVT RUFERFIsICZyZXVzZSwgc2l6ZW9mIHJldXNlKSAhPSAwKQpAQCAtNTE3LDcg KzUxNyw3IEBAIG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10pCiAgICAg ICB9CiAKICAgZmQgPSBzZXR1cHNvY2tldCAoKTsKLSAgaWYgKGZkIDwgMCkK KyAgaWYgKGZkID09IC0xKQogICAgIHsKICAgICAgIGZwcmludGYgKHN0ZGVy ciwgIiVzOiBwcm9ibGVtIHNldHRpbmcgdXAgdGhlIGNvbm5lY3Rpb246ICVz XG4iLAogCSAgICAgICBwcm9nbmFtZSwgc3RyZXJyb3IgKGVycm5vKSk7Cklu ZGV4OiBzaW0vbTMyYy9tYWluLmMKPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpS Q1MgZmlsZTogL2N2cy9zcmMvc3JjL3NpbS9tMzJjL21haW4uYyx2CnJldHJp ZXZpbmcgcmV2aXNpb24gMS45CmRpZmYgLXUgLXAgLXIxLjkgbWFpbi5jCi0t LSBzaW0vbTMyYy9tYWluLmMJMSBKYW4gMjAxMCAxMDowMzozMSAtMDAwMAkx LjkKKysrIHNpbS9tMzJjL21haW4uYwkzIEFwciAyMDEwIDA3OjMwOjI3IC0w MDAwCkBAIC05OCw3ICs5OCw3IEBAIHNldHVwX3RjcF9jb25zb2xlIChjaGFy ICpwb3J0bmFtZSkKICAgYWRkcmVzcy5zaW5fcG9ydCA9IGh0b25zIChwb3J0 KTsKIAogICBpc29ja2V0ID0gc29ja2V0IChBRl9JTkVULCBTT0NLX1NUUkVB TSwgMCk7Ci0gIGlmIChpc29ja2V0IDwgMCkKKyAgaWYgKGlzb2NrZXQgPT0g LTEpCiAgICAgewogICAgICAgcGVycm9yICgic29ja2V0Iik7CiAgICAgICBl eGl0ICgxKTsKCg== --0015174c344a40728804878225ce--