Matthew Penner
d1c0ca5260
server(filesystem): rebuild everything imaginable
...
This wonderfully large commit replaces basically everything under the
`server/filesystem` package, re-implementing essentially everything.
This is related to
https://github.com/pterodactyl/wings/security/advisories/GHSA-494h-9924-xww9
If any vulnerabilities related to symlinks persist after this commit, I
will be very upset.
Signed-off-by: Matthew Penner <me@matthewp.io>
2024-03-13 12:27:29 -06:00
Dane Everitt
ff50d0e5bd
Cleanup request error handling; properly handle os.ErrNotExist errors ( #150 )
2022-11-22 11:18:27 -07:00
Matthew Penner
57e7eb714c
Streaming Transfers ( #153 )
2022-11-14 18:25:01 -07:00
Matthew Penner
eb4df39d14
server(filesystem): fix inaccurate archive progress ( #145 )
2022-11-06 13:38:30 -07:00
Matthew Penner
6fb61261b0
server(transfers): track progress of archive creation and extraction ( #143 )
2022-10-04 20:35:48 -06:00
Dane Everitt
cd67e5fdb9
Fix logic for context based environment stopping
...
Uses dual contexts to handle stopping using a timed context, and also terminating the entire process loop if the parent context gets canceled.
2022-01-31 19:09:08 -05:00
Dane Everitt
3b5e042ccc
Simplify logic when creating a new installer; no longer requires an entire server object be passed.
2021-08-29 14:08:01 -07:00
Matthew Penner
3c54c1f840
break everything
...
- upgrade dependencies
- run gofmt and goimports to organize code
- fix typos
- other small tweaks
2021-08-02 15:07:00 -06:00
Matthew Penner
0e3778ac47
transfers: use backup archiver
2021-03-07 11:04:15 -07:00
Dane Everitt
2eb721bbe7
Merge branch 'dane/api-cleanup' into develop
2021-02-23 21:25:10 -08:00
Daniel Barton
4ed0bf522b
Quote and escape Content-Disposition header
2021-02-21 15:05:43 +08:00
Dane Everitt
98c68142cd
Remove all of the remaining API logic and port it all to the remote.Client type
2021-02-01 21:28:46 -08:00
Dane Everitt
f3a6ee7a45
re-refactor code
2021-01-25 20:28:24 -08:00
Dane Everitt
ab86fb703a
Merge branch 'develop' into schrej/refactor
2021-01-25 19:31:16 -08:00
Dane Everitt
2968ea3498
Modify stat to embed os.FileInfo differently and update file content reader
2021-01-16 12:03:55 -08:00
Jakob Schrettenbrunner
c9c949a091
rename ServerManagerFromContext from ExtractServerManager
2021-01-10 02:18:02 +00:00
Jakob Schrettenbrunner
8192244fec
replace servers.servers singleton with server.Manager
2021-01-10 02:37:02 +01:00
Jakob Schrettenbrunner
648072436f
organize imports with gopls format
2021-01-10 01:22:39 +00:00
Matthew Penner
d3ddf8cf39
Mark server as not transferring after archive failure
2021-01-02 10:11:25 -07:00
Matthew Penner
de4d2f4724
Make logs follow a more consistent format
2020-12-27 13:01:34 -07:00
Matthew Penner
a4c8b8714b
Bump all dependencies
2020-12-27 11:49:08 -07:00
Matthew Penner
5be6e20b03
Send archive status request before sending the transfer status event
2020-12-26 11:42:44 -07:00
Dane Everitt
3842f054a5
These need spaces?
2020-12-25 15:14:21 -08:00
Dane Everitt
510d46289b
security: don't reveal wings version in remote API calls
2020-12-25 15:06:17 -08:00
Dane Everitt
6e5b14c466
Prevent malicious code from causing a server UUID to be used that is not valid
2020-12-25 15:01:43 -08:00
Matthew Penner
a450abc080
Don't read directories either, add completion log for transfers
2020-12-25 14:46:33 -07:00
Matthew Penner
5c78cb9ab3
Add transfer logging output ( #77 )
...
Co-authored-by: Dane Everitt <dane@daneeveritt.com>
2020-12-25 13:32:41 -08:00
Dane Everitt
59a111de39
Invite our lord and savior emperror back to the table
2020-12-15 21:56:53 -08:00
Dane Everitt
0ecc166dcd
Update error reporting middleware
2020-12-15 21:08:00 -08:00
Dane Everitt
acd6dc62d0
Update middleware logic
2020-12-15 20:19:09 -08:00
Matthew Penner
e936f22419
Tweaks to server transfer logging
2020-12-11 17:24:35 -07:00
Matthew Penner
e8088f85d0
Lets not try to log the server ID twice
2020-11-29 12:35:02 -07:00
Matthew Penner
0c8476c79b
Cleanup router/router_transfer.go
2020-11-29 12:33:44 -07:00
Matthew Penner
a7a66e8bc0
Notify panel of failed archive generation when transferring a server
2020-11-29 12:31:54 -07:00
Matthew Penner
65a861a9b6
Remove temporary transfer archives; closes https://github.com/pterodactyl/panel/issues/2742
2020-11-28 17:00:52 -07:00
Matthew Penner
de51fd1c51
Error handling improvements ( #71 )
...
* Remove `emperror.dev/errors`, remove all `errors#Wrap` and `errors#WithStack` calls
* Improve logging in `server/backup.go`
2020-11-28 16:57:10 -07:00
Dane Everitt
68bdcb3cbc
Fix error handling and get tests back to working
2020-11-08 15:15:39 -08:00
Dane Everitt
be9d1a3986
Replace error handling package with emperror; add better reporting for errors escaping server root
2020-11-08 13:52:20 -08:00
Dane Everitt
334b3e8d10
Refactor HTTP endpoints to be less complicated and follow better standards
2020-10-31 10:04:20 -07:00
Dane Everitt
0f7bb1a371
Refactor filesystem to not be dependent on a server struct
2020-09-27 12:24:08 -07:00
Dane Everitt
ce2659fdd7
Simplify environment creation for server
2020-09-12 21:48:04 -07:00
Matthew Penner
7ba32aca84
Fix some typos and run gofmt on all .go files
2020-09-05 13:08:40 -06:00
Dane Everitt
70afbbfc68
Remove last zap references
2020-09-03 20:29:53 -07:00
Dane Everitt
09826fc7ad
Performance improvements by using a smaller buffer size
2020-08-23 17:18:40 -07:00
Dane Everitt
cb850fd81a
Update all of the old UUID refs to new
2020-07-19 17:53:41 -07:00
Matthew Penner
3c49d6e947
Fix a major typo
2020-04-06 17:09:55 -06:00
Matthew Penner
f5a804210f
Remove more unused files, fix issue with CORS on /api/system, fix issue with GET /api/servers/:server/archive
2020-04-06 14:39:33 -06:00
Matthew Penner
718b126baf
Dane caused this monstrosity to occur.. Port over remaining transfer/archive code to gin, delete http.go
2020-04-06 13:49:49 -06:00