platform_external_selinux/libselinux/man/man3/getfilecon.3
Stephen Smalley 9eb9c93275 Get rid of security_context_t and fix const declarations.
In attempting to enable building various part of Android with -Wall -Werror,
we found that the const security_context_t declarations in libselinux
are incorrect; const char * was intended, but const security_context_t
translates to char * const and triggers warnings on passing
const char * from the caller.   Easiest fix is to replace them all with
const char *.  And while we are at it, just get rid of all usage of
security_context_t itself as it adds no value - there is no true
encapsulation of the security context strings and callers already
directly use string functions on them.  typedef left to permit
building legacy users until such a time as all are updated.

This is a port of Change-Id I2f9df7bb9f575f76024c3e5f5b660345da2931a7
from Android, augmented to deal with all of the other code in upstream
libselinux and updating the man pages too.

Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Acked-by: Eric Paris <eparis@redhat.com>
2014-02-19 16:11:48 -05:00

72 lines
1.8 KiB
Groff

.TH "getfilecon" "3" "1 January 2004" "russell@coker.com.au" "SELinux API documentation"
.SH "NAME"
getfilecon, fgetfilecon, lgetfilecon \- get SELinux security context of a file
.
.SH "SYNOPSIS"
.B #include <selinux/selinux.h>
.sp
.BI "int getfilecon(const char *" path ", char **" con );
.sp
.BI "int getfilecon_raw(const char *" path ", char **" con );
.sp
.BI "int lgetfilecon(const char *" path ", char **" con );
.sp
.BI "int lgetfilecon_raw(const char *" path ", char **" con );
.sp
.BI "int fgetfilecon(int "fd ", char **" con );
.sp
.BI "int fgetfilecon_raw(int "fd ", char **" con );
.
.SH "DESCRIPTION"
.BR getfilecon ()
retrieves the context associated with the given path in the file system, the
length of the context is returned.
.BR lgetfilecon ()
is identical to
.BR getfilecon (),
except in the case of a symbolic link, where the
link itself is interrogated, not the file that it refers to.
.BR fgetfilecon ()
is identical to
.BR getfilecon (),
only the open file pointed to by filedes (as returned by
.BR open (2))
is interrogated in place of path.
.BR getfilecon_raw (),
.BR lgetfilecon_raw ()
and
.BR fgetfilecon_raw ()
behave identically to their non-raw counterparts but do not perform context
translation.
The returned context should be freed with
.BR freecon (3)
if non-NULL.
.
.SH "RETURN VALUE"
On success, a positive number is returned indicating the size of the
extended attribute value. On failure, \-1 is returned and
.I errno
is set appropriately.
If the context does not exist, or the process has no access to
this attribute,
.I errno
is set to
.BR ENODATA .
If extended attributes are not supported by the filesystem, or are
disabled,
.I errno
is set to
.BR ENOTSUP .
The errors documented for the
.BR stat (2)
system call are also applicable here.
.
.SH "SEE ALSO"
.BR selinux "(8), " freecon "(3), " setfilecon "(3), " setfscreatecon "(3)"