Philip Hands
1999-Nov-24 09:39 UTC
[Jason Gunthorpe <jgg@ualberta.ca>] Global RSA hosts patch
Here's a patch from Jason Gunthorpe that looks generally useful. It's actually aimed at the Debian LDAP setup, so we can have a file generated from everyone's ssh_identity data, and still only allow each person to log in as themselves. Cheers, Phil. P.S. I hope the MIME inclusion survives, if not I'll put a copy here: http://www.hands.com/~phil/debian/openssh/ --[[message/rfc822]] Date: Wed, 24 Nov 1999 00:42:00 -0700 (MST) From: Jason Gunthorpe <jgg at ualberta.ca> To: bcollins at debian.org, ssh at packages.debian.org Subject: Global RSA hosts patch Message-ID: <Pine.LNX.3.96.991124003731.2155Z-200000 at wakko.deltatee.com> MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="8323328-1744382920-943429320=:2155" This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime at docserver.cac.washington.edu for more info. --8323328-1744382920-943429320=:2155 Content-Type: TEXT/PLAIN; charset=US-ASCII Hi all, I ported my patch to openssh, could you possibly review it for inclusion in the official package + upstream? What it does is create a new configuration option 'GlobalRSAFile' that can specify a global file of RSA public keys. Each line in the file is prefixed by '<uid>:' to key the key to the proper user, it is used as part of a wider global login scheme :> Thanks, Jason --8323328-1744382920-943429320=:2155 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="openssh1.patch" Content-Transfer-Encoding: BASE64 Content-ID: <Pine.LNX.3.96.991124004200.2155a at wakko.deltatee.com> Content-Description: T25seSBpbiBvcGVuc3NoLTEuMnByZTEzK2pnZzogTWFrZWZpbGUNCk9ubHkg aW4gb3BlbnNzaC0xLjJwcmUxMytqZ2c6IGF1dGgtcGFzc3dkLm8NCk9ubHkg aW4gb3BlbnNzaC0xLjJwcmUxMytqZ2c6IGF1dGgtcmgtcnNhLm8NCk9ubHkg aW4gb3BlbnNzaC0xLjJwcmUxMytqZ2c6IGF1dGgtcmhvc3RzLm8NCmRpZmYg LXUgb3BlbnNzaC0xLjJwcmUxMy9hdXRoLXJzYS5jIG9wZW5zc2gtMS4ycHJl MTMramdnL2F1dGgtcnNhLmMNCi0tLSBvcGVuc3NoLTEuMnByZTEzL2F1dGgt cnNhLmMJVGh1IE5vdiAxOCAxNDoyNTo0OCAxOTk5DQorKysgb3BlbnNzaC0x LjJwcmUxMytqZ2cvYXV0aC1yc2EuYwlXZWQgTm92IDI0IDAwOjM5OjM4IDE5 OTkNCkBAIC0xMzUsNyArMTM1LDcgQEANCiAgICBzdWNjZXNzZnVsLiAgVGhp cyBtYXkgZXhpdCBpZiB0aGVyZSBpcyBhIHNlcmlvdXMgcHJvdG9jb2wgdmlv bGF0aW9uLiAqLw0KIA0KIGludA0KLWF1dGhfcnNhKHN0cnVjdCBwYXNzd2Qg KnB3LCBCSUdOVU0gKmNsaWVudF9uKQ0KK2F1dGhfcnNhKHN0cnVjdCBwYXNz d2QgKnB3LCBCSUdOVU0gKmNsaWVudF9uLGludCBnbG9iYWwpDQogew0KICAg ZXh0ZXJuIFNlcnZlck9wdGlvbnMgb3B0aW9uczsNCiAgIGNoYXIgbGluZVs4 MTkyXSwgZmlsZVsxMDI0XTsNCkBAIC0xNTAsOSArMTUwLDE5IEBADQogICB0 ZW1wb3JhcmlseV91c2VfdWlkKHB3LT5wd191aWQpOw0KIA0KICAgLyogVGhl IGF1dGhvcml6ZWQga2V5cy4gKi8NCi0gIHNucHJpbnRmKGZpbGUsIHNpemVv ZiBmaWxlLCAiJS41MDBzLyUuMTAwcyIsIHB3LT5wd19kaXIsDQotICAgIFNT SF9VU0VSX1BFUk1JVFRFRF9LRVlTKTsNCi0gIA0KKyAgaWYgKGdsb2JhbCA9 PSAwKQ0KKyAgICAgIHNucHJpbnRmKGZpbGUsIHNpemVvZiBmaWxlLCAiJS41 MDBzLyUuMTAwcyIsIHB3LT5wd19kaXIsDQorCSAgICAgICBTU0hfVVNFUl9Q RVJNSVRURURfS0VZUyk7DQorICBlbHNlDQorICB7ICAgIA0KKyAgICAgIGlm IChvcHRpb25zLmdsb2JhbF9yc2FfZmlsZSA9PSAwKQ0KKyAgICAgIHsNCisg ICAgICAgICByZXN0b3JlX3VpZCgpOw0KKwkgcmV0dXJuIDA7DQorICAgICAg fSAgIA0KKyAgICAgIHNucHJpbnRmKGZpbGUsIHNpemVvZiBmaWxlLCAiJS41 MDBzIixvcHRpb25zLmdsb2JhbF9yc2FfZmlsZSk7DQorICB9DQorDQogICAv KiBGYWlsIHF1aWV0bHkgaWYgZmlsZSBkb2VzIG5vdCBleGlzdCAqLw0KICAg aWYgKHN0YXQoZmlsZSwgJnN0KSA8IDApDQogICAgIHsNCkBAIC0xODgsNyAr MTk4LDcgQEANCiAgICAgICBzdGF0aWMgY29uc3QgY2hhciAqY2hlY2tbXSA9 IHsNCiAgICAgICAgICAgICAiIiwgU1NIX1VTRVJfRElSLCBOVUxMDQogICAg ICAgfTsNCi0gICAgICBmb3IgKGk9MDsgY2hlY2tbaV07IGkrKykgew0KKyAg ICAgIGZvciAoaT0wOyBjaGVja1tpXSAmJiBnbG9iYWwgPT0gMDsgaSsrKSB7 DQogICAgICAgICBzbnByaW50ZihsaW5lLCBzaXplb2YgbGluZSwgIiUuNTAw cy8lLjEwMHMiLCBwdy0+cHdfZGlyLCBjaGVja1tpXSk7DQogICAgICAgICBp ZiAoc3RhdChsaW5lLCAmc3QpIDwgMCB8fA0KICAgICAgICAgICAgIChzdC5z dF91aWQgIT0gMCAmJiBzdC5zdF91aWQgIT0gcHctPnB3X3VpZCkgfHwNCkBA IC0yMzIsNiArMjQyLDI3IEBADQogICAgICAgLyogU2tpcCBlbXB0eSBhbmQg Y29tbWVudCBsaW5lcy4gKi8NCiAgICAgICBpZiAoISpjcCB8fCAqY3AgPT0g J1xuJyB8fCAqY3AgPT0gJyMnKQ0KIAljb250aW51ZTsNCisgICAgICAgDQor ICAgICAgLyogVmVyaWZ5IHRoYXQgdGhpcyBsaW5lIGlzIGZvciB0aGUgY29y cmVjdCB1c2VyIGlmIHdlIGFyZSByZWFkaW5nIHRoZSBnbG9iYWwNCisgICAg ICAgCSBSU0Ega2V5ZmlsZSAqLw0KKyAgICAgIGlmIChnbG9iYWwgIT0gMCkN CisgICAgICB7DQorCSAvKiBNYWtlIHN1cmUgdGhhdCB0aGVyZSBpcyBlbm91 Z2ggdGV4dCB0byBldmVuIGJlIGEgdXNlciBuYW1lICovDQorCSBpZiAoc3Ry bGVuKGNwKSA8PSBzdHJsZW4ocHctPnB3X25hbWUpICsgMikNCisJICAgIGNv bnRpbnVlOw0KKwkgDQorCSAvKiBNYWtlIHN1cmUgdGhlIHVzZXIgbmFtZSBp cyB0ZXJtaW5hdGVkIHdpdGggYSA6ICovDQorCSBpZiAoY3Bbc3RybGVuKHB3 LT5wd19uYW1lKV0gIT0gJzonKQ0KKwkgICAgY29udGludWU7DQorCSANCisJ IC8qIE1ha2Ugc3VyZSB0aGF0IHRoZSB1c2VyIG5hbWUgaXMgdGhlIG9uZSB3 ZSBhcmUgbG9va2luZyBmb3IgKi8NCisJIGlmIChzdHJuY21wKGNwLHB3LT5w d19uYW1lLHN0cmxlbihwdy0+cHdfbmFtZSkpICE9IDApDQorCSAgICBjb250 aW51ZTsNCisJIA0KKwkgLyogR290IGl0LCBhZHZhbmNlIGNwLCB0aGUgcmVz dCBvZiB0aGUgc3RyaW5nICsgcm91dGluZSBhcmUganVzdCBhcyBpZiBpdA0K KwkgICAgY2FtZSBmcm9tIHRoZSB1c2VycyBhdXRob3JpemVzX2tleXMgKi8N CisJIGNwICs9IHN0cmxlbihwdy0+cHdfbmFtZSkgKyAxOw0KKyAgICAgIH0N CiANCiAgICAgICAvKiBDaGVjayBpZiB0aGVyZSBhcmUgb3B0aW9ucyBmb3Ig dGhpcyBrZXksIGFuZCBpZiBzbywgc2F2ZSB0aGVpciANCiAJIHN0YXJ0aW5n IGFkZHJlc3MgYW5kIHNraXAgdGhlIG9wdGlvbiBwYXJ0IGZvciBub3cuICBJ ZiB0aGVyZSBhcmUgbm8gDQpAQCAtMjU4LDcgKzI4OSw3IEBADQogCSAgZGVi dWcoIiUuMTAwcywgbGluZSAlbHU6IGJhZCBrZXkgc3ludGF4IiwgDQogCQlT U0hfVVNFUl9QRVJNSVRURURfS0VZUywgbGluZW51bSk7DQogCSAgcGFja2V0 X3NlbmRfZGVidWcoIiUuMTAwcywgbGluZSAlbHU6IGJhZCBrZXkgc3ludGF4 IiwgDQotCQkJICAgIFNTSF9VU0VSX1BFUk1JVFRFRF9LRVlTLCBsaW5lbnVt KTsNCisJCQkgICAgZmlsZSwgbGluZW51bSk7DQogCSAgY29udGludWU7DQog CX0NCiAgICAgICAvKiBjcCBub3cgcG9pbnRzIHRvIHRoZSBjb21tZW50IHBh cnQuICovDQpAQCAtMzQ5LDkgKzM4MCw5IEBADQogCQkgIGlmICghKm9wdGlv bnMpDQogCQkgICAgew0KIAkJICAgICAgZGVidWcoIiUuMTAwcywgbGluZSAl bHU6IG1pc3NpbmcgZW5kIHF1b3RlIiwNCi0JCQkgICAgU1NIX1VTRVJfUEVS TUlUVEVEX0tFWVMsIGxpbmVudW0pOw0KKwkJCSAgICBmaWxlLCBsaW5lbnVt KTsNCiAJCSAgICAgIHBhY2tldF9zZW5kX2RlYnVnKCIlLjEwMHMsIGxpbmUg JWx1OiBtaXNzaW5nIGVuZCBxdW90ZSIsDQotCQkJCQlTU0hfVVNFUl9QRVJN SVRURURfS0VZUywgbGluZW51bSk7DQorCQkJCQlmaWxlLCBsaW5lbnVtKTsN CiAJCSAgICAgIGNvbnRpbnVlOw0KIAkJICAgIH0NCiAJCSAgZm9yY2VkX2Nv bW1hbmRbaV0gPSAwOw0KQEAgLTM4Myw5ICs0MTQsOSBAQA0KIAkJICBpZiAo ISpvcHRpb25zKQ0KIAkJICAgIHsNCiAJCSAgICAgIGRlYnVnKCIlLjEwMHMs IGxpbmUgJWx1OiBtaXNzaW5nIGVuZCBxdW90ZSIsDQotCQkJICAgIFNTSF9V U0VSX1BFUk1JVFRFRF9LRVlTLCBsaW5lbnVtKTsNCisJCQkgICAgZmlsZSwg bGluZW51bSk7DQogCQkgICAgICBwYWNrZXRfc2VuZF9kZWJ1ZygiJS4xMDBz LCBsaW5lICVsdTogbWlzc2luZyBlbmQgcXVvdGUiLA0KLQkJCQkJU1NIX1VT RVJfUEVSTUlUVEVEX0tFWVMsIGxpbmVudW0pOw0KKwkJCQkJZmlsZSwgbGlu ZW51bSk7DQogCQkgICAgICBjb250aW51ZTsNCiAJCSAgICB9DQogCQkgIHNb aV0gPSAwOw0KQEAgLTQyMCw5ICs0NTEsOSBAQA0KIAkJICBpZiAoISpvcHRp b25zKQ0KIAkJICAgIHsNCiAJCSAgICAgIGRlYnVnKCIlLjEwMHMsIGxpbmUg JWx1OiBtaXNzaW5nIGVuZCBxdW90ZSIsDQotCQkJICAgIFNTSF9VU0VSX1BF Uk1JVFRFRF9LRVlTLCBsaW5lbnVtKTsNCisJCQkgICAgZmlsZSwgbGluZW51 bSk7DQogCQkgICAgICBwYWNrZXRfc2VuZF9kZWJ1ZygiJS4xMDBzLCBsaW5l ICVsdTogbWlzc2luZyBlbmQgcXVvdGUiLA0KLQkJCQkJU1NIX1VTRVJfUEVS TUlUVEVEX0tFWVMsIGxpbmVudW0pOw0KKwkJCQkJZmlsZSwgbGluZW51bSk7 DQogCQkgICAgICBjb250aW51ZTsNCiAJCSAgICB9DQogCQkgIHBhdHRlcm5z W2ldID0gMDsNCkBAIC00NDgsOSArNDc5LDkgQEANCiAJICAgIGJhZF9vcHRp b246DQogCSAgICAgIC8qIFVua25vd24gb3B0aW9uLiAqLw0KIAkgICAgICBs b2coIkJhZCBvcHRpb25zIGluICUuMTAwcyBmaWxlLCBsaW5lICVsdTogJS41 MHMiLA0KLQkJICBTU0hfVVNFUl9QRVJNSVRURURfS0VZUywgbGluZW51bSwg b3B0aW9ucyk7DQorCQkgIGZpbGUsIGxpbmVudW0sIG9wdGlvbnMpOw0KIAkg ICAgICBwYWNrZXRfc2VuZF9kZWJ1ZygiQmFkIG9wdGlvbnMgaW4gJS4xMDBz IGZpbGUsIGxpbmUgJWx1OiAlLjUwcyIsDQotCQkJCVNTSF9VU0VSX1BFUk1J VFRFRF9LRVlTLCBsaW5lbnVtLCBvcHRpb25zKTsNCisJCQkJZmlsZSwgbGlu ZW51bSwgb3B0aW9ucyk7DQogCSAgICAgIGF1dGhlbnRpY2F0ZWQgPSAwOw0K IAkgICAgICBicmVhazsNCiANCk9ubHkgaW4gb3BlbnNzaC0xLjJwcmUxMytq Z2c6IGF1dGgtcnNhLm8NCk9ubHkgaW4gb3BlbnNzaC0xLjJwcmUxMytqZ2c6 IGF1dGgtc2tleS5vDQpPbmx5IGluIG9wZW5zc2gtMS4ycHJlMTMramdnOiBh dXRoZmQubw0KT25seSBpbiBvcGVuc3NoLTEuMnByZTEzK2pnZzogYXV0aGZp bGUubw0KT25seSBpbiBvcGVuc3NoLTEuMnByZTEzK2pnZzogYnNkLWRhZW1v bi5vDQpPbmx5IGluIG9wZW5zc2gtMS4ycHJlMTMramdnOiBic2QtbG9naW4u bw0KT25seSBpbiBvcGVuc3NoLTEuMnByZTEzK2pnZzogYnNkLW1rdGVtcC5v DQpPbmx5IGluIG9wZW5zc2gtMS4ycHJlMTMramdnOiBic2Qtc3RybGNweS5v DQpPbmx5IGluIG9wZW5zc2gtMS4ycHJlMTMramdnOiBidWZhdXgubw0KT25s eSBpbiBvcGVuc3NoLTEuMnByZTEzK2pnZzogYnVmZmVyLm8NCk9ubHkgaW4g b3BlbnNzaC0xLjJwcmUxMytqZ2c6IGJ1aWxkLXN0YW1wDQpPbmx5IGluIG9w ZW5zc2gtMS4ycHJlMTMramdnOiBjYW5vaG9zdC5vDQpPbmx5IGluIG9wZW5z c2gtMS4ycHJlMTMramdnOiBjaGFubmVscy5vDQpPbmx5IGluIG9wZW5zc2gt MS4ycHJlMTMramdnOiBjaXBoZXIubw0KT25seSBpbiBvcGVuc3NoLTEuMnBy ZTEzK2pnZzogY2xpZW50bG9vcC5vDQpPbmx5IGluIG9wZW5zc2gtMS4ycHJl MTMramdnOiBjb21wYXQubw0KT25seSBpbiBvcGVuc3NoLTEuMnByZTEzK2pn ZzogY29tcHJlc3Mubw0KT25seSBpbiBvcGVuc3NoLTEuMnByZTEzK2pnZzog Y29uZmlnLmNhY2hlDQpPbmx5IGluIG9wZW5zc2gtMS4ycHJlMTMramdnOiBj b25maWcuaA0KT25seSBpbiBvcGVuc3NoLTEuMnByZTEzK2pnZzogY29uZmln LmxvZw0KT25seSBpbiBvcGVuc3NoLTEuMnByZTEzK2pnZzogY29uZmlnLnN0 YXR1cw0KT25seSBpbiBvcGVuc3NoLTEuMnByZTEzK2pnZzogY3JjMzIubw0K T25seSBpbiBvcGVuc3NoLTEuMnByZTEzK2pnZzogZGVhdHRhY2subw0KQ29t bW9uIHN1YmRpcmVjdG9yaWVzOiBvcGVuc3NoLTEuMnByZTEzL2RlYmlhbiBh bmQgb3BlbnNzaC0xLjJwcmUxMytqZ2cvZGViaWFuDQpPbmx5IGluIG9wZW5z c2gtMS4ycHJlMTMramdnOiBmaW5nZXJwcmludC5vDQpPbmx5IGluIG9wZW5z c2gtMS4ycHJlMTMramdnOiBoZWxwZXIubw0KT25seSBpbiBvcGVuc3NoLTEu MnByZTEzK2pnZzogaG9zdGZpbGUubw0KT25seSBpbiBvcGVuc3NoLTEuMnBy ZTEzK2pnZzogbGlic3NoLmENCk9ubHkgaW4gb3BlbnNzaC0xLjJwcmUxMytq Z2c6IGxvZy1jbGllbnQubw0KT25seSBpbiBvcGVuc3NoLTEuMnByZTEzK2pn ZzogbG9nLXNlcnZlci5vDQpPbmx5IGluIG9wZW5zc2gtMS4ycHJlMTMramdn OiBsb2cubw0KT25seSBpbiBvcGVuc3NoLTEuMnByZTEzK2pnZzogbG9naW4u bw0KT25seSBpbiBvcGVuc3NoLTEuMnByZTEzK2pnZzogbWF0Y2gubw0KT25s eSBpbiBvcGVuc3NoLTEuMnByZTEzK2pnZzogbWQ1Y3J5cHQubw0KT25seSBp biBvcGVuc3NoLTEuMnByZTEzK2pnZzogbXBhdXgubw0KT25seSBpbiBvcGVu c3NoLTEuMnByZTEzK2pnZzogbmNoYW4ubw0KT25seSBpbiBvcGVuc3NoLTEu MnByZTEzK2pnZzogcGFja2V0Lm8NCk9ubHkgaW4gb3BlbnNzaC0xLjJwcmUx MytqZ2c6IHB0eS5vDQpPbmx5IGluIG9wZW5zc2gtMS4ycHJlMTMramdnOiBy YzQubw0KT25seSBpbiBvcGVuc3NoLTEuMnByZTEzK2pnZzogcmVhZGNvbmYu bw0KT25seSBpbiBvcGVuc3NoLTEuMnByZTEzK2pnZzogcmVhZHBhc3Mubw0K T25seSBpbiBvcGVuc3NoLTEuMnByZTEzK2pnZzogcnNhLm8NCk9ubHkgaW4g b3BlbnNzaC0xLjJwcmUxMytqZ2c6IHNjcA0KT25seSBpbiBvcGVuc3NoLTEu MnByZTEzK2pnZzogc2NwLm8NCmRpZmYgLXUgb3BlbnNzaC0xLjJwcmUxMy9z ZXJ2Y29uZi5jIG9wZW5zc2gtMS4ycHJlMTMramdnL3NlcnZjb25mLmMNCi0t LSBvcGVuc3NoLTEuMnByZTEzL3NlcnZjb25mLmMJVGh1IE5vdiAxMSAyMTox OToyNyAxOTk5DQorKysgb3BlbnNzaC0xLjJwcmUxMytqZ2cvc2VydmNvbmYu YwlXZWQgTm92IDI0IDAwOjE3OjIxIDE5OTkNCkBAIC0yNiw2ICsyNiw3IEBA DQogICBvcHRpb25zLT5wb3J0ID0gLTE7DQogICBvcHRpb25zLT5saXN0ZW5f YWRkci5zX2FkZHIgPSBodG9ubChJTkFERFJfQU5ZKTsNCiAgIG9wdGlvbnMt Pmhvc3Rfa2V5X2ZpbGUgPSBOVUxMOw0KKyAgb3B0aW9ucy0+Z2xvYmFsX3Jz YV9maWxlID0gTlVMTDsNCiAgIG9wdGlvbnMtPnNlcnZlcl9rZXlfYml0cyA9 IC0xOw0KICAgb3B0aW9ucy0+bG9naW5fZ3JhY2VfdGltZSA9IC0xOw0KICAg b3B0aW9ucy0+a2V5X3JlZ2VuZXJhdGlvbl90aW1lID0gLTE7DQpAQCAtMTYx LDcgKzE2Miw3IEBADQogICBzUHJpbnRNb3RkLCBzSWdub3JlUmhvc3RzLCBz WDExRm9yd2FyZGluZywgc1gxMURpc3BsYXlPZmZzZXQsDQogICBzU3RyaWN0 TW9kZXMsIHNFbXB0eVBhc3N3ZCwgc1JhbmRvbVNlZWRGaWxlLCBzS2VlcEFs aXZlcywgc0NoZWNrTWFpbCwNCiAgIHNVc2VMb2dpbiwgc0FsbG93VXNlcnMs IHNEZW55VXNlcnMsIHNBbGxvd0dyb3Vwcywgc0RlbnlHcm91cHMsDQotICBz SWdub3JlVXNlcktub3duSG9zdHMNCisgIHNJZ25vcmVVc2VyS25vd25Ib3N0 cywgc0dsb2JhbFJTQUZpbGUNCiB9IFNlcnZlck9wQ29kZXM7DQogDQogLyog VGV4dHVhbCByZXByZXNlbnRhdGlvbiBvZiB0aGUgdG9rZW5zLiAqLw0KQEAg LTE3NCw2ICsxNzUsNyBAQA0KICAgeyAicG9ydCIsIHNQb3J0IH0sDQogICB7 ICJob3N0a2V5Iiwgc0hvc3RLZXlGaWxlIH0sDQogICB7ICJzZXJ2ZXJrZXli aXRzIiwgc1NlcnZlcktleUJpdHMgfSwNCisgIHsgImdsb2JhbHJzYWZpbGUi LCBzR2xvYmFsUlNBRmlsZSB9LA0KICAgeyAibG9naW5ncmFjZXRpbWUiLCBz TG9naW5HcmFjZVRpbWUgfSwNCiAgIHsgImtleXJlZ2VuZXJhdGlvbmludGVy dmFsIiwgc0tleVJlZ2VuZXJhdGlvblRpbWUgfSwNCiAgIHsgInBlcm1pdHJv b3Rsb2dpbiIsIHNQZXJtaXRSb290TG9naW4gfSwNCkBAIC0zNDUsNiArMzQ3 LDE5IEBADQogDQogCWNhc2Ugc0hvc3RLZXlGaWxlOg0KIAkgIGNoYXJwdHIg PSAmb3B0aW9ucy0+aG9zdF9rZXlfZmlsZTsNCisJICBjcCA9IHN0cnRvayhO VUxMLCBXSElURVNQQUNFKTsNCisJICBpZiAoIWNwKQ0KKwkgICAgew0KKwkg ICAgICBmcHJpbnRmKHN0ZGVyciwgIiVzIGxpbmUgJWQ6IG1pc3NpbmcgZmls ZSBuYW1lLlxuIiwNCisJCSAgICAgIGZpbGVuYW1lLCBsaW5lbnVtKTsNCisJ ICAgICAgZXhpdCgxKTsNCisJICAgIH0NCisJICBpZiAoKmNoYXJwdHIgPT0g TlVMTCkNCisJICAgICpjaGFycHRyID0gdGlsZGVfZXhwYW5kX2ZpbGVuYW1l KGNwLCBnZXR1aWQoKSk7DQorCSAgYnJlYWs7DQorDQorCWNhc2Ugc0dsb2Jh bFJTQUZpbGU6DQorCSAgY2hhcnB0ciA9ICZvcHRpb25zLT5nbG9iYWxfcnNh X2ZpbGU7DQogCSAgY3AgPSBzdHJ0b2soTlVMTCwgV0hJVEVTUEFDRSk7DQog CSAgaWYgKCFjcCkNCiAJICAgIHsNCmRpZmYgLXUgb3BlbnNzaC0xLjJwcmUx My9zZXJ2Y29uZi5oIG9wZW5zc2gtMS4ycHJlMTMramdnL3NlcnZjb25mLmgN Ci0tLSBvcGVuc3NoLTEuMnByZTEzL3NlcnZjb25mLmgJVGh1IE5vdiAxMSAx NzozMzowNCAxOTk5DQorKysgb3BlbnNzaC0xLjJwcmUxMytqZ2cvc2VydmNv bmYuaAlXZWQgTm92IDI0IDAwOjE3OjQ2IDE5OTkNCkBAIC0yOCw2ICsyOCw3 IEBADQogICBpbnQgcG9ydDsJCQkvKiBQb3J0IG51bWJlciB0byBsaXN0ZW4g b24uICovDQogICBzdHJ1Y3QgaW5fYWRkciBsaXN0ZW5fYWRkcjsJLyogQWRk cmVzcyBvbiB3aGljaCB0aGUgc2VydmVyIGxpc3RlbnMuICovDQogICBjaGFy ICpob3N0X2tleV9maWxlOwkJLyogRmlsZSBjb250YWluaW5nIGhvc3Qga2V5 LiAqLw0KKyAgY2hhciAqZ2xvYmFsX3JzYV9maWxlOyAgICAgICAgLyogRmls ZSBjb250YWluaW5nIGEgZ2xvYmFsIHNldCBvZiBSU0Ega2V5cyAqLw0KICAg aW50IHNlcnZlcl9rZXlfYml0czsJCS8qIFNpemUgb2YgdGhlIHNlcnZlciBr ZXkuICovDQogICBpbnQgbG9naW5fZ3JhY2VfdGltZTsJCS8qIERpc2Nvbm5l Y3QgaWYgbm8gYXV0aCBpbiB0aGlzIHRpbWUgKHNlYykuICovDQogICBpbnQg a2V5X3JlZ2VuZXJhdGlvbl90aW1lOwkvKiBTZXJ2ZXIga2V5IGxpZmV0aW1l IChzZWNvbmRzKS4gKi8NCk9ubHkgaW4gb3BlbnNzaC0xLjJwcmUxMytqZ2c6 IHNlcnZjb25mLm8NCk9ubHkgaW4gb3BlbnNzaC0xLjJwcmUxMytqZ2c6IHNl cnZlcmxvb3Aubw0KT25seSBpbiBvcGVuc3NoLTEuMnByZTEzK2pnZzogc3No DQpPbmx5IGluIG9wZW5zc2gtMS4ycHJlMTMramdnOiBzc2gtYWRkDQpPbmx5 IGluIG9wZW5zc2gtMS4ycHJlMTMramdnOiBzc2gtYWRkLm8NCk9ubHkgaW4g b3BlbnNzaC0xLjJwcmUxMytqZ2c6IHNzaC1hZ2VudA0KT25seSBpbiBvcGVu c3NoLTEuMnByZTEzK2pnZzogc3NoLWFnZW50Lm8NCk9ubHkgaW4gb3BlbnNz aC0xLjJwcmUxMytqZ2c6IHNzaC1rZXlnZW4NCk9ubHkgaW4gb3BlbnNzaC0x LjJwcmUxMytqZ2c6IHNzaC1rZXlnZW4ubw0KZGlmZiAtdSBvcGVuc3NoLTEu MnByZTEzL3NzaC5oIG9wZW5zc2gtMS4ycHJlMTMramdnL3NzaC5oDQotLS0g b3BlbnNzaC0xLjJwcmUxMy9zc2guaAlXZWQgTm92IDI0IDAwOjM2OjQxIDE5 OTkNCisrKyBvcGVuc3NoLTEuMnByZTEzK2pnZy9zc2guaAlXZWQgTm92IDI0 IDAwOjAzOjMxIDE5OTkNCkBAIC0yODYsNyArMjg2LDcgQEANCiAvKiBQZXJm b3JtcyB0aGUgUlNBIGF1dGhlbnRpY2F0aW9uIGRpYWxvZyB3aXRoIHRoZSBj bGllbnQuICBUaGlzIHJldHVybnMNCiAgICAwIGlmIHRoZSBjbGllbnQgY291 bGQgbm90IGJlIGF1dGhlbnRpY2F0ZWQsIGFuZCAxIGlmIGF1dGhlbnRpY2F0 aW9uIHdhcw0KICAgIHN1Y2Nlc3NmdWwuICBUaGlzIG1heSBleGl0IGlmIHRo ZXJlIGlzIGEgc2VyaW91cyBwcm90b2NvbCB2aW9sYXRpb24uICovDQotaW50 IGF1dGhfcnNhKHN0cnVjdCBwYXNzd2QgKnB3LCBCSUdOVU0gKmNsaWVudF9u KTsNCitpbnQgYXV0aF9yc2Eoc3RydWN0IHBhc3N3ZCAqcHcsIEJJR05VTSAq Y2xpZW50X24saW50IGdsb2JhbCk7DQogDQogLyogUGFyc2VzIGFuIFJTQSBr ZXkgKG51bWJlciBvZiBiaXRzLCBlLCBuKSBmcm9tIGEgc3RyaW5nLiAgTW92 ZXMgdGhlIHBvaW50ZXINCiAgICBvdmVyIHRoZSBrZXkuICBTa2lwcyBhbnkg d2hpdGVzcGFjZSBhdCB0aGUgYmVnaW5uaW5nIGFuZCBhdCBlbmQuICovDQpP bmx5IGluIG9wZW5zc2gtMS4ycHJlMTMramdnOiBzc2gubw0KT25seSBpbiBv cGVuc3NoLTEuMnByZTEzK2pnZzogc3NoY29ubmVjdC5vDQpPbmx5IGluIG9w ZW5zc2gtMS4ycHJlMTMramdnOiBzc2hkDQpkaWZmIC11IG9wZW5zc2gtMS4y cHJlMTMvc3NoZC5jIG9wZW5zc2gtMS4ycHJlMTMramdnL3NzaGQuYw0KLS0t IG9wZW5zc2gtMS4ycHJlMTMvc3NoZC5jCVdlZCBOb3YgMjQgMDA6MzY6NDEg MTk5OQ0KKysrIG9wZW5zc2gtMS4ycHJlMTMramdnL3NzaGQuYwlXZWQgTm92 IDI0IDAwOjA0OjMwIDE5OTkNCkBAIC0xNDIxLDcgKzE0MjEsNyBAQA0KIAlw YWNrZXRfZ2V0X2JpZ251bShuLCAmbmxlbik7DQogCXBhY2tldF9pbnRlZ3Jp dHlfY2hlY2socGxlbiwgbmxlbiwgdHlwZSk7DQogDQotCWF1dGhlbnRpY2F0 ZWQgPSBhdXRoX3JzYShwdywgbik7DQorCWF1dGhlbnRpY2F0ZWQgPSBhdXRo X3JzYShwdywgbiwwKSB8fCBhdXRoX3JzYShwdyxuLDEpOw0KIAlsb2coIlJT QSBhdXRoZW50aWNhdGlvbiAlcyBmb3IgJS4xMDBzLiIsDQogCSAgICBhdXRo ZW50aWNhdGVkID8gImFjY2VwdGVkIiA6ICJmYWlsZWQiLA0KIAkgICAgcHct PnB3X25hbWUpOw0KT25seSBpbiBvcGVuc3NoLTEuMnByZTEzK2pnZzogc3No ZC5vDQpPbmx5IGluIG9wZW5zc2gtMS4ycHJlMTMramdnOiB0aWxkZXhwYW5k Lm8NCk9ubHkgaW4gb3BlbnNzaC0xLjJwcmUxMytqZ2c6IHR0eW1vZGVzLm8N Ck9ubHkgaW4gb3BlbnNzaC0xLjJwcmUxMytqZ2c6IHVpZHN3YXAubw0KT25s eSBpbiBvcGVuc3NoLTEuMnByZTEzK2pnZzogeG1hbGxvYy5vDQo--8323328-1744382920-943429320=:2155-- --[[text/plain]]