[viewvc-dev] svnauthz using svn bindings
Phil Richardson <[email protected]> Mon, 14 Dec 2015 16:36:11 +0000
| Newsgroups | gmane.comp.version-control.cvs.viewcvs.devel |
|---|---|
| Message-ID | <CALyekZGaKGhnqWNrnbd9O2yErDsT00-5ON6KLFm06SyfAAiBRg__32081.8786662587$1450449949$gmane$org@mail.gmail.com> |
------=_Part_10702_1808537768.1450449933210 Content-Type: multipart/alternative; boundary="----=_Part_10703_610727138.1450449933210" ------=_Part_10703_610727138.1450449933210 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit I am currently using experimental features from future subversion releases. These specifically impact my ability to use the svnauthz authorizer. One thing that cropped up that I could not locate a prior post regarding. Is there a reason why the svn bindings are not used to perform the authz logic? Attached is a replacement which I used under the module svnauthzbindings This essentially proxies through what svn itself implements. The exception being I can only 1 in return check_root_access, otherwise access is denied (other path checking takes care of real access rules though). I'm also exploring the missing "authz in repositiory" as well, but it's not a problem for what I am doing right now. ------------------------------------------------------ http://viewvc.tigris.org/ds/viewMessage.do?dsForumId=4251&dsMessageId=3150887 To unsubscribe from this discussion, e-mail: [[email protected]]. ------=_Part_10703_610727138.1450449933210 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">I am currently using experimental features from future sub= version releases. These specifically impact my ability to use the svnauthz = authorizer.<div><br></div><div>One thing that cropped up that I could not l= ocate a prior post regarding.</div><div><br></div><div>Is there a reason wh= y the svn bindings are not used to perform the authz logic?</div><div><br><= /div><div>Attached is a replacement which I used under the module svnauthzb= indings</div><div><br></div><div>This essentially proxies through what svn = itself implements. The exception being I can only 1 in return=C2=A0check_ro= ot_access, otherwise access is denied (other path checking takes care of re= al access rules though).</div><div><br></div><div>I'm also exploring th= e missing "authz in repositiory" as well, but it's not a prob= lem for what I am doing right now.</div></div> ------=_Part_10703_610727138.1450449933210-- ------=_Part_10702_1808537768.1450449933210 Content-Type: text/x-python; charset=US-ASCII; name=__init__.py Content-Transfer-Encoding: base64 X-Attachment-Id: f_ii65t5c10 Content-Disposition: attachment; filename=__init__.py IyAtKi1weXRob24tKi0KIwojIENvcHlyaWdodCAoQykgMjAwNi0yMDE1IFRoZSBWaWV3Q1ZTIEdy b3VwLiBBbGwgUmlnaHRzIFJlc2VydmVkLgojCiMgQnkgdXNpbmcgdGhpcyBmaWxlLCB5b3UgYWdy ZWUgdG8gdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIHNldCBmb3J0aCBpbgojIHRoZSBMSUNFTlNF Lmh0bWwgZmlsZSB3aGljaCBjYW4gYmUgZm91bmQgYXQgdGhlIHRvcCBsZXZlbCBvZiB0aGUgVmll d1ZDCiMgZGlzdHJpYnV0aW9uIG9yIGF0IGh0dHA6Ly92aWV3dmMub3JnL2xpY2Vuc2UtMS5odG1s LgojCiMgRm9yIG1vcmUgaW5mb3JtYXRpb24sIHZpc2l0IGh0dHA6Ly92aWV3dmMub3JnLwojCiMg LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KIyAoYykgMjAwNiBTZXJnZXkgTGFwaW4gPHNsYXBpbkBkYXRhYXJ0LmNv bT4KCmltcG9ydCB2Y2F1dGgKaW1wb3J0IHN0cmluZwppbXBvcnQgb3MucGF0aAppbXBvcnQgZGVi dWcKCmltcG9ydCBzdm4ucmVwb3MKZnJvbSBzdm4ucmVwb3MgaW1wb3J0IGF1dGh6X2NoZWNrX2Fj Y2Vzcwpmcm9tIHN2bi5yZXBvcyBpbXBvcnQgc3ZuX2F1dGh6X3JlYWQgYXMgc3ZuX3IKCmNsYXNz IFZpZXdWQ0F1dGhvcml6ZXIodmNhdXRoLkdlbmVyaWNWaWV3VkNBdXRob3JpemVyKToKICAiIiJT dWJ2ZXJzaW9uIGF1dGh6IGF1dGhvcml6ZXIgbW9kdWxlIiIiCiAgCiAgZGVmIF9faW5pdF9fKHNl bGYsIHJvb3RfbG9va3VwX2Z1bmMsIHVzZXJuYW1lLCBwYXJhbXM9e30pOgogICAgc2VsZi5yb290 cGF0aHMgPSB7IH0gICMge3Jvb3QgLT4geyBwYXRocyAtPiBhY2Nlc3MgYm9vbGVhbiBmb3IgVVNF Uk5BTUUgfX0KICAgIHNlbGYucm9vdF9sb29rdXBfZnVuYyA9IHJvb3RfbG9va3VwX2Z1bmMKICAg IAogICAgIyBHZXQgdGhlIGF1dGh6IGZpbGUgbG9jYXRpb24gZnJvbSBleGFjdGx5IG9uZSBvZiBv dXIgcmVsYXRlZAogICAgIyBwYXNzZWQtaW4gcGFyYW1ldGVycy4KICAgIHNlbGYuYXV0aHpfZmls ZSA9IHBhcmFtcy5nZXQoJ2F1dGh6ZmlsZScpCiAgICBzZWxmLnJlbF9hdXRoel9maWxlID0gcGFy YW1zLmdldCgncm9vdF9yZWxhdGl2ZV9hdXRoemZpbGUnKQogICAgaWYgbm90IChzZWxmLmF1dGh6 X2ZpbGUgb3Igc2VsZi5yZWxfYXV0aHpfZmlsZSk6CiAgICAgIHJhaXNlIGRlYnVnLlZpZXdWQ0V4 Y2VwdGlvbigiTm8gYXV0aHpmaWxlIGNvbmZpZ3VyZWQiKQogICAgaWYgc2VsZi5hdXRoel9maWxl IGFuZCBzZWxmLnJlbF9hdXRoel9maWxlOgogICAgICByYWlzZSBkZWJ1Zy5WaWV3VkNFeGNlcHRp b24oIk11bHRpcGxlIGF1dGh6ZmlsZSBsb2NhdGlvbnMgZGVmaW5lZCIpCgogICAgIyBTZWUgaWYg dGhlIGFkbWluIHdhbnRzIHVzIHRvIGRvIGNhc2Ugbm9ybWFsaXphdGlvbiBvZiB1c2VybmFtZXMu CiAgICBzZWxmLmZvcmNlX3VzZXJuYW1lX2Nhc2UgPSBwYXJhbXMuZ2V0KCdmb3JjZV91c2VybmFt ZV9jYXNlJykKICAgIGlmIHNlbGYuZm9yY2VfdXNlcm5hbWVfY2FzZSA9PSAidXBwZXIiOgogICAg ICBzZWxmLnVzZXJuYW1lID0gdXNlcm5hbWUgYW5kIHN0cmluZy51cHBlcih1c2VybmFtZSkgb3Ig dXNlcm5hbWUKICAgIGVsaWYgc2VsZi5mb3JjZV91c2VybmFtZV9jYXNlID09ICJsb3dlciI6CiAg ICAgIHNlbGYudXNlcm5hbWUgPSB1c2VybmFtZSBhbmQgc3RyaW5nLmxvd2VyKHVzZXJuYW1lKSBv ciB1c2VybmFtZQogICAgZWxpZiBub3Qgc2VsZi5mb3JjZV91c2VybmFtZV9jYXNlOgogICAgICBz ZWxmLnVzZXJuYW1lID0gdXNlcm5hbWUKICAgIGVsc2U6CiAgICAgIHJhaXNlIGRlYnVnLlZpZXdW Q0V4Y2VwdGlvbigiSW52YWxpZCB2YWx1ZSBmb3IgZm9yY2VfdXNlcm5hbWVfY2FzZSAiCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib3B0aW9uIikKCiAgZGVmIF9nZXRfYXV0aHpf ZmlsZShzZWxmLCByb290bmFtZSk6CiAgICBpZiBzZWxmLnJlbF9hdXRoel9maWxlOgogICAgICBy b290dHlwZSwgcm9vdHBhdGggPSBzZWxmLnJvb3RfbG9va3VwX2Z1bmMocm9vdG5hbWUpCiAgICAg IHJldHVybiBvcy5wYXRoLmpvaW4ocm9vdHBhdGgsIHNlbGYucmVsX2F1dGh6X2ZpbGUpCiAgICBl bHNlOgogICAgICByZXR1cm4gc2VsZi5hdXRoel9maWxlCiAgICAKICBkZWYgX2dldF9wYXRoc19m b3Jfcm9vdChzZWxmLCByb290bmFtZSk6CiAgICBpZiBzZWxmLnJvb3RwYXRocy5oYXNfa2V5KHJv b3RuYW1lKToKICAgICAgcmV0dXJuIHNlbGYucm9vdHBhdGhzW3Jvb3RuYW1lXQoKICAgIHBhdGhz X2Zvcl9yb290ID0gTm9uZQogICAgCiAgICAjIFBhcnNlIHRoZSBhdXRoeiBmaWxlIHVzaW5nIHB5 dGhvbiBiaW5kaW5ncwogICAgdHJ5OgogICAgICBwYXRoc19mb3Jfcm9vdCA9IHN2bi5yZXBvcy5h dXRoel9yZWFkKHNlbGYuX2dldF9hdXRoel9maWxlKHJvb3RuYW1lKSwgRmFsc2UpCiAgICBleGNl cHQ6CiAgICAgIHJhaXNlIGRlYnVnLlZpZXdWQ0V4Y2VwdGlvbigiVW5hYmxlIHRvIHBhcnNlIGNv bmZpZ3VyZWQgYXV0aHpmaWxlIGZpbGUiKQoKICAgIHNlbGYucm9vdHBhdGhzW3Jvb3RuYW1lXSA9 IHBhdGhzX2Zvcl9yb290CiAgICByZXR1cm4gcGF0aHNfZm9yX3Jvb3QKCiAgZGVmIGNoZWNrX3Jv b3RfYWNjZXNzKHNlbGYsIHJvb3RuYW1lKToKICAgIHJldHVybiAxCiAgCiAgZGVmIGNoZWNrX3Vu aXZlcnNhbF9hY2Nlc3Moc2VsZiwgcm9vdG5hbWUpOgogICAgcmV0dXJuIE5vbmUKICAgIAogIGRl ZiBjaGVja19wYXRoX2FjY2VzcyhzZWxmLCByb290bmFtZSwgcGF0aF9wYXJ0cywgcGF0aHR5cGUs IHJldj1Ob25lKToKICAgIHBhdGhzID0gc2VsZi5fZ2V0X3BhdGhzX2Zvcl9yb290KHJvb3RuYW1l KQogICAgaWYgcGF0aHMgaXMgTm9uZToKICAgICAgcmV0dXJuIDAKICAgIHBhcnRzID0gcGF0aF9w YXJ0c1s6XQogICAgcGF0aCA9ICcvJyArIHN0cmluZy5qb2luKHBhcnRzLCAnLycpCiAgICByZXR1 cm4gYXV0aHpfY2hlY2tfYWNjZXNzKHBhdGhzLCByb290bmFtZSwgcGF0aCwgc2VsZi51c2VybmFt ZSwgc3ZuX3IpCgo= ------=_Part_10702_1808537768.1450449933210--