Apply patch: ncpfs-2_2_6_partial.patch

This commit is contained in:
Mario Fetka
2026-04-28 20:56:04 +02:00
parent 96f556756f
commit ef8bd91ac8
6 changed files with 279 additions and 6 deletions

View File

@@ -360,7 +360,7 @@ void verify_argv(int argc, char* argv[]) {
#endif
static inline int ncpm_suser(void) {
return setreuid(-1, 0);
return setresuid(0, 0, myuid);
}
static int ncpm_normal(void) {
@@ -368,11 +368,31 @@ static int ncpm_normal(void) {
int v;
e = errno;
v = setreuid(-1, myuid);
v = setresuid(myuid, myuid, 0);
errno = e;
return v;
}
void block_sigs(void) {
sigset_t mask, orig_mask;
sigfillset(&mask);
if(sigprocmask(SIG_SETMASK, &mask, &orig_mask) < 0) {
errexit(-1, _("Blocking signals failed.\n"));
}
}
void unblock_sigs(void) {
sigset_t mask, orig_mask;
sigemptyset(&mask);
if (sigprocmask(SIG_SETMASK, &mask, &orig_mask) < 0) {
errexit(-1, _("Un-blocking signals failed.\n"));
}
}
static int proc_ncpm_mount(const char* source, const char* target, const char* filesystem, unsigned long mountflags, const void* data) {
int v;
int e;