URL shortener and file dump for hashru.link https://hashru.link
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

30 lines
584 B

package rushlink
import (
// FileUploadFileSystem is a HTTP filesystem handler
type FileUploadFileSystem struct {
fs http.FileSystem
// Open opens a file
func (fs FileUploadFileSystem) Open(path string) (http.File, error) {
file, err := fs.fs.Open(path)
if err != nil {
return nil, errors.Wrap(err, "opening file")
stat, err := file.Stat()
if err != nil {
return nil, errors.Wrap(err, "file.Stat()")
if stat.IsDir() {
return nil, errors.New("directory index not allowed")
return file, nil