xref: /illumos-gate/usr/src/man/man3proc/proc_get_cred.3proc (revision a7d7cafedfa26f9e421bbcaf42b7387ef67c0a31)
143051d27SRobert Mustacchi.\"
243051d27SRobert Mustacchi.\" This file and its contents are supplied under the terms of the
343051d27SRobert Mustacchi.\" Common Development and Distribution License ("CDDL"), version 1.0.
443051d27SRobert Mustacchi.\" You may only use this file in accordance with the terms of version
543051d27SRobert Mustacchi.\" 1.0 of the CDDL.
643051d27SRobert Mustacchi.\"
743051d27SRobert Mustacchi.\" A full copy of the text of the CDDL should have accompanied this
843051d27SRobert Mustacchi.\" source.  A copy of the CDDL is also available via the Internet at
943051d27SRobert Mustacchi.\" http://www.illumos.org/license/CDDL.
1043051d27SRobert Mustacchi.\"
1143051d27SRobert Mustacchi.\"
1243051d27SRobert Mustacchi.\" Copyright 2015 Joyent, Inc.
1343051d27SRobert Mustacchi.\"
14*a7d7cafeSRobert Mustacchi.Dd November 27, 2023
1543051d27SRobert Mustacchi.Dt PROG_GET_CRED 3PROC
1643051d27SRobert Mustacchi.Os
1743051d27SRobert Mustacchi.Sh NAME
1843051d27SRobert Mustacchi.Nm proc_get_cred
1943051d27SRobert Mustacchi.Nd get process credentials
20*a7d7cafeSRobert Mustacchi.Sh LIBRARY
2143051d27SRobert Mustacchi.Lb libproc
22*a7d7cafeSRobert Mustacchi.Sh SYNOPSIS
2343051d27SRobert Mustacchi.In libproc.h
2443051d27SRobert Mustacchi.Ft int
2543051d27SRobert Mustacchi.Fo proc_get_cred
2643051d27SRobert Mustacchi.Fa "pid_t proc"
2743051d27SRobert Mustacchi.Fa "prcred_t *credp"
2843051d27SRobert Mustacchi.Fa "int ngroups"
2943051d27SRobert Mustacchi.Fc
3043051d27SRobert Mustacchi.Sh DESCRIPTION
3143051d27SRobert MustacchiThe
3243051d27SRobert Mustacchi.Fn proc_get_cred
3343051d27SRobert Mustacchifunction is a convenient way to read the /proc cred file for the process
3443051d27SRobert Mustacchi.Fa proc .
3543051d27SRobert Mustacchi.Pp
3643051d27SRobert MustacchiUp to
3743051d27SRobert Mustacchi.Fa ngroups
3843051d27SRobert Mustacchisupplemental groups will be read and written into
3943051d27SRobert Mustacchi.Fa credp
4072d3dbb9SYuri Pankovin addition to the normal information.
4172d3dbb9SYuri PankovIf
4243051d27SRobert Mustacchi.Fa ngroups
4343051d27SRobert Mustacchiis more than one, than it is up to the caller to have allocated enough
4443051d27SRobert Mustacchispace for
4543051d27SRobert Mustacchi.Fa credp .
4643051d27SRobert MustacchiCallers could allocate it, using an expression similar to:
4743051d27SRobert Mustacchi.Pp
4843051d27SRobert Mustacchi.Dl credp = malloc(sizeof (prcred_t) + (ngroups - 1) * sizeof (gid_t));
4943051d27SRobert Mustacchi.Pp
5043051d27SRobert MustacchiThe definition of the
5143051d27SRobert Mustacchi.Sy prcred_t
5243051d27SRobert Mustacchistructure may be found in
53bbf21555SRichard Lowe.Xr proc 5 .
5443051d27SRobert Mustacchi.Sh RETURN VALUES
5543051d27SRobert MustacchiUpon successful completion, the
5643051d27SRobert Mustacchi.Fn proc_get_cred
5743051d27SRobert Mustacchifunction returns
5843051d27SRobert Mustacchi.Sy 0 .
5943051d27SRobert MustacchiOtherwise,
6043051d27SRobert Mustacchi.Sy -1
6143051d27SRobert Mustacchiis returned to indicate an error occurred.
6243051d27SRobert Mustacchi.Sh INTERFACE STABILITY
6343051d27SRobert Mustacchi.Sy Uncommitted
6443051d27SRobert Mustacchi.Sh MT-LEVEL
6543051d27SRobert Mustacchi.Sy MT-Safe
6643051d27SRobert Mustacchi.Sh SEE ALSO
6743051d27SRobert Mustacchi.Xr libproc 3LIB ,
68bbf21555SRichard Lowe.Xr proc 5
69