]> Cypherpunks repositories - gostls13.git/commit
[release-branch.go1] runtime: ignore signal 33 == SIGSETXID on GNU/Linux
authorIan Lance Taylor <iant@golang.org>
Fri, 21 Sep 2012 19:54:14 +0000 (05:54 +1000)
committerIan Lance Taylor <iant@golang.org>
Fri, 21 Sep 2012 19:54:14 +0000 (05:54 +1000)
commit8f41e7cd818bf1deb955ae4c4eb9c48a8943a55f
tree8148d3fa111066bda71febdecc2ff125deb9a3fb
parent0db8f6814b56a2e236420944de3fbbb3f4c115b5
[release-branch.go1] runtime: ignore signal 33 == SIGSETXID on GNU/Linux

««« backport bfa4e1f1027f
runtime: ignore signal 33 == SIGSETXID on GNU/Linux

When a cgo program calls setuid, setgid, etc., the GNU/Linux
pthread library sends signal SIGSETXID to each thread to tell
it to update its UID info.  If Go is permitted to intercept
the default SIGSETXID signal handler, the program will hang.

This patch tells the runtime package to not try to intercept
SIGSETXID on GNU/Linux.  This will be odd if a Go program
wants to try to use that signal, but it means that cgo
programs that call setuid, etc., won't hang.

Fixes #3871.

R=rsc, r, minux.ma, bradfitz
CC=golang-dev
https://golang.org/cl/6455050

»»»
src/pkg/runtime/signals_linux.h