Refactor extended attributes and security descriptor helpers to use go-winio
What does this PR change? What problem does it solve?
This refactors helper classes which encode/decode extended attributes (added in https://github.com/restic/restic/pull/4807) and enable process privileges for security descriptors (added in https://github.com/restic/restic/pull/4708) to use go-winio code directly instead of having to copy the code from there.
Was the change previously discussed in an issue or on the forum?
https://github.com/restic/restic/pull/4807#discussion_r1632110485
Checklist
- [x] I have read the contribution guidelines.
- [x] I have enabled maintainer edits.
- [ ] I have added tests for all code changes.
- [ ] I have added documentation for relevant changes (in the manual).
- [ ] There's a new file in
changelog/unreleased/that describes the changes for our users (see template). - [x] I have run
gofmton the code in all commits. - [x] All commit messages are formatted in the same style as the other commits in the repo.
- [x] I'm done! This pull request is ready for review.
Do we need a changelog entry here, since there's no change from a user perspective?
Do we need a changelog entry here, since there's no change from a user perspective?
Sorry for the delay. No, no changelog necessary. Could you rebase the PR and squash the commits?