aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2016-02-15 20:28:29 +0100
committerDimitri Sokolyuk <demon@dim13.org>2016-02-15 20:28:29 +0100
commitfe4a510467864c449f971460134878f4ddcd4db4 (patch)
tree0a3d4b75edd81940a528ad82a0fa3439634a2cc4
parent53ac1e3c8afe12ff1f4a619f2f1d01b48fe7dfb0 (diff)
Use goroutine
-rw-r--r--cmd/acme/config.go15
1 files changed, 8 insertions, 7 deletions
diff --git a/cmd/acme/config.go b/cmd/acme/config.go
index 04b9ab2..0df24de 100644
--- a/cmd/acme/config.go
+++ b/cmd/acme/config.go
@@ -115,14 +115,15 @@ func LoadConfig(fname string) (*Config, error) {
}
func checkWWW(altnames []string) []string {
- find := func(prefix string) (ret []string) {
- for _, an := range altnames {
- if strings.HasPrefix(an, prefix) {
- ret = append(ret, an[len(prefix):])
+ ch := make(chan string)
+ go func(ch chan string, s []string) {
+ for _, an := range s {
+ if strings.HasPrefix(an, "www.") {
+ ch <- an[4:]
}
}
- return
- }
+ close(ch)
+ }(ch, altnames)
has := func(s string) bool {
for _, an := range altnames {
if an == s {
@@ -131,7 +132,7 @@ func checkWWW(altnames []string) []string {
}
return false
}
- for _, d := range find("www.") {
+ for d := range ch {
if !has(d) {
altnames = append(altnames, d)
}