aboutsummaryrefslogtreecommitdiff
path: root/cmd
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2016-01-26 18:57:38 +0100
committerDimitri Sokolyuk <demon@dim13.org>2016-01-26 18:57:38 +0100
commit6d0e780f951789cdac7f9f60ca5b373ab8d44ca1 (patch)
treec9876e8b26fcc69485891b914e858bf1b36a290d /cmd
parent4592f4d489b16dafcc75a3aa26b48a415370e237 (diff)
Switch to lib-internal solver
Diffstat (limited to 'cmd')
-rw-r--r--cmd/acme/main.go14
-rw-r--r--cmd/acme/solve_http.go41
-rw-r--r--cmd/acme/solve_tls.go1
3 files changed, 10 insertions, 46 deletions
diff --git a/cmd/acme/main.go b/cmd/acme/main.go
index 67271b8..00c209f 100644
--- a/cmd/acme/main.go
+++ b/cmd/acme/main.go
@@ -63,9 +63,6 @@ func satisfice(des *desire) error {
}
}
- hs := &httpChallenge{Webroot: des.Webroot}
- des.RegisterSolver(acme.ChallengeHTTP, hs)
-
err = des.provider.Authz(des.account, des.Desire)
if err != nil {
return err
@@ -92,8 +89,17 @@ func main() {
if err := prepare(conf); err != nil {
log.Fatal(err)
}
- httpSolver(conf.Defaults.Listen)
+
+ httpSol := acme.NewHTTPSolver(conf.Defaults.Listen)
+
for k, des := range conf.Desire {
+ if des.Webroot != "" {
+ wrSol := acme.NewWebrootSolver(des.Webroot)
+ des.RegisterSolver(acme.ChallengeHTTP, wrSol)
+ } else {
+ des.RegisterSolver(acme.ChallengeHTTP, httpSol)
+ }
+
log.Println("satisfice", k)
if err := satisfice(des); err != nil {
log.Fatal(err)
diff --git a/cmd/acme/solve_http.go b/cmd/acme/solve_http.go
deleted file mode 100644
index f01f1b4..0000000
--- a/cmd/acme/solve_http.go
+++ /dev/null
@@ -1,41 +0,0 @@
-package main
-
-import (
- "io"
- "net/http"
- "path"
-
- "dim13.org/acme"
-)
-
-type httpChallenge struct {
- Webroot string
-}
-
-var httpSrv http.Server
-
-func httpSolver(addr string) {
- httpSrv = http.Server{Addr: addr}
- go httpSrv.ListenAndServe()
-}
-
-func (c *httpChallenge) Solve(token, keyAuth string) error {
- if c.Webroot != "" {
- p := path.Join(c.Webroot, acme.WellKnown, token)
- fd, err := acme.CreatePubFile(p)
- if err != nil {
- return err
- }
- defer fd.Close()
- _, err = io.WriteString(fd, keyAuth)
- return err
- } else {
- p := path.Join(acme.WellKnown, token)
- http.HandleFunc(p, func(w http.ResponseWriter, r *http.Request) {
- io.WriteString(w, keyAuth)
- })
- return nil
- }
-}
-
-func (c *httpChallenge) Solved() error { return nil }
diff --git a/cmd/acme/solve_tls.go b/cmd/acme/solve_tls.go
deleted file mode 100644
index 06ab7d0..0000000
--- a/cmd/acme/solve_tls.go
+++ /dev/null
@@ -1 +0,0 @@
-package main