MickaelK
8ace343b86
fix (s3): better handling of missing size info
2025-01-10 16:20:28 +11:00
MickaelK
e74159f526
fix (uint64): size
2025-01-10 16:12:06 +11:00
MickaelK
4b0de2454a
fix (s3): versitygw issue
2025-01-10 16:05:19 +11:00
MickaelK
5c2c5e2dca
fix (s3): bug on versitygw
...
the plugin would break on versitgw which on some version isn't sending
the size metadata, ending with a null pointer dereference.
I wasn't able to replicate this on my own but the bug report shows:
2025/01/10 04:35:47 http: panic serving 130.194.66.248:54701: runtime error: invalid memory address or nil pointer dereference
goroutine 5590 [running]:
net/http.(*conn).serve.func1()
/usr/local/go/src/net/http/server.go:1947 +0xbe
panic({0x19c2740?, 0x535ece0?})
/usr/local/go/src/runtime/panic.go:785 +0x132
github.com/mickael-kerjean/filestash/server/plugin/plg_backend_s3.S3Backend.Ls.func1(0xc000986bd0, 0xe0?)
/home/server/plugin/plg_backend_s3/index.go:218 +0x18a
github.com/aws/aws-sdk-go/service/s3.(*S3).ListObjectsV2PagesWithContext(0xc0005b01a8, {0x46ae758, 0xc000f187e0}, 0xc0006649a0, 0xc0005d7270, {0x0, 0x0, 0x0})
/home/vendor/github.com/aws/aws-sdk-go/service/s3/api.go:7654 +0x1ad
github.com/mickael-kerjean/filestash/server/plugin/plg_backend_s3.S3Backend.Ls({0xc0005b0178, 0xc00074cd80, 0xc000f188a0, {0x46ae758, 0xc000f187e0}, 0x32}, {0xc0008810f0?, 0x99?})
/home/server/plugin/plg_backend_s3/index.go:202 +0x31a
github.com/mickael-kerjean/filestash/filestash-enterprise/plugins/utils.wrapper.Ls({{0x46b77c0, 0xc000f18ff0}, {0x5511fc0, 0x0, 0x0}}, {0xc0008810f0?, 0x165dc9a?})
/home/filestash-enterprise/plugins/utils/authorisation.go:64 +0x94
github.com/mickael-kerjean/filestash/server/ctrl.FileLs(0xc000001d40, {0x46a8bc8, 0xc000f18810}, 0xc000227680)
/home/server/ctrl/files.go:136 +0x7a2
github.com/mickael-kerjean/filestash/server/middleware.LoggedInOnly.func1(0xc000001d40?, {0x46a8bc8, 0xc000f18810}, 0x0?)
/home/server/middleware/session.go:23 +0x2e
github.com/mickael-kerjean/filestash/server/middleware.SessionStart.func1(0xc000001d40, {0x46a8bc8, 0xc000f18810}, 0xc000227680)
/home/server/middleware/session.go:77 +0x2e7
github.com/mickael-kerjean/filestash/server/middleware.WithPublicAPI.func1(0xc000001d40, {0x46a8bc8, 0xc000f18810}, 0xc000227680)
/home/server/middleware/http.go:115 +0x3a7
github.com/mickael-kerjean/filestash/server/middleware.SecureOrigin.func1(0xc000001d40, {0x46a8bc8, 0xc000f18810}, 0xc000227680)
/home/server/middleware/http.go:99 +0x4a2
github.com/mickael-kerjean/filestash/server/middleware.SecureHeaders.func1(0xc000001d40, {0x46a8bc8, 0xc000f18810}, 0xc000227680)
/home/server/middleware/http.go:79 +0x28c
github.com/mickael-kerjean/filestash/server/middleware.ApiHeaders.func1(0xc000001d40, {0x46a8bc8, 0xc000f18810}, 0xc000227680)
/home/server/middleware/http.go:22 +0x29d
github.com/mickael-kerjean/filestash/server.Build.NewMiddlewareChain.func18({0x46a8cb8, 0xc000904000}, 0xc000227680)
/home/server/middleware/index.go:28 +0x17b
net/http.HandlerFunc.ServeHTTP(0xc000227540?, {0x46a8cb8?, 0xc000904000?}, 0x52f069?)
/usr/local/go/src/net/http/server.go:2220 +0x29
github.com/gorilla/mux.(*Router).ServeHTTP(0xc000000480, {0x46a8cb8, 0xc000904000}, 0xc000227400)
/home/vendor/github.com/gorilla/mux/mux.go:212 +0x1e2
net/http.serverHandler.ServeHTTP({0xc000c41d40?}, {0x46a8cb8?, 0xc000904000?}, 0x6?)
/usr/local/go/src/net/http/server.go:3210 +0x8e
net/http.(*conn).serve(0xc00059d950, {0x46ae758, 0xc000832240})
/usr/local/go/src/net/http/server.go:2092 +0x5d0
created by net/http.(*Server).Serve in goroutine 135
/usr/local/go/src/net/http/server.go:3360 +0x485
2025-01-10 15:49:53 +11:00
MickaelK
71b14e6eaf
feature (3d): embed 3d viewer anywhere
...
This contains a bunch of things packaged in 1:
1) UI improvements for the 3D viewer to support all sort of file types
and create a nice rendering in a clean way with all sort of options
2) enable people to use Filestash as an SDK so we can embed the 3d viewer
elsewhere
2024-12-23 18:50:23 +11:00
MickaelK
1aa1a7d5e9
fix (deadlock): thumbnail issue in plg_image_c
2024-12-22 03:06:48 +11:00
MickaelK
8422268a21
fix ( #771 ): search from text editor
2024-12-14 20:49:26 +11:00
MickaelK
f268d27967
feature (postMessage): iframe RPC via postMessage
2024-12-14 00:46:50 +11:00
MickaelK
44f4cc74f0
fix (wopi): wopi handler fileID
2024-12-13 00:42:00 +11:00
MickaelK
e0de8261a6
fix (wopi): path handling
2024-12-12 17:52:20 +11:00
Mickael
1d06c785bc
fix (wopi): wopi config ( #785 )
2024-12-12 16:07:34 +11:00
MickaelK
b3a44918e1
feature (office): enable wopi office docs
2024-12-12 10:58:38 +11:00
MickaelK
aa3f76ebb0
fix (about): incorrect plugin list
2024-12-10 09:46:53 +11:00
MickaelK
d6bc0d55f1
chore (banner): auth middleware banners
2024-12-10 00:42:06 +11:00
MickaelK
4b8926a3da
fix (favicon): canary favicon
...
before this commit, we've had issues with overrides which wouldn't set
the favicon properly
2024-12-09 13:01:12 +11:00
MickaelK
7828d0c315
feature (template): additional templating funcs
2024-12-09 12:04:00 +11:00
MickaelK
afd2f2566e
fix (jenkins): broken build after refactoring
2024-12-09 09:03:05 +11:00
MickaelK
799ba868c3
feature (plg_authenticate_local): local source of user
2024-12-06 18:28:33 +11:00
MickaelK
bc68bf50fe
fix (audit): canary audit engine compat
2024-12-06 12:43:01 +11:00
MickaelK
e35158c259
chore (plg_authentication_simple): banner update
2024-12-06 07:21:41 +11:00
MickaelK
b317a50609
chore (plg_authenticate_simple): banner dashboard
2024-12-06 07:07:40 +11:00
MickaelK
609fd308c1
fix (caching): cache invalidation issue
...
until this, if a user tries to connect to the same backend with a
different path, the frontend would flicker as we'd get things from the
wrong cache key
2024-12-05 23:30:58 +11:00
MickaelK
d56cdd3cc3
chore (plg_authenticate_simple): additional debug info
2024-12-05 22:46:59 +11:00
MickaelK
8d70b7e26c
feature (plg_authenticate_simple): auth facade with a gui
2024-12-05 22:34:01 +11:00
MickaelK
b1a35c7f54
fix (css): css rule issue
2024-12-05 17:51:47 +11:00
MickaelK
97a82423a4
fix (tus): edge case on tus protocol
2024-12-04 16:05:28 +11:00
MickaelK
dba8bc000a
fix (cloudflare): cloudflare cache issue
2024-12-03 23:35:15 +11:00
MickaelK
1b47b613b6
fix (cloudflare): cloudflare chunked issue
2024-12-03 23:14:13 +11:00
MickaelK
177961c62d
fix (plg_video_thumbnail): error when backend doesn't support fileseek
2024-12-02 17:24:03 +11:00
MickaelK
0dfa9b3335
fix (panic): concurrent map access
...
this fix a panic that can be replicated using the video thumbnail
plugin, opening up a page with a lot of videos. Under the hood, the
server would call ffmpeg that would make a bunch of HTTP range requests
that would call the cache concurrently, hence causing the panic
2024-12-02 16:28:38 +11:00
MickaelK
ff67ed97ed
feature (thumbnail): video thumbnail plugin
...
up until now, the stance was to refuse video thumbnail because it's too
slow but really many people don't seem to care that much about it and
keep insisting to have it.
With this solution, it's not in the base build but it gives an
option for those people to make it happen
2024-12-02 15:39:25 +11:00
MickaelK
ac9d1a4980
feature (tus): chunked upload via TUS
...
instead of inventing a new protocol for chunked upload that can be
resumed, we might as well use something that already exists like TUS.
As such we removed our custom implementation to favor that standard
2024-11-29 15:04:34 +11:00
MickaelK
5e420cf5f3
fix (config): save config when disk is full
...
before this, if the user had a full disk, there wouldn't be any error
reported back whenever editing something in the admin
console as file.Close() would return nil ....
The only way to go around it is to wait for the sync to be done.
2024-11-28 02:03:35 +11:00
MickaelK
0dea98d4bd
fix (chunked): chunked upload connection close
...
only close connection when using chunked upload. This is key if you must
use something like to work with Cloudflare
2024-11-28 01:32:41 +11:00
MickaelK
de5e2d9583
fix (cloudflare): proxy with size limit
...
Cloudflare does limit the size of file upload by an arbitrary number. We
can go around that by using chunked upload but somehow that wasn't
enough, to circumvent that issue, we make it clear to the proxy it
should close the connection and we hope the problem we go away
2024-11-27 23:45:39 +11:00
MickaelK
87a1987219
feature (upload): support for chunked uploads
2024-11-27 00:52:29 +11:00
MickaelK
66cc697b25
feature (tag): tag feature behind canary flag
2024-11-19 14:54:38 +11:00
MickaelK
c376fe8240
fix (onlyoffice): canary office integration - #629
2024-11-14 14:24:23 +11:00
MickaelK
05f112305d
fix (azure): azure oidc cookie
...
update cookie settings to work well with azure OIDC
2024-11-13 10:32:06 +11:00
MickaelK
6f03334871
feature (plugin): override plugin for download
...
This is to demonstrate how override work with the new frontend. This
plugin does create another download button in the file viewer page
2024-11-07 13:32:00 +11:00
MickaelK
96b566e22f
fix (canary): canary cookie compat
2024-10-16 02:19:54 +11:00
MickaelK
363f9bd652
fix (typo): package name typo
2024-10-10 04:57:25 +11:00
MickaelK
963bac5146
fix (plg_backend_azure): remove things
2024-10-06 08:05:19 +11:00
MickaelK
5c87904cb1
feature (plg_backend_azure): support for seek
2024-10-04 19:22:26 +10:00
MickaelK
8efc63efa5
feature (azure): chroot path
2024-09-27 09:20:21 +10:00
MickaelK
f8956178d8
fix (sftp): azure connection timeout
...
Azure SFTP only hold the connection for 2 minutes .... So we got to
flush our cache before it occurs, otherwise we end up with a "Connection lost" error
2024-09-20 22:55:54 +10:00
MickaelK
05176b8cd1
fix (arm): generator issue on arm
2024-09-18 01:18:30 +10:00
MickaelK
ff2a88a581
fix (transcoding): video transcoding plugin in canary
2024-09-09 00:26:00 +10:00
MickaelK
fa8e578840
fix (cookie): safari cookie on SSO
2024-09-08 19:22:28 +10:00
MickaelK
fe736b755d
fix (cookie): sso cookie issue on safari
...
whenever using an iframe, cookies are a problem in cross domain setup as
browser like safari got that disabled entirely. We had to find a
solution to work with Safari properly, hence passing the data through
URL
2024-09-07 01:57:31 +10:00