From 5dc004037562d653cc33d5798e17e2f415b210cb Mon Sep 17 00:00:00 2001 From: Gary Marigliano Date: Thu, 9 Mar 2023 11:48:20 +0100 Subject: [PATCH 1/8] Make deep path depth configurable Allow to configure with --deep-path-max-depth the depth of paths to combine when listing the folders. The default is still 5. --- httpstaticserver.go | 25 +++++++++++++------------ main.go | 4 ++++ 2 files changed, 17 insertions(+), 12 deletions(-) diff --git a/httpstaticserver.go b/httpstaticserver.go index c5ddf9e..4e4e182 100644 --- a/httpstaticserver.go +++ b/httpstaticserver.go @@ -48,15 +48,16 @@ type Directory struct { } type HTTPStaticServer struct { - Root string - Prefix string - Upload bool - Delete bool - Title string - Theme string - PlistProxy string - GoogleTrackerID string - AuthType string + Root string + Prefix string + Upload bool + Delete bool + Title string + Theme string + PlistProxy string + GoogleTrackerID string + AuthType string + DeepPathMaxDepth int indexes []IndexFileItem m *mux.Router @@ -571,6 +572,7 @@ func (s *HTTPStaticServer) hJSONList(w http.ResponseWriter, r *http.Request) { auth := s.readAccessConf(realPath) auth.Upload = auth.canUpload(r) auth.Delete = auth.canDelete(r) + maxDepth := s.DeepPathMaxDepth // path string -> info os.FileInfo fileInfoMap := make(map[string]os.FileInfo, 0) @@ -615,7 +617,7 @@ func (s *HTTPStaticServer) hJSONList(w http.ResponseWriter, r *http.Request) { lr.Name = filepath.ToSlash(name) // fix for windows } if info.IsDir() { - name := deepPath(realPath, info.Name()) + name := deepPath(realPath, info.Name(), maxDepth) lr.Name = name lr.Path = filepath.Join(filepath.Dir(path), name) lr.Type = "dir" @@ -740,9 +742,8 @@ func (s *HTTPStaticServer) readAccessConf(realPath string) (ac AccessConf) { return } -func deepPath(basedir, name string) string { +func deepPath(basedir, name string, maxDepth int) string { // loop max 5, incase of for loop not finished - maxDepth := 5 for depth := 0; depth <= maxDepth; depth += 1 { finfos, err := ioutil.ReadDir(filepath.Join(basedir, name)) if err != nil || len(finfos) != 1 { diff --git a/main.go b/main.go index 0b5aea4..3f2596d 100644 --- a/main.go +++ b/main.go @@ -49,6 +49,7 @@ type Configure struct { ID string `yaml:"id"` // for oauth2 Secret string `yaml:"secret"` // for oauth2 } `yaml:"auth"` + DeepPathMaxDepth int `yaml:"deep-path-max-depth"` } type httpLogger struct{} @@ -99,6 +100,7 @@ func parseFlags() error { gcfg.Auth.OpenID = defaultOpenID gcfg.GoogleTrackerID = "UA-81205425-2" gcfg.Title = "Go HTTP File Server" + gcfg.DeepPathMaxDepth = 5 kingpin.HelpFlag.Short('h') kingpin.Version(versionMessage()) @@ -121,6 +123,7 @@ func parseFlags() error { kingpin.Flag("plistproxy", "plist proxy when server is not https").Short('p').StringVar(&gcfg.PlistProxy) kingpin.Flag("title", "server title").StringVar(&gcfg.Title) kingpin.Flag("google-tracker-id", "set to empty to disable it").StringVar(&gcfg.GoogleTrackerID) + kingpin.Flag("deep-path-max-depth", "set to -1 to not combine dirs").IntVar(&gcfg.DeepPathMaxDepth) kingpin.Parse() // first parse conf @@ -172,6 +175,7 @@ func main() { ss.Upload = gcfg.Upload ss.Delete = gcfg.Delete ss.AuthType = gcfg.Auth.Type + ss.DeepPathMaxDepth = gcfg.DeepPathMaxDepth if gcfg.PlistProxy != "" { u, err := url.Parse(gcfg.PlistProxy) From 08e2cf764d06c3c065d343b1cfc070f4dc358740 Mon Sep 17 00:00:00 2001 From: codeskyblue Date: Tue, 19 Dec 2023 10:37:39 +0800 Subject: [PATCH 2/8] limit cors only get, head, options --- .gitignore | 1 + README.md | 2 +- main.go | 2 +- testdata/filetypes/script.js | 1 + 4 files changed, 4 insertions(+), 2 deletions(-) create mode 100644 testdata/filetypes/script.js diff --git a/.gitignore b/.gitignore index f88a521..ec435b4 100644 --- a/.gitignore +++ b/.gitignore @@ -31,3 +31,4 @@ assets_vfsdata.go *.swp dist/ +.DS_Store diff --git a/README.md b/README.md index b8837b4..e289474 100644 --- a/README.md +++ b/README.md @@ -33,7 +33,7 @@ Tested with go-1.16 1. [x] Apple ipa auto generate .plist file, qrcode can be recognized by iphone (Require https) 1. [x] Plist proxy 1. [ ] Download count statistics -1. [x] CORS enabled +1. [x] CORS enabled (AllowMethods: GET, HEAD, OPTIONS) 1. [ ] Offline download 1. [ ] Code file preview 1. [ ] Edit file support diff --git a/main.go b/main.go index 3f2596d..179f7b2 100644 --- a/main.go +++ b/main.go @@ -211,7 +211,7 @@ func main() { // CORS if gcfg.Cors { - hdlr = handlers.CORS()(hdlr) + hdlr = handlers.CORS(handlers.AllowedMethods([]string{"GET", "HEAD", "OPTIONS"}))(hdlr) } if gcfg.XHeaders { hdlr = handlers.ProxyHeaders(hdlr) diff --git a/testdata/filetypes/script.js b/testdata/filetypes/script.js new file mode 100644 index 0000000..414c010 --- /dev/null +++ b/testdata/filetypes/script.js @@ -0,0 +1 @@ +document.write("Hello world!") \ No newline at end of file From eacf2d1dc3f2a95a12e4d14cb868dc3e9a46cf46 Mon Sep 17 00:00:00 2001 From: codeskyblue Date: Tue, 19 Dec 2023 11:05:52 +0800 Subject: [PATCH 3/8] cors enable by default --- README.md | 2 +- main.go | 20 +++++++++++++++----- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index e289474..b8837b4 100644 --- a/README.md +++ b/README.md @@ -33,7 +33,7 @@ Tested with go-1.16 1. [x] Apple ipa auto generate .plist file, qrcode can be recognized by iphone (Require https) 1. [x] Plist proxy 1. [ ] Download count statistics -1. [x] CORS enabled (AllowMethods: GET, HEAD, OPTIONS) +1. [x] CORS enabled 1. [ ] Offline download 1. [ ] Code file preview 1. [ ] Edit file support diff --git a/main.go b/main.go index 179f7b2..17c679c 100644 --- a/main.go +++ b/main.go @@ -33,7 +33,6 @@ type Configure struct { HTTPAuth string `yaml:"httpauth"` Cert string `yaml:"cert"` Key string `yaml:"key"` - Cors bool `yaml:"cors"` Theme string `yaml:"theme"` XHeaders bool `yaml:"xheaders"` Upload bool `yaml:"upload"` @@ -118,7 +117,6 @@ func parseFlags() error { kingpin.Flag("upload", "enable upload support").BoolVar(&gcfg.Upload) kingpin.Flag("delete", "enable delete support").BoolVar(&gcfg.Delete) kingpin.Flag("xheaders", "used when behide nginx").BoolVar(&gcfg.XHeaders) - kingpin.Flag("cors", "enable cross-site HTTP request").BoolVar(&gcfg.Cors) kingpin.Flag("debug", "enable debug mode").BoolVar(&gcfg.Debug) kingpin.Flag("plistproxy", "plist proxy when server is not https").Short('p').StringVar(&gcfg.PlistProxy) kingpin.Flag("title", "server title").StringVar(&gcfg.Title) @@ -151,6 +149,19 @@ func fixPrefix(prefix string) string { return prefix } +func cors(next http.Handler) http.Handler { + // access control and CORS middleware + return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + w.Header().Set("Access-Control-Allow-Origin", "*") + w.Header().Set("Access-Control-Allow-Methods", "*") + w.Header().Set("Access-Control-Allow-Headers", "*") + if r.Method == "OPTIONS" { + return + } + next.ServeHTTP(w, r) + }) +} + func main() { if err := parseFlags(); err != nil { log.Fatal(err) @@ -210,9 +221,8 @@ func main() { } // CORS - if gcfg.Cors { - hdlr = handlers.CORS(handlers.AllowedMethods([]string{"GET", "HEAD", "OPTIONS"}))(hdlr) - } + hdlr = cors(hdlr) + if gcfg.XHeaders { hdlr = handlers.ProxyHeaders(hdlr) } From dd8692b656c0549ca8e06197d951afa347e9a1f3 Mon Sep 17 00:00:00 2001 From: Jiawen Geng Date: Sat, 7 Oct 2023 16:54:56 +0800 Subject: [PATCH 4/8] fix docker build 3.612 E: Failed to fetch http://deb.debian.org/debian/dists/stretch-updates/main/binary-amd64/Packages 404 Not Found [IP: 151.101.202.132 80] 3.612 E: Some index files failed to download. They have been ignored, or old ones used instead. ------ Dockerfile:10 -------------------- 8 | WORKDIR /app 9 | RUN mkdir -p /app/public 10 | >>> RUN apt-get update && apt-get install -y ca-certificates --- docker/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker/Dockerfile b/docker/Dockerfile index f0ee4bb..d136951 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -3,7 +3,7 @@ WORKDIR /app/gohttpserver ADD . /app/gohttpserver RUN CGO_ENABLED=0 GOOS=linux go build -ldflags '-X main.VERSION=docker' -o gohttpserver -FROM debian:stretch +FROM debian:stable WORKDIR /app RUN mkdir -p /app/public RUN apt-get update && apt-get install -y ca-certificates From bd2d79953d92186a49e30865b83282466714e222 Mon Sep 17 00:00:00 2001 From: Kushal Azim Ekram Date: Sat, 11 Mar 2023 21:16:26 -0800 Subject: [PATCH 5/8] Added alpine and upx based container build. Much smaller size ~14mb --- docker/Dockerfile.alpine | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 docker/Dockerfile.alpine diff --git a/docker/Dockerfile.alpine b/docker/Dockerfile.alpine new file mode 100644 index 0000000..5e85e69 --- /dev/null +++ b/docker/Dockerfile.alpine @@ -0,0 +1,19 @@ +FROM golang:1.16.0-alpine as build + +WORKDIR /app +COPY go.mod . +COPY go.sum . +RUN go mod download +# Binary Compression +RUN apk add upx --no-cache + +# Build app and pack using upx +ADD . /app +RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags '-s -w -X main.VERSION=docker' -o gohttpserver && upx gohttpserver + +FROM alpine:3 +WORKDIR /app +ADD assets /usr/local/bin/assets +COPY --from=build /app/gohttpserver /usr/local/bin/gohttpserver +EXPOSE 8000 +ENTRYPOINT [ "/usr/local/bin/gohttpserver" ] From dbd0e06c7360795d8a44ea157846447af877d86d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 25 Feb 2023 01:35:46 +0000 Subject: [PATCH 6/8] Bump golang.org/x/net from 0.0.0-20201021035429-f5854403a974 to 0.7.0 Bumps [golang.org/x/net](https://github.com/golang/net) from 0.0.0-20201021035429-f5854403a974 to 0.7.0. - [Release notes](https://github.com/golang/net/releases) - [Commits](https://github.com/golang/net/commits/v0.7.0) --- updated-dependencies: - dependency-name: golang.org/x/net dependency-type: indirect ... Signed-off-by: dependabot[bot] --- go.mod | 4 ++-- go.sum | 31 ++++++++++++++++++++++++------- 2 files changed, 26 insertions(+), 9 deletions(-) diff --git a/go.mod b/go.mod index d791460..a6d72c3 100644 --- a/go.mod +++ b/go.mod @@ -19,7 +19,7 @@ require ( github.com/shogo82148/androidbinary v0.0.0-20180627093851-01c4bfa8b3b5 github.com/smartystreets/goconvey v1.6.4 // indirect github.com/stretchr/testify v1.3.0 - golang.org/x/net v0.0.0-20201021035429-f5854403a974 // indirect - golang.org/x/text v0.3.3 + golang.org/x/net v0.7.0 // indirect + golang.org/x/text v0.7.0 howett.net/plist v0.0.0-20201203080718-1454fab16a06 // indirect ) diff --git a/go.sum b/go.sum index 9f46b00..1192f8f 100644 --- a/go.sum +++ b/go.sum @@ -51,20 +51,37 @@ github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9 github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/testify v1.3.0 h1:TivCn/peBQ7UY8ooIcPgZFpTNSz0Q2U6UrFlUfqbe0Q= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= +github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= -golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= +golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20201021035429-f5854403a974 h1:IX6qOQeG5uLjB/hjjwjedwfjND0hgjPMMyO1RoIXQNI= -golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= +golang.org/x/net v0.7.0 h1:rJrUqqhjsgNp7KqAIc25s9pZnjU7TUcSY7HcVZjdn1g= +golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= +golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= +golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= -golang.org/x/text v0.3.3 h1:cokOdA+Jmi5PJGXLlLllQSgYigAEfHXJAERHVMaCc2k= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= +golang.org/x/text v0.7.0 h1:4BRB4x83lYWy72KwLD/qYDuTu7q9PjSagHvijDw7cLo= +golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= +golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= From 2a0e1f74001f0516ac0a063f21857bc06aa26ad5 Mon Sep 17 00:00:00 2001 From: Gary Marigliano Date: Mon, 13 Mar 2023 08:59:20 +0100 Subject: [PATCH 7/8] Add no-index option to disable indexing and search --- assets/index.html | 3 +++ httpstaticserver.go | 30 +++++++++++++++++------------- main.go | 7 +++++-- 3 files changed, 25 insertions(+), 15 deletions(-) diff --git a/assets/index.html b/assets/index.html index e22220b..2dc0e88 100644 --- a/assets/index.html +++ b/assets/index.html @@ -64,6 +64,8 @@ [[end]] + + [[if not .NoIndex ]] + [[end]] diff --git a/httpstaticserver.go b/httpstaticserver.go index 4e4e182..694ef59 100644 --- a/httpstaticserver.go +++ b/httpstaticserver.go @@ -58,13 +58,14 @@ type HTTPStaticServer struct { GoogleTrackerID string AuthType string DeepPathMaxDepth int + NoIndex bool indexes []IndexFileItem m *mux.Router bufPool sync.Pool // use sync.Pool caching buf to reduce gc ratio } -func NewHTTPStaticServer(root string) *HTTPStaticServer { +func NewHTTPStaticServer(root string, noIndex bool) *HTTPStaticServer { // if root == "" { // root = "./" // } @@ -82,20 +83,23 @@ func NewHTTPStaticServer(root string) *HTTPStaticServer { bufPool: sync.Pool{ New: func() interface{} { return make([]byte, 32*1024) }, }, + NoIndex: noIndex, + } + + if !noIndex { + go func() { + time.Sleep(1 * time.Second) + for { + startTime := time.Now() + log.Println("Started making search index") + s.makeIndex() + log.Printf("Completed search index in %v", time.Since(startTime)) + //time.Sleep(time.Second * 1) + time.Sleep(time.Minute * 10) + } + }() } - go func() { - time.Sleep(1 * time.Second) - for { - startTime := time.Now() - log.Println("Started making search index") - s.makeIndex() - log.Printf("Completed search index in %v", time.Since(startTime)) - //time.Sleep(time.Second * 1) - time.Sleep(time.Minute * 10) - } - }() - // routers for Apple *.ipa m.HandleFunc("/-/ipa/plist/{path:.*}", s.hPlist) m.HandleFunc("/-/ipa/link/{path:.*}", s.hIpaLink) diff --git a/main.go b/main.go index 17c679c..c78f96e 100644 --- a/main.go +++ b/main.go @@ -48,7 +48,8 @@ type Configure struct { ID string `yaml:"id"` // for oauth2 Secret string `yaml:"secret"` // for oauth2 } `yaml:"auth"` - DeepPathMaxDepth int `yaml:"deep-path-max-depth"` + DeepPathMaxDepth int `yaml:"deep-path-max-depth"` + NoIndex bool `yaml:"no-index"` } type httpLogger struct{} @@ -100,6 +101,7 @@ func parseFlags() error { gcfg.GoogleTrackerID = "UA-81205425-2" gcfg.Title = "Go HTTP File Server" gcfg.DeepPathMaxDepth = 5 + gcfg.NoIndex = false kingpin.HelpFlag.Short('h') kingpin.Version(versionMessage()) @@ -122,6 +124,7 @@ func parseFlags() error { kingpin.Flag("title", "server title").StringVar(&gcfg.Title) kingpin.Flag("google-tracker-id", "set to empty to disable it").StringVar(&gcfg.GoogleTrackerID) kingpin.Flag("deep-path-max-depth", "set to -1 to not combine dirs").IntVar(&gcfg.DeepPathMaxDepth) + kingpin.Flag("no-index", "disable indexing").BoolVar(&gcfg.NoIndex) kingpin.Parse() // first parse conf @@ -178,7 +181,7 @@ func main() { log.Printf("url prefix: %s", gcfg.Prefix) } - ss := NewHTTPStaticServer(gcfg.Root) + ss := NewHTTPStaticServer(gcfg.Root, gcfg.NoIndex) ss.Prefix = gcfg.Prefix ss.Theme = gcfg.Theme ss.Title = gcfg.Title From e31775af89cba945688d72175fee9276b7a38bad Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 19 Dec 2023 03:15:17 +0000 Subject: [PATCH 8/8] Bump golang.org/x/net from 0.7.0 to 0.17.0 Bumps [golang.org/x/net](https://github.com/golang/net) from 0.7.0 to 0.17.0. - [Commits](https://github.com/golang/net/compare/v0.7.0...v0.17.0) --- updated-dependencies: - dependency-name: golang.org/x/net dependency-type: indirect ... Signed-off-by: dependabot[bot] --- go.mod | 4 ++-- go.sum | 18 +++++++++++++++--- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/go.mod b/go.mod index a6d72c3..6a9d358 100644 --- a/go.mod +++ b/go.mod @@ -19,7 +19,7 @@ require ( github.com/shogo82148/androidbinary v0.0.0-20180627093851-01c4bfa8b3b5 github.com/smartystreets/goconvey v1.6.4 // indirect github.com/stretchr/testify v1.3.0 - golang.org/x/net v0.7.0 // indirect - golang.org/x/text v0.7.0 + golang.org/x/net v0.17.0 // indirect + golang.org/x/text v0.13.0 howett.net/plist v0.0.0-20201203080718-1454fab16a06 // indirect ) diff --git a/go.sum b/go.sum index 1192f8f..e51a073 100644 --- a/go.sum +++ b/go.sum @@ -54,33 +54,45 @@ github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UV github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= +golang.org/x/crypto v0.14.0/go.mod h1:MVFd36DqK4CsrnJYDkBA3VC4m2GkXAM0PvzMCn4JQf4= golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= +golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs= golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= -golang.org/x/net v0.7.0 h1:rJrUqqhjsgNp7KqAIc25s9pZnjU7TUcSY7HcVZjdn1g= -golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= +golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= +golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= +golang.org/x/net v0.17.0 h1:pVaXccu2ozPjCXewfr1S7xza/zcXTity9cCdXQYSjIM= +golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= +golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo= +golang.org/x/term v0.13.0/go.mod h1:LTmsnFJwVN6bCy1rVCoS+qHT1HhALEFxKncY3WNNh4U= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= -golang.org/x/text v0.7.0 h1:4BRB4x83lYWy72KwLD/qYDuTu7q9PjSagHvijDw7cLo= golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= +golang.org/x/text v0.13.0 h1:ablQoSUd0tRdKxZewP80B+BaqeKJuVhuRxj/dkrun3k= +golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= +golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY=