Basic Authorization for Server (proposal/patch)
"Carel Bast" <Carel.Bast-qWit8jRvyhVmR6Xm/[email protected]> Wed, 19 Feb 2003 00:13:22 +0100
| Newsgroups | gmane.music.equipment.slimp3.dev |
|---|---|
| Message-ID | <[email protected]> |
------=_NextPart_000_0006_01C2D7AB.B6F0A980 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Hi, I've implemented basic HTTP Authorization for the Browser Interface to the server. Features: - uses HTTP standard authentication - extra form in server setup screens - can be enabled/disabled - password stored crypted - supports (only) one username - uses MIME::Base64 for decoding request Authentication header Please find attached a patchfile that implements it. -- Carel ------------------------ Yahoo! Groups Sponsor ---------------------~--> Get 128 Bit SSL Encryption! http://us.click.yahoo.com/FpY02D/vN2EAA/xGHJAA/rIp0lB/TM ---------------------------------------------------------------------~-> To unsubscribe from this group, send an email to: [email protected] Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/ ------=_NextPart_000_0006_01C2D7AB.B6F0A980 Content-Type: application/octet-stream; name="a.a" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="a.a" KioqIHN0cmluZ3MudHh0Ln4xLjE1NC5+CVR1ZSBGZWIgMTggMjA6MzQ6MjYgMjAwMwotLS0gc3Ry aW5ncy50eHQJVHVlIEZlYiAxOCAyMzozNjozMCAyMDAzCioqKioqKioqKioqKioqKgoqKiogMTkz NiwxOTQxICoqKioKLS0tIDE5MzYsMTk1NyAtLS0tCiAgCVJVCf7J08zPCiAgCVNFCU51bW1lcgog IAorIFNFVFVQX05PX0FVVEhPUklaRQorIAlFTglObyBBdXRob3JpemF0aW9uIAorIAlOTAlHZWVu IEF1dG9yaXNhdGllIAorIAorIFNFVFVQX0FVVEhPUklaRQorIAlFTglBdXRob3JpemF0aW9uIAor IAlOTAlBdXRvcmlzYXRpZSAKKyAKKyBTRVRVUF9VU0VSTkFNRQorIAlFTglVc2VybmFtZQorIAlO TAlHZWJydWlrZXJzbmFhbQorIAorIFNFVFVQX1BBU1NXT1JECisgCUVOCVBhc3N3b3JkCisgCU5M CVdhY2h0d29vcmQKKyAKICBTRVRVUF9ET05UX0NBQ0hFCiAgCURFCU5pY2h0IFp3aXNjaGVuc3Bl aWNoZXJuCiAgCUVOCURvbid0IENhY2hlCioqKioqKioqKioqKioqKgoqKiogMzA3MywzMDc4ICoq KioKLS0tIDMwODksMzA5OCAtLS0tCiAgCU5MCUdlZHJhZwogIAlTRQlCZXRlZW5kZQogIAorIFNF Q1VSSVRZX1NFVFRJTkdTCisgCUVOCVNlY3VyaXR5CisgCU5MCUJldmVpbGlnaW5nCisgCiAgUEVS Rk9STUFOQ0VfU0VUVElOR1MKICAJREUJTGVpc3R1bmcKICAJRU4JUGVyZm9ybWFuY2UKKioqIGxp Yi9TbGlNUDMvU2V0dXAucG0ufjEuODAufglUdWUgRmViIDE4IDIwOjM1OjE4IDIwMDMKLS0tIGxp Yi9TbGlNUDMvU2V0dXAucG0JVHVlIEZlYiAxOCAyMzoyNDoxMiAyMDAzCioqKioqKioqKioqKioq KgoqKiogMzU2LDM2MiAqKioqCiAgCX0gIyBlbmQgb2Ygc2V0dXB7J3BsYXllcmlyJ30gaGFzaAog IAkJCQogIAksJ3NlcnZlcicgPT4gewohIAkJJ2NoaWxkcmVuJyA9PiBbJ2ludGVyZmFjZScsJ2Jl aGF2aW9yJywnZm9ybWF0dGluZycsJ3BlcmZvcm1hbmNlJywnbmV0d29yaycsJ2RlYnVnJ10KICAJ CSwndGl0bGUnID0+IHN0cmluZygnU0VSVkVSX1NFVFRJTkdTJykKICAJCSwnc2luZ2xlQ2hpbGRM aW5rVGV4dCcgPT4gc3RyaW5nKCdBRERJVElPTkFMX1NFUlZFUl9TRVRUSU5HUycpCiAgCQksJ3By ZUV2YWwnID0+IHN1YiB7Ci0tLSAzNTYsMzYyIC0tLS0KICAJfSAjIGVuZCBvZiBzZXR1cHsncGxh eWVyaXInfSBoYXNoCiAgCQkJCiAgCSwnc2VydmVyJyA9PiB7CiEgCQknY2hpbGRyZW4nID0+IFsn aW50ZXJmYWNlJywnYmVoYXZpb3InLCdmb3JtYXR0aW5nJywnc2VjdXJpdHknLCdwZXJmb3JtYW5j ZScsJ25ldHdvcmsnLCdkZWJ1ZyddCiAgCQksJ3RpdGxlJyA9PiBzdHJpbmcoJ1NFUlZFUl9TRVRU SU5HUycpCiAgCQksJ3NpbmdsZUNoaWxkTGlua1RleHQnID0+IHN0cmluZygnQURESVRJT05BTF9T RVJWRVJfU0VUVElOR1MnKQogIAkJLCdwcmVFdmFsJyA9PiBzdWIgewoqKioqKioqKioqKioqKioK KioqIDkyNSw5MzAgKioqKgotLS0gOTI1LDk1NyAtLS0tCiAgCQkJCQl9CiAgCQkJfQogIAkJfSAj ZW5kIG9mIHNldHVweydmb3JtYXR0aW5nJ30gaGFzaAorIAksJ3NlY3VyaXR5JyA9PiB7CisgCQkn dGl0bGUnID0+IHN0cmluZygnU0VDVVJJVFlfU0VUVElOR1MnKQorIAkJLCdwYXJlbnQnID0+ICdz ZXJ2ZXInCisgCQksJ0dyb3VwT3JkZXInID0+IFsnRGVmYXVsdCddCisgCQksJ0dyb3VwcycgPT4g eworIAkJCSdEZWZhdWx0JyA9PiB7CisgCQkJCQknUHJlZk9yZGVyJyA9PiBbJ2F1dGhvcml6ZScs J3VzZXJuYW1lJywncGFzc3dvcmQnXQorIAkJCQl9CisgCQkJfQorIAkJLCdQcmVmcycgPT4gewor IAkJCSdhdXRob3JpemUnID0+IHsKKyAJCQkJCQkndmFsaWRhdGUnID0+IFwmdmFsaWRhdGVUcnVl RmFsc2UKKyAJCQkJCQksJ29wdGlvbnMnID0+IHsKKyAJCQkJCQkJCScwJyA9PiBzdHJpbmcoJ1NF VFVQX05PX0FVVEhPUklaRScpCisgCQkJCQkJCQksJzEnID0+IHN0cmluZygnU0VUVVBfQVVUSE9S SVpFJykKKyAJCQkJCQkJCX0KKyAJCQkJCX0KKyAJCQksJ3VzZXJuYW1lJyA9PiB7CisgCQkJCQkJ J3ZhbGlkYXRlJyA9PiBcJnZhbGlkYXRlQWNjZXB0QWxsCisgCQkJCQkJLCdQcmVmU2l6ZScgPT4g J2xhcmdlJworIAkJCQkJfQorIAkJCSwncGFzc3dvcmQnID0+IHsKKyAJCQkJCQkndmFsaWRhdGUn ID0+IFwmdmFsaWRhdGVQYXNzd29yZAorIAkJCQkJCSwnUHJlZlNpemUnID0+ICdsYXJnZScKKyAJ CQkJCX0KKyAJCQl9CisgCQl9ICNlbmQgb2Ygc2V0dXB7J3NlY3VyaXR5J30gaGFzaAogIAksJ3Bl cmZvcm1hbmNlJyA9PiB7CiAgCQkndGl0bGUnID0+IHN0cmluZygnUEVSRk9STUFOQ0VfU0VUVElO R1MnKQogIAkJLCdwYXJlbnQnID0+ICdzZXJ2ZXInCioqKioqKioqKioqKioqKgoqKiogMTk1MCwx OTU1ICoqKioKLS0tIDE5NzcsMTk5NSAtLS0tCiAgCX0KICB9CiAgCisgc3ViIHZhbGlkYXRlUGFz c3dvcmQgeworIAlteSAkdmFsID0gc2hpZnQ7CisgCW15ICRjdXJyZW50UGFzc3dvcmQgPSBTbGlN UDM6OlByZWZzOjpnZXQoJ3Bhc3N3b3JkJyk7CisgCWlmIChkZWZpbmVkKCR2YWwpICYmICR2YWwg bmUgJycgJiYgJHZhbCBuZSAkY3VycmVudFBhc3N3b3JkKSB7CisgCQlzcmFuZCAodGltZSgpKTsK KyAJCW15ICRyYW5kbGV0dGVyID0gIihpbnQgKHJhbmQgKDI2KSkgKyAoaW50IChyYW5kICgxKSAr IC41KSAlIDIgPyA2NSA6IDk3KSkiOworIAkJbXkgJHNhbHQgPSBzcHJpbnRmICgiJWMlYyIsIGV2 YWwgJHJhbmRsZXR0ZXIsIGV2YWwgJHJhbmRsZXR0ZXIpOworIAkJcmV0dXJuIGNyeXB0KCR2YWws ICRzYWx0KTsKKyAJfSBlbHNlIHsKKyAJCXJldHVybiAkY3VycmVudFBhc3N3b3JkOworIAl9Cisg fQorIAogICNUT0RPIG1ha2UgdGhpcyBhY3R1YWxseSBjaGVjayB0byBzZWUgaWYgdGhlIGZvcm1h dCBpcyB2YWxpZAogIHN1YiB2YWxpZGF0ZUZvcm1hdCB7CiAgCW15ICR2YWwgPSBzaGlmdDsKKioq IGxpYlxTbGlNUDNcUHJlZnMucG0ufjEuOTEufglTdW4gRmViIDE2IDIyOjM0OjA4IDIwMDMKLS0t IGxpYlxTbGlNUDNcUHJlZnMucG0JVHVlIEZlYiAxOCAyMTo1NDo0OCAyMDAzCioqKioqKioqKioq KioqKgoqKiogMzgsNDMgKioqKgotLS0gMzgsNDYgLS0tLQogIAksInBsYXl0cmFja2FsYnVtIiAJ CT0+IDEKICAJLCJhcnRpc3RpbmFsYnVtc2VhcmNoIiAJPT4gMAogIAksImlnbm9yZWRhcnRpY2xl cyIJCT0+ICJUaGUgRWwgTGEgTG9zIExhcyBMZSBMZXMiCisgCSwiYXV0aG9yaXplIgkJCT0+IDAJ CQkJIyBObyBhdXRob3JpemF0aW9uIGJ5IGRlZmF1bHQKKyAJLCJ1c2VybmFtZSIJCQkJPT4gJycK KyAJLCJwYXNzd29yZCIJCQkJPT4gJycKICAJLCJ0Y3BSZWFkTWF4IgkJCT0+IDIKICAJLCJ0Y3BX cml0ZU1heCIJCQk9PiAyCiAgCSwidGNwQ29ubmVjdE1heCIJCT0+IDMKKioqIGxpYi9TbGlNUDMv SFRUUC5wbS5+MS4yMjQufglUdWUgRmViIDE4IDIxOjUwOjQ2IDIwMDMKLS0tIGxpYi9TbGlNUDMv SFRUUC5wbQlUdWUgRmViIDE4IDIzOjI3OjM0IDIwMDMKKioqKioqKioqKioqKioqCioqKiAxNCwx OSAqKioqCi0tLSAxNCwyMCAtLS0tCiAgdXNlIEZpbGVIYW5kbGU7CiAgdXNlIE5ldDo6aG9zdGVu dDsgICAgICAgICAgICAgICMgZm9yIE9PIHZlcnNpb24gb2YgZ2V0aG9zdGJ5YWRkcgogIHVzZSBG aWxlOjpTcGVjOjpGdW5jdGlvbnMgcXcoOkFMTCk7CisgdXNlIE1JTUU6OkJhc2U2NDsKICAKICB1 c2UgUE9TSVggcXcoOmZjbnRsX2gpOwogIHVzZSBGY250bCBxdyhGX0dFVEZMIEZfU0VURkwpOwoq KioqKioqKioqKioqKioKKioqIDI3MCwyOTAgKioqKgogIAkJCQljbG9zZSAkaHR0cGNsaWVudHNv Y2s7CiAgCQkJCSRjb25uZWN0ZWQtLTsKICAJCQl9CiEgCQl9IGVsc2lmICgkZmlyc3RsaW5lID1+ IC9eR0VUIChbXHdcJFwtXC5cK1wqXChcKVw/XC8sOzpAJj0hJyVdKikgSFRUUFwvMS5bMDFdW1ww MTVcMDEyXSskL2kpICB7IAogIAkJCW15IEBwYXJhbWFycmF5OwogIAkJCW15ICRwYXJhbTsKICAJ CQlteSAkdXJsOwohIAkJCW15ICRwYXRoOwogIAogIAkJCSR1cmwgPSAkMTsKICAKICAJCQl3aGls ZSAoPCRodHRwY2xpZW50c29jaz4pIHsKISAJCQkJIyBpZ25vcmUgaGVhZGVycywgZm9yIG5vdwoh IAkJCQlpZiAoICRfICYmICgkXyAhfiAvXFMvKSkgewohIAkJCQkJbGFzdDsKICAJCQkJfQogIAkJ CX0KICAKICAJCQkjIHBhcnNlIG91dCBVUkk6CiAgCQkJCiAgCQkJJHVybCA9fiAvXihbXC9cd1wk XC1cLlwrXCpcKFwpLDs6QCY9ISclXSopLiooPzpcPyhbXHdcJFwtXC5cK1wqXChcKSw7OkAmPSEn JV0qfCkpJC87IAkKLS0tIDI3MSwzMDggLS0tLQogIAkJCQljbG9zZSAkaHR0cGNsaWVudHNvY2s7 CiAgCQkJCSRjb25uZWN0ZWQtLTsKICAJCQl9CiEgCQl9IGVsc2lmICgkZmlyc3RsaW5lID1+IC9e R0VUIChbXHdcJFwtXC5cK1wqXChcKVw/XC8sOzpAJj0hXCclXSopIEhUVFBcLzEuWzAxXVtcMDE1 XDAxMl0rJC9pKSAgewogIAkJCW15IEBwYXJhbWFycmF5OwogIAkJCW15ICRwYXJhbTsKICAJCQlt eSAkdXJsOwohIAkJICAgIG15ICRwYXRoOwogIAogIAkJCSR1cmwgPSAkMTsKICAKKyAJCQlteSAk YXV0aG9yaXplZCA9ICFTbGlNUDM6OlByZWZzOjpnZXQoImF1dGhvcml6ZSIpOworIAogIAkJCXdo aWxlICg8JGh0dHBjbGllbnRzb2NrPikgewohIAkJCQlpZiAoJF8pIHsKISAJCQkJCSMgYXV0aG9y aXphdGlvbiBoZWFkZXIuCiEgCQkJCQlpZiAoJF8gPX4gL15BdXRob3JpemF0aW9uOiBCYXNpYyAo LiopLykgewohIAkJCQkJCSRhdXRob3JpemVkID0gJmNoZWNrQXV0aG9yaXphdGlvbigkMSk7CiEg CQkJCQl9CiEgICAgICAgICAgICAgICAgICAgICAjIEVuZCBvZiBoZWFkZXJzCiEgCQkJCQlpZiAo JF8gIX4gL1xTLykgeyAgCiEgCQkJCQkJbGFzdDsKISAJCQkJCX0KICAJCQkJfQogIAkJCX0KICAK KyAJCQlpZiAoISRhdXRob3JpemVkKSB7ICMgbm8gVmFsaWQgYXV0aG9yaXphdGlvbiBzdXBwbGll ZCEKKyAJCQkJbXkgJG1lc3NhZ2UgPSAiSFRUUC8xLjAgNDAxIEF1dGhvcml6YXRpb24gUmVxdWly ZWQiIC4gJEVPTCAuIAorIAkJCQkJIldXVy1BdXRoZW50aWNhdGU6IGJhc2ljIHJlYWxtPVwiU0xJ TVAzIFNlcnZlclwiIiAuICRFT0wgLgorIAkJCQkJIkNvbnRlbnQtdHlwZTogdGV4dC9odG1sJEJM QU5LIiAuIAorIAkJCQkJIjxIVE1MPjxIRUFEPjxUSVRMRT40MDEgQXV0aG9yaXphdGlvbiBSZXF1 aXJlZDwvVElUTEU+PC9IRUFEPiIgLiAKKyAJCQkJCSI8Qk9EWT40MDEgQXV0aG9yaXphdGlvbiBp cyBSZXF1aXJlZCB0byBhY2Nlc3MgdGhpcyBTTElNUDMgU2VydmVyPC9CT0RZPjwvSFRNTD4kRU9M IjsKKyAJCQkJYWRkcmVzcG9uc2UoJGh0dHBjbGllbnRzb2NrLCRtZXNzYWdlKTsKKyAJCQl9Cisg CQkJCQogIAkJCSMgcGFyc2Ugb3V0IFVSSToKICAJCQkKICAJCQkkdXJsID1+IC9eKFtcL1x3XCRc LVwuXCtcKlwoXCksOzpAJj0hJyVdKikuKig/Olw/KFtcd1wkXC1cLlwrXCpcKFwpLDs6QCY9IScl XSp8KSkkLzsgCQoqKioqKioqKioqKioqKioKKioqIDQ4Nyw0OTIgKioqKgotLS0gNTA1LDUyOCAt LS0tCiAgCX0KICB9CiAgCisgc3ViIGNoZWNrQXV0aG9yaXphdGlvbiB7CisgCW15ICRvayA9IDA7 CisgCWlmIChTbGlNUDM6OlByZWZzOjpnZXQoJ2F1dGhvcml6ZScpKSB7CisgCQlteSAoJHVzZXJu YW1lLCAkcGFzc3dvcmQpID0gc3BsaXQgKCc6JyxkZWNvZGVfYmFzZTY0KHNoaWZ0KSk7CisgCQlp ZiAoJHVzZXJuYW1lIGVxIFNsaU1QMzo6UHJlZnM6OmdldCgndXNlcm5hbWUnKSkgeworIAkJCW15 ICRwd2QgID0gU2xpTVAzOjpQcmVmczo6Z2V0KCdwYXNzd29yZCcpOworIAkJCW15ICRzYWx0ID0g c3Vic3RyKCRwd2QsIDAsIDIpOworIAkJCWlmIChjcnlwdCgkcGFzc3dvcmQsICRzYWx0KSBlcSAk cHdkKSB7CisgCQkJCSRvayA9IDE7CisgCQkJfQorIAkJfQorIAl9CisgCWVsc2UgeyAjIE5vIGF1 dGhvcml6YXRpb24gbmVlZGVkCisgCQkkb2sgPSAxOworIAl9CisgCXJldHVybiAkb2s7CisgfQor IAogIHN1YiBmb3JnZXRDbGllbnQgewogIAlteSAkY2xpZW50ID0gc2hpZnQ7CiAgCWlmIChkZWZp bmVkKCRjbGllbnQtPnN0cmVhbWluZ3NvY2tldCkpIHsK ------=_NextPart_000_0006_01C2D7AB.B6F0A980--