Commit graph

303 commits

Author SHA1 Message Date
Mickael Kerjean
7135bd4e44 feature (nfs): support for nfs storage 2022-12-08 09:19:04 +11:00
Mickael Kerjean
090fd1a66a feature (backend): support for storj 2022-12-07 08:40:41 +11:00
Mickael Kerjean
339e9486e5 feature (plg_image_thumbnail): improvement over thumbnailing 2022-12-05 00:42:02 +11:00
Mickael Kerjean
a78e817657 feature (thumbnailer): add plugin type for thumbnail generation 2022-12-02 07:09:11 +11:00
Mickael Kerjean
f5df1445d2 feature (plg_backend_ftp): handle various connection strategy 2022-12-01 01:32:55 +11:00
Mickael Kerjean
3ca1c1ec9a improve (plg_video_transcode): ffmpeg improvements 2022-11-29 21:50:30 +11:00
Mickael Kerjean
849b00ba36 clean (plg_video_transcode): more readable ffmpeg command
The idea is to play with the params in ffmpeg until we find the
perfect setup for HLS and have everything version control by git
2022-11-29 20:48:06 +11:00
Mickael Kerjean
ec575d68b1 fix (#522): issue handling certain kind of mkv
whenever too many audio are available, videojs wouldn't be able to
load the hls stream
2022-11-29 08:25:58 +11:00
Mickael Kerjean
8d34848c8a fix (timeout): bigger timeout on FTP backend 2022-11-28 17:13:47 +11:00
Mickael Kerjean
5c9c85ff2a fix (middleware): disable auth middleware 2022-11-26 01:59:28 +11:00
Mickael Kerjean
e7bb5b052a feature (s3): s3 secret key as password field 2022-11-25 16:39:10 +11:00
Mickael Kerjean
cb7f1693bd feature (config): encrypt sensitive fields in config.json 2022-11-22 08:12:36 +11:00
Mickael Kerjean
6eb26e9a70 refactoring (plg_authenticate): setup placeholders instead of values 2022-11-21 08:10:05 +11:00
Mickael Kerjean
e585be579a feature (htpasswd): enlarge scope of htpasswd auth plugin 2022-11-12 23:26:39 +11:00
Mickael Kerjean
10daf893cd improve (plg_authenticate_htpasswd): support additional algorithm 2022-11-12 00:50:45 +11:00
Mickael Kerjean
c828b22f7a improve (middleware): content for description fields 2022-11-10 00:16:08 +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
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
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
e8968d824a fix (window): cross compile for windows 2022-09-28 21:16:10 +10:00
Mickael Kerjean
1844c6d33e maintain (debug): add debug statements 2022-09-15 19:32:17 +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
d53cbefc54 fix (plg_image_ascii): reasonable content type 2022-09-08 15:19:10 +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
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
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
28c2e5070d fix (#500): ldap issue as reported in #500 2022-08-28 23:41:20 +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
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
b2690e906b feature (plg_backend_ftp): alternative ftp backend 2022-06-12 02:25:31 +10:00
Mickael Kerjean
77b64fcfcc improve (ldap): trim prefix for ldap backend connection 2022-05-19 00:42:06 +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
84aaea4008 fix (console): provide a fix for #461 and #463 2022-04-07 08:52:07 +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
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
625e0ed160 feature (sso): support for templating in attribute mapping 2022-02-01 22:22:23 +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
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
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
5c086bc6cf feature (plg_backend_nop): add a few more files for testing 2022-01-20 17:18:22 +11:00
Mickael Kerjean
9e1f71761a fix (sftp): case in username 2022-01-19 10:04:56 +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
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
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
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
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
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
Mickael Kerjean
f7a4e52703 maintain (go): go format 2021-08-22 16:47:09 +10:00
Mickael Kerjean
fdc95f8af7 fix (test): missing webdav backend 2021-08-22 13:09: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
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
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
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
Mickael Kerjean
32891e62bc fix (leak): ressource leak on FTP 2021-03-21 16:16:24 +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
Brandon Davis
d6ad96f9f4
fix (S3): use ListObjectsV2 - #334 2020-10-24 00:49:54 +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
8fcb721c13 option (tty): reenable tty plugin on non cloud instance 2020-08-03 19:04:04 +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
46b0858f69 improve (log): logs tty event 2020-06-17 12:45:47 +10:00
Mickael Kerjean
f82a58d900 fix (image): disable image resizing for gif 2020-04-29 00:44:59 +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
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
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
Mickael Kerjean
ee0a44ae0b fix (syncthing): wrong description - #224 2020-02-05 10:45:50 +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