From: Michael Stapelberg Date: 2009-08-02T23:46:36+09:00 Subject: [ruby-core:24692] [PATCH] net/imap: add support for GSSAPI, call for help --=-1249224393-416695-30852-1354-11-= Content-Type: text/plain; charset=UTF-8 Content-Disposition: inline Hi, recently I wrote a patch for net/imap which makes it capable of using GSSAPI for authentication. It is attached to this mail. Now comes the tricky part: It requires the ruby-gss bindings which you can find here: http://devel.it.su.se/pub/jsp/polopoly.jsp?d=1047&a=3790 I���m not sure what the usual procedure is, but it looks like ruby-gss is not maintained anymore. Is there a way that the bindings can be part of ruby-core? If so, please also apply the attached patch to it. Please tell me if you need any more information. I���m totally new to the ruby community. Best regards, Michael --=-1249224393-416695-30852-1354-11-= Content-Disposition: attachment; filename="02-net_imap_gssapi.patch" Content-Type: application/octet-stream; name="02-net_imap_gssapi.patch" Content-Transfer-Encoding: base64 LS0tIGltYXAucmIJMjAwOS0wNy0xOCAyMzozNTozOS45NTkzMTEyMjMgKzAy MDAKKysrIC91c3IvbGliL3J1YnkvMS44L25ldC9pbWFwLnJiCTIwMDktMDct MTkgMDE6MzM6MDkuNzc5MjU1NDYyICswMjAwCkBAIC0xNiw2ICsxNiw3IEBA CiByZXF1aXJlICJzb2NrZXQiCiByZXF1aXJlICJtb25pdG9yIgogcmVxdWly ZSAiZGlnZXN0L21kNSIKK3JlcXVpcmUgImdzcyIKIGJlZ2luCiAgIHJlcXVp cmUgIm9wZW5zc2wiCiByZXNjdWUgTG9hZEVycm9yCkBAIC0zMTg1LDYgKzMx ODYsNjIgQEAKICAgICBlbmQKICAgICBhZGRfYXV0aGVudGljYXRvciAiQ1JB TS1NRDUiLCBDcmFtTUQ1QXV0aGVudGljYXRvcgogCisgICAgIyBBdXRoZW50 aWNhdG9yIGZvciBLZXJiZXJvcyAoR1NTQVBJKS4gUGFzcyB0aGUgaG9zdG5h bWUgYXMgcGFzc3dvcmQsCisgICAgIyB3ZSBuZWVkIGl0IHRvIGNyZWF0ZSB0 aGUgc2VydmljZW5hbWUgKGltYXBAaG9zdG5hbWUpLiBTZWUgYXV0aGVudGlj YXRlKCkKKyAgICBjbGFzcyBHU1NBUElBdXRoZW50aWNhdG9yCisgICAgICBk ZWYgcHJvY2VzcyhkYXRhKQorICAgICAgICBjYXNlIEBzdGF0ZQorICAgICAg ICB3aGVuIFNUQVRFX0NSRURfRVhfRklSU1QKKyAgICAgICAgICBpbnB1dCA9 IEdzczo6U3RlcC5uZXcobmlsLCBuaWwsIEdzczo6U0VRVUVOQ0VfRkxBRyB8 IEdzczo6TVVUVUFMX0ZMQUcpCisgICAgICAgICAgb3V0cHV0ID0gR3NzOjpT dGVwLm5ldworICAgICAgICAgIEBjb250ZXh0ID0gR3NzOjpDb250ZXh0Lm5l dworCisgICAgICAgICAgQHN0YXR1cyA9IEBjb250ZXh0LmluaXQobmlsLCBA c2VydmljZV9uYW1lLCBpbnB1dCwgbmlsLCBvdXRwdXQpLmNoZWNrCisgICAg ICAgICAgQHN0YXRlID0gU1RBVEVfQ1JFRF9FWF9DT05UCisKKyAgICAgICAg ICByZXR1cm4gb3V0cHV0LnRva2VuCisgICAgICAgIHdoZW4gU1RBVEVfQ1JF RF9FWF9DT05UCisgICAgICAgICAgaW5wdXQgPSBHc3M6OlN0ZXAubmV3KGRh dGEsIG5pbCwgR3NzOjpTRVFVRU5DRV9GTEFHIHwgR3NzOjpNVVRVQUxfRkxB RykKKyAgICAgICAgICBvdXRwdXQgPSBHc3M6OlN0ZXAubmV3CisgICAgICAg ICAgQHN0YXR1cyA9IEBjb250ZXh0LmluaXQobmlsLCBAc2VydmljZV9uYW1l LCBpbnB1dCwgbmlsLCBvdXRwdXQpLmNoZWNrCisKKyAgICAgICAgICBpZiBA c3RhdHVzLm1ham9yICE9IEdzczo6U19DT05USU5VRV9ORUVERUQKKyAgICAg ICAgICAgIEBzdGF0ZSA9IFNUQVRFX1VOV1JBUAorICAgICAgICAgIGVuZAor CisgICAgICAgICAgcmV0dXJuIG91dHB1dC50b2tlbgorICAgICAgICB3aGVu IFNUQVRFX1VOV1JBUAorICAgICAgICAgIG91dHB1dCA9IEdzczo6U3RlcC5u ZXcKKyAgICAgICAgICBAY29udGV4dC51bndyYXAoR3NzOjpTdGVwLm5ldyhk YXRhKSwgb3V0cHV0KS5jaGVjaworCisgICAgICAgICAgIyBUT0RPOiBXZSBz aG91bGQgY2hlY2sgaGVyZSBpZiB0aGUgZmlyc3QgYnl0ZSBjb250YWlucyBc MSwgbWVhbmluZworICAgICAgICAgICMgdGhhdCBubyBzZWN1cml0eSBsZXZl bCBpcyBuZWNlc3NhcnkgKHdlIHdhbnQgYXV0aGVudGljYXRpb24gb25seSkK KyAgICAgICAgICBtYXhfc2l6ZSA9ICJcMCIgKyBvdXRwdXQudG9rZW5bMSwz XQorCisgICAgICAgICAgIyBidWlsZCBhdXRob3JpemF0aW9uIHJlcXVlc3QK KyAgICAgICAgICByZXF1ZXN0ID0gIlwxIiArIG1heF9zaXplWzEsM10gKyBA dXNlcgorICAgICAgICAgIG91dHB1dCA9IEdzczo6U3RlcC5uZXcKKyAgICAg ICAgICBAY29udGV4dC53cmFwKDAsIEdzczo6UU9QX0RFRkFVTFQsIEdzczo6 U3RlcC5uZXcocmVxdWVzdCksIG91dHB1dCkuY2hlY2sKKworICAgICAgICAg IHJldHVybiBvdXRwdXQudG9rZW4KKyAgICAgICAgZW5kCisgICAgICBlbmQK KworICAgICAgcHJpdmF0ZQorCisgICAgICBTVEFURV9DUkVEX0VYX0ZJUlNU ID0gOkNSRURfRVhfRklSU1QKKyAgICAgIFNUQVRFX0NSRURfRVhfQ09OVCA9 IDpDUkVEX0VYX0NPTlQKKyAgICAgIFNUQVRFX1VOV1JBUCA9IDpVTldSQVAK KworICAgICAgZGVmIGluaXRpYWxpemUodXNlciwgcGFzc3dvcmQpCisgICAg ICAgIEB1c2VyID0gdXNlcgorICAgICAgICBAc2VydmljZV9uYW1lID0gR3Nz OjpOYW1lOjppbXBvcnQoR3NzOjpPaWQ6Ok5UX0hPU1RCQVNFRF9TRVJWSUNF LCAiaW1hcEAiICsgcGFzc3dvcmQpCisgICAgICAgIEBzdGF0ZSA9IFNUQVRF X0NSRURfRVhfRklSU1QKKyAgICAgIGVuZAorICAgIGVuZAorCisgICAgYWRk X2F1dGhlbnRpY2F0b3IgJ0dTU0FQSScsIEdTU0FQSUF1dGhlbnRpY2F0b3IK KwogICAgICMgU3VwZXJjbGFzcyBvZiBJTUFQIGVycm9ycy4KICAgICBjbGFz cyBFcnJvciA8IFN0YW5kYXJkRXJyb3IKICAgICBlbmQK --=-1249224393-416695-30852-1354-11-= Content-Disposition: attachment; filename="03-ruby-gss.patch" Content-Type: application/octet-stream; name="03-ruby-gss.patch" Content-Transfer-Encoding: base64 LS0tIG9yaWdpbmFsL0dzcy5jCTIwMDktMDctMTkgMDE6NDQ6MzUuNDU5OTg1 NTExICswMjAwCisrKyBHc3MuYwkyMDA5LTA3LTE4IDIzOjExOjAyLjU1NDY5 MzI0MSArMDIwMApAQCAtMzEyLDYgKzMxMiw2NyBAQAogCQkJCQkJCQkgICAg IAkJCQkJCSAKIAlyZXR1cm4gc3R2OwogIH0KKworIHN0YXRpYyBWQUxVRQor IGNvbnRleHRfdW53cmFwKFZBTFVFIHNlbGYsIFZBTFVFIGlzdGVwdiwgVkFM VUUgb3N0ZXB2KQorIHsKKwlnc3Nfc3RhdHVzICpzdCA9IHN0YXR1c19uZXco KTsKKwlnc3Nfc3RlcCAqaXN0ZXAsKm9zdGVwOworCWdzc19jb250ZXh0ICpj b250ZXh0OworCXZvaWQgKnRuYW1lLCpjYmluZGluZ3MsKmNyZWQ7CisJZ3Nz X3FvcF90IHVudXNlZDI7CisJVkFMVUUgc3R2ID0gRGF0YV9XcmFwX1N0cnVj dChjU3RhdHVzLDAsZnJlZSxzdCk7CisJCisJRGF0YV9HZXRfU3RydWN0KHNl bGYsZ3NzX2NvbnRleHQsY29udGV4dCk7CisJRGF0YV9HZXRfU3RydWN0KGlz dGVwdixnc3Nfc3RlcCxpc3RlcCk7CisJRGF0YV9HZXRfU3RydWN0KG9zdGVw dixnc3Nfc3RlcCxvc3RlcCk7CisJCisJCQorCXN0LT5tYWpvciA9IGdzc191 bndyYXAoCisJCQkmc3QtPm1pbm9yLAorCQkJY29udGV4dC0+Y3R4LAorCQkJ KGNvbnN0IGdzc19idWZmZXJfdCkmaXN0ZXAtPnRva2VuLAorCQkJKGNvbnN0 IGdzc19idWZmZXJfdCkmb3N0ZXAtPnRva2VuLAorCQkJJm9zdGVwLT5mbGFn cywKKwkJCSZ1bnVzZWQyKTsKKwkJCQkJCQkJICAgICAJCQkJCQkgCisJcmV0 dXJuIHN0djsKKyB9CisKKyBzdGF0aWMgVkFMVUUKKyBjb250ZXh0X3dyYXAo VkFMVUUgc2VsZiwKKwkJIFZBTFVFIHJlcV9mbGFndiwKKwkJIFZBTFVFIHFv cF9yZXF2LAorCQkgVkFMVUUgaXN0ZXB2LAorCQkgVkFMVUUgb3N0ZXB2KQor IHsKKwlnc3Nfc3RhdHVzICpzdCA9IHN0YXR1c19uZXcoKTsKKwlnc3Nfc3Rl cCAqaXN0ZXAsKm9zdGVwOworCWdzc19jb250ZXh0ICpjb250ZXh0OworCXZv aWQgKnRuYW1lLCpjYmluZGluZ3MsKmNyZWQ7CisJaW50IGNvbmZfcmVxX2Zs YWcgPSBOVU0ySU5UKHJlcV9mbGFndik7CisJZ3NzX3FvcF90IHFvcF9yZXEg PSBOVU0ySU5UKHFvcF9yZXF2KTsKKwlWQUxVRSBzdHYgPSBEYXRhX1dyYXBf U3RydWN0KGNTdGF0dXMsMCxmcmVlLHN0KTsKKworCURhdGFfR2V0X1N0cnVj dChzZWxmLGdzc19jb250ZXh0LGNvbnRleHQpOworCURhdGFfR2V0X1N0cnVj dChpc3RlcHYsZ3NzX3N0ZXAsaXN0ZXApOworCURhdGFfR2V0X1N0cnVjdChv c3RlcHYsZ3NzX3N0ZXAsb3N0ZXApOworCQorCQkKKwlzdC0+bWFqb3IgPSBn c3Nfd3JhcCgKKwkJCSZzdC0+bWlub3IsCisJCQljb250ZXh0LT5jdHgsCisJ CQljb25mX3JlcV9mbGFnLAorCQkJcW9wX3JlcSwKKwkJCShjb25zdCBnc3Nf YnVmZmVyX3QpJmlzdGVwLT50b2tlbiwKKwkJCSZvc3RlcC0+ZmxhZ3MsCisJ CQkoY29uc3QgZ3NzX2J1ZmZlcl90KSZvc3RlcC0+dG9rZW4pOworCQkJCisJ CQkJCQkJCSAgICAgCQkJCQkJIAorCXJldHVybiBzdHY7CisgfQorIAorCiAg CiAgc3RhdGljIFZBTFVFCiAgc3RlcF9nZXRfZmxhZ3MoVkFMVUUgc2VsZikK QEAgLTQ1OCw2ICs1MTksOCBAQAogIAlyYl9kZWZpbmVfY29uc3QobUdzcywi QU5PTl9GTEFHIixJTlQyTlVNKDY0KSk7CiAgCXJiX2RlZmluZV9jb25zdCht R3NzLCJQUk9UX1JFQURZX0ZMQUciLElOVDJOVU0oMTI4KSk7CiAgCXJiX2Rl ZmluZV9jb25zdChtR3NzLCJUUkFOU19GTEFHIixJTlQyTlVNKDI1NikpOwor CisgCXJiX2RlZmluZV9jb25zdChtR3NzLCJRT1BfREVGQVVMVCIsSU5UMk5V TSgwKSk7CiAgCQogIAlyYl9kZWZpbmVfY29uc3QobUdzcywiQk9USCIsSU5U Mk5VTSgwKSk7CiAgCXJiX2RlZmluZV9jb25zdChtR3NzLCJJTklUSUFURSIs SU5UMk5VTSgxKSk7CkBAIC01MDcsNiArNTcwLDggQEAKICAJY0NvbnRleHQg PSByYl9kZWZpbmVfY2xhc3NfdW5kZXIobUdzcywiQ29udGV4dCIscmJfY09i amVjdCk7CiAgCXJiX2RlZmluZV9zaW5nbGV0b25fbWV0aG9kKGNDb250ZXh0 LCJuZXciLGNvbnRleHRfbmV3LDApOwogIAlyYl9kZWZpbmVfbWV0aG9kKGND b250ZXh0LCJpbml0Iixjb250ZXh0X2luaXQsNSk7CisgCXJiX2RlZmluZV9t ZXRob2QoY0NvbnRleHQsInVud3JhcCIsY29udGV4dF91bndyYXAsMik7Cisg CXJiX2RlZmluZV9tZXRob2QoY0NvbnRleHQsIndyYXAiLGNvbnRleHRfd3Jh cCw0KTsKICAJCiAgCS8qIE5hbWUgY2xhc3MgKi8KICAJY05hbWUgPSByYl9k ZWZpbmVfY2xhc3NfdW5kZXIobUdzcywiTmFtZSIscmJfY09iamVjdCk7CkBA IC01MzIsNyArNTk3LDcgQEAKICAgICByYl9kZWZpbmVfY29uc3QoY09pZCwi TlRfSE9TVEJBU0VEX1NFUlZJQ0UiLERhdGFfV3JhcF9TdHJ1Y3QoY09pZCww LDAsR1NTX0NfTlRfSE9TVEJBU0VEX1NFUlZJQ0UpKTsgICAgCiAgICAgcmJf ZGVmaW5lX2NvbnN0KGNPaWQsIk5UX0FOT05ZTU9VUyIsRGF0YV9XcmFwX1N0 cnVjdChjT2lkLDAsMCxHU1NfQ19OVF9BTk9OWU1PVVMpKTsKICAgICByYl9k ZWZpbmVfY29uc3QoY09pZCwiTlRfRVhQT1JUX05BTUUiLERhdGFfV3JhcF9T dHJ1Y3QoY09pZCwwLDAsR1NTX0NfTlRfRVhQT1JUX05BTUUpKTsgIAotICAg IHJiX2RlZmluZV9jb25zdChjT2lkLCJLUkI1X01FQ0hBTklTTSIsRGF0YV9X cmFwX1N0cnVjdChjT2lkLDAsMCxHU1NfS1JCNV9NRUNIQU5JU00pKTsKKy8v cmJfZGVmaW5lX2NvbnN0KGNPaWQsIktSQjVfTUVDSEFOSVNNIixEYXRhX1dy YXBfU3RydWN0KGNPaWQsMCwwLEdTU19LUkI1X01FQ0hBTklTTSkpOwogICAg IHJiX2RlZmluZV9jb25zdChjT2lkLCJOT19PSUQiLERhdGFfV3JhcF9TdHJ1 Y3QoY09pZCwwLDAsR1NTX0NfTk9fT0lEKSk7CiAgICAgCiAgICAgLyogRXhj ZXB0aW9ucyAqLwo= --=-1249224393-416695-30852-1354-11-=--