Commit graph

882 commits

Author SHA1 Message Date
Mickael Kerjean
81af97acd2 improve (css): form design for page 2022-11-12 22:46:15 +11:00
Mickael Kerjean
10daf893cd improve (plg_authenticate_htpasswd): support additional algorithm 2022-11-12 00:50:45 +11:00
Mickael Kerjean
3b5bc80565 improve (UX): eye candy 2022-11-10 02:39:29 +11:00
Mickael Kerjean
9a98da7978 feature (config): toggle for config file encryption
optin config encryption #482
2022-11-10 00:19:45 +11:00
Mickael Kerjean
c828b22f7a improve (middleware): content for description fields 2022-11-10 00:16:08 +11:00
Mickael Kerjean
7b4e3eba79 feature (admin): simplify admin backend page 2022-11-09 08:09:01 +11:00
Mickael Kerjean
e0f2f29307 feature (htpasswd): new authentication middleware 2022-11-09 14:00:48 +11:00
Mickael Kerjean
92219db637 feature (middleware): passthrough middleware 2022-11-09 13:59:35 +11:00
Mickael Kerjean
98ef1d64e7 fix (fs): recursive removal in local and tmp backend 2022-11-03 00:12:09 +11:00
Mickael Kerjean
34d8f0e44f improve (/about): add links to installed plugins 2022-10-12 00:10:54 +11:00
Mickael Kerjean
f3eaf35d84 fix (backendID): hide home when using shared link 2022-10-11 08:08:38 +11:00
Mickael Kerjean
ce935525db fix (config): concurrent issue
fatal error: sync: unlock of unlocked mutex

goroutine 6 [running]:
runtime.throw(0x1420562, 0x1e)
	/usr/local/go/src/runtime/panic.go:1117 +0x72 fp=0xc0000b5ec8 sp=0xc0000b5e98 pc=0x439e92
sync.throw(0x1420562, 0x1e)
	/usr/local/go/src/runtime/panic.go:1103 +0x35 fp=0xc0000b5ee8 sp=0xc0000b5ec8 pc=0x46e395
sync.(*Mutex).unlockSlow(0x1f97138, 0xffffffff)
	/usr/local/go/src/sync/mutex.go:196 +0xd8 fp=0xc0000b5f10 sp=0xc0000b5ee8 pc=0x47d458
sync.(*Mutex).Unlock(...)
	/usr/local/go/src/sync/mutex.go:190
github.com/mickael-kerjean/filestash/server/common.(*Configuration).Get(0x1f97120, 0x140a506, 0x14, 0x0)
	/home/mickael/Documents/projects/filestash/server/common/config.go:438 +0x113 fp=0xc0000b5f90 sp=0xc0000b5f10 pc=0x7ba313
github.com/mickael-kerjean/filestash/server/common.init.0.func1(0x0)
	/home/mickael/Documents/projects/filestash/server/common/api.go:16 +0x46 fp=0xc0000b5fc0 sp=0xc0000b5f90 pc=0x7c7906
github.com/mickael-kerjean/filestash/server/common.init.0.func3()
	/home/mickael/Documents/projects/filestash/server/common/api.go:40 +0x29 fp=0xc0000b5fe0 sp=0xc0000b5fc0 pc=0x7c7c49
runtime.goexit()
	/usr/local/go/src/runtime/asm_amd64.s:1371 +0x1 fp=0xc0000b5fe8 sp=0xc0000b5fe0 pc=0x4733e1
created by github.com/mickael-kerjean/filestash/server/common.init.0
	/home/mickael/Documents/projects/filestash/server/common/api.go:39 +0x5a

goroutine 1 [runnable, locked to thread]:
os.(*File).Read(0xc000186000, 0xc000280400, 0x100, 0x100, 0x401, 0xc000280000, 0x400)
	/usr/local/go/src/os/file.go:113 +0x265
io.ReadAll(0x1677e40, 0xc000186000, 0x0, 0x1ff, 0xc000186000, 0x0, 0x0)
	/usr/local/go/src/io/io.go:633 +0xdf
io/ioutil.ReadAll(...)
	/usr/local/go/src/io/ioutil/ioutil.go:27
github.com/mickael-kerjean/filestash/server/common.LoadConfig(0x0, 0x0, 0x0, 0x1fc66e0, 0x0)
	/home/mickael/Documents/projects/filestash/server/common/config_state.go:32 +0x85
github.com/mickael-kerjean/filestash/server/common.(*Configuration).Load(0x1f97120)
	/home/mickael/Documents/projects/filestash/server/common/config.go:214 +0x34
github.com/mickael-kerjean/filestash/server/common.init.1()
	/home/mickael/Documents/projects/filestash/server/common/config.go:53 +0x85
2022-10-10 08:22:45 +11:00
Mickael Kerjean
9a6e24c296 feature (tagging): prepare the ground for a new tagging feature 2022-10-06 23:33:58 +11:00
Mickael Kerjean
9f083ea94c improve (logger): logger interface for tests or plugin swap 2022-10-06 08:02:25 +11:00
Mickael Kerjean
3d3b59524a improve (template): contains function in template 2022-10-05 08:35:50 +11:00
Mickael Kerjean
8ad705b70c feature (tmpl): enable contains function in tmpl filter 2022-10-05 07:54:03 +11:00
Mickael Kerjean
70884300a3 fix (plg_image_thumbnail): broken build 2022-10-04 17:49:04 +11:00
Mickael Kerjean
9b5af40f32 maintain (plg_security_scanner): new endpoint ideas
with new ideas coming from the hn thread https://news.ycombinator.com/item?id=33054379
2022-09-04 07:39:20 +10:00
Mickael Kerjean
42b2435c16 fix (plg_image_thumbnail): build issue 2022-10-04 00:26:40 +11:00
Mickael Kerjean
46b67d6711 feature (thumbnail): complete revamp of thumbnail generation 2022-10-03 23:40:46 +11:00
Mickael Kerjean
9a1045cb02 feature (plg_image_thumbnail): clean before release 2022-10-03 22:28:58 +11:00
Mickael Kerjean
01b418b608 fix (contentType): disable js in file cat API 2022-10-03 00:06:41 +11:00
Mickael Kerjean
918965ddbe feature (plg_image_thumbnail): new thumbnail generation
This plugin will replace plg_image_light once it has the same
features. It is much easier to install, fixing #507, #368 and every
other ticket that mention issues to compile Filestash
2022-10-03 00:01:24 +11:00
Mickael Kerjean
7a76f7dcda maintain (logging): improve some log message 2022-09-28 22:52:33 +10:00
Mickael Kerjean
e8968d824a fix (window): cross compile for windows 2022-09-28 21:16:10 +10:00
Mickael Kerjean
706adc3475 fix (config): remove useless / buggy option 2022-09-28 21:03:21 +10:00
Mickael Kerjean
21a72b2048 maintain (generator): simplify build command
Before this commit our build had this option:
-ldflags "-X github.com/mickael-kerjean/filestash/server/common.BUILD_DATE=`date -u +%Y%m%d` -X github.com/mickael-kerjean/filestash/server/common.BUILD_REF=`git rev-parse HEAD`"

Doing this via a generator is much easier for people getting started
with Filestash
2022-09-28 18:11:58 +10:00
Mickael Kerjean
3013141999 clean (sqlite): sqlite without cgo
We want to make it easier to compile the project for newcomers
2022-09-28 13:58:25 +10:00
Mickael Kerjean
b9a177aa26 maintain (404): change 404 page 2022-09-21 17:01:12 +10:00
Mickael Kerjean
9d596704e7 feature (api): public api 2022-09-20 17:43:26 +10:00
Mickael Kerjean
548b057d6a fix (selfsigned): self signed certificate issues 2022-09-15 22:38:54 +10:00
Mickael Kerjean
1844c6d33e maintain (debug): add debug statements 2022-09-15 19:32:17 +10:00
Mickael Kerjean
0748e56092 fix (recover): recover from possible panic 2022-09-15 18:53:36 +10:00
Mickael Kerjean
7a9f94ce6d fix (middleware): "cannot parse time" issue causing infinite loop 2022-09-15 07:32:04 +10:00
Mickael Kerjean
e2874f2a9b improve (404): 404 errors 2022-09-14 23:55:11 +10:00
Mickael Kerjean
d0c8f75b01 fix (rate limit): update default value for rate limit 2022-09-13 17:34:42 +10:00
Mickael Kerjean
d0e2c4a227 maintain (error): add internal error 2022-09-13 17:28:53 +10:00
Mickael Kerjean
87443235a2 fix (backend): clean up caching 2022-09-13 15:24:21 +10:00
Mickael Kerjean
720073a181 Merge branch 'master' of ssh://github.com/mickael-kerjean/filestash 2022-09-13 14:50:25 +10:00
thielepaul
0d55704031
fix (sftp_backend): wait until all requests are finished before closing (#506) 2022-09-13 14:49:15 +10:00
Mickael Kerjean
865442ea59 fix (vet): go vet - #505 2022-09-13 14:12:13 +10:00
Mickael Kerjean
76bf595e22 feature (token): token generation for API 2022-09-13 13:25:17 +10:00
Mickael Kerjean
18279dcb4e fix (middleware): broken build 2022-09-13 13:21:21 +10:00
Mickael Kerjean
3f933e08db feature (preflight): preflight to /api/files 2022-09-13 13:12:26 +10:00
Mickael Kerjean
ccb156678b fix (cache): RLock instead of lock 2022-09-13 13:01:03 +10:00
Mickael Kerjean
66c6788b94 feature (doc): embed documentation 2022-09-13 12:53:02 +10:00
Mickael Kerjean
fa84e37df2 refactor (api): move rm/mv/touch/mkdir to http post 2022-09-13 12:51:27 +10:00
Mickael Kerjean
0acf94ce0c fix (middleware): bodyparser must not return an error if no body 2022-09-12 01:05:44 +10:00
Mickael Kerjean
bd9deb858d feature (crypto): nonce generator as a counter 2022-09-09 23:22:47 +10:00
Mickael Kerjean
7e5ec42f6c maintain (config): openup 2 methods for Config for plugins
This is for plugins to do more fine grained stuff with the global
Config object
2022-09-09 15:12:14 +10:00
Mickael Kerjean
d53cbefc54 fix (plg_image_ascii): reasonable content type 2022-09-08 15:19:10 +10:00
Mickael Kerjean
bb7ea98f02 fix (sync): concurrent map read and map write 2022-09-08 14:55:26 +10:00
Mickael Kerjean
bfe809d5ab cleanup (plugin): disable plugin that don't seem to be used 2022-09-07 00:51:32 +10:00
Mickael Kerjean
b1c1f9e0f2 feature (api): api configuration 2022-09-07 00:50:23 +10:00
Mickael Kerjean
3a63eb0777 feature (plg_image_ascii): image ascii transform
The idea here is to be able to use curl and have Filestash to render
image in a terminal friendly fashion
2022-09-06 22:27:12 +10:00
Mickael Kerjean
549d6805f0 feature (api): prepare api for public use 2022-09-05 11:59:28 +10:00
Mickael Kerjean
c7e40e42db feature (429): rate limit authentication endpoints 2022-09-04 22:26:03 +10:00
Mickael Kerjean
952f45097e feature (rest): setup for rest api 2022-09-04 18:39:34 +10:00
Mickael Kerjean
dd6f0ca407 feature (cancellation): logic to cancel request in client and server 2022-09-02 17:26:32 +10:00
Mickael Kerjean
0bfab6eff2 feature (report): activity report plugin 2022-09-02 00:58:43 +10:00
Mickael Kerjean
bb9fb89d44 fix (concurrency): prevent concurrent map writes
when booting up, we have a lot of Set in the Config alongside a lot of
Get, Let's block all the concurrent Set
2022-09-01 23:28:29 +10:00
Mickael Kerjean
231e5ba18d feature (auditing): pluggable auditing in admin console 2022-09-01 07:37:59 +10:00
Mickael Kerjean
75696a8088 fix (plg_backend_tmp): incorrect permission when creating folder 2022-08-31 00:40:23 +10:00
Mickael Kerjean
a82177e719 maintain (ctx): pass app context as pointer 2022-08-30 17:27:23 +10:00
Mickael Kerjean
b62a9dd423 fix (os): wrapper for file related operation via the os package 2022-08-30 01:46:06 +10:00
Mickael Kerjean
8bbd4a2f57 fix (symlink): evaluate symlinks before opening file 2022-08-29 20:10:14 +10:00
Mickael Kerjean
28c2e5070d fix (#500): ldap issue as reported in #500 2022-08-28 23:41:20 +10:00
Mickael Kerjean
bb91f589e1 fix (open): handle non existing local file 2022-08-28 22:18:38 +10:00
Mickael Kerjean
4f0741111b feature (auth): add machine_id in template binding 2022-08-28 22:04:50 +10:00
Mickael Kerjean
812446ac23 fix (symlink): wrap os.OpenFile to prevent symlinks expansion
os.Open and os.OpenFile make it possible to open a wide range of
files as seen in https://cs.opensource.google/go/go/+/refs/tags/go1.19:src/os/types.go;l=35

We only want to handle regular files and folders, no socket, device,
symlink, ....
2022-08-28 21:43:43 +10:00
Mickael Kerjean
633f17a63b feature (plg_authenticate_passthrough): populate session data 2022-08-26 21:03:26 +10:00
Mickael Kerjean
4f4fcfc16e fix (ftp): prevent connection close when uploading / downloading 2022-08-26 15:53:49 +10:00
Mickael Kerjean
f7484b7aab fix (plg_backend_tmp): sanity check for user input 2022-08-23 18:07:44 +10:00
Mickael Kerjean
8f7ac67db7 fix (plg_backend_tmp): prevent local filesystem access 2022-08-23 17:33:52 +10:00
Mickael Kerjean
fea8c024c9 feature (middleware): add environment variable in template bind
This enable binding environment variable for things like hostname that
would look like '{{ .ENV_NAME }}.example.com'
2022-08-19 23:10:06 +10:00
Mickael Kerjean
77767af252 maintain (plg_backend_nop): additional debug log 2022-08-19 12:13:52 +10:00
Mickael Kerjean
ee6256e075 fix (plg_plugin_webdav): IIS compat 2022-08-09 19:08:14 +10:00
Mickael Kerjean
a75a33d49b fix (share): access shared link multiple times issue
When trying to access a shared link protected with a password many
times over, user would see an ErrNotValid (case 2 from ShareVerifyProof in
ctrl/share.go). With this commit, we are making sure the proof cookie
doesn't grow more when trying to access the same link over and over again
2022-07-20 00:25:39 +10:00
Mickael Kerjean
1d47e557fc debug (log): expose additional info on debug more 2022-07-19 22:56:27 +10:00
Mickael Kerjean
9f7550938b fix (iframe): proof cookie should be iframe friendly
before this commit, we couldn't embed a shared link protected by a
password as it would show the following error: "Unauthorized Shared
space".
2022-07-16 18:59:53 +10:00
Mickael Kerjean
9a1de6253c feature (logging): additional logging info in debug mode 2022-07-14 13:27:21 +10:00
Mickael Kerjean
b2690e906b feature (plg_backend_ftp): alternative ftp backend 2022-06-12 02:25:31 +10:00
Mickael Kerjean
d265d5b5e0 fix (panic): concurrent read issue 2022-05-19 00:45:56 +10:00
Mickael Kerjean
77b64fcfcc improve (ldap): trim prefix for ldap backend connection 2022-05-19 00:42:06 +10:00
Mickael Kerjean
f72b630e50 fix (csp): csp policy on cat
The issue this is fixing is for the plg_opener_htmlframe which does
open html documents as an iframe. Without this, we couldn't load any
js at all which was causing issue to render things like markdown via
external libs and such
2022-05-13 08:43:47 +10:00
Mickael Kerjean
2e10feff4f feature (manifest): generate application manifest server side
the app manifest used to be statically generated meaning it would show
Filestash whenever user tries to install as an app. Now admin can
change that to show something else
2022-05-11 22:23:02 +10:00
Mickael Kerjean
4ec94902b5 fix (healthz): pass when using either http / https 2022-05-11 00:46:05 +10:00
Mickael Kerjean
bf72ee1bd2 feature (plugin): css plugin enhancement 2022-05-11 00:45:41 +10:00
Mickael Kerjean
0988f7ccb0 fix (onlyoffice): issue with http/https starter 2022-05-10 20:51:19 +10:00
Mickael Kerjean
f71e07a53a fix (plg_starter_https): unused deps 2022-05-09 00:59:28 +10:00
Mickael Kerjean
19df27edda cleanup (plg_starter_https): remove dead code 2022-05-06 01:05:25 +10:00
Mickael Kerjean
cc65e1d6dd fix (sftp): disable insecure access on sftp
for those use case where we want to force the client to send the
fingerprint of the public key
2022-04-30 13:35:21 +10:00
Mickael Kerjean
a0d434cd96 fix (sftp): easier format for host key verification 2022-04-30 13:15:54 +10:00
Mickael Kerjean
054c92c71f fix (plg_starter_https): broken https plugin
the https plugin was broken. Instead of trying to do everything, we've
refactor the plugin to only do self signed certificate.

let's encrypt is causing a lot of weird issues as it won't work in a range of vps
provider so we considered it out of scope for this plugin. If we're to
integrate with lets encrypt in the future, this should be done as
another starter plugin
2022-04-30 12:35:04 +10:00
Mickael Kerjean
d94c0fef1a fix (log): log to file when using Log.Stdout 2022-04-27 00:37:39 +10:00
Mickael Kerjean
e2b1b4f477 fix (constant): license info as code 2022-04-25 20:03:13 +10:00
Mickael Kerjean
f9e51482d5 feature (css): inject css as a plugin 2022-04-25 00:34:44 +10:00
Mickael Kerjean
b9279fa77f improve (iframe): warning with unsupported use case 2022-04-21 01:28:58 +10:00
Mickael Kerjean
b3762eff6a fix (regression): regression caught by e2e tests 2022-04-21 01:13:15 +10:00
Mickael Kerjean
629a80c836 fix (#469): allow cross domain iframe 2022-04-20 08:04:09 +10:00
Mickael Kerjean
84aaea4008 fix (console): provide a fix for #461 and #463 2022-04-07 08:52:07 +10:00
Mickael Kerjean
9b60ac6301 feature (log): enable more log types 2022-04-07 08:02:24 +10:00
Mickael Kerjean
d1890ecb33 cleanup (config): remove dead code 2022-04-07 07:35:26 +10:00
Mickael Kerjean
3d0fc67b50 cleanup (main): cleanup server main func 2022-04-05 08:05:56 +10:00
Mickael Kerjean
614ec4ff6a Merge branch 'master' of ssh://github.com/mickael-kerjean/filestash 2022-04-02 20:09:06 +11:00
Mickael Kerjean
0e4fc75b35 cleanup (plugin): list of prebuild plugin 2022-04-02 20:07:05 +11:00
John Long
367907d88a
update (plg_backend_locale): directory permission - #435
https://github.com/mickael-kerjean/filestash/issues/434
2022-03-20 23:02:23 +11:00
Mickael Kerjean
91b85779d6 fix (error): error display when ls failed 2022-03-03 17:21:29 +11:00
Mickael Kerjean
2c926df4f6 cleanup (samba): cleanup code in samba plugin 2022-02-23 22:12:24 +11:00
Mickael Kerjean
6028a4363b fix (samba): prevent panic in nil pointer dereference
the samba lib was crashing with nil pointer dereference when username
is an empty string ?!? Too lazy to provide a better fix so this will
do for now
2022-02-22 23:45:56 +11:00
Mickael Kerjean
7d56a72019 fix (samba): make samba backend more intuitive 2022-02-22 08:05:54 +11:00
Mickael Kerjean
8d5c574a75 cleanup (plugin): update builtin plugin 2022-02-18 18:44:24 +11:00
Mickael Kerjean
6e3392a046 feature (office): enable / disable download button in only office 2022-02-18 18:26:22 +11:00
Mickael Kerjean
f66408b6da fix (starter): issues in starter plugin 2022-02-17 08:35:24 +11:00
Mickael Kerjean
8018454dff cleanup (plugin): deprecated starter plugin
That plugin wouldn't work as expected and result in some angry email
from people who gave it a try so I'm getting rid of it to focus on the
other core plugin that make more sense for the project
2022-02-16 08:53:12 +11:00
Mickael Kerjean
394ae29c03 fix (starter): make it possible for starter plugin to complete 2022-02-16 00:09:21 +11:00
Quentin Bramas
dec9e2f60d
fix (s3): s3 rename - #421
* fix MV function in the S3 backend

* fix space encoding

Co-authored-by: Quentin Bramas <bramas@unistra.fr>
2022-02-06 20:29:35 +11:00
Mickael Kerjean
9171b6fb5e refactoring (config): separate config loading and saving
The idea is that we can now plug and play different logic for loading
and saving configuration data via a go generator built from plugins
2022-02-04 00:51:57 +11:00
Mickael Kerjean
625e0ed160 feature (sso): support for templating in attribute mapping 2022-02-01 22:22:23 +11:00
Mickael Kerjean
82e12ca1a6 fix (#422): retrocompatibility with authentication middleware 2022-02-01 17:24:27 +11:00
Mickael Kerjean
7b95dde25f fix (#426): username case sensitive on sftp
better strategy is to:
1. attempt the login "as is"
2. attempt the lowercase version in case of error
2022-01-31 23:34:17 +11:00
Mickael Kerjean
71dd675c7c fix (ldap): ldap labels 2022-01-31 23:19:26 +11:00
alexanghh
ab71c339dd
feature (cookie split): split session cookie onto fixed size chunks - #422
* Fixed invalid cookie issue when session object is serialized into a string larger than 4KB.

* Update session.go

Removed comments

* Update share.go

Removed comments
2022-01-27 09:07:02 +11:00
Mickael Kerjean
42770afc69 cleanup (plg_backend_tmp): cleanup the tmp backend 2022-01-25 18:25:20 +11:00
Mickael Kerjean
53f744c42b plugin (add): add temporary file backend to default list 2022-01-25 18:19:35 +11:00
Mickael Kerjean
c543ab19db fix (sso): sso cookie issues 2022-01-25 18:18:49 +11:00
Mickael Kerjean
5f50d276a1 feature (plg_backend_tmp): backend to quickly store temporary files 2022-01-25 18:16:39 +11:00
Mickael Kerjean
8d68bd798a feature (plg_backend_office): local backend with versioning 2022-01-25 08:37:47 +11:00
Mickael Kerjean
55c3965b5d feature (plg_backend_local): add path 2022-01-25 08:35:23 +11:00
Mickael Kerjean
3a896f936c fix (compile): compile errors in existing plugins 2022-01-22 08:05:30 +11:00
Mickael Kerjean
0edfdfda86 fix (zip): store error in error.log when zipping content 2022-01-21 01:50:19 +11:00
Mickael Kerjean
5c086bc6cf feature (plg_backend_nop): add a few more files for testing 2022-01-20 17:18:22 +11:00
Mickael Kerjean
03996a5239 fix (zip): fix a leak and improve config handling 2022-01-20 17:17:03 +11:00
Mickael Kerjean
a95fad4d13 feature (static): upate a few static pages
- /about now shows a list of installed plugin
- 404 page is more "funky"
2022-01-20 17:15:49 +11:00
Mickael Kerjean
ae1adb3dad clean (code): cleanup 2022-01-19 22:58:07 +11:00
Mickael Kerjean
50920396b7 fix (zip): additional debug information on zip 2022-01-19 18:07:18 +11:00
Mickael Kerjean
9e1f71761a fix (sftp): case in username 2022-01-19 10:04:56 +11:00
Mickael Kerjean
b6c71e9333 fix (config): hide non registered config values 2022-01-17 03:37:37 +11:00
Mickael Kerjean
9d477b6110 performance (scoring): x10 faster search matching 2022-01-16 23:09:28 +11:00
Mickael Kerjean
4e7579ab65 feature (search): support for '$' 2022-01-16 20:29:58 +11:00
Mickael Kerjean
57a60fc838 feature (next): support for next in oauth2 backends 2022-01-15 17:28:48 +11:00
Mickael Kerjean
73c2386868 documentation (plugin): add sample code for search plugin 2022-01-15 15:50:35 +11:00
Mickael Kerjean
073e99886a documentation (plugin): sample plugin for search 2022-01-15 15:42:04 +11:00
Mickael Kerjean
f2ba98bf4a documentation (authorisation): example of authorisation plugin 2022-01-15 15:36:56 +11:00
Mickael Kerjean
ebb4247a77 merge 2022-01-15 03:25:36 +11:00
Mickael Kerjean
d53fdeea71 feature (search): search relevance when using stateless plugin 2022-01-15 03:13:32 +11:00
Mildred Ki'Lya
cf827673c0
feature (dav): support for servers who have the username in their URL - #418
In the URL parameters for DAV backends (WebDAV and CalDAV/CardDAV) the
%{username} string is interpolated to the URL encoded username. It
shouldn't conflict with legitimate URLS as %{ is not a valid URL escape
sequence.

This is needed for some servers where the URL contains the username
such as Cyrus IMAP.
2022-01-14 22:51:53 +11:00
Mickael Kerjean
a91df1637d feature (search): search as a plugin 2022-01-14 16:38:42 +11:00
Mickael Kerjean
e827e8149b fix (auth): signature change 2022-01-10 17:42:07 +11:00
Mickael Kerjean
f1c32880a3 refactoring (sso): sso middleware 2022-01-10 00:42:16 +11:00
Mickael Kerjean
632100ac0f clean (code): cleanup the laundry on the server 2022-01-07 01:25:43 +11:00
Mickael Kerjean
d56663e805 cleanup (sso): cleanup sso related plugins 2022-01-07 01:17:33 +11:00
Mickael Kerjean
a2e137bb7a fix (sso): default sso plugin 2022-01-06 20:35:35 +11:00
Mickael Kerjean
61fa462955 feature (sso): sso via admin password 2022-01-06 20:29:32 +11:00
Mickael Kerjean
e5800c6c3b feature (sso): authentication middleware 2022-01-06 20:22:26 +11:00
Mickael Kerjean
4186ec057d feature (backend): local backend with admin password 2021-12-22 23:08:36 +11:00
Mickael Kerjean
54388ccd4a maintenance (plugin): move remaining backend to plugin mechanism 2021-12-22 22:53:06 +11:00
Mickael Kerjean
46417785ed feature (killswitch): opt in remote killswitch to prevent log4j
Since the log4j issues, we got to think about a way to prevent issues
affecting Filestash. What we came up with is an opt in remote killswitch
which will shut down an application until it's patch appropriatly.
2021-12-20 12:37:02 +11:00
Mickael Kerjean
8c60c12417 feature (letsencrypt): new starter plugin with automatic ssl 2021-11-25 08:28:11 +11:00
Mickael Kerjean
bcf5c467c1 feature (viewer): support wave file 2021-11-24 23:31:30 +11:00
Mickael Kerjean
1f447dc7d0 fix (s3): moving files - no such key error 2021-11-24 23:24:30 +11:00
Mickael Kerjean
b8bc56aea2 fix (share): access when redirection is enabled 2021-11-05 18:23:03 +11:00
Mickael Kerjean
095876d450 feature (config): make cookie timeout configurable by admin 2021-10-30 22:31:14 +11:00
Mickael Kerjean
b28eef6ac3 feature (plugin): enhance blackhole plugin 2021-10-28 00:30:34 +11:00
Mickael Kerjean
7823d275c9 improve (backend): cat from blackhole plugin 2021-10-24 00:14:36 +11:00
Mickael Kerjean
e13262dd36 feature (oauth): redirection link for oauth 2021-10-13 22:54:15 +11:00
Mickael Kerjean
8d413214e2 fix (cabinedit): issue faced by cabinedit 2021-10-06 21:52:19 +11:00
Mickael Kerjean
3eb0384ce5 fix (build): issue in build 2021-10-05 01:03:50 +11:00
Mickael Kerjean
fd395b0f04 improve (upload): remove multipart for faster upload 2021-10-03 03:18:48 +11:00
Mickael Kerjean
924a56aa82 feature (shared): redirect + configurable default access type 2021-10-02 17:16:43 +10:00
Mickael Kerjean
0438aace72 fix (adblock): fix reported adblock issues 2021-09-29 20:08:46 +10:00
Mickael Kerjean
01de913366 Merge branch 'master' of ssh://github.com/mickael-kerjean/filestash 2021-09-29 00:11:53 +10:00
Mickael Kerjean
f9b50e823e fix (sftp): fix for sftp on coviantsoftware - mft diplomat 2021-09-29 00:09:51 +10:00
Quentin Bramas
edbf16871c
fix (#410): error when moving files with the S3 backend
* url encode paths when moving object in the S3 backend

* fix renaming with the same name

Co-authored-by: Quentin Bramas <bramas@unistra.fr>
2021-09-27 20:06:09 +10:00
Jimmy
642f04c955
fix (plugin): fix finding local ip for onlyoffice (#409) 2021-09-27 20:03:54 +10:00
Mickael Kerjean
110280e94b improve (s3): faster whenever using role based binding on ec2 2021-09-27 19:59:11 +10:00
Mickael Kerjean
2e86ac7bb2 improve (admin): additional customisations on admin console 2021-09-19 14:04:11 +10:00
Mickael Kerjean
be09a0f60f fix (access): UI should show/hide according to plugin meta 2021-09-16 23:21:36 +10:00
Mickael Kerjean
1c337f5c57 improve (log): additional debugging 2021-09-14 22:37:37 +10:00
Mickael Kerjean
3214cfd588 feature (s3): add ec2 role base authentication 2021-09-12 17:16:32 +10:00
Mickael Kerjean
47751a446f fix (ftp): issue on microsoft FTP 2021-09-04 23:02:03 +10:00
Filip Hanes
0360412444
feature (s3): implement mv - #405
* WIP: implement s3 recursive Mv

* fix recursive move, add logs
2021-08-30 23:48:20 +10:00
Pablo Ovelleiro Corral
09a6b8f6c0
feature (nixos): working directory override - #403 2021-08-30 23:35:08 +10:00
Mickael Kerjean
c2992b1185 improve (log): additional logging 2021-08-28 15:44:08 +10:00
Mickael Kerjean
929064b55f maintenance (iframe): content security policy update 2021-08-23 00:00:57 +10:00
Mickael Kerjean
51ed97cc9d fix (test): broken test 2021-08-22 20:46:05 +10:00
Mickael Kerjean
f7a4e52703 maintain (go): go format 2021-08-22 16:47:09 +10:00
Mickael Kerjean
a0b2ca72ed merge 2021-08-22 16:43:25 +10:00
Mickael Kerjean
4ef1017e65 merge 2021-08-22 16:41:45 +10:00
Mickael Kerjean
5e43f1a4b3 feature (migration): config migration mechanism 2021-08-22 16:37:05 +10:00
Mickael Kerjean
b26bdfa1c6 merge 2021-08-22 13:11:22 +10:00
Mickael Kerjean
fdc95f8af7 fix (test): missing webdav backend 2021-08-22 13:09:09 +10:00
Mickael Kerjean
a67681f454 maintain (feature): remove option from admin backend 2021-08-22 13:08:59 +10:00
Mickael Kerjean
5e24d66903 feature (refresh): option to refresh content after upload 2021-08-22 13:08:40 +10:00
Mickael Kerjean
8543b51b6b merge 2021-08-22 13:08:11 +10:00
Mickael Kerjean
137b36e0a7 feature (logout): customisable logout button 2021-08-22 13:05:09 +10:00
robertDawson2
d581e8b4ca fix (multipart): remove multipart form data - #401
* added line to fix caching issue on upload, where cache does not clear

* removed comments and added error logging line

Co-authored-by: Bobby Dawson <bobby@donorsearch.net>
2021-08-22 13:05:09 +10:00
Mickael Kerjean
dd81b56094 improve (webdav): error reporting on webdav backend 2021-08-22 13:05:09 +10:00
Mickael Kerjean
16b7eb93d3 maintain (plugin): migrate webdav backend as plugin 2021-08-22 13:05:09 +10:00
Mickael Kerjean
39f6987465 cleanup (#381): fit pull request 2021-08-22 13:05:09 +10:00
Quentin Bramas
31564efaec feature (#381): option to limit the number of simultaneous upload (#381)
* add an option to change the number of parallel uploads

* undo automatic format

Co-authored-by: Quentin Bramas <bramas@unistra.fr>
2021-08-22 13:05:09 +10:00
Mickael Kerjean
96c32d4447 fix (share): uplaod files on shared links with upload rights 2021-08-19 00:45:59 +10:00
Mickael Kerjean
2b5ddcdd14 fix (test): missing webdav backend 2021-08-18 20:19:28 +10:00
Mickael Kerjean
d91726e7a1 maintain (feature): remove option from admin backend 2021-08-15 00:41:09 +10:00
Mickael Kerjean
16310b9fe0 feature (refresh): option to refresh content after upload 2021-08-13 00:41:45 +10:00
Mickael Kerjean
3808ed856b feature (menubar): toggle menubar from admin setting 2021-08-08 22:01:56 +10:00
Mickael Kerjean
c8c544051a feature (logout): customisable logout button 2021-08-08 21:47:53 +10:00
Mickael Kerjean
0b98838ff4 Merge branch 'master' of https://github.com/mickael-kerjean/filestash 2021-07-31 02:59:39 +10:00
Mickael Kerjean
b6ccd2c151 improve (webdav): error reporting on webdav backend 2021-07-31 02:23:08 +10:00
Mickael Kerjean
cba286bd43 maintain (plugin): migrate webdav backend as plugin 2021-07-31 00:14:51 +10:00
robertDawson2
bacc3c579a
fix (multipart): remove multipart form data - #401
* added line to fix caching issue on upload, where cache does not clear

* removed comments and added error logging line

Co-authored-by: Bobby Dawson <bobby@donorsearch.net>
2021-07-27 14:23:43 +10:00
Mickael Kerjean
80949194b7 cleanup (#381): fit pull request 2021-07-20 00:55:23 +10:00
Quentin Bramas
0fc6d4d32c
feature (#381): option to limit the number of simultaneous upload (#381)
* add an option to change the number of parallel uploads

* undo automatic format

Co-authored-by: Quentin Bramas <bramas@unistra.fr>
2021-07-20 00:48:44 +10:00
Mickael Kerjean
bf59247846 maintain (config): remove deprecated config 2021-07-19 00:49:14 +10:00
Mickael Kerjean
ec89a05455 feature (image): another image plugin 2021-06-27 03:26:23 +10:00
Mickael Kerjean
9c8d51c03e feature (image): pure golang image resizing 2021-06-27 03:07:59 +10:00
Mickael
700c02ece4 feature (logout): customisable logout button 2021-06-20 15:36:25 +10:00
Jay Thomason
136afbeac2
improve (s3): support for prefixes with > 1k objects (#395)
Previously filestash would only show the first 1000 objects in a given
s3 prefix.

We solve this by paginating the ListObjectsV2 responses and iterating
over all pages instead of just the first one.

Tested by manually connecting to a private s3 bucket with multiple
thousands of objects under a single prefix and verifying that all
objects are visible in the UI.
2021-05-25 22:00:23 +10:00
Quentin Bramas
bbe21185b6
improve (upload): Limit memory usage when parsing multipart form data, so that large files are stored in disk (#382)
Co-authored-by: Quentin Bramas <bramas@unistra.fr>
2021-05-25 21:57:46 +10:00
Mickael
83d240209b maintain (version): version bump to v0.5 2021-05-11 22:19:09 +10:00
Mickael
ef4bfb57f8 Merge branch 'master' of https://github.com/mickael-kerjean/filestash 2021-05-08 00:09:43 +10:00
Mickael
fc4d8363e4 plugin (samba): disable by default
This plugin which came through a PR is giving issues to users which have been saying "I found it to perform quite poorly during browsing" which is a no no. One can still compile Filestash with this plugin, we'll simply disable it by default for the time being
2021-04-26 10:57:30 +10:00
thielepaul
d37497cd0e
fix(zip): close file after copying to zip (#388) 2021-04-06 20:47:15 +10:00
Mickael
cddbcfc6d1 feature (zip): configurable timeout on zip download 2021-03-29 23:44:24 +11:00
Mickael Kerjean
eb81398ce8 feature (zip): download file(s) at once 2021-03-21 23:01:10 +11:00
Mickael Kerjean
32891e62bc fix (leak): ressource leak on FTP 2021-03-21 16:16:24 +11:00
Lyderic Dutillieux
74169650dc
Fixed a typo in 'Search' feature configuration (#364)
Changed from 'confured' to 'configured'
2021-03-04 21:17:12 +11:00
Mickael
0178630b7b fix (IE): show message for IE users 2021-03-04 21:12:20 +11:00
Mickael Kerjean
f15cd1959b cleanup (tunnel): deprecate step 2 of the setup 2020-12-22 19:24:25 +11:00
Mickael Kerjean
d469d0e73c migrate (plugin): migrate ftp backend as a plugin 2020-12-12 00:11:10 +11:00
Mickael Kerjean
66f1f0cd63 fix (rsync.net): wrong assumption in login - #339 2020-11-15 12:53:47 +11:00
Brandon Davis
d6ad96f9f4
fix (S3): use ListObjectsV2 - #334 2020-10-24 00:49:54 +11:00
thielepaul
0fda2ececc
fix (sftp): use password type for sftp password and passphrase field (#324) 2020-10-23 17:54:54 +11:00
thielepaul
78c1c6b7b3
feature (css): allow users to set custom css in admin panel - #332 2020-10-19 01:26:00 +11:00
Ben Fiedler
23e0de8e6e
feature (samba): samba backend - #309 2020-10-06 23:07:03 +11:00
Brandon Davis
6adf96d66e
feat (s3): adds session token to config (#306) 2020-09-15 19:36:35 +10:00
Mickael Kerjean
3bdbba92df fix (path): windows path bug #299 2020-08-31 14:13:16 +10:00
Mickael Kerjean
5b22a6015c feature (health): health check endpoint 2020-08-23 13:16:15 +10:00
Mickael Kerjean
fad90e4c06 feature (security): add well known security endpoint 2020-08-06 23:09:18 +10:00
Mickael Kerjean
f2fa1f489e improve (404): SVG artwork from pixeltrue.com 2020-08-05 11:48:25 +10:00
Mickael Kerjean
8fcb721c13 option (tty): reenable tty plugin on non cloud instance 2020-08-03 19:04:04 +10:00
Mickael Kerjean
b80ac691e0 fix (admin): log visibility 2020-07-27 12:27:30 +10:00
Mickael Kerjean
878466b64b improve (search): add admin configuration 2020-07-01 13:20:16 +10:00
Mickael Kerjean
a4f2141087 fix (test): broken test fix 2020-07-01 02:09:16 +10:00
Mickael Kerjean
86dd9da853 feature (search): fallback search when full text search isn't active 2020-07-01 00:23:17 +10:00
Mickael Kerjean
4cbeb2c095 improve (pdf): fallback to pdfjs whenever native PDF renderer is missing 2020-06-30 00:30:02 +10:00
Mickael Kerjean
06f00bdf7a backend (backblaze): handle error code as per the integration checklist 2020-06-24 00:45:29 +10:00
Mickael Kerjean
d249ed2b0a backend (backblaze): remove application key from hash calculation 2020-06-24 00:07:51 +10:00
Mickael Kerjean
5eeb22a559 backend (backblaze): set user agent as per integration checklist 2020-06-24 00:05:17 +10:00
Mickael Kerjean
078e25b97b fix (backblaze): login issue 2020-06-23 23:49:30 +10:00
Mickael Kerjean
6667725e12 fix (s3): moving folder isn't unsupported 2020-06-23 22:43:53 +10:00
Mickael Kerjean
e0b8bf2e70 fix (s3): rm merge 2020-06-23 21:45:42 +10:00
Mickael Kerjean
ade3c332e8 fix (s3): s3 rm bug - #228 2020-06-23 21:25:16 +10:00
Mickael Kerjean
a40c2f7a53 fix (s3): error when path in ls doesn't exist 2020-06-23 18:56:40 +10:00
Mickael Kerjean
8f1097273e maintain (s3): migrate s3 as a plugin 2020-06-23 18:15:12 +10:00
Mickael Kerjean
be798ee4ab fix (build): update build 2020-06-19 14:07:20 +10:00
Mickael Kerjean
bdf8d9a931 improve (config): common issue on install problems 2020-06-18 00:16:42 +10:00
Mickael Kerjean
46b0858f69 improve (log): logs tty event 2020-06-17 12:45:47 +10:00
Mickael Kerjean
a0b841d8e6 maintain (code): remove unused config 2020-06-16 13:38:24 +10:00
Mickael Kerjean
851142284c fix (#279): detect private key in SFTP password 2020-06-07 12:28:23 +10:00
Mickael Kerjean
210118b3a9 feature (mode): create a dark mode 2020-05-27 21:51:21 +10:00
Mickael Kerjean
91797bc2b3 fix (log): clearer log message for host value missmatch 2020-05-26 17:11:43 +10:00
Mickael Kerjean
517ec5bc0b feat (local): translation of common server side errors 2020-05-26 16:20:14 +10:00
Mickael Kerjean
71156132db feature (locale): shared error code 2020-05-26 15:03:24 +10:00
Mickael Kerjean
4266f26649 fix (sftp): openssh private key format with passphrase 2020-05-24 21:41:36 +10:00
Mickael Kerjean
9f25c317ea fix (ftp): connection string for ftp:// or ftps:// 2020-05-08 16:34:56 +10:00
Mickael Kerjean
f82a58d900 fix (image): disable image resizing for gif 2020-04-29 00:44:59 +10:00
Mickael Kerjean
6f9dff75d9 fix (ftp): ftp url scheme 2020-04-23 17:56:55 +10:00
Mickael Kerjean
a1df5241a0 fix (persistance): change path of config folders - #183 2020-03-05 22:14:08 +11:00
Mickael Kerjean
2c891c35c8 fix (#234): missing mime type 2020-03-05 21:30:30 +11:00
brxie
c117c99401
fix (config): synchronise cache writes (#237)
Cache writes used in Config.Get() method wasn't synchronized.
Use sync.Mutex to make it thread-save.
2020-03-03 08:47:59 +11:00
Marcin Piwowarczyk
e7bf46eeb5 fix (s3): mv does not work for nested objects
The mv operation executes CopyObject API on the root object, meanwhile
CopyObject doesn't copy the nested objects.

As a result, the user loses all nested objects and after the move
operation gets an empty bucket that requested to move.

This change disallows possibility of moving nested objects.
2020-02-20 07:50:52 +01:00
Mickael
4a6de76c93
Revert "fix (s3): fix remove a single object (#225)" (#227)
This reverts commit 42b5043411.
2020-02-12 11:00:16 +11:00
Mickael Kerjean
347f9b016b fix (ftps): remove ftps plugin since ftp and ftps will be merged into one 2020-02-11 19:33:12 +11:00
Mickael Kerjean
ef122a7c48 Merge branch 'master' of https://github.com/mickael-kerjean/filestash 2020-02-11 18:17:29 +11:00
Mickael Kerjean
03877addb7 fix (transcoding): make the config data available from the admin console 2020-02-11 18:17:08 +11:00
Mickael Kerjean
dd57a49d9a fix (ftps): merge ftp and ftps together 2020-02-11 12:31:22 +11:00
brxie
42b5043411
fix (s3): fix remove a single object (#225)
Objects, as well as buckets are removed basing on objecs list received
from client. As the objects are fetched by Prefix, the request for
removing object 'foo' will remove all 'foo*' objects in this bucket.

For instance, having bucket with objects like so:

    awesomebucket/
    ├── foo
    ├── foobar
    └── thing

Rm("awesomebucket/foo") will have effect:

    awesomebucket/
    └── thing

This change fixes this bug by recognizing if single object has to be
removed or the entire bucket. For single object, we don't need to walk
through directories and can request to remove directly.
2020-02-08 01:11:08 +11:00
Marcin Piwowarczyk
1a854aaf4e fix (s3): fix remove a single object
Objects, as well as buckets are removed basing on objecs list received
from client. As the objects are fetched by Prefix, the request for
removing object 'foo' will remove all 'foo*' objects in this bucket.

For instance, having bucket with objects like so:

    awesomebucket/
    ├── foo
    ├── foobar
    └── thing

Rm("awesomebucket/foo") will have effect:

    awesomebucket/
    └── thing

This change fixes this bug by recognizing if single object has to be
removed or the entire bucket. For single object, we don't need to walk
through directories and can request to remove directly.
2020-02-07 15:08:57 +01:00
Mickael Kerjean
ee0a44ae0b fix (syncthing): wrong description - #224 2020-02-05 10:45:50 +11:00
Mickael Kerjean
9f7ede0d5a fix (s3): filter out current prefix from ls results
As reported by Luke, creating a folder on S3 would show a file with the same name in that same folder
2020-02-05 01:45:37 +11:00
Mickael Kerjean
0167930d7c fix (pdf): error on the PDF viewer 2020-01-31 16:46:38 +11:00
Mickael Kerjean
abd329da64 fix (mimetype): missing mimetype on the xdg-open.js 2020-01-21 19:12:09 +11:00
Mickael Kerjean
5865e84593 maintain (go): vendor dependencies 2020-01-20 17:12:09 +11:00
Mickael Kerjean
f3c8aed75f improve (support): prepare support for raspberry pi 2020-01-20 13:42:20 +11:00
Mickael Kerjean
00214d2a3a feature (syncthing): syncthing integration 2020-01-15 01:03:13 +11:00
Mickael Kerjean
0c785954dc improve (gcc): static build 2020-01-13 14:02:56 +11:00
root
e0e2820b14 feature (arm): static libraries for raspberry pie 2020-01-09 08:19:29 +00:00
Mickael Kerjean
c2990e77d9 fix (onlyoffice): SSL termination for the reverse proxy 2020-01-04 00:07:45 +11:00
Mickael Kerjean
84500e6a60 feature (transcoding): video transcoding blacklist 2019-12-21 17:45:51 +11:00
Mickael Kerjean
f3e6c8c030 feature (documents): handle office documents using onlyoffice 2019-12-21 15:17:09 +11:00
Mickael Kerjean
6799e4dc78 feature (transcoding): don't transcode video formats well supported by browsers 2019-12-18 12:29:41 +11:00
Mickael Kerjean
cb519d7d24 feature (transcoding): update csp 2019-12-18 03:29:25 +11:00
Mickael Kerjean
539a6f086d feature (transcoding): live transcoding 2019-12-18 02:18:58 +11:00
Mickael Kerjean
3b7905734a feature (env): set iframe option from an environment variable 2019-11-22 01:26:22 +11:00
Mickael Kerjean
71f9b24bf7 fix (video): range request had issues breaking videos from webdav ?!? 2019-11-16 01:02:10 +11:00
Mickael Kerjean
8deedcd916 improve (pwa): follow the lighthouse tool recommendations for PWAs 2019-11-15 00:12:35 +11:00
Mickael Kerjean
6b7c35f9cd fix (#208): create an error message 2019-11-13 23:59:38 +11:00
Mickael Kerjean
a1c5f16729 feature (error): log javascript errors 2019-11-12 00:23:28 +11:00
Mickael Kerjean
5496796a12 fix (image): broken images to display the image gps tag 2019-11-11 22:24:45 +11:00
Mickael Kerjean
58c6c57f82 feature (iframe): embed the app from an iframe 2019-11-11 22:23:11 +11:00
Mickael Kerjean
c3d46c3abe fix (#209): fix emacs export error 2019-11-11 00:13:07 +11:00
Mickael Kerjean
995a5f2f04 fix (webdav): handle webdav URL encoding 2019-11-07 12:34:26 +11:00
Mickael Kerjean
04c36d4167 doc (pi): dependencies build for raspberry pi 2019-11-07 12:34:14 +11:00
Zander Hill
56998116c3 fix (S3): incorrect ModifiedAt timestamps for S3 (#200 - #204)
The problem addressed here is that the FileInfo struct's FTime field is
set in S3 backend. This was being passed as milliseconds epoch. That
value was being passed into `time.Unix(x, 0)` which accepts arguments as
either/both (seconds, nanoseconds).

By passing milliseconds to this function expecting seconds, we have
wildly incorrect modified at timestamps.

I tested this against the same bucket that was problematic before and
it's now showing correctly :).
2019-09-29 21:56:14 +10:00
Mickael Kerjean
b0896f0373 maintenance (migrate): migrate the dropbox backend as a plugin 2019-09-02 15:49:28 +10:00
Mickael Kerjean
ff08a5ee4b doc (transcode): create the static library 2019-08-30 17:41:52 +10:00
Mickael Kerjean
a3c347a37c maintenance (code): consistent style 2019-08-30 11:08:59 +10:00
Mickael Kerjean
6692952af7 doc (libtranscode): creating a static library 2019-08-29 15:12:35 +00:00
Mickael Kerjean
4a0b952ba8 improve (build): make build reproducible and easy to inspect/verify 2019-08-20 00:34:24 +10:00
Mickael Kerjean
4814175f00 fix (#187): handle simlinks 2019-08-13 16:02:00 +01:00
Mickael Kerjean
71e3d6494a optimise (lighthouse): apply optimisations provided by the lighthouse tool 2019-08-03 12:13:47 +02:00
Mickael Kerjean
7564ecb773 fix (backend): install LDAP backend by default 2019-07-24 08:08:56 +02:00
Mickael Kerjean
d2e9424642 feature (ftps): add FTPs #169 2019-07-01 17:01:07 +02:00
Mickael Kerjean
fc0189a2c0 fix (IE): block IE to avoid a shitty experience of their platform 2019-05-27 22:10:40 +10:00
Mickael Kerjean
f5f0f30cea improve (config): listen for config changes for reactive configuration 2019-05-22 14:28:31 +10:00
Mickael Kerjean
ba0243fa5d fix (tor): improve configuration of the TOR server 2019-05-22 02:43:07 +10:00
Mickael Kerjean
836a74ab7d improve (search): user experience around the search 2019-05-21 17:13:21 +10:00
Mickael Kerjean
b1b142a620 cleanup (admin): disabling constants edit from the console 2019-05-17 13:39:41 +10:00
Mickael Kerjean
fea7050b1e fix (console): wss issue 2019-05-17 11:07:45 +10:00
Mickael Kerjean
810f84c3e3 fix (concurrency): improve concurrent aspect of the search resource 2019-05-17 02:59:22 +10:00
Mickael Kerjean
e552b2b40d feature (console): new plugin that offer a debugging console 2019-05-17 01:57:38 +10:00
Mickael Kerjean
2da7664014 feature (setup): complete rewrite of the setup wizard adding features such as automatic DNS 2019-05-16 14:39:14 +10:00
root
5597d6ec88 feature (tuneel): HTTP tunnel via websocket to expose instance on the internet 2019-05-15 15:08:52 +10:00
Mickael Kerjean
0350790cfb maintain (refactoring): refactor server code for easier maintenance 2019-05-13 18:03:50 +10:00
Mickael Kerjean
01d36f1601 feature (HTTP2): support HTTP2 as a server 2019-05-12 02:33:10 +10:00
Mickael Kerjean
bceeadecae feature (https): support for HTTPS on the server 2019-05-12 02:21:39 +10:00
Mickael Kerjean
cd771319a7 improve (http): cleanup code 2019-05-11 02:57:37 +10:00
Mickael Kerjean
2ae2673df9 feature (tor): cooking some onions - Unstable 2019-05-10 18:20:04 +10:00
Mickael Kerjean
3d9fa49698 improve (plugin): expose routes via plugins 2019-05-10 18:18:02 +10:00
Mickael Kerjean
9b1bad4b5c optimise (CSP): follow recommendations from mozilla observatory 2019-05-10 15:49:45 +10:00
Mickael Kerjean
edf578e710 improve (UA): set a user-agent on HTTP queries that make sense
eg: 'Filestash/v0.4rc.20190510 (http://filestash.app)'
2019-05-10 15:20:13 +10:00
Mickael Kerjean
a327c41a78 improve (csp): Content Security Policy headers 2019-05-10 13:43:52 +10:00
Mickael Kerjean
8aa589b3d5 improve (compression): on the fly gzip compression for a few endpoints 2019-05-09 17:03:40 +10:00
Mickael Kerjean
3899e26a81 fix (boot): docker gives weird errors when using localhost within a containe 2019-05-09 15:08:36 +10:00
Mickael Kerjean
93ede2068e improve (http): Mozilla observatory tips 2019-05-09 01:25:51 +10:00
Mickael Kerjean
7f34aaea2c improve (speed): support for brotli compression 2019-05-09 00:43:05 +10:00
Mickael Kerjean
eeef0f174c improve (lock): leverage RWLock 2019-05-08 15:16:23 +10:00
Mickael Kerjean
b54663016c improve (webdav): handle user restriction and password on the webdav server 2019-05-08 11:30:23 +10:00
Mickael Kerjean
9836edacbf maintain (telemetry): update API to a custom endpoint 2019-05-07 14:16:54 +10:00
Mickael Kerjean
3cae9016a0 maintenance (code): fix typos 2019-05-07 11:46:23 +10:00
Mickael Kerjean
57afe01f73 Merge branch 'master' of http://github.com/mickael-kerjean/filestash 2019-05-07 11:44:18 +10:00
Jeanjean Pierre
53c8e43bcc improve (UI): Add option to always display upload button (#161)
* improve (signature): sign build with gpg

* Add option to always display upload button
2019-05-07 11:43:41 +10:00
Mickael Kerjean
2feed9127e improve (efficiency): improve memory efficiency for resource intensive tasks 2019-05-06 15:16:57 +10:00
Mickael Kerjean
2c271e02fc improve (favicon): remove redirection on favicon 2019-05-03 00:08:52 +10:00
Mickael Kerjean
5f7de7826a fix (build): transform the build to push for static program 2019-05-02 23:40:55 +10:00
Mickael Kerjean
ebcf3a3569 build (maintenance): upgrade build with latest changes 2019-05-01 02:14:10 +10:00
Mickael Kerjean
645dddafec feature (pages): create some error pages 2019-05-01 01:15:08 +10:00
Mickael Kerjean
c130e98c7c maintenance (cleanup): remove dead code 2019-04-30 14:27:50 +10:00
Mickael Kerjean
b3dc3f04b3 improve (C deps): improve interaction with C code + various fix 2019-04-30 13:21:06 +10:00
=
ca5198ac0b improve (static): attempt at statically compile everything - revamp 2019-04-29 19:26:11 +10:00
=
191ddbd11f improve (plg_security_scanner): new endpoint from actual logs 2019-04-24 01:31:19 +10:00
=
2f74a00879 fix (thumbnail): memory leak found using ab 2019-04-23 19:00:03 +10:00
=
e0b31a34d2 improve (debug): add a few more debugging endpoints 2019-04-23 14:26:59 +10:00
=
2eaf171e49 improve (debug): cleanup debug endpoint + memory endpoint 2019-04-23 12:16:05 +10:00
=
b2d6f5f1e4 feature (plg_security_svg): admin can decide upon viewing svg documents 2019-04-22 21:15:28 +10:00
=
17a4123f8e improve (plg_security_scanner): add a bunch of other rules found from production logs 2019-04-22 16:57:57 +10:00
=
4300867113 fix (svg): svg images would not display properly 2019-04-22 15:54:45 +10:00
=
290a61d1cf improve (ldap): cache already opened connections for much better visible performance 2019-04-18 15:02:46 +10:00
=
cebb28d093 improve (search): index form content 2019-04-18 14:15:20 +10:00
=
81d224f9e8 fix (path): default path when logging in - #151 2019-04-17 16:32:50 +10:00
=
404c3c01ce security (backend): opt in on host key verification for the SFTP backend 2019-04-17 15:02:12 +10:00
=
6607a7bcd1 fix (admin): typo in admin console 2019-04-17 14:19:35 +10:00
=
f9f7b5c4d3 feature (backend): add a mysql backend 2019-04-17 12:59:23 +10:00
=
23ab6dbf51 fix (about): broken config hash 2019-04-17 01:14:16 +10:00
=
3eb8811e81 improve (log): cleanup log messages 2019-04-15 15:41:45 +10:00
=
a17dd11ce6 fix (cache): fix concurrency issue where our mutex wasn't lock properly 2019-04-15 13:09:44 +10:00
=
762977190d improve (go): use old APIs instead of brand new one 2019-04-15 12:58:36 +10:00
=
20f92b4c0b fix (boot): infinite loop when booting - #154 2019-04-15 12:35:08 +10:00
=
8794e4c3bb improve (log): relevant log messages 2019-04-15 12:34:36 +10:00
=
52c48223ba improve (log): write in stdout as well as log file 2019-04-15 12:19:04 +10:00
=
1623b53103 maintenance (plugin): API change on the image transcoding service 2019-04-14 21:54:22 +10:00
=
a5125906e7 feature (search): in the context of a shared link 2019-04-13 00:43:38 +10:00
=
3553af94f6 feature (search): new dependency for pdf transcoding: pdftotext 2019-04-12 12:35:00 +10:00
=
801760838c feature (seach): index content subject to search 2019-04-12 02:37:31 +10:00
=
4370dfb8c7 feature (search): cleanup 2019-04-05 17:08:12 +11:00
=
4ba5a7c346 feature (search): content indexing: pdf, docx, txt, pptx, org 2019-04-04 19:34:24 +11:00
=
e88758567d improve (API): Cat now returns a io.ReadCloser to make it obvious it has to be closed 2019-04-04 19:27:06 +11:00
=
48d997066c feature (search): search result, filter out some results from the search 2019-04-03 18:14:35 +11:00
Mickael
0127fa2c02
feature (search): search feature 2019-04-02 19:48:50 +11:00
Mickael KERJEAN
ce2f3cfc2b feature (webdav): build webdav server from shared link 2019-03-25 22:08:45 +11:00
Mickael KERJEAN
133d2257b9 improvement (boot): better boot messages 2019-03-21 02:33:34 +11:00
Mickael KERJEAN
b688c470a5 fix (IE): better nothing than something half working for IE, will remove when IE is properly tested 2019-03-19 13:07:17 +11:00
Mickael KERJEAN
872a6e0cd0 fix (bug): issue in date formatting and file size using the webdav backend - #143 2019-03-18 23:08:58 +11:00
Mickael KERJEAN
e224ef16fe feature (abusive): creative defense against attacks 2019-03-18 13:37:32 +11:00
Mickael KERJEAN
fb829c8c3a fix (admin): download the activity log would get an error 2019-03-15 17:26:33 +11:00
Mickael KERJEAN
8393b0d55a fix (test): fix tests 2019-03-14 01:10:59 +11:00
Mickael KERJEAN
9e63eafb61 fix (admin): fix the not allowed message upon access to the admin console 2019-03-14 01:10:59 +11:00
Mickael KERJEAN
685690ed0d feature (backblaze): support for backblaze 2019-03-14 01:10:48 +11:00
Mickael KERJEAN
ea48dbe128 improve (security): add support for the X-Requested-With header 2019-03-08 17:49:17 +11:00
Mickael KERJEAN
a02510418d improve (login): redirect the user to the login screen once the session expire 2019-03-08 01:25:29 +11:00
Mickael KERJEAN
6c5c8f34a0 fix (build): broken build 2019-03-06 09:39:07 +11:00
Mickael KERJEAN
a9fe880bd1 feature (progressive download): support for HTTP range #131 2019-03-02 00:30:27 +11:00
Mickael KERJEAN
2a7d1131b9 fix (shared): fix bug that wouldn't let the user create shared link when the path params is set 2019-02-25 18:44:51 +11:00
Mickael KERJEAN
c9c3a9f5e2 fix (concurrency): fix concurrency problem 2019-02-25 18:26:45 +11:00
Mickael KERJEAN
14e177026d improve (speed): better speed and mem usage 2019-02-20 15:33:16 +11:00
Mickael KERJEAN
90f8fa10a4 improvement (performance): optimise speed and mem usage on very hot path 2019-02-20 15:31:11 +11:00
Mickael KERJEAN
eff467c8fc improvement (performance): optimise speed and mem usage on very hot path 2019-02-20 15:05:26 +11:00
Mickael KERJEAN
36f937da80 improve (performance): increase performance as per the benchmark observation 2019-02-19 19:06:34 +11:00
Mickael KERJEAN
7f820b8cd4 improve (edge case): code maintenance 2019-02-18 18:34:21 +11:00