Commit graph

231 commits

Author SHA1 Message Date
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