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