1.\" Copyright (c) 1980, 1991, 1993, 1994 2.\" The Regents of the University of California. All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 3. Neither the name of the University nor the names of its contributors 13.\" may be used to endorse or promote products derived from this software 14.\" without specific prior written permission. 15.\" 16.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 17.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 18.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 19.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 20.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 21.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 22.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 23.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 24.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 25.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 26.\" SUCH DAMAGE. 27.\" 28.Dd April 16, 1994 29.Dt SETREGID 2 30.Os 31.Sh NAME 32.Nm setregid 33.Nd set real and effective group ID 34.Sh LIBRARY 35.Lb libc 36.Sh SYNOPSIS 37.In unistd.h 38.Ft int 39.Fn setregid "gid_t rgid" "gid_t egid" 40.Sh DESCRIPTION 41The real and effective group ID's of the current process 42are set to the arguments. 43If the real group ID is changed, the saved group ID is changed to the 44new value of the effective group ID. 45.Pp 46Unprivileged users may change the real group 47ID to the effective group ID and vice-versa; only the super-user may 48make other changes. 49.Pp 50Supplying a value of -1 for either the real or effective 51group ID forces the system to substitute the current 52ID in place of the -1 argument. 53.Pp 54The 55.Fn setregid 56system call was intended to allow swapping 57the real and effective group IDs 58in set-group-ID programs to temporarily relinquish the set-group-ID value. 59This system call did not work correctly, 60and its purpose is now better served by the use of the 61.Xr setegid 2 62system call. 63.Pp 64When setting the real and effective group IDs to the same value, 65the standard 66.Fn setgid 67system call is preferred. 68.Sh RETURN VALUES 69.Rv -std setregid 70.Sh ERRORS 71.Bl -tag -width Er 72.It Bq Er EPERM 73The current process is not the super-user and a change 74other than changing the effective group-id to the real group-id 75was specified. 76.El 77.Sh SEE ALSO 78.Xr getgid 2 , 79.Xr issetugid 2 , 80.Xr setegid 2 , 81.Xr setgid 2 , 82.Xr setuid 2 83.Sh HISTORY 84The 85.Fn setregid 86system call appeared in 87.Bx 4.2 . 88