From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Disseldorp Subject: Re: [PATCH v2] Samba RADOS service registration Date: Tue, 13 Feb 2018 20:27:27 +0100 Message-ID: <20180213202727.77175e21@suse.de> References: <20180213022540.5f9686b7@suse.de> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/x6rfrl2iYLQ=TBZ.N4z6H.j" Return-path: Received: from mx2.suse.de ([195.135.220.15]:51763 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965315AbeBMT1a (ORCPT ); Tue, 13 Feb 2018 14:27:30 -0500 In-Reply-To: <20180213022540.5f9686b7@suse.de> Sender: ceph-devel-owner@vger.kernel.org List-ID: To: Samba Technical Cc: "ceph-devel@vger.kernel.org" , Jeff Layton --MP_/x6rfrl2iYLQ=TBZ.N4z6H.j Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline Please find a new version of the patchset attached, with the following changes: - use rados instace guid instead of hostname for instance string - drop per-share metadata TODO - avoid multiple rados_shutdown() calls from child processes - add documentation for new ceph:service_user_id parameter Feedback / push appreciated. Cheers, David --MP_/x6rfrl2iYLQ=TBZ.N4z6H.j Content-Type: text/x-patch Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=add_rados_service_integration_v2.patchset RnJvbSA3YjVhNDIxN2Y0MGUwMGNmNDNiYjY4MWM4ZTY3M2FlNDQ1MWEyZDBkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQ0KRnJvbTogRGF2aWQgRGlzc2VsZG9ycCA8ZGRpc3NAc2FtYmEub3JnPg0K RGF0ZTogV2VkLCA3IEZlYiAyMDE4IDE0OjU4OjQ4ICswMTAwDQpTdWJqZWN0OiBbUEFUQ0ggMS8y XSBjZXBoOiBhZGQgcmFkb3Mgc2VydmljZSBpbnRlZ3JhdGlvbg0KDQpPbiBzdGFydHVwLCBTYW1i YSBhZHZlcnRpc2VzIGl0cyBwcmVzZW5jZSB0byB0aGUgQ2VwaCBNYW5hZ2VyIFNlcnZpY2UNCnZp YSByYWRvc19zZXJ2aWNlX3JlZ2lzdGVyKCkuIGxpYnJhZG9zIHNwYXducyBhIG51bWJlciBvZiB0 aHJlYWRzIHRvDQptYWludGFpbiB0aGUgY2x1c3RlciBjb25uZWN0aW9uIGFuZCBtYWludGFpbiBw ZXJpb2RpYyBzZXJ2aWNlDQpoZWFydGJlYXRzLg0KDQpTaWduZWQtb2ZmLWJ5OiBEYXZpZCBEaXNz ZWxkb3JwIDxkZGlzc0BzYW1iYS5vcmc+DQotLS0NCiBzb3VyY2UzL3NtYmQvcmFkb3Nfc2Vydmlj ZS5jIHwgMTQ2ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysNCiBz b3VyY2UzL3NtYmQvcmFkb3Nfc2VydmljZS5oIHwgIDMwICsrKysrKysrKw0KIHNvdXJjZTMvc21i ZC9zZXJ2ZXIuYyAgICAgICAgfCAgIDcgKysrDQogc291cmNlMy93c2NyaXB0ICAgICAgICAgICAg ICB8ICAxMCArKy0NCiBzb3VyY2UzL3dzY3JpcHRfYnVpbGQgICAgICAgIHwgIDEyICsrKy0NCiA1 IGZpbGVzIGNoYW5nZWQsIDIwMyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQ0KIGNyZWF0 ZSBtb2RlIDEwMDY0NCBzb3VyY2UzL3NtYmQvcmFkb3Nfc2VydmljZS5jDQogY3JlYXRlIG1vZGUg MTAwNjQ0IHNvdXJjZTMvc21iZC9yYWRvc19zZXJ2aWNlLmgNCg0KZGlmZiAtLWdpdCBhL3NvdXJj ZTMvc21iZC9yYWRvc19zZXJ2aWNlLmMgYi9zb3VyY2UzL3NtYmQvcmFkb3Nfc2VydmljZS5jDQpu ZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwMDAuLjBlNDdlNzU5ZWE3DQotLS0g L2Rldi9udWxsDQorKysgYi9zb3VyY2UzL3NtYmQvcmFkb3Nfc2VydmljZS5jDQpAQCAtMCwwICsx LDE0NiBAQA0KKy8qDQorICAgQ29weXJpZ2h0IChDKSBEYXZpZCBEaXNzZWxkb3JwIDIwMTgNCisN CisgICBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUg aXQgYW5kL29yIG1vZGlmeQ0KKyAgIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVy YWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQorICAgdGhlIEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3INCisgICAoYXQg eW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLg0KKw0KKyAgIFRoaXMgcHJvZ3JhbSBpcyBk aXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLA0KKyAgIGJ1dCBX SVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9m DQorICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF LiAgU2VlIHRoZQ0KKyAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFp bHMuDQorDQorICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdl bmVyYWwgUHVibGljIExpY2Vuc2UNCisgICBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5v dCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4NCisqLw0KKw0KKyNpbmNsdWRl ICJzb3VyY2UzL2luY2x1ZGUvaW5jbHVkZXMuaCINCisjaW5jbHVkZSA8cmFkb3MvbGlicmFkb3Mu aD4NCisjaW5jbHVkZSAicmFkb3Nfc2VydmljZS5oIg0KKw0KK3N0cnVjdCBjZXBoX3NlcnZpY2Vf c3RhdGUgew0KKwlwaWRfdCBzdmNfcmVnX3BpZDsNCisJcmFkb3NfdCBjbHVzdGVyOw0KK307DQor DQorc3RhdGljIGludCBjZXBoX3NlcnZpY2VfZGVzdHJveShzdHJ1Y3QgY2VwaF9zZXJ2aWNlX3N0 YXRlICpzdGF0ZSkNCit7DQorCS8qDQorCSAqIGVuc3VyZSB0aGF0IHByb2Nlc3NlcyBmb3JrZWQg YWZ0ZXIgc3Bhd25pbmcgdGhlIHNlcnZpY2UgcmVnaXN0cmF0aW9uDQorCSAqIGNvbm5lY3Rpb24g ZG9uJ3QgYWRkaXRpb25hbGx5IGF0dGVtcHQgY2xlYW51cC4NCisJICovDQorCWlmIChzdGF0ZS0+ c3ZjX3JlZ19waWQgIT0gZ2V0cGlkKCkpIHsNCisJCURCR19ERUJVRygiaWdub3Jpbmcgbm9uLXNw YXduZXIgZGVzdHJ1Y3RvclxuIik7DQorCQlyZXR1cm4gMDsNCisJfQ0KKw0KKwlEQkdfREVCVUco ImVuZGluZyBDZXBoIGNsdXN0ZXIgc2VydmljZSByZWdpc3RyYXRpb25cbiIpOw0KKwlyYWRvc19z aHV0ZG93bihzdGF0ZS0+Y2x1c3Rlcik7DQorCURCR19ERUJVRygicmFkb3Mgc2VydmljZSBjb25u ZWN0aW9uIHNodXRkb3duXG4iKTsNCisJcmV0dXJuIDA7DQorfQ0KKw0KK3N0YXRpYyBpbnQgY2Vw aF9zZXJ2aWNlX2luc3RhbmNlX2dlbihjaGFyICpidWYsIHNpemVfdCBidWZsZW4sDQorCQkJCSAg ICAgY29uc3QgY2hhciAqZGFlbW9uLA0KKwkJCQkgICAgIHVpbnQ2NF90IGluc3RhbmNlX2d1aWQp DQorew0KKwlpbnQgcmV0Ow0KKw0KKwlyZXQgPSBzbnByaW50ZihidWYsIGJ1ZmxlbiwgIiVzOjB4 JTAxNmxseCIsIGRhZW1vbiwNCisJCQkodW5zaWduZWQgbG9uZyBsb25nKWluc3RhbmNlX2d1aWQp Ow0KKwlpZiAocmV0ID49IGJ1Zmxlbikgew0KKwkJREJHX0VSUigiQ2VwaCBpbnN0YW5jZSBuYW1l IHRvbyBsb25nLCBza2lwcGluZyBzZXJ2aWNlICINCisJCQkicmVnaXN0cmF0aW9uXG4iKTsNCisJ CXJldHVybiAtRU5BTUVUT09MT05HOw0KKwl9DQorDQorCXJldHVybiAwOw0KK30NCisNCitpbnQg Y2VwaF9zZXJ2aWNlX3JlZ2lzdGVyKHN0cnVjdCB0ZXZlbnRfY29udGV4dCAqZXZfY3R4LCBjb25z dCBjaGFyICpkYWVtb24pDQorew0KKwlpbnQgcmV0Ow0KKwljb25zdCBjaGFyICp1c2VyX2lkID0g TlVMTDsNCisJY29uc3QgY2hhciAqY29uZl9maWxlID0gTlVMTDsNCisJY29uc3QgY2hhciAqY2x1 c3Rlcl9uYW1lID0gTlVMTDsNCisJdWludDY0X3QgaW5zdGFuY2VfZ3VpZDsNCisJY2hhciBpbnN0 YW5jZV9idWZbMTI4XTsNCisJc3RydWN0IGNlcGhfc2VydmljZV9zdGF0ZSAqc3RhdGUgPSB0YWxs b2MoZXZfY3R4LA0KKwkJCQkJCXN0cnVjdCBjZXBoX3NlcnZpY2Vfc3RhdGUpOw0KKw0KKwlpZiAo c3RhdGUgPT0gTlVMTCkgew0KKwkJcmV0dXJuIC1FTk9NRU07DQorCX0NCisNCisJc3RhdGUtPnN2 Y19yZWdfcGlkID0gZ2V0cGlkKCk7DQorDQorCS8qDQorCSAqIFhYWCBUaGlzIGRvZXMgbm90IHJl dXNlIHRoZSBleGlzdGluZyAoc2hhcmUgYmFzZWQpICJjZXBoOnVzZXJfaWQiDQorCSAqIHBhcmFt ZXRlciwgdG8gYWxsb3cgZm9yOg0KKwkgKiAtIHJ1bm5pbmcgU2FtYmEgd2l0aCBDZXBoIHN1cHBv cnQsIGJ1dCB3aXRob3V0IHNlcnZpY2UgcmVnaXN0cmF0aW9uLg0KKwkgKiAtIGZ1dHVyZSBtYXBw aW5nIGJldHdlZW4gU2FtYmEgYW5kIENlcGggdXNlcnMuDQorCSAqLw0KKwl1c2VyX2lkID0gbHBf cGFybV9jb25zdF9zdHJpbmcoR0xPQkFMX1NFQ1RJT05fU05VTSwgImNlcGgiLA0KKwkJCQkgICAg ICAgInNlcnZpY2VfdXNlcl9pZCIsIE5VTEwpOw0KKwlpZiAodXNlcl9pZCA9PSBOVUxMKSB7DQor CQlEQkdfREVCVUcoImJ1aWx0IHdpdGggQ2VwaCBzdXBwb3J0LCBidXQgbWlzc2luZyBjZXBoOiIN CisJCQkgICJzZXJ2aWNlX3VzZXJfaWQgY29uZmlndXJhdGlvbiAtIHNraXBwaW5nIHNlcnZpY2Ug Ig0KKwkJCSAgInJlZ2lzdHJhdGlvblxuIik7DQorCQlyZXQgPSAwOw0KKwkJZ290byBvdXRfbWVt X2ZyZWU7DQorCX0NCisNCisJLyogYSBOVUxMIGNsdXN0ZXJfbmFtZSBvciBjb25mX2ZpbGUgc2Vl cyBsaWJyYWRvcyB1c2UgdGhlIGRlZmF1bHRzICovDQorCWNsdXN0ZXJfbmFtZSA9IGxwX3Bhcm1f Y29uc3Rfc3RyaW5nKEdMT0JBTF9TRUNUSU9OX1NOVU0sICJjZXBoIiwNCisJCQkJCSAgICAiY2x1 c3Rlcl9uYW1lIiwgTlVMTCk7DQorCWNvbmZfZmlsZSA9IGxwX3Bhcm1fY29uc3Rfc3RyaW5nKEdM T0JBTF9TRUNUSU9OX1NOVU0sICJjZXBoIiwNCisJCQkJCSAiY29uZmlnX2ZpbGUiLCBOVUxMKTsN CisNCisJcmV0ID0gcmFkb3NfY3JlYXRlMigmc3RhdGUtPmNsdXN0ZXIsIGNsdXN0ZXJfbmFtZSwg dXNlcl9pZCwgMCk7DQorCWlmIChyZXQgPCAwKSB7DQorCQlEQkdfRVJSKCJmYWlsZWQgdG8gY3Jl YXRlIGNlcGggY2x1c3RlciBjb250ZXh0XG4iKTsNCisJCWdvdG8gb3V0X21lbV9mcmVlOw0KKwl9 DQorDQorCXJldCA9IHJhZG9zX2NvbmZfcmVhZF9maWxlKHN0YXRlLT5jbHVzdGVyLCBjb25mX2Zp bGUpOw0KKwlpZiAocmV0IDwgMCkgew0KKwkJREJHX0VSUigiZmFpbGVkIHRvIHBhcnNlIENlcGgg Y2x1c3RlciBjb25maWc6ICVzXG4iLA0KKwkJCXN0cmVycm9yKC1yZXQpKTsNCisJCWdvdG8gZXJy X2NsdXN0ZXJfZnJlZTsNCisJfQ0KKw0KKwlyZXQgPSByYWRvc19jb25uZWN0KHN0YXRlLT5jbHVz dGVyKTsNCisJaWYgKHJldCA8IDApIHsNCisJCURCR19FUlIoImZhaWxlZCB0byBjb25uZWN0IHRv IGNlcGggY2x1c3RlclxuIik7DQorCQlnb3RvIGVycl9jbHVzdGVyX2ZyZWU7DQorCX0NCisNCisJ aW5zdGFuY2VfZ3VpZCA9IHJhZG9zX2dldF9pbnN0YW5jZV9pZChzdGF0ZS0+Y2x1c3Rlcik7DQor DQorCXJldCA9IGNlcGhfc2VydmljZV9pbnN0YW5jZV9nZW4oaW5zdGFuY2VfYnVmLCBzaXplb2Yo aW5zdGFuY2VfYnVmKSwNCisJCQkJCWRhZW1vbiwgaW5zdGFuY2VfZ3VpZCk7DQorCWlmIChyZXQg PCAwKSB7DQorCQlnb3RvIG91dF9tZW1fZnJlZTsNCisJfQ0KKw0KKwlEQkdfREVCVUcoInJlZ2lz dGVyaW5nIGFzICVzIHdpdGggJXMgQ2VwaCBjbHVzdGVyXG4iLCBpbnN0YW5jZV9idWYsDQorCQkg IChjbHVzdGVyX25hbWUgIT0gTlVMTCA/IGNsdXN0ZXJfbmFtZSA6ICJkZWZhdWx0IikpOw0KKw0K KwlyZXQgPSByYWRvc19zZXJ2aWNlX3JlZ2lzdGVyKHN0YXRlLT5jbHVzdGVyLCAic2FtYmEiLCBp bnN0YW5jZV9idWYsICIiKTsNCisJaWYgKHJldCA8IDApIHsNCisJCURCR19FUlIoImZhaWxlZCB0 byByZWdpc3RlciBzZXJ2aWNlIHdpdGggY2VwaCBjbHVzdGVyXG4iKTsNCisJCWdvdG8gZXJyX2Ns dXN0ZXJfZnJlZTsNCisJfQ0KKw0KKwkvKiBjbG9zZSBjbHVzdGVyIGNvbm4gYW5kIGRyb3Agc2Vy dmljZSBsaXN0aW5nIG9uIHNlcnZlciBleGl0ICovDQorCXRhbGxvY19zZXRfZGVzdHJ1Y3Rvcihz dGF0ZSwgY2VwaF9zZXJ2aWNlX2Rlc3Ryb3kpOw0KKw0KKwlyZXR1cm4gMDsNCisNCitlcnJfY2x1 c3Rlcl9mcmVlOg0KKwlyYWRvc19zaHV0ZG93bihzdGF0ZS0+Y2x1c3Rlcik7DQorb3V0X21lbV9m cmVlOg0KKwl0YWxsb2NfZnJlZShzdGF0ZSk7DQorCXJldHVybiByZXQ7DQorfQ0KZGlmZiAtLWdp dCBhL3NvdXJjZTMvc21iZC9yYWRvc19zZXJ2aWNlLmggYi9zb3VyY2UzL3NtYmQvcmFkb3Nfc2Vy dmljZS5oDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwMDAuLmVmNTQ0Yjc5 Nzk4DQotLS0gL2Rldi9udWxsDQorKysgYi9zb3VyY2UzL3NtYmQvcmFkb3Nfc2VydmljZS5oDQpA QCAtMCwwICsxLDMwIEBADQorLyoNCisgICBDb3B5cmlnaHQgKEMpIERhdmlkIERpc3NlbGRvcnAg MjAxOA0KKw0KKyAgIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlz dHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5DQorICAgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH TlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkNCisgICB0aGUgRnJlZSBT b2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcg0K KyAgIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uDQorDQorICAgVGhpcyBwcm9n cmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsDQor ICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2Fy cmFudHkgb2YNCisgICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS IFBVUlBPU0UuICBTZWUgdGhlDQorICAgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1v cmUgZGV0YWlscy4NCisNCisgICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRo ZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0KKyAgIGFsb25nIHdpdGggdGhpcyBwcm9ncmFt LiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+Lg0KKyovDQorDQor I2lmbmRlZiBfUkFET1NfU0VSVklDRV9IDQorI2RlZmluZSBfUkFET1NfU0VSVklDRV9IDQorDQor aW50IGNlcGhfc2VydmljZV9yZWdpc3RlcihzdHJ1Y3QgdGV2ZW50X2NvbnRleHQgKmV2X2N0eCwg Y29uc3QgY2hhciAqZGFlbW9uKTsNCisjaWYgIWRlZmluZWQoSEFWRV9MSUJSQURPU19TRVJWSUNF UykNCisvKiBidWlsdCB3aXRob3V0IGxpYnJhZG9zIHNlcnZpY2Ugc3VwcG9ydCwgZG8gbm90aGlu ZyAqLw0KK2ludCBjZXBoX3NlcnZpY2VfcmVnaXN0ZXIoc3RydWN0IHRldmVudF9jb250ZXh0ICpl dl9jdHgsIGNvbnN0IGNoYXIgKmRhZW1vbikNCit7DQorCXJldHVybiAwOw0KK30NCisjZW5kaWYN CisNCisjZW5kaWYgLyogX1JBRE9TX1NFUlZJQ0VfSCAqLw0KZGlmZiAtLWdpdCBhL3NvdXJjZTMv c21iZC9zZXJ2ZXIuYyBiL3NvdXJjZTMvc21iZC9zZXJ2ZXIuYw0KaW5kZXggOTliYWY5ZDUxOWQu LmQ2NjI5NDgwZWFjIDEwMDY0NA0KLS0tIGEvc291cmNlMy9zbWJkL3NlcnZlci5jDQorKysgYi9z b3VyY2UzL3NtYmQvc2VydmVyLmMNCkBAIC01NCw2ICs1NCw3IEBADQogI2luY2x1ZGUgImxpYi91 dGlsL3N5c19ydy5oIg0KICNpbmNsdWRlICJjbGVhbnVwZGIuaCINCiAjaW5jbHVkZSAiZ19sb2Nr LmgiDQorI2luY2x1ZGUgInJhZG9zX3NlcnZpY2UuaCINCiANCiAjaWZkZWYgQ0xVU1RFUl9TVVBQ T1JUDQogI2luY2x1ZGUgImN0ZGJfcHJvdG9jb2wuaCINCkBAIC0xNTkzLDYgKzE1OTQsNyBAQCBl eHRlcm4gdm9pZCBidWlsZF9vcHRpb25zKGJvb2wgc2NyZWVuKTsNCiAJc3RydWN0IHNtYmRfcGFy ZW50X2NvbnRleHQgKnBhcmVudCA9IE5VTEw7DQogCVRBTExPQ19DVFggKmZyYW1lOw0KIAlOVFNU QVRVUyBzdGF0dXM7DQorCWludCByZXQ7DQogCXN0cnVjdCB0ZXZlbnRfY29udGV4dCAqZXZfY3R4 Ow0KIAlzdHJ1Y3QgbWVzc2FnaW5nX2NvbnRleHQgKm1zZ19jdHg7DQogCXN0cnVjdCBzZXJ2ZXJf aWQgc2VydmVyX2lkOw0KQEAgLTIwNTMsNiArMjA1NSwxMSBAQCBleHRlcm4gdm9pZCBidWlsZF9v cHRpb25zKGJvb2wgc2NyZWVuKTsNCiAJICogLS0gYmFkIHRoaW5ncyB3aWxsIGhhcHBlbiBpZiBz bWJkIGlzIGxhdW5jaGVkIHZpYSBpbmV0ZA0KIAkgKiAgYW5kIHdlIGZvcmsgYSBjb3B5IG9mIG91 cnNlbHZlcyBoZXJlICovDQogCWlmIChpc19kYWVtb24gJiYgIWludGVyYWN0aXZlKSB7DQorCQly ZXQgPSBjZXBoX3NlcnZpY2VfcmVnaXN0ZXIoZXZfY3R4LCAic21iZCIpOw0KKwkJaWYgKHJldCA8 IDApIHsNCisJCQlleGl0X2RhZW1vbigiU2FtYmEgZmFpbGVkIHRvIHJlZ2lzdGVyIHdpdGggQ2Vw aCAiDQorCQkJCSAgICAiY2x1c3RlciIsIC1yZXQpOw0KKwkJfQ0KIA0KIAkJaWYgKHJwY19sc2Fz ZF9kYWVtb24oKSA9PSBSUENfREFFTU9OX0ZPUkspIHsNCiAJCQlzdGFydF9sc2FzZChldl9jdHgs IG1zZ19jdHgpOw0KZGlmZiAtLWdpdCBhL3NvdXJjZTMvd3NjcmlwdCBiL3NvdXJjZTMvd3Njcmlw dA0KaW5kZXggNmQyZDk0YmFlODcuLjYwNWJkY2E2ZTAxIDEwMDY0NA0KLS0tIGEvc291cmNlMy93 c2NyaXB0DQorKysgYi9zb3VyY2UzL3dzY3JpcHQNCkBAIC0xNTQ0LDE0ICsxNTQ0LDE4IEBAIG1h aW4oKSB7DQogDQogICAgIGNvbmYuZW52WydDQ0ZMQUdTX0NFUEhGUyddID0gIi1EX0ZJTEVfT0ZG U0VUX0JJVFM9NjQiDQogICAgIGlmIE9wdGlvbnMub3B0aW9ucy5saWJjZXBoZnNfZGlyOg0KKyAg ICAgICAgY29uZi5lbnZbJ0NQUFBBVEhfUkFET1MnXSA9IE9wdGlvbnMub3B0aW9ucy5saWJjZXBo ZnNfZGlyICsgJy9pbmNsdWRlJw0KICAgICAgICAgY29uZi5lbnZbJ0NQUFBBVEhfQ0VQSEZTJ10g PSBPcHRpb25zLm9wdGlvbnMubGliY2VwaGZzX2RpciArICcvaW5jbHVkZScNCiAgICAgICAgIGNv bmYuZW52WydMSUJQQVRIX0NFUEhGUyddID0gT3B0aW9ucy5vcHRpb25zLmxpYmNlcGhmc19kaXIg KyAnL2xpYicNCiAgICAgICAgIGNvbmYuZW52WydMSUJQQVRIX0NFUEgtQ09NTU9OJ10gPSBPcHRp b25zLm9wdGlvbnMubGliY2VwaGZzX2RpciArICcvbGliL2NlcGgnDQorICAgICAgICBjb25mLmVu dlsnTElCUEFUSF9SQURPUyddID0gT3B0aW9ucy5vcHRpb25zLmxpYmNlcGhmc19kaXIgKyAnL2xp YicNCiANCiAgICAgaWYgKE9wdGlvbnMub3B0aW9ucy53aXRoX2NlcGhmcyBhbmQNCiAgICAgICAg IGNvbmYuQ0hFQ0tfSEVBREVSUygnY2VwaGZzL2xpYmNlcGhmcy5oJywgRmFsc2UsIEZhbHNlLCAn Y2VwaGZzJykgYW5kDQorICAgICAgICBjb25mLkNIRUNLX0hFQURFUlMoJ3JhZG9zL2xpYnJhZG9z LmgnLCBGYWxzZSwgRmFsc2UsICdyYWRvcycpIGFuZA0KICAgICAgICAgY29uZi5DSEVDS19MSUIo J2NlcGhmcycsIHNobGliPVRydWUpIGFuZA0KLSAgICAgICAgY29uZi5DSEVDS19MSUIoJ2NlcGgt Y29tbW9uJywgc2hsaWI9VHJ1ZSkpOg0KKyAgICAgICAgY29uZi5DSEVDS19MSUIoJ2NlcGgtY29t bW9uJywgc2hsaWI9VHJ1ZSkgYW5kDQorICAgICAgICBjb25mLkNIRUNLX0xJQigncmFkb3MnLCBz aGxpYj1UcnVlKSk6DQogICAgICAgICBpZiBPcHRpb25zLm9wdGlvbnMud2l0aF9hY2xfc3VwcG9y dDoNCiAgICAgICAgICAgICBjb25mLkRFRklORSgnSEFWRV9DRVBIJywgJzEnKQ0KICAgICAgICAg ICAgIGlmIGNvbmYuQ0hFQ0tfRlVOQ1NfSU4oJ2NlcGhfc3RhdHgnLCAnY2VwaGZzIGNlcGgtY29t bW9uJywNCkBAIC0xNTYxLDYgKzE1NjUsMTAgQEAgbWFpbigpIHsNCiAgICAgICAgICAgICBMb2dz Lndhcm4oImNlcGggc3VwcG9ydCBkaXNhYmxlZCBkdWUgdG8gLS13aXRob3V0LWFjbC1zdXBwb3J0 IikNCiAgICAgICAgICAgICBjb25mLnVuZGVmaW5lKCdIQVZFX0NFUEgnKQ0KIA0KKyAgICAgICAg aWYgY29uZi5DSEVDS19GVU5DU19JTigncmFkb3Nfc2VydmljZV9yZWdpc3RlcicsICdyYWRvcyBj ZXBoLWNvbW1vbicsDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRlcnM9J3Jh ZG9zL2xpYnJhZG9zLmgnKToNCisgICAgICAgICAgICBjb25mLkRFRklORSgnSEFWRV9MSUJSQURP U19TRVJWSUNFUycsICcxJykNCisNCiAgICAgaWYgT3B0aW9ucy5vcHRpb25zLndpdGhfZ2x1c3Rl cmZzOg0KICAgICAgICAgY29uZi5DSEVDS19DRkcocGFja2FnZT0nZ2x1c3RlcmZzLWFwaScsIGFy Z3M9JyJnbHVzdGVyZnMtYXBpID49IDQiIC0tY2ZsYWdzIC0tbGlicycsDQogICAgICAgICAgICAg ICAgICAgICAgICBtc2c9J0NoZWNraW5nIGZvciBnbHVzdGVyZnMtYXBpID49IDQnLCB1c2VsaWJf c3RvcmU9IkdGQVBJIikNCmRpZmYgLS1naXQgYS9zb3VyY2UzL3dzY3JpcHRfYnVpbGQgYi9zb3Vy Y2UzL3dzY3JpcHRfYnVpbGQNCmluZGV4IDc2YzVkNmUyMDNiLi42NGY0YjdlY2ViZCAxMDA2NDQN Ci0tLSBhL3NvdXJjZTMvd3NjcmlwdF9idWlsZA0KKysrIGIvc291cmNlMy93c2NyaXB0X2J1aWxk DQpAQCAtMTA1Miw2ICsxMDUyLDE2IEBAIGJsZC5TQU1CQTNfU1VCU1lTVEVNKCdTUE9PTFNTRCcs DQogICAgICAgICAgICAgICAgICAgICAgICAgIFJQQ19TT0NLX0hFTFBFUg0KICAgICAgICAgICAg ICAgICAgICAgICAgICAnJycpDQogDQorc21iZF9yYWRvc19kZXBzID0gJycNCitpZiBibGQuQ09O RklHX1NFVCgnSEFWRV9MSUJSQURPU19TRVJWSUNFUycpOg0KKyAgICBibGQuU0FNQkFfTElCUkFS WSgncmFkb3Nfc2VydmljZScsDQorICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZT0nc21iZC9y YWRvc19zZXJ2aWNlLmMnLA0KKyAgICAgICAgICAgICAgICAgICAgICBkZXBzPSdTTUJDT05GX1BB UkFNIHNhbWJhLWRlYnVnJywNCisgICAgICAgICAgICAgICAgICAgICAgbG9jYWxfaW5jbHVkZT1G YWxzZSwNCisgICAgICAgICAgICAgICAgICAgICAgcHVibGljX2RlcHM9J3JhZG9zIGNlcGgtY29t bW9uJywNCisgICAgICAgICAgICAgICAgICAgICAgcHJpdmF0ZV9saWJyYXJ5PVRydWUpDQorICAg IHNtYmRfcmFkb3NfZGVwcyArPSAnIHJhZG9zX3NlcnZpY2UnDQorDQogIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMgQklOQVJJRVMgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjDQog DQogYmxkLlNBTUJBM19CSU5BUlkoJ3NtYmQvc21iZCcsDQpAQCAtMTA2NCw3ICsxMDc0LDcgQEAg YmxkLlNBTUJBM19CSU5BUlkoJ3NtYmQvc21iZCcsDQogICAgICAgICAgICAgICAgICAgICAgIEZT U0QNCiAgICAgICAgICAgICAgICAgICAgICAgTURTU0QNCiAgICAgICAgICAgICAgICAgICAgICAg U1BPT0xTU0QNCi0gICAgICAgICAgICAgICAgICAgICAgJycnLA0KKyAgICAgICAgICAgICAgICAg ICAgICAnJycgKyBzbWJkX3JhZG9zX2RlcHMsDQogICAgICAgICAgICAgICAgICBpbnN0YWxsX3Bh dGg9JyR7U0JJTkRJUn0nKQ0KIA0KIA0KLS0gDQoyLjEzLjYNCg0KDQpGcm9tIDQ2MzY4MWZmNTNi NWIwZjEyYzViNmIzYmU1ZGI0ZDI3YWNlZGE4ODEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxDQpG cm9tOiBEYXZpZCBEaXNzZWxkb3JwIDxkZGlzc0BzYW1iYS5vcmc+DQpEYXRlOiBUdWUsIDEzIEZl YiAyMDE4IDIwOjE2OjQ4ICswMTAwDQpTdWJqZWN0OiBbUEFUQ0ggMi8yXSBkb2NzL3Zmc19jZXBo OiBkZXNjcmliZSBjZXBoOnNlcnZpY2VfdXNlcl9pZCBwYXJhbWV0ZXINCg0KU2lnbmVkLW9mZi1i eTogRGF2aWQgRGlzc2VsZG9ycCA8ZGRpc3NAc2FtYmEub3JnPg0KLS0tDQogZG9jcy14bWwvbWFu cGFnZXMvdmZzX2NlcGguOC54bWwgfCAxNCArKysrKysrKysrKysrKw0KIDEgZmlsZSBjaGFuZ2Vk LCAxNCBpbnNlcnRpb25zKCspDQoNCmRpZmYgLS1naXQgYS9kb2NzLXhtbC9tYW5wYWdlcy92ZnNf Y2VwaC44LnhtbCBiL2RvY3MteG1sL21hbnBhZ2VzL3Zmc19jZXBoLjgueG1sDQppbmRleCA0NTMw MzBlNTBkZS4uZTg0ZDc1YjA5NjMgMTAwNjQ0DQotLS0gYS9kb2NzLXhtbC9tYW5wYWdlcy92ZnNf Y2VwaC44LnhtbA0KKysrIGIvZG9jcy14bWwvbWFucGFnZXMvdmZzX2NlcGguOC54bWwNCkBAIC05 Nyw2ICs5NywyMCBAQA0KIAkJPC9saXN0aXRlbT4NCiAJCTwvdmFybGlzdGVudHJ5Pg0KIA0KKwkJ PHZhcmxpc3RlbnRyeT4NCisJCTx0ZXJtPmNlcGg6c2VydmljZV91c2VyX2lkID0gaWQ8L3Rlcm0+ DQorCQk8bGlzdGl0ZW0+DQorCQk8cGFyYT4NCisJCQlBbGxvd3Mgb25lIHRvIGV4cGxpY2l0bHkg c2V0IHRoZSBjbGllbnQgSUQgdXNlZCBmb3INCisJCQlyZWdpc3RyYXRpb24gb2YgdGhlIFNhbWJh IHNtYmQgZGFlbW9uIHdpdGggdGhlIENlcGgNCisJCQlNYW5hZ2VyIHNlcnZpY2UuDQorCQk8L3Bh cmE+DQorCQk8cGFyYT4NCisJCQlFeGFtcGxlOiBjZXBoOnNlcnZpY2VfdXNlcl9pZCA9IGNsaWVu dC5zZXJ2aWNlX3JlZw0KKwkJPC9wYXJhPg0KKwkJPC9saXN0aXRlbT4NCisJCTwvdmFybGlzdGVu dHJ5Pg0KKw0KIAk8L3ZhcmlhYmxlbGlzdD4NCiANCiA8L3JlZnNlY3QxPg0KLS0gDQoyLjEzLjYN Cg0K --MP_/x6rfrl2iYLQ=TBZ.N4z6H.j--