The GNU Hurd uses a similar concept to UNIX processes.
Hurd controlling tty behavior is generally consistent with BSD's, including
TIOCSCTTY. Linux also has
TIOCSCTTY and it is harmless to use it there.
But BSD and Hurd never do an implicit
TIOCSCTTY (hence our
C.f. http://lists.gnu.org/archive/html/bug-hurd/2009-10/msg00030.html and the following messages.