From mboxrd@z Thu Jan 1 00:00:00 1970 From: Rusty Russell Subject: Re: [PATCH] altstack: New module Date: Wed, 27 Jan 2016 15:21:14 +1030 Message-ID: <87io2ftykd.fsf@rustcorp.com.au> References: <20160126221843.GA8501@ip-172-31-61-248.ec2.internal> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from ozlabs.org (ozlabs.org [103.22.144.67]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 86B2B1A0174 for ; Wed, 27 Jan 2016 16:04:38 +1100 (AEDT) In-Reply-To: <20160126221843.GA8501@ip-172-31-61-248.ec2.internal> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: ccan-bounces+gclcc-ccan=m.gmane.org@lists.ozlabs.org Sender: "ccan" To: Dan Good , ccan@lists.ozlabs.org List-Id: ccan@lists.ozlabs.org RGFuIEdvb2QgPGRhbkBkYW5jYW5jb2RlLmNvbT4gd3JpdGVzOgo+IGFsdHN0YWNrIC0gcnVuIGEg ZnVuY3Rpb24gd2l0aCBhIGRlZGljYXRlZCBzdGFjaywgYW5kIHRoZW4gcmVsZWFzZSB0aGUgbWVt b3J5Cj4KPiBTaWduZWQtb2ZmLWJ5OiBEYW4gR29vZCA8ZGFuQGRhbmNhbmNvZGUuY29tPgoKSG1t LCBmYWlscyBoZXJlOgoJTGludXggcnVzdHktTGVtdXIgNC4yLjAtMjMtZ2VuZXJpYyAjMjgtVWJ1 bnR1IFNNUCBTdW4gRGVjIDI3IDE3OjQ3OjMxIFVUQyAyMDE1IHg4Nl82NCB4ODZfNjQgeDg2XzY0 IEdOVS9MaW51eAoKcnVzdHlAcnVzdHktTGVtdXI6fi9kZXZlbC9jdnMvY2Nhbi9jY2FuL2FsdHN0 YWNrIChtYXN0ZXIpJCBjY2FubGludCAtdgpNb2R1bGUncyBydW4gYW5kIGFwaSB0ZXN0cyBwYXNz ICh0ZXN0c19wYXNzKTogRkFJTAovaG9tZS9ydXN0eS9kZXZlbC9jdnMvY2Nhbi9jY2FuL2FsdHN0 YWNrL3Rlc3QvcnVuLmM6MS4uMTYKb2sgMSAtIChmYWlsID0gZ2V0cmxpbWl0XykgJiYgKGFsdHN0 YWNrKDgqKCgxMDI0VUwpKigxMDI0VUwpKSwgd3JhcCwgMCwgMCkgPT0gLTEpICYmIGVycm5vID09 ICgoOTAwKyhnZXRybGltaXRfKSkpICYmIGNhbGwxID09ICgwKSAmJiBjYWxsMiA9PSAoMCkKb2sg MiAtIChmYWlsID0gc2V0cmxpbWl0XykgJiYgKGFsdHN0YWNrKDgqKCgxMDI0VUwpKigxMDI0VUwp KSwgd3JhcCwgMCwgMCkgPT0gLTEpICYmIGVycm5vID09ICgoOTAwKyhzZXRybGltaXRfKSkpICYm IGNhbGwxID09IChnZXRybGltaXRfKSAmJiBjYWxsMiA9PSAoMCkKb2sgMyAtIChmYWlsID0gbW1h cF8pICYmIChhbHRzdGFjayg4KigoMTAyNFVMKSooMTAyNFVMKSksIHdyYXAsIDAsIDApID09IC0x KSAmJiBlcnJubyA9PSAoKDkwMCsobW1hcF8pKSkgJiYgY2FsbDEgPT0gKGdldHJsaW1pdF98c2V0 cmxpbWl0XykgJiYgY2FsbDIgPT0gKHNldHJsaW1pdF8pCm9rIDQgLSAoZmFpbCA9IHNpZ2FsdHN0 YWNrXykgJiYgKGFsdHN0YWNrKDgqKCgxMDI0VUwpKigxMDI0VUwpKSwgd3JhcCwgMCwgMCkgPT0g LTEpICYmIGVycm5vID09ICgoOTAwKyhzaWdhbHRzdGFja18pKSkgJiYgY2FsbDEgPT0gKGdldHJs aW1pdF98c2V0cmxpbWl0X3xtbWFwXykgJiYgY2FsbDIgPT0gKHNldHJsaW1pdF98bXVubWFwXykK b2sgNSAtIChmYWlsID0gc2lnYWN0aW9uXykgJiYgKGFsdHN0YWNrKDgqKCgxMDI0VUwpKigxMDI0 VUwpKSwgd3JhcCwgMCwgMCkgPT0gLTEpICYmIGVycm5vID09ICgoOTAwKyhzaWdhY3Rpb25fKSkp ICYmIGNhbGwxID09IChnZXRybGltaXRffHNldHJsaW1pdF98bW1hcF98c2lnYWx0c3RhY2tfKSAm JiBjYWxsMiA9PSAoc2V0cmxpbWl0X3xtdW5tYXBffHNpZ2FsdHN0YWNrXykKb2sgNiAtIChmYWls ID0gbXVubWFwXykgJiYgKGFsdHN0YWNrKDgqKCgxMDI0VUwpKigxMDI0VUwpKSwgd3JhcCwgMCwg MCkgPT0gMSkgJiYgZXJybm8gPT0gKCg5MDArKG11bm1hcF8pKSkgJiYgY2FsbDEgPT0gKGdldHJs aW1pdF98c2V0cmxpbWl0X3xtbWFwX3xzaWdhbHRzdGFja198c2lnYWN0aW9uXykgJiYgY2FsbDIg PT0gKHNldHJsaW1pdF98c2lnYWx0c3RhY2tffHNpZ2FjdGlvbl8pCm5vdCBvayA3IC0gKGFsdHN0 YWNrKDEqKCgxMDI0VUwpKigxMDI0VUwpKSwgd3JhcCwgKHZvaWQgKikgMTAwMDAwMCwgMCkgPT0g LTEpICYmIGVycm5vID09ICg3NSkgJiYgY2FsbDEgPT0gKGdldHJsaW1pdF98c2V0cmxpbWl0X3xt bWFwX3xzaWdhbHRzdGFja198c2lnYWN0aW9uXykgJiYgY2FsbDIgPT0gKHNldHJsaW1pdF98bXVu bWFwX3xzaWdhbHRzdGFja198c2lnYWN0aW9uXykKIyAgICAgRmFpbGVkIHRlc3QgKC9ob21lL3J1 c3R5L2RldmVsL2N2cy9jY2FuL2NjYW4vYWx0c3RhY2svdGVzdC9ydW4uYzptYWluKCkgYXQgbGlu ZSA5NCkKbm90IG9rIDggLSAoYWx0c3RhY2soMSooKDEwMjRVTCkqKDEwMjRVTCkpLCB3cmFwLCAo dm9pZCAqKSAxMDAwMDAwLCAwKSA9PSAtMSkgJiYgZXJybm8gPT0gKDc1KSAmJiBjYWxsMSA9PSAo Z2V0cmxpbWl0X3xzZXRybGltaXRffG1tYXBffHNpZ2FsdHN0YWNrX3xzaWdhY3Rpb25fKSAmJiBj YWxsMiA9PSAoc2V0cmxpbWl0X3xtdW5tYXBffHNpZ2FsdHN0YWNrX3xzaWdhY3Rpb25fKQojICAg ICBGYWlsZWQgdGVzdCAoL2hvbWUvcnVzdHkvZGV2ZWwvY3ZzL2NjYW4vY2Nhbi9hbHRzdGFjay90 ZXN0L3J1bi5jOm1haW4oKSBhdCBsaW5lIDk5KQpub3Qgb2sgOSAtIChmYWlsID0gbXVubWFwXykg JiYgKGFsdHN0YWNrKDEqKCgxMDI0VUwpKigxMDI0VUwpKSwgd3JhcCwgKHZvaWQgKikgMTAwMDAw MCwgMCkgPT0gLTEpICYmIGVycm5vID09ICg3NSkgJiYgY2FsbDEgPT0gKGdldHJsaW1pdF98c2V0 cmxpbWl0X3xtbWFwX3xzaWdhbHRzdGFja198c2lnYWN0aW9uXykgJiYgY2FsbDIgPT0gKHNldHJs aW1pdF98c2lnYWx0c3RhY2tffHNpZ2FjdGlvbl8pCiMgICAgIEZhaWxlZCB0ZXN0ICgvaG9tZS9y dXN0eS9kZXZlbC9jdnMvY2Nhbi9jY2FuL2FsdHN0YWNrL3Rlc3QvcnVuLmM6bWFpbigpIGF0IGxp bmUgMTA0KQpub3Qgb2sgMTAgLSB1c2VkID4gMSpNaUItMSpLaUIgJiYgdXNlZCA8IDEqTWlCCiMg ICAgIEZhaWxlZCB0ZXN0ICgvaG9tZS9ydXN0eS9kZXZlbC9jdnMvY2Nhbi9jY2FuL2FsdHN0YWNr L3Rlc3QvcnVuLmM6bWFpbigpIGF0IGxpbmUgMTA4KQpub3Qgb2sgMTEgLSBzdHJjbXAoYWx0c3Rh Y2tfZ2V0ZXJyKCksIGVzdHIpID09IDAKIyAgICAgRmFpbGVkIHRlc3QgKC9ob21lL3J1c3R5L2Rl dmVsL2N2cy9jY2FuL2NjYW4vYWx0c3RhY2svdGVzdC9ydW4uYzptYWluKCkgYXQgbGluZSAxMTYp Cm5vdCBvayAxMiAtIHN0cmNtcChidWYsIGVzdHIgIlxuIikgPT0gMAojICAgICBGYWlsZWQgdGVz dCAoL2hvbWUvcnVzdHkvZGV2ZWwvY3ZzL2NjYW4vY2Nhbi9hbHRzdGFjay90ZXN0L3J1bi5jOm1h aW4oKSBhdCBsaW5lIDEyNCkKbm90IG9rIDEzIC0gKGFsdHN0YWNrKDgqKCgxMDI0VUwpKigxMDI0 VUwpKSwgd3JhcCwgKHZvaWQgKikgMTAwMDAwMCwgMCkgPT0gLTEpICYmIGVycm5vID09ICg3NSkg JiYgY2FsbDEgPT0gKGdldHJsaW1pdF98c2V0cmxpbWl0X3xtbWFwX3xzaWdhbHRzdGFja198c2ln YWN0aW9uXykgJiYgY2FsbDIgPT0gKHNldHJsaW1pdF98bXVubWFwX3xzaWdhbHRzdGFja198c2ln YWN0aW9uXykKIyAgICAgRmFpbGVkIHRlc3QgKC9ob21lL3J1c3R5L2RldmVsL2N2cy9jY2FuL2Nj YW4vYWx0c3RhY2svdGVzdC9ydW4uYzptYWluKCkgYXQgbGluZSAxMjkpCm9rIDE0IC0gdXNlZCA+ IDgqTWlCLTgqS2lCICYmIHVzZWQgPCA4Kk1pQgpvayAxNSAtIChhbHRzdGFjayg4KigoMTAyNFVM KSooMTAyNFVMKSksIHdyYXAsICh2b2lkICopIDEwMDAwMCwgMCkgPT0gMCkgJiYgZXJybm8gPT0g KDApICYmIGNhbGwxID09IChnZXRybGltaXRffHNldHJsaW1pdF98bW1hcF98c2lnYWx0c3RhY2tf fHNpZ2FjdGlvbl98bXVubWFwXykgJiYgY2FsbDIgPT0gKHNldHJsaW1pdF98bXVubWFwX3xzaWdh bHRzdGFja198c2lnYWN0aW9uXykKb2sgMTYgLSB1c2VkID09IDMyCiMgTG9va3MgbGlrZSB5b3Ug ZmFpbGVkIDcgdGVzdHMgb2YgMTYuCgpTaG91bGQgSSBydW4gdGhlIGZpcnN0IGZhaWxpbmcgdGVz dCB1bmRlciB0aGUgZGVidWdnZXI/IHkgICAgCkdOVSBnZGIgKFVidW50dSA3LjEwLTF1YnVudHUy KSA3LjEwCkNvcHlyaWdodCAoQykgMjAxNSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4K TGljZW5zZSBHUEx2Mys6IEdOVSBHUEwgdmVyc2lvbiAzIG9yIGxhdGVyIDxodHRwOi8vZ251Lm9y Zy9saWNlbnNlcy9ncGwuaHRtbD4KVGhpcyBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgYXJlIGZyZWUg dG8gY2hhbmdlIGFuZCByZWRpc3RyaWJ1dGUgaXQuClRoZXJlIGlzIE5PIFdBUlJBTlRZLCB0byB0 aGUgZXh0ZW50IHBlcm1pdHRlZCBieSBsYXcuICBUeXBlICJzaG93IGNvcHlpbmciCmFuZCAic2hv dyB3YXJyYW50eSIgZm9yIGRldGFpbHMuClRoaXMgR0RCIHdhcyBjb25maWd1cmVkIGFzICJ4ODZf NjQtbGludXgtZ251Ii4KVHlwZSAic2hvdyBjb25maWd1cmF0aW9uIiBmb3IgY29uZmlndXJhdGlv biBkZXRhaWxzLgpGb3IgYnVnIHJlcG9ydGluZyBpbnN0cnVjdGlvbnMsIHBsZWFzZSBzZWU6Cjxo dHRwOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvZ2RiL2J1Z3MvPi4KRmluZCB0aGUgR0RCIG1hbnVh bCBhbmQgb3RoZXIgZG9jdW1lbnRhdGlvbiByZXNvdXJjZXMgb25saW5lIGF0Ogo8aHR0cDovL3d3 dy5nbnUub3JnL3NvZnR3YXJlL2dkYi9kb2N1bWVudGF0aW9uLz4uCkZvciBoZWxwLCB0eXBlICJo ZWxwIi4KVHlwZSAiYXByb3BvcyB3b3JkIiB0byBzZWFyY2ggZm9yIGNvbW1hbmRzIHJlbGF0ZWQg dG8gIndvcmQiLi4uClJlYWRpbmcgc3ltYm9scyBmcm9tIC90bXAvY2NhbmxpbnQtMTI4NTkuMTgw NDI4OTM4My9ydW4uLi5kb25lLgpCcmVha3BvaW50IDEgYXQgMHg0MDMxNDg6IGZpbGUgL2hvbWUv cnVzdHkvZGV2ZWwvY3ZzL2NjYW4vY2Nhbi90YXAvdGFwLmMsIGxpbmUgMTM5LgpTdGFydGluZyBw cm9ncmFtOiAvdG1wL2NjYW5saW50LTEyODU5LjE4MDQyODkzODMvcnVuIAoxLi4xNgpvayAxIC0g KGZhaWwgPSBnZXRybGltaXRfKSAmJiAoYWx0c3RhY2soOCooKDEwMjRVTCkqKDEwMjRVTCkpLCB3 cmFwLCAwLCAwKSA9PSAtMSkgJiYgZXJybm8gPT0gKCg5MDArKGdldHJsaW1pdF8pKSkgJiYgY2Fs bDEgPT0gKDApICYmIGNhbGwyID09ICgwKQpvayAyIC0gKGZhaWwgPSBzZXRybGltaXRfKSAmJiAo YWx0c3RhY2soOCooKDEwMjRVTCkqKDEwMjRVTCkpLCB3cmFwLCAwLCAwKSA9PSAtMSkgJiYgZXJy bm8gPT0gKCg5MDArKHNldHJsaW1pdF8pKSkgJiYgY2FsbDEgPT0gKGdldHJsaW1pdF8pICYmIGNh bGwyID09ICgwKQpvayAzIC0gKGZhaWwgPSBtbWFwXykgJiYgKGFsdHN0YWNrKDgqKCgxMDI0VUwp KigxMDI0VUwpKSwgd3JhcCwgMCwgMCkgPT0gLTEpICYmIGVycm5vID09ICgoOTAwKyhtbWFwXykp KSAmJiBjYWxsMSA9PSAoZ2V0cmxpbWl0X3xzZXRybGltaXRfKSAmJiBjYWxsMiA9PSAoc2V0cmxp bWl0XykKb2sgNCAtIChmYWlsID0gc2lnYWx0c3RhY2tfKSAmJiAoYWx0c3RhY2soOCooKDEwMjRV TCkqKDEwMjRVTCkpLCB3cmFwLCAwLCAwKSA9PSAtMSkgJiYgZXJybm8gPT0gKCg5MDArKHNpZ2Fs dHN0YWNrXykpKSAmJiBjYWxsMSA9PSAoZ2V0cmxpbWl0X3xzZXRybGltaXRffG1tYXBfKSAmJiBj YWxsMiA9PSAoc2V0cmxpbWl0X3xtdW5tYXBfKQpvayA1IC0gKGZhaWwgPSBzaWdhY3Rpb25fKSAm JiAoYWx0c3RhY2soOCooKDEwMjRVTCkqKDEwMjRVTCkpLCB3cmFwLCAwLCAwKSA9PSAtMSkgJiYg ZXJybm8gPT0gKCg5MDArKHNpZ2FjdGlvbl8pKSkgJiYgY2FsbDEgPT0gKGdldHJsaW1pdF98c2V0 cmxpbWl0X3xtbWFwX3xzaWdhbHRzdGFja18pICYmIGNhbGwyID09IChzZXRybGltaXRffG11bm1h cF98c2lnYWx0c3RhY2tfKQpvayA2IC0gKGZhaWwgPSBtdW5tYXBfKSAmJiAoYWx0c3RhY2soOCoo KDEwMjRVTCkqKDEwMjRVTCkpLCB3cmFwLCAwLCAwKSA9PSAxKSAmJiBlcnJubyA9PSAoKDkwMCso bXVubWFwXykpKSAmJiBjYWxsMSA9PSAoZ2V0cmxpbWl0X3xzZXRybGltaXRffG1tYXBffHNpZ2Fs dHN0YWNrX3xzaWdhY3Rpb25fKSAmJiBjYWxsMiA9PSAoc2V0cmxpbWl0X3xzaWdhbHRzdGFja198 c2lnYWN0aW9uXykKClByb2dyYW0gcmVjZWl2ZWQgc2lnbmFsIFNJR1NFR1YsIFNlZ21lbnRhdGlv biBmYXVsdC4KMHgwMDAwMDAwMDAwNDAyMGI4IGluIGRuIChpPTk2NzIzMykKICAgIGF0IC9ob21l L3J1c3R5L2RldmVsL2N2cy9jY2FuL2NjYW4vYWx0c3RhY2svdGVzdC9ydW4uYzo1MQo1MQkJaWYg KGkpIGRuKC0taSk7CihnZGIpIHAgZG4KJDEgPSB7dm9pZCAodW5zaWduZWQgbG9uZyl9IDB4NDAy MDgxIDxkbj4KKGdkYikgcCBpCiQyID0gOTY3MjMzCl9fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fCmNjYW4gbWFpbGluZyBsaXN0CmNjYW5AbGlzdHMub3psYWJz Lm9yZwpodHRwczovL2xpc3RzLm96bGFicy5vcmcvbGlzdGluZm8vY2Nhbgo=