aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--go.mod6
-rw-r--r--go.sum6
-rw-r--r--main.go47
3 files changed, 11 insertions, 48 deletions
diff --git a/go.mod b/go.mod
index 8c256a9..65e6a61 100644
--- a/go.mod
+++ b/go.mod
@@ -1,8 +1,10 @@
module go.awhk.org/go-import-redirect
-go 1.17
+go 1.18
require (
github.com/aws/aws-lambda-go v1.27.0
- go.awhk.org/gosdd v0.2.0
+ go.awhk.org/core v0.0.0-20220618115257-41a47c757dca
)
+
+require github.com/google/go-cmp v0.5.8 // indirect
diff --git a/go.sum b/go.sum
index 95ea776..e2c59b7 100644
--- a/go.sum
+++ b/go.sum
@@ -6,6 +6,8 @@ github.com/cpuguy83/go-md2man/v2 v2.0.0/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsr
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
+github.com/google/go-cmp v0.5.8 h1:e6P7q2lk1O+qJJb4BtCQXlK8vWEO8V1ZeuEdJNOqZyg=
+github.com/google/go-cmp v0.5.8/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
@@ -14,8 +16,8 @@ github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+
github.com/stretchr/testify v1.6.1 h1:hDPOHmpOpP40lSULcqw7IrRb/u7w6RpDC9399XyoNd0=
github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
github.com/urfave/cli/v2 v2.2.0/go.mod h1:SE9GqnLQmjVa0iPEY0f1w3ygNIYcIJ0OKPMoW2caLfQ=
-go.awhk.org/gosdd v0.2.0 h1:fNqC+9LtwfwUxDDq0d8cIoFllbzZmi8+fUIlew5D7vc=
-go.awhk.org/gosdd v0.2.0/go.mod h1:9LeQ9cX4ZghIWv6kF9ljk83NzsZJqQR3/R61DbsU3YI=
+go.awhk.org/core v0.0.0-20220618115257-41a47c757dca h1:BFEKF8Ee3JyltAiViWR/MNedIvdqO6N3ywTj9NoGMCo=
+go.awhk.org/core v0.0.0-20220618115257-41a47c757dca/go.mod h1:5C9oWobMcQLGj+rcfvAvSiGrp/vslOD0eUiwYymTaQI=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
diff --git a/main.go b/main.go
index 00c0601..aa2ce53 100644
--- a/main.go
+++ b/main.go
@@ -9,7 +9,6 @@ import (
"context"
"flag"
"log"
- "net"
"net/http"
"os"
"os/signal"
@@ -17,7 +16,7 @@ import (
"syscall"
"time"
- "go.awhk.org/gosdd"
+ "go.awhk.org/core"
)
var (
@@ -35,15 +34,8 @@ func main() {
srv := http.Server{Handler: &redirector{regexp.MustCompile(*from), *to, *vcs}}
go func() {
- ln, err := listenSD()
- if err != nil {
- log.Fatalln("listenSD:", err)
- }
- if ln == nil {
- ln = listenFlag()
- }
- if err := srv.Serve(ln); err != nil && err != http.ErrServerClosed {
- log.Fatalln("server.ListenAndServe:", err)
+ if err := srv.Serve(core.Must(core.Listen(*addr))); err != nil && err != http.ErrServerClosed {
+ log.Fatalln("server.Serve:", err)
}
}()
@@ -54,36 +46,3 @@ func main() {
log.Fatalln("server.Shutdown:", err)
}
}
-
-func listenFlag() net.Listener {
- if (*addr)[0] != '/' {
- ln, err := net.Listen("tcp", *addr)
- if err != nil {
- log.Fatalln("net.Listen:", err)
- }
- return ln
- }
- ln, err := net.Listen("unix", *addr)
- if err != nil {
- log.Fatalln("net.Listen:", err)
- }
- // We do not do any authorization anyway, so 0666 makes sense here.
- if err = os.Chmod(*addr, 0666); err != nil {
- log.Println("Failed to set permissions on UNIX socket:", err)
- }
- return ln
-}
-
-func listenSD() (net.Listener, error) {
- fds, err := gosdd.SDListenFDs(true)
- if err != nil {
- if err == gosdd.ErrNoSDSupport {
- return nil, nil
- }
- return nil, err
- }
- if len(fds) == 0 {
- return nil, nil
- }
- return net.FileListener(fds[0])
-}