From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id D68B7138334 for ; Tue, 4 Dec 2018 20:55:23 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id AD633E0D37; Tue, 4 Dec 2018 20:55:22 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id D65CEE0D35; Tue, 4 Dec 2018 20:55:21 +0000 (UTC) Received: from [10.100.0.26] (host-37-191-231-105.lynet.no [37.191.231.105]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: k_f) by smtp.gentoo.org (Postfix) with ESMTPSA id D027D335C7B; Tue, 4 Dec 2018 20:55:17 +0000 (UTC) To: gentoo-project Cc: gentoo dev announce From: Kristian Fiskerstrand Subject: [gentoo-project] [pre-glep] Security Project Structure Openpgp: preference=signencrypt Autocrypt: addr=k_f@gentoo.org; prefer-encrypt=mutual; keydata= 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 Message-ID: <6137e99b-2995-0569-9d3d-250924fdf116@gentoo.org> Date: Tue, 4 Dec 2018 21:55:01 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.3.1 Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Project discussion list X-BeenThere: gentoo-project@lists.gentoo.org Reply-To: gentoo-project@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="OjSjFiIDuCtXgUxDXo87ucopj0Ca8yHbV" X-Archives-Salt: 0e337ab1-d6c0-484f-99fd-5b66be2228e8 X-Archives-Hash: 15678e788e6bbd4fcd49f526d870befb This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --OjSjFiIDuCtXgUxDXo87ucopj0Ca8yHbV Content-Type: multipart/mixed; boundary="vT9gs0zVRE6yBPXQIQ7rHme1KJKBkTxZH"; protected-headers="v1" From: Kristian Fiskerstrand Reply-To: k_f@gentoo.org, gentoo-project To: gentoo-project Cc: gentoo dev announce Message-ID: <6137e99b-2995-0569-9d3d-250924fdf116@gentoo.org> Subject: [pre-glep] Security Project Structure --vT9gs0zVRE6yBPXQIQ7rHme1KJKBkTxZH Content-Type: multipart/mixed; boundary="------------510F4F555CC5E41B5FCFEA99" Content-Language: en-US This is a multi-part message in MIME format. --------------510F4F555CC5E41B5FCFEA99 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable I refer to discussions from Message-ID: <20181204012932.GL16376@monkey> Attached is the current draft of a security project structure, I'll post my own comments in a separate message --=20 Kristian Fiskerstrand OpenPGP keyblock reachable at hkp://pool.sks-keyservers.net fpr:94CB AFDD 3034 5109 5618 35AA 0B7F 8B60 E3ED FAE3 --------------510F4F555CC5E41B5FCFEA99 Content-Type: text/plain; charset=UTF-8; name="security_project-structure.rst" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="security_project-structure.rst" QWJzdHJhY3QKPT09PT09PT0KClRoaXMgR0xFUCBvdXRsaW5lcyB0aGUgYWJpbGl0aWVzIGFu ZCBwdXJwb3NlIG9mIHRoZSBHZW50b28gU2VjdXJpdHkgUHJvamVjdC4KCk1vdGl2YXRpb24K PT09PT09PT09PQoKVGhlIEdlbnRvbyBTZWN1cml0eSBQcm9qZWN0IGlzIHRoZSBwdWJsaWMg bGlhaXNvbiBiZXR3ZWVuIEdlbnRvbyBvciBleHRlcm5hbCB1c2VycwphbmQgR2VudG9vIGRl dmVsb3BlcnMgaW4gYW55IHNlY3VyaXR5LXJlbGF0ZWQgZmllbGQuIFRoZSBwcm9qZWN0J3Mg bWlzc2lvbiBpcwp0byBlbnN1cmUgdGhhdCBlYWNoIGtub3duIHRocmVhdCBpbiBzb2Z0d2Fy ZSBwYWNrYWdlZCBpbiB0aGUgc3RhYmxlIGVidWlsZApyZXBvc2l0b3J5IChzdGFibGUgdHJl ZSkgaXMgZml4ZWQgaW4gYSB0aW1lbHkgbWFubmVyLCB0aHVzIGVuc3VyaW5nIHRoYXQKdXNl cnMgaW4gdGhlIHN0YWJsZSB2ZXJzaW9uIG9mIEdlbnRvbyByZWNlaXZlIHF1YWxpdHkgYW5k IHNlY3VyZSBzb2Z0d2FyZS4KCkFmdGVyIGNvbnNpZGVyYWJsZSBldmVudHMgcmVnYXJkaW5n IHNlY3VyaXR5IGluIEdlbnRvbyBMaW51eCwgbGlrZSBTUEFSQ1sjU1BBUkNfUkVNT1ZdXwph bmQgSFBQQSBbI0hQUEFfUkVNT1ZdXyByZW1vdmFsIGZyb20gdGhlICAic3VwcG9ydGVkIiBz ZWN1cml0eSBhcmNoaXRlY3R1cmVzLAppdCBoYXMgYmVjb21lIHF1aXRlIG9idmlvdXMgdGhh dCB0aGUgY3VycmVudCBwb2xpY3kgcmVnYXJkaW5nICJzdXBwb3J0ZWQiIGFuZAoibm90ICBz dXBwb3J0ZWQiIGFyY2hpdGVjdHVyZXMgaXMgbm90IGNhcGFibGUgb2YgYWRkcmVzcyB0aGUg bW9zdCBpbXBvcnRhbnQKc2VjdXJpdHkgZmFjdG9yLCB3aGljaCBpcyB0byBlbnN1cmUgdGhh dCBlbmQtdXNlcnMgYXJlIHByb3RlY3RlZCBmcm9tCm1hbGljaW91cy92dWxuZXJhYmxlIHBh Y2thZ2VzIGluIHRoZSBzdGFibGUgdHJlZS4KClRoaXMgaXMgc28gYmVjYXVzZSB0aGUgR2Vu dG9vIFNlY3VyaXR5IFByb2plY3QgZG9lcyBub3QgaGF2ZSBhIHByb3BlciBjb250cm9sCm5v ciBpcyBlbXBvd2VyZWQgdG8gZW5zdXJlIHRoYXQgcGFja2FnZXMgaW5zaWRlIHRoZSBzdGFi bGUgYnJhbmNoIG9mIEdlbnRvbwpMaW51eCBvZmZpY2lhbCBlYnVpbGQgcmVwb3NpdG9yeSBh cmUgc2VjdXJlIGFuZCBjYW4gYmUgZml4ZWQgaW4gYSB0aW1lbHkgbWFubmVyLgpFc3BlY2lh bGx5IGlmIGEgdGhyZWF0IGlzIHB1Ymxpc2hlZCBvciBkaXNjbG9zZWQgYnkgdGhlIHNlY3Vy aXR5IGdyb3VwcyBpbiB3aGljaApHZW50b28gU2VjdXJpdHkgUHJvamVjdCBoYXMgcGFydGlj aXBhdGlvbi4KClRoZSBjdXJyZW50IHBvbGljeSBvZiBoYXZpbmcgYSAic3VwcG9ydGVkIiBs aXN0IG9mIGFyY2hpdGVjdHVyZXMgZG9lcyBub3Qgd29yawpkaXJlY3RseSB0b3dhcmRzIHRo ZSBvYmplY3RpdmUgb2YgdGhlIFNlY3VyaXR5IHByb2plY3QsIGluc3RlYWQsIGl0IG9ubHkg YWxsb3dzCnRoZSBwcm9qZWN0IHRvIHJlY29nbml6ZSBzb21lIGFyY2hpdGVjdHVyZXMgYXMg Im5vdCBzdXBwb3J0ZWQiIGFuZCBkb24ndCBiZQpvYmxpZ2F0ZWQgdG8gcmVsZWFzZSBhIEdM U0EgZm9yIHRoYXQgc3BlY2lmaWMgYXJjaGl0ZWN0dXJlIHdoZW4gYW4gaXNzdWUgYXJpc2Vz LgoKClNwZWNpZmljYXRpb24KPT09PT09PT09PT09PQoKVGhlIFNlY3VyaXR5IFByb2plY3Qn cyBwdXJwb3NlIGlzIHRvIGVuc3VyZSB1c2VycyBpbiB0aGUgc3RhYmxlIGNhdGVnb3J5IG9m IEdlbnRvbwphcmUgcHJvdmlkZWQgd2l0aCBhcHBsaWNhdGlvbnMgdGhhdCB0byB0aGUgYmVz dCBvZiB0aGUga25vd2xlZGdlIG9mIHRoZSBHZW50b28KRGV2ZWxvcGVycyBhcmUgZnJlZSBv ZiB2dWxuZXJhYmlsaXRpZXMuIEluIG9yZGVyIHRvIGFjaGlldmUgdGhpcyBwdXJwb3NlLCB0 aGUKU2VjdXJpdHkgUHJvamVjdCByZXF1aXJlIGNlcnRhaW4gYWJpbGl0aWVzIGFuZCByZXNw b25zaWJpbGl0aWVzIGFzIG91dGxpbmVkIGluCnRoaXMgR0xFUCBpbiBvcmRlciB0byBlbnN1 cmUgdGhlIGJlc3QgaW50ZXJlc3RzIG9mIGFsbCB1c2Vycy4KClNlY3VyaXR5IFByb2plY3Qg TGVhZAotLS0tLS0tLS0tLS0tLS0tLS0tLS0KCiogVGhlIFNlY3VyaXR5IFByb2plY3QgaXMg cmVxdWlyZWQgdG8gaGF2ZSBhdCBsZWFzdCBvbmUgU2VjdXJpdHkgUHJvamVjdCBMZWFkLgoq IFRoZSBTZWN1cml0eSBQcm9qZWN0IExlYWQgaXMgY2hvc2VuIGF0IGxlYXN0IHllYXJseSBi eSBwcml2YXRlIG9yIHB1YmxpYyBlbGVjdGlvbgogIGFtb25nIHRoZSBtZW1iZXJzIG9mIHRo ZSBTZWN1cml0eSBQcm9qZWN0LgoqIFRoZSBTZWN1cml0eSBQcm9qZWN0IExlYWQncyB0ZXJt IGV4cGlyZXMgb25lIHllYXIgYWZ0ZXIgdGhlIHZvdGluZyBpcyBjb25jbHVkZWQuIElmCiAg dGhlIHRpbWUgZXhwaXJlcyB0aGUgY3VycmVudCBQcm9qZWN0IExlYWQgcmV0YWlucyB0aGUg cG9zaXRpb24gdW50aWwgdGhlIHNlY3VyaXR5CiAgdGVhbSBjYW4gaGF2ZSBhbm90aGVyIGVs ZWN0aW9uLiBJbiB0aGUgY2FzZSBvZiBMZWFkJ3MgZGVmaW5pdGl2ZSBhYnNlbmNlLCB0aGUg U2VjdXJpdHkKICBQcm9qZWN0IG11c3Qgc3RhcnQgdGhlIGVsZWN0aW9uIHByb2Nlc3MgaW4g YSB0aW1lbHkgbWFubmVyLgoqIFRoZSBTZWN1cml0eSBQcm9qZWN0IExlYWQgY2FuIGNob29z ZSBvbmUgbWVtYmVyIGFzIGEgRGVwdXR5IGluIGNhc2Ugb2Ygb25seSBvbmUgTGVhZC4KICBU aGUgRGVwdXR5IGhhcyBhbGwgb2YgaXRzIHBvd2VycyBkaXJlY3RseSBkZWxlZ2F0ZWQgZnJv bSB0aGUgU2VjdXJpdHkgUHJvamVjdCBMZWFkCiAgYW5kIHRodXMgdGhlIERlcHV0eSdzIGFj dGlvbnMgYW5kIGRlY2lzaW9ucyBzaG91bGQgYmUgY29uc2lkZXJlZCBlcXVhbCB0byB0aG9z ZSBvZgogIHRoZSBTZWN1cml0eSBQcm9qZWN0IExlYWQuIAoqIFRoZSBEZXB1dHkgaXMgZGly ZWN0bHkgcmVzcG9uc2libGUgdG8gdGhlIFNlY3VyaXR5IFByb2plY3QgTGVhZCBhbmQgaXRz IGFjdGlvbnMKICByZWZsZWN0cyB1cG9uIHRoZSBTZWN1cml0eSBQcm9qZWN0IExlYWQuCgpK b2luaW5nIHRoZSBQcm9qZWN0Ci0tLS0tLS0tLS0tLS0tLS0tLS0KCiogQWxsIG1lbWJlcnMg d2FudGluZyB0byBqb2luIHRoZSBQcm9qZWN0IG5lZWQgdG8gYmUgYXBwcm92ZWQgYnkgdGhl CiAgU2VjdXJpdHkgUHJvamVjdCBMZWFkIG9yIExlYWRzIChvciBpZiBhIERlcHV0eSBpcyBh cHBvaW50ZWQ7IHRoZSBEZXB1dHkpLgoqIFRoZSBhcHBsaWNhbnQgbXVzdCBkZW1vbnN0cmF0 ZSBhIHRob3JvdWdoIHVuZGVyc3RhbmRpbmcgb2YgdGhlIGR1dGllcwogIGhlIG9yIHNoZSB3 b3VsZCBsaWtlIHRvIHBlcmZvcm0uIFNwZWNpYWxseSB0aG9zZSBleHBsYWluZWQgaW4gdGhl IEdMU0EKICBDb29yZGluYXRvciBHdWlkZSBbI0dMU0FfQ09PUkRfR1VJREVdXyBhbmQgdGhl IFZ1bG5lcmFiaWxpdHkgVHJlYXRtZW50IFBvbGljeSBbI1ZVTE5fVFJFQVRfUE9MXV8uCiog VGhlIGFwcGxpY2FudCBtdXN0IGNvbXBsZXRlIHRoZSBQYWRhd2FuIFByb2Nlc3MgYXMgb3V0 bGluZWQgaW4gdGhlIFNlY3VyaXR5IFByb2plY3QKICBXaWtpIHBhZ2UuWyNQQURBV0FOX1BS T0NFU1NdXwoqIFRoZSBhcHBsaWNhbnQgbXVzdCBoYXZlIHN1Y2Nlc3NmdWxseSBjb21wbGV0 ZWQgdGhlIEdlbnRvbyBEZXZlbG9wZXIgcXVpei4KKiBCeSBhY2NlcHRpbmcgdGhlIGFwcGxp Y2FudCB0aGUgU2VjdXJpdHkgUHJvamVjdCBMZWFkIHdpbGwgYWNjZXB0IHRoZSByZXNwb25z aWJpbGl0eQogIHRvIGRpcmVjdCB0aGVtIGFzIHBhcnQgb2YgdGhlIHRlYW0gYW5kIHdpbGwg YmUgaGVsZCByZXNwb25zaWJsZSBmb3IgYW55CiAgYWN0aW9uIHRoZSBQcm9qZWN0IE1lbWJl ciB0YWtlcyBvbiBiZWhhbGYgb2YgdGhlIFNlY3VyaXR5IFByb2plY3QuCiogVGhlIFNlY3Vy aXR5IFByb2plY3QgTGVhZCBtYXkgcmVtb3ZlIGEgbWVtYmVyIGZyb20gdGhlIFNlY3VyaXR5 IFByb2plY3Qgd2hlbmV2ZXIKICByZWFzb25hYmxlLgoKUmVtb3ZhbCBmcm9tIFByb2plY3QK LS0tLS0tLS0tLS0tLS0tLS0tLS0KClRoZSBmb2xsb3dpbmcgZ3VpZGVsaW5lcyBzaG91bGQg YmUgZm9sbG93ZWQgdG8gZGV0ZXJtaW5lIHRoZSBjb250aW51aXR5IG9mIGEgcHJvamVjdApt ZW1iZXIgd2hvIGhhc24ndCBhY3RpdmVseSBwYXJ0aWNpcGF0ZWQgZm9yIGEgbG9uZyBwZXJp b2Qgb2YgdGltZSBvciBoYXMgbG9zdCB0aGUKdHJ1c3Qgb2YgdGhlIHRlYW0gbGVhZChzKSBv ciBtZW1iZXJzLgoKQW55IHByb2NlZHVyZSBhbmQgYWN0aW9uIHNob3VsZCBiZSBkaXNjdXNz ZWQgYnkgdGhlIGN1cnJlbnQgYWN0aXZlIG1lbWJlcnMgdG8gYXZvaWQKcGVyc29uYWwgb3Bp bmlvbnMgYXQgYW55IHBvaW50LiBJZiBuZWNlc3NhcnkgdGhlcmUgd2lsbCBiZSBhIHZvdGF0 aW9uIHRvIGZpbmFsbHkKZGVjaWRlIGlmIHRoZSBtZW1iZXIgd2lsbCBiZSByZW1vdmVkIG9y IG5vdCBmcm9tIHRoZSBncm91cCwgdGhlIG9ubHkgZXhjZXB0aW9uIHRvCnRoaXMgcnVsZSBp cyB3aGVuIEdlbnRvbydzIHB1YmxpYyBpbWFnZSBpcyBkYW1hZ2VkIGJ5IHRoZSBtZW1iZXIg YW5kIGFuIGltbWVkaWF0ZQphY3Rpb24gaXMgcmVxdWlyZWQsIG9ubHkgdGhlIFRlYW0gTGVh ZCBjYW4gcmVtb3ZlIGEgbWVtYmVyIHRoaXMgd2F5IGFuZCBldmVuIGluCnRoYXQgY2FzZSB0 aGUgbWVtYmVyIGNhbiBhcHBlYWwgdG8gYSByZWNvbnNpZGVyYXRpb24gYnkgdGhlIHdob2xl IFByb2plY3QuCgpJZiB0aGUgbWVtYmVyIGhhcyBub3QgcGFydGljaXBhdGVkIGluIG1vcmUg dGhhbiA2IG1vbnRocyBpbiBhIGNvbnNpc3RlbnQgbWFubmVyCmluIGFueSBvZiB0aGUgdG9v bHMgdGhhdCB0aGUgU2VjdXJpdHkgUHJvamVjdCB1c2VzIGZvciB0cmFja2luZyBwdXJwb3Nl cyAoZS5nLgpCdWd6aWxsYSwgR0xTQU1ha2VyLCBtYWlsaW5nLWxpc3RzLCAjZ2VudG9vLXNl Y3VyaXR5LCBwdWJsaWMgb3IgcHJpdmF0ZSByZXBvc2l0b3JpZXMsCm9yIGFueSByZWxhdGVk IHRvb2wpIHNob3VsZCBiZSB3YXJuZWQgYW5kIGluIGNhc2UgbmVjZXNzYXJ5LCBoaXMvaGVy IGFjY2VzcyB0bwpwcml2aWxlZ2VkIGluZm9ybWF0aW9uIHNob3VsZCBiZSByZXZva2VkLgoK SWYgYSBtZW1iZXIgaGFzIGRlbGliZXJhdGVseSBleHBvc2VkIHByaXZhdGUgaW5mb3JtYXRp b24sIHVzZWQgaGlzIGF1dGhvcml0eSBhcwphIHRlYW0gbWVtYmVyIHRvIG1pc2d1aWRlIGlu Zm9ybWF0aW9uIG9yIHB1YmxpY2x5IHN0YXRlIGluZm9ybWF0aW9uIHRoYXQgcmVxdWlyZXMK YSBjb25maXJtYXRpb24gd2l0aG91dCB0aGUgTGVhZGVycyBrbm93bGVkZ2UgYW5kL29yIGF1 dGhvcml6YXRpb24sIGhpcy9oZXIgYWNjZXNzCnRvIHByaXZpbGVnZWQgaW5mb3JtYXRpb24g bXVzdCBiZSByZXZva2VkLgoKU2VjdXJpdHkgcm9sZSBpbiBhcmNoaXRlY3R1cmUgc3RhYmls aXphdGlvbgotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgpH ZW50b28gTGludXggc3VwcG9ydHMgc2V2ZXJhbCBhcmNoaXRlY3R1cmVzIGFuZCBhcyBzdWNo LCBpdCBpcyB2aXRhbAp0byBlbnN1cmUgdGhhdCBlYWNoIG9uZSBvZiB0aGVtIGlzIHNlY3Vy ZSwgZXNwZWNpYWxseSB0aG9zZSBiZWluZyB1c2VkCmJ5IGVuZC11c2Vycy4gQmVjYXVzZSBv ZiB0aGF0LCB0aGUgU2VjdXJpdHkgVGVhbSBuZWVkcyB0byBiZSBhYmxlIHRvCnJlbW92ZSBh biBhcmNoaXRlY3R1cmUgZnJvbSB0aGUgInN0YWJsZSIgY2F0ZWdvcnkgaWYgYWxsIG9mIHRo ZSBmb2xsb3dpbmcKY3JpdGVyaWEgYXJlIG1ldDoKCiogVGhlIGFyY2hpdGVjdHVyZSBzdGFi aWxpemF0aW9uIHRlYW0gaXMgbm90IGNhcGFibGUgdG8gc3RhYmlsaXplCiAgcGFja2FnZXMg aW4gYSB0aW1lbHkgbWFubmVyLgoqIFRoZSBzdGFiaWxpemF0aW9uIG9mIHBhY2thZ2VzIHRh a2VzIGxvbmdlciB0aGFuIHVzdWFsIGJlY2F1c2Ugb2YKICBhIHNwZWNpZmljIGFyY2hpdGVj dHVyZS4KKiBUaGUgU2VjdXJpdHkgVGVhbSBoYXMgaW5mb3JtZWQgdGhlIGFyY2hpdGVjdHVy ZSB0ZWFtIHRoYXQgdGhleSBhcmUKICBkb3duZ3JhZGluZyB0aGUgbGV2ZWwgb2Ygc2VjdXJp dHkgb2YgdGhlICJzdGFibGUiIHZlcnNpb24gb2YgIEdlbnRvby4KKiBUaGUgU2VjdXJpdHkg VGVhbSBoYXMgY29uZmlybWVkIHRoZSBsYWNrIG9mIGltcHJvdmVtZW50IGFmdGVyIHNlbmRp bmcKICB0aGUgaW5mb3JtYXRpb24gdG8gdGhlIHJlc3BlY3RpdmUgYXJjaGl0ZWN0dXJlIHRl YW0uCiogVGhlIFNlY3VyaXR5IFRlYW0gaGFzIHJlcXVlc3RlZCB0aGUgcmVtb3ZhbCBvZiB0 aGUgYXJjaGl0ZWN0dXJlIHRvCiAgdGhlIENvdW5jaWwgYW5kIHByZXNlbnRlZCBhIHJlcG9y dCB3aGljaCBleHBsYWlucyB3aHkgdGhlIG5hbWVkCiAgYXJjaGl0ZWN0dXJlIG5lZWRzIHRv IGJlIHJlbW92ZWQgZnJvbSB0aGUgInN0YWJsZSIgdmVyc2lvbiBvZiBHZW50b28uCgoKU2Vj dXJpdHkgcGFja2FnZSB2ZXJzaW9uL3JldmlzaW9uIGJ1bXBzIGFuZCBwYWNrYWdlIG1hc2tz Ci0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQoqIFRoZSBTZWN1cml0eSBQcm9qZWN0IGRvZXMgbm90IHdhbnQgdG8gb3ZlcnJpZGUg dGhlIG1haW50YWluZXIncyBhdXRvbm9teSwgYnV0CiAgaWYgdGhlIG1haW50YWluZXIgaXMg bm90IHJlc3BvbnNpdmUsIHRoZSBTZWN1cml0eSBQcm9qZWN0IG1pZ2h0IGJlIHJlcXVpcmVk IHRvCiAgZml4IGEgc2VjdXJpdHkgdnVsbmVyYWJpbGl0eSBieSBtZWFucyBvZiB2ZXJzaW9u IGJ1bXAgb3IgYXBwbGljYXRpb24gb2YgYSBwYXRjaAogIGluIGEgcmV2aXNpb24gYnVtcC4K KiBJZiBhIHZ1bG5lcmFiaWxpdHkgaXMgdW5saWtlbHkgdG8gYmUgZml4ZWQgYnkgdXBzdHJl YW0gb3IgdGhlIHBhY2thZ2UncyBtYWludGFpbmVyCiAgaXQgbWlnaHQgcmVxdWlyZSBhIHBh Y2thZ2UgbWFzay4gU3VjaCBtYXNrIHNob3VsZCBuZXZlciBicmVhayB0aGUgc3RhYmxlIGRl cGVuZGVuY3kKICB0cmVlLgoqIEEgcGFja2FnZSBtYXNrIHNob3VsZCBvbmx5IGJlIGFwcGxp ZWQgaWYgdGhlIHNlY3VyaXR5IHZ1bG5lcmFiaWxpdHkgaWRlbnRpZmllZAogIHdhcnJhbnRz IGEgR0xTQSBjLmYgdGhlIFZ1bG5lcmFiaWxpdHkgVHJlYXRtZW50IFBvbGljeSAoVlRQKVsj VlVMTl9UUkVBVF9QT0xdXyBhbmQgdGhlIGVsYXBzZWQgdGltZQogIGhhcyBleGNlZWRlZCB0 aHJlZSB0aW1lcyB0aGUgdGFyZ2V0IGRlbGF5IHNwZWNpZmllZCBpbiB0aGUgVlRQLgoqIFRo ZXNlIGFjdGlvbnMsIHBlcmZvcm1lZCBvbiBiZWhhbGYgb2YgdGhlIFNlY3VyaXR5IFByb2pl Y3QsIHNob3VsZCBvbmx5IGJlIHVzZWQKICBpZiB0aGUgUHJvamVjdCBmaW5kcyBpdCBpcyBp biB0aGUgYmVzdCBpbnRlcmVzdCBvZiB1c2VycyBhbmQgZmVsbG93IGRldmVsb3BlcnMKICB0 byBoYXZlIHRoZSBpc3N1ZSBhZGRyZXNzZWQgYXMgc29vbiBhcyBwb3NzaWJsZS4gU3VjaCBh Y3Rpb24gbmVlZHMgdG8gYmUgYXBwcm92ZWQKICBieSB0aGUgU2VjdXJpdHkgUHJvamVjdCBM ZWFkIChvciBpZiBhIERlcHV0eSBpcyBhcHBvaW50ZWQ7IHRoZSBEZXB1dHkpCgpBZGRpdGlv bmFsIFNlY3VyaXR5IFByb2plY3QgYnVnemlsbGEgbm90ZXMKLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiogVGhlIFNlY3VyaXR5IFByb2plY3QgaXMgZXhl bXB0IGZyb20gdGhlIGd1aWRlbGluZSBvZiB3YWl0aW5nIDMwIGRheXMgZm9yCiAgc3RhYmls aXphdGlvbiBvZiBhIG5ldyBwYWNrYWdlIHZlcnNpb24uCiogQnVncyBpbmRpY2F0aW5nIGEg c2VjdXJpdHkgdnVsbmVyYWJpbGl0eSBjYW4gYmUgcmVhc3NpZ25lZCBhcyBhIGJ1ZyBoYW5k bGVkCiAgYnkgdGhlIEdlbnRvbyBTZWN1cml0eSBQcm9qZWN0LgoqIEJ1Z3MgaW4gdGhlIEdl bnRvbyBTZWN1cml0eSBjYXRlZ29yeSBzaGFsbCBub3QgYmUgY2xvc2VkIHdpdGhvdXQgdGhl IGNvbnNlbnQKICBvZiBhIEdlbnRvbyBTZWN1cml0eSBNZW1iZXIuCgpTdWJzY3JpcHRpb24g dG8gc2VjdXJpdHkgbGlzdHMgYW5kIGFjdGluZyBvbiBiZWhhbGYgb2YgR2VudG9vCi0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0KCkF1ZGl0aW5nIGFuZCBwdWJsaWMgcmVwb3J0aW5nIG9mIGlzc3VlcyBpbiB0aGUgbmFt ZSBvZiBHZW50b28KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQpVcHN0cmVhbSByZXBvcnRpbmcgb2YgZXhwZWN0ZWQgc2Vj dXJpdHkgYnVncyBzaG91bGQgb25seSBiZSBkb25lIHVzaW5nIHRoZQpAZ2VudG9vLm9yZyBl bWFpbCBhZGRyZXNzIGlmIGRvbmUgYnkgYSBtZW1iZXIgb2YgdGhlIFNlY3VyaXR5IEF1ZGl0 aW5nClByb2plY3Qgb3IgdGhlIGlzc3VlIGhhcyBiZWVuIHByaXZhdGVseSByZXBvcnRlZCBh bmQgYWNjZXB0ZWQgYXMgYSBzZWN1cml0eQp2dWxuZXJhYmlsaXR5IGluIGFjY29yZGFuY2Ug d2l0aCB0aGUgcHJvY2VkdXJlcyBzZXQgZm9ydGggYnkgdGhlIFNlY3VyaXR5ClByb2plY3Qg KGF0IHRoZSB0aW1lIG9mIHdyaXRpbmcgZm91bmQgaW4gdGhlIEdMU0EgQ29vcmRpbmF0b3Ig R3VpZGVbI0dMU0FfQ09PUkRfR1VJREVdX3NlY3Rpb24gMi40IEF1ZGl0aW5nKS4KCkVtYmFy Z29lZCBsaXN0cwotLS0tLS0tLS0tLS0tLS0KU2VjdXJpdHkgUHJvamVjdCBNZW1iZXJzIHNo b3VsZCBhbHdheXMga2VlcCBpbmZvcm1hdGlvbiBsZWFybmVkIHRocm91Z2ggYWNjZXNzCnRv IGVtYmFyZ29lZCBsaXN0cyBjb25maWRlbnRpYWwuIEFjY2VzcyB0byBvdGhlciBHZW50b28g RGV2ZWxvcGVycyBzaG91bGQgb25seQpiZSBncmFudGVkIG9uIGEgbmVlZCB0byBrbm93IGJh c2lzLCBhbmQgR2VudG9vIERldmVsb3BlcnMgZ2FpbmluZyBhY2Nlc3MgdG8Kc3VjaCBlbWJh cmdvZWQgbGlzdHMgYXJlIHJlcXVpcmVkIHRvIGtlZXAgdGhlIGluZm9ybWF0aW9uIGNvbmZp ZGVudGlhbC4KClJlcXVlc3RzIHRvIGdhaW4gYWNjZXNzIHRvIGVtYmFyZ29lZCBsaXN0cyBp biB0aGUgbmFtZSBvZiBHZW50b28gc2hvdWxkIG9ubHkKYmUgZG9uZSB3aXRoIHRoZSBhcHBy b3ZhbCBvZiB0aGUgU2VjdXJpdHkgUHJvamVjdCBMZWFkIChvciBpZiBhIERlcHV0eSBpcwph cHBvaW50ZWQ7IHRoZSBEZXB1dHkpLiBUaGUgU2VjdXJpdHkgUHJvamVjdCBMZWFkIGlzIHJl c3BvbnNpYmxlIGZvciBtYWludGFpbmluZyBhIGxpc3QKb2Ygd2hvIGhhcyBhY2Nlc3MgdG8g dmFyaW91cyBlbWJhcmdvZWQgbGlzdHMgYW5kIGVuc3VyZSBwcm9wZXIgdXBkYXRlcyBpbgph Y2Nlc3MgaW4gYWNjb3JkYW5jZSB3aXRoIGRldmVsb3BtZW50cyBvZiB0aGUgU2VjdXJpdHkg UHJvamVjdCBib3RoIGluIHRlcm1zCm9mIGFjdGl2ZSBwYXJ0aWNpcGF0aW9uIHRvIGVuc3Vy ZSB0aGF0IHRoZSBTZWN1cml0eSBQcm9qZWN0IGNhbiBhY3Qgb24gdGhlCmluZm9ybWF0aW9u IHByb3ZpZGVkIG9uIHRoZXNlIGxpc3RzIGluIGEgcmVzcG9uc2libGUgbWFubmVyIGFuZCBl bnN1cmluZyBhCm1lbWJlciBubyBsb25nZXIgYWN0aXZlIGluIHRoZSBTZWN1cml0eSBQcm9q ZWN0IGhhcyBhY2Nlc3MgaW4gdGhlIG5hbWUgb2YKR2VudG9vLgoKQ1ZFIE51bWJlcmluZyBB dXRob3JpdHkgKENOQSkgc3RhdHVzCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQpUaGUgU2VjdXJpdHkgUHJvamVjdCBzaGFsbCBtYWludGFpbiB0b29scyBhbmQgcHJv Y2Vzc2VzIGluIGEgbWFubmVyIHRoYXQgaXMKY29tcGF0aWJsZSB3aXRoIGJlY29taW5nIGEg Q1ZFIE51bWJlcmluZyBBdXRob3JpdHlbI0NOQV1fLgoKRG9jdW1lbnRhdGlvbiBvZiBwcm9j ZXNzZXMKLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KVGhlIFByb2plY3Qgc2hhbGwgaGF2 ZSBwcm9jZWR1cmVzIGluIHBsYWNlIHRvIGRvY3VtZW50IGl0cyBwcm9jZXNzZXMgYW5kCnJl Z3VsYXJseSB1cGRhdGUgdGhlIGRvY3VtZW50YXRpb24gaW5jbHVkaW5nIHRoZSBWdWxuZXJh YmlsaXR5IFRyZWF0bWVudCBQb2xpY2llc1sjVlVMTl9UUkVBVF9QT0xdXywKR0xTQSBDb29y ZGluYXRvciBHdWlkZVsjR0xTQV9DT09SRF9HVUlERV1fLCBQYWRhd2FuIFByb2Nlc3MgWyNQ QURBV0FOX1BST0NFU1NdXy4KClNlY3VyaXR5IHN1cHBvcnRlZCBhcmNoaXRlY3R1cmVzCi0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tClRoZSBTZWN1cml0eSBQcm9qZWN0IGlz IHJlc3BvbnNpYmxlIG9mIHdhdGNoIG92ZXIgYWxsIHRoZSBlYnVpbGRzIGluIHRoZSBHZW50 b28Kb2ZmaWNpYWwgZWJ1aWxkIHJlcG9zaXRvcnkgbWFya2VkIGFzICJzdGFibGUiLiBUaGlz IG1lYW5zIHRvIGxvb2sgYWZ0ZXIga25vd24KdnVsbmVyYWJsZSB2ZXJzaW9ucywgYW5kIGFs ZXJ0IHJlc3BlY3RpdmUgbWFpbnRhaW5lcnMgd2hlbiBhIHZ1bG5lcmFibGUgcGFja2FnZQpu ZWVkcyB0byBiZSBmaXhlZCBhbmQgc3RhYmlsaXplZC4gSW4gb3JkZXIgdG8gYWNoaWV2ZSB0 aGlzIHRhc2ssIHRoZSBTZWN1cml0eQpUZWFtIHdpbGwga2VlcCB0cmFjayBvZiBrbm93biBD VkVzLCBhdWRpdCBwYWNrYWdlcywgYW5kIGdhdGhlciBpbmZvcm1hdGlvbgpmcm9tIGV4dGVy bmFsIHNlY3VyaXR5IGdyb3VwcyB0byBlbnN1cmUgdGhhdCBldmVyeSBlYnVpbGQgbWFya2Vk IGFzICJzdGFibGUiCmlzIHNlY3VyZS4KClJhdGlvbmFsZQo9PT09PT09PT0KQnkgZGVsaW5l YXRpbmcgdGhlIHJvbGVzLCByZXNwb25zaWJpbGl0aWVzIGFuZCBjYXBhYmlsaXRpZXMgb2Yg dGhlIEdlbnRvbyBTZWN1cml0eQpQcm9qZWN0LCB3ZSBob3BlIHRvIHNlY3VyZSB0aGUgcmVw b3NpdG9yeSBvZiBHZW50b28gZWJ1aWxkcyBhcyBhIHdob2xlLiBUaGlzCmltcGxpZXMgdGhh dCB3aXRoIGEgZ29vZCBtb25pdG9yaW5nIG9mIHRoZSB2dWxuZXJhYmlsaXRpZXMgYW5kIGEg Z29vZCBjb29yZGluYXRpb24Kd2l0aCB0aGUgbWFpbnRhaW5lcnMgYW5kIGFyY2ggdGVhbXMs IGEgdXNlciBtdXN0IGhhdmUgYSBzeXN0ZW0gdGhhdCBjYW4gYmUgY2FsbGVkCiJzYWZlIiBi eSBkZWZhdWx0LCB1bmRlcnN0YW5kaW5nICJzYWZlIiBhcyBoYXZpbmcgZWFjaCBhbmQgZXZl cnkgb25lIG9mIHRoZSBwYWNrYWdlcwptYXJrZWQgYXMgInN0YWJsZSIgYXMgdGhlIG1vc3Qg c2VjdXJlIHZlcnNpb24gYXZhaWxhYmxlIG9mIHRoZW0uCgpCYWNrd2FyZHMgQ29tcGF0aWJp bGl0eQo9PT09PT09PT09PT09PT09PT09PT09PQoKTm90IGFwcGxpY2FibGUgZm9yIHRoaXMg R0xFUC4KCgpSZWZlcmVuY2VzIGFuZCBGb290bm90ZXMKPT09PT09PT09PT09PT09PT09PT09 PT09CgouLiBbI1NQQVJDX1JFTU9WXSBodHRwczovL2FyY2hpdmVzLmdlbnRvby5vcmcvZ2Vu dG9vLWFubm91bmNlL21lc3NhZ2UvMjVhZTUyNGFhMDBmZDAzNDczNDYxMTlkYTE3NDk1MWMg Ci4uIFsjSFBQQV9SRU1PVl0gaHR0cHM6Ly9hcmNoaXZlcy5nZW50b28ub3JnL2dlbnRvby1h bm5vdW5jZS9tZXNzYWdlLzE5NmU0NWNkZTIwOWQxZWQyNWJkNDJlNjc5NzM5Y2Y1Ci4uIFsj R0xTQV9DT09SRF9HVUlERV0gaHR0cHM6Ly93aWtpLmdlbnRvby5vcmcvd2lraS9Qcm9qZWN0 OlNlY3VyaXR5L0dMU0FfQ29vcmRpbmF0b3JfR3VpZGUKLi4gWyNWVUxOX1RSRUFUX1BPTF0g aHR0cHM6Ly93d3cuZ2VudG9vLm9yZy9zdXBwb3J0L3NlY3VyaXR5L3Z1bG5lcmFiaWxpdHkt dHJlYXRtZW50LXBvbGljeS5odG1sCi4uIFsjUEFEQVdBTl9QUk9DRVNTXSBodHRwczovL3dp a2kuZ2VudG9vLm9yZy93aWtpL1Byb2plY3Q6U2VjdXJpdHkvUGFkYXdhbl9Qcm9jZXNzCi4u IFsjQ05BXSBodHRwczovL2N2ZS5taXRyZS5vcmcvY3ZlL2NuYS5odG1sCgoKQ29weXJpZ2h0 Cj09PT09PT09PQoKVGhpcyB3b3JrIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBDcmVhdGl2ZSBD b21tb25zIEF0dHJpYnV0aW9uLVNoYXJlQWxpa2UgMy4wClVucG9ydGVkIExpY2Vuc2UuICBU byB2aWV3IGEgY29weSBvZiB0aGlzIGxpY2Vuc2UsIHZpc2l0Cmh0dHA6Ly9jcmVhdGl2ZWNv bW1vbnMub3JnL2xpY2Vuc2VzL2J5LXNhLzMuMC8uCgo= --------------510F4F555CC5E41B5FCFEA99-- --vT9gs0zVRE6yBPXQIQ7rHme1KJKBkTxZH-- --OjSjFiIDuCtXgUxDXo87ucopj0Ca8yHbV Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCgAdFiEEtOrRIMf4mkrqRycHJQt6/tY3nYUFAlwG6aYACgkQJQt6/tY3 nYUItwf+LbQsVZE6hnfp/QEpnG2sWMq0CKc9VkOcY0H3VMpRh01blaMwDpVkffyp 1axN9BAze/8OO2dhY2f1jgbN8XlhH9IHXa39tbFsG8NBaUuZcPOfy6QbeL9vIQRy DpqJEu824HozML1M7yf7XlE5TMl/GBAxoYhbbADlM2re2Tyk0WqNbGPnVimZbKv6 FTjDOrmHEoMEAVUuFETFdNu95KjSyWc/hK8WZKg6hkK89+Mac6TLsXkPlPgiVoTv Jc/EvzhLf9U8yPCZ3VyP73lGN35MCJb28+3dS5CED77VeyBtRnqbXS8Iz4WsQM2y VscGekArC6FCm4gN49jNkb56/CfUWw== =inhX -----END PGP SIGNATURE----- --OjSjFiIDuCtXgUxDXo87ucopj0Ca8yHbV--