Commit Graph

13 Commits

Author SHA1 Message Date
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
ef999a039c
Perhaps better error stacks for backups/archives; ref #2418 2020-11-08 14:07:26 -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
e02c197585
More archiver code cleanup; ref pterodactyl/panel#2438 2020-10-03 19:13:41 -07:00
Dane Everitt
d9109cbf5a
Correctly detect os.IsNotExist error; ref pterodactyl/panel#2438 2020-10-03 19:09:12 -07:00
Dane Everitt
244640d0c1
[security] remove "SafeJoin" function
This function was not actually safe in theory. If an unknown stat source was passed in it would be possible for a symlinked file to not be detected as a symlink, thus skipping any safe path resolutions.

This would happen if the stat source was a regular os.Stat call and not an os.Lstat call, but since there is no way to differentiate between those two in the code, it is safer to just manually apply this logic in the positions where we _know_ for certain that we're working with the results of an Lstat call.
2020-10-01 21:28:38 -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
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
Dane Everitt
4f1b0c67d6
Address security vulnerabilities allowing certain internal processes to potentiallty escape server data directory 2020-07-18 11:40:38 -07:00
Matthew Penner
0ca9c8a114 Delete the server's archive when the server is deleted 2020-04-04 18:31:18 -06:00
Matthew Penner
c096d8802f Add configurable ArchiveDirectory 2020-04-04 00:17:32 -06:00
Matthew Penner
3dba11ac6f Add ability to create archives of servers, add GET and POST /api/servers/:server/archive routes to get and request an archive of a server 2020-04-03 23:17:26 -06:00