Skip to content

Commit 4464bfb

Browse files
authored
Try seteuid in redirector again (#25816)
1 parent c7de191 commit 4464bfb

File tree

2 files changed

+7
-6
lines changed

2 files changed

+7
-6
lines changed

go/kbfs/redirector/main.go

+6-6
Original file line numberDiff line numberDiff line change
@@ -293,7 +293,7 @@ func unmount(currUID, mountAsUID uint64, dir string) {
293293
if currUID != mountAsUID {
294294
// Unmounting requires escalating the effective user to the
295295
// mounting user. But we leave the real user ID the same.
296-
err := syscall.Setreuid(int(currUID), int(mountAsUID))
296+
err := syscall.Seteuid(int(mountAsUID))
297297
if err != nil {
298298
fmt.Fprintf(os.Stderr, "Can't setuid: %+v\n", err)
299299
os.Exit(1)
@@ -307,7 +307,7 @@ func unmount(currUID, mountAsUID uint64, dir string) {
307307

308308
// Set it back.
309309
if currUID != mountAsUID {
310-
err := syscall.Setreuid(int(currUID), int(currUID))
310+
err := syscall.Seteuid(int(currUID))
311311
if err != nil {
312312
fmt.Fprintf(os.Stderr, "Can't setuid: %+v\n", err)
313313
os.Exit(1)
@@ -389,9 +389,9 @@ func main() {
389389
// Escalate privileges of the effective user to the mounting
390390
// user briefly, just for the `Mount` call. Keep the real
391391
// user the same throughout.
392-
err := syscall.Setreuid(int(currUID), int(mountAsUID))
392+
err := syscall.Seteuid(int(mountAsUID))
393393
if err != nil {
394-
fmt.Fprintf(os.Stderr, "Can't setreuid: %+v\n", err)
394+
fmt.Fprintf(os.Stderr, "Can't seteuid: %+v\n", err)
395395
os.Exit(1)
396396
}
397397
}
@@ -404,9 +404,9 @@ func main() {
404404

405405
if currUser.Uid != u.Uid {
406406
runtime.LockOSThread()
407-
err := syscall.Setreuid(int(currUID), int(currUID))
407+
err := syscall.Seteuid(int(currUID))
408408
if err != nil {
409-
fmt.Fprintf(os.Stderr, "Can't setreuid: %+v\n", err)
409+
fmt.Fprintf(os.Stderr, "Can't seteuid: %+v\n", err)
410410
os.Exit(1)
411411
}
412412
}

packaging/linux/build_binaries.sh

+1
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,7 @@ build_one_architecture() {
141141
yarn run package -- --platform linux --arch "$electron_arch" --appVersion "$version" --network-concurrency 8
142142
rsync -a "desktop/release/linux-${electron_arch}/Keybase-linux-${electron_arch}/" \
143143
"$layout_dir/opt/keybase"
144+
chmod 755 "$layout_dir/opt/keybase"
144145
chmod 4755 "$layout_dir/opt/keybase/chrome-sandbox"
145146
)
146147

0 commit comments

Comments
 (0)