Mercurial Hosting > luan
comparison src/luan/host/Util.luan @ 1190:db7d31f4089a
minor
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Fri, 23 Feb 2018 15:48:15 -0700 |
parents | 51d1342e25ad |
children | 3db95cc00d09 |
comparison
equal
deleted
inserted
replaced
1189:73d754b1889f | 1190:db7d31f4089a |
---|---|
1 local Luan = require "luan:Luan.luan" | 1 local Luan = require "luan:Luan.luan" |
2 local error = Luan.error | 2 local error = Luan.error |
3 local do_file = Luan.do_file or error() | 3 local do_file = Luan.do_file or error() |
4 local stringify = Luan.stringify or error() | |
4 local Io = require "luan:Io.luan" | 5 local Io = require "luan:Io.luan" |
5 local String = require "luan:String.luan" | 6 local String = require "luan:String.luan" |
6 local lower = String.lower or error() | 7 local lower = String.lower or error() |
7 local encode = String.encode or error() | |
8 local Hosting = require "luan:host/Hosting.luan" | 8 local Hosting = require "luan:host/Hosting.luan" |
9 | 9 |
10 java() | 10 java() |
11 local Base64 = require "java:java.util.Base64" | 11 local Base64 = require "java:java.util.Base64" |
12 local MessageDigest = require "java:java.security.MessageDigest" | 12 local MessageDigest = require "java:java.security.MessageDigest" |
20 end | 20 end |
21 | 21 |
22 function Util.write_password(domain,password) | 22 function Util.write_password(domain,password) |
23 local dir = Hosting.sites_dir..lower(domain) | 23 local dir = Hosting.sites_dir..lower(domain) |
24 Io.schemes.file(dir.."/info.luan").write_text( %> | 24 Io.schemes.file(dir.."/info.luan").write_text( %> |
25 return { | 25 return <%= stringify{password=password} %> |
26 password = "<%=encode(password)%>" | |
27 } | |
28 <% ) | 26 <% ) |
29 local sha1 = MessageDigest.getInstance("SHA1").digest(password.getBytes()) | 27 local sha1 = MessageDigest.getInstance("SHA1").digest(password.getBytes()) |
30 local encoded = Base64.getEncoder().encodeToString(sha1) | 28 local encoded = Base64.getEncoder().encodeToString(sha1) |
31 Io.schemes.file(dir.."/password.nginx").write_text( %> | 29 Io.schemes.file(dir.."/password.nginx").write_text( %> |
32 admin:{SHA}<%=encoded%> | 30 admin:{SHA}<%=encoded%> |