Re: [PATCH 1/1] Add libselinux man pages for colour functions

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 04/10/2011 12:25 PM, Richard Haines wrote:
> Add man pages for selinux_raw_context_to_color(5), selinux_colors_path(3) and secolors.conf(5).
> 
> Signed-off-by: root Richard Haines <richard_c_haines@xxxxxxxxxxxxxx>
> ---
>  libselinux/man/man3/selinux_colors_path.3          |   36 ++++
>  libselinux/man/man3/selinux_raw_context_to_color.3 |  124 +++++++++++++
>  libselinux/man/man5/secolors.conf.5                |  181 ++++++++++++++++++++
>  3 files changed, 341 insertions(+), 0 deletions(-)
>  create mode 100644 libselinux/man/man3/selinux_colors_path.3
>  create mode 100644 libselinux/man/man3/selinux_raw_context_to_color.3
>  create mode 100644 libselinux/man/man5/secolors.conf.5
> 
> diff --git a/libselinux/man/man3/selinux_colors_path.3 b/libselinux/man/man3/selinux_colors_path.3
> new file mode 100644
> index 0000000..2a117d1
> --- /dev/null
> +++ b/libselinux/man/man3/selinux_colors_path.3
> @@ -0,0 +1,36 @@
> +.TH "selinux_colors_path" "3" "08 April 2011" "SELinux API documentation"
> +
> +.SH "NAME"
> +selinux_colors_path \- Return a path to the active SELinux policy color configuration file.
> +.SH "SYNOPSIS"
> +.B #include <selinux/selinux.h>
> +.sp
> +.B const char *selinux_colors_path(void);
> +
> +.SH "DESCRIPTION"
> +.B selinux_colors_path
> +returns the path to the active policy color configuration file. 
> +.sp
> +The path is built from the path returned by 
> +.BR selinux_policy_root "(3)"
> +with 
> +.B /secolor.conf
> +appended.
> +.sp
> +This optional configuration file whose format is shown in 
> +.BR secolor.conf "(5),"
> +controls the colors to be associated with the 
> +.I raw
> +context components of the
> +.BR selinux_raw_context_to_color "(3)"
> +function when information is to be displayed by an SELinux color-aware application.
> +
> +.SH "RETURN VALUE"
> +On success, the path to the active policy color configuration file is returned. If a path is not available NULL is returned.
> +
> +.SH "ERRORS"
> +None.
> +
> +.SH "SEE ALSO"
> +.BR selinux "(8), " selinux_policy_root "(3), " selinux_config "(5), " selinux_raw_context_to_color "(3), " secolor.conf  "(5)"
> +
> diff --git a/libselinux/man/man3/selinux_raw_context_to_color.3 b/libselinux/man/man3/selinux_raw_context_to_color.3
> new file mode 100644
> index 0000000..af12877
> --- /dev/null
> +++ b/libselinux/man/man3/selinux_raw_context_to_color.3
> @@ -0,0 +1,124 @@
> +.TH "selinux_raw_context_to_color" "3" "08 April 2011" "SELinux API documentation"
> +
> +.SH "NAME"
> +selinux_raw_context_to_color \- Return RGB color string for an SELinux security context.
> +
> +.SH "SYNOPSIS"
> +.B #include <selinux/selinux.h>
> +.sp
> +.BI "int selinux_raw_context_to_color(security_context_t " raw ", "
> +.RS
> +.BI "char **" color_str ");"
> +.RE
> +
> +.SH "DESCRIPTION"
> +.B selinux_raw_context_to_color
> +returns a 
> +.I color_str
> +associated to the raw context 
> +.I raw
> +provided that the 
> +.BR mcstransd "(8)"
> +daemon is running, the policy is an MLS type policy (MCS or MLS) and there is a color configuration file
> +.BR secolors.conf "(5)"
> +(see the
> +.B FILES
> +section).
> +.sp
> +The 
> +.I color_str
> +string is a space separated list of eight hexadecimal RGB triples, each prefixed by a hash character (#). These represent the user:role:type:range components of the foreground and background colors. An example string is shown in the 
> +.B EXAMPLE
> +section.
> +
> +The returned
> +.I color_str
> +string must be freed with 
> +.BR free "(3)." 
> +
> +If a color has not been configured for a specific user, role, type and/or range component of context 
> +.IR raw ","
> +then
> +.B selinux_raw_context_to_color
> +will select the color returned in 
> +.I color_str
> +in order of precedence as follows:
> +.RS
> +role, type, range
> +.br
> +user, type, range
> +.br
> +user, role, range 
> +.br
> +user, role, type 
> +.br
> +.RE
> +
> +If there are no entries in the 
> +.B secolor.conf
> +file for any of the components of context 
> +.I raw
> +(or the file is not present), then the default string returned in 
> +.I color_str
> +is:
> +.sp
> +.RS
> +----- user ---- ---- role ----  ---- type ----  ---- range ----
> +.br
> +#000000 #ffffff #000000 #ffffff #000000 #ffffff #000000 #ffffff
> +.sp
> +.RE
> +
> +.SH "RETURN VALUE"
> +On success, zero is returned.
> +.br
> +On failure, \-1 is returned with 
> +.I errno
> +set appropriately.
> +
> +.SH "ERRORS"
> +.B ENOENT
> +If the 
> +.BR mcstransd "(8)"
> +daemon is not running. 
> +
> +.SH "FILES"
> +.B selinux_raw_context_to_color
> +obtains the translated entry from the active policy 
> +.BR secolors.conf "(5)"
> +file as returned by
> +.BR selinux_colors_path "(3)."
> +The file format is described in 
> +.BR secolors.conf "(5)."
> +
> +.SH "NOTES"
> +1. The primary use of 
> +.B selinux_raw_context_to_color
> +is to return a color that corresponds to a range, that can then be used to highlight information at different MLS levels.
> +.sp
> +2. The 
> +.BR mcstransd "(8)"
> +daemon process security level must dominate the 
> +.I raw
> +security level passed to it by the 
> +.B selinux_raw_context_to_color
> +function. If not, the range color selected will be as defined by the order of precedence.
> +
> +.SH "EXAMPLE"
> +.B selinux_raw_context_to_color
> +returns the foreground and background colors of the context string components (user:role:type:range) as RGB triples as follows:
> +.sp
> +
> +      user     :       role      :      type      :      range
> +.br
> +  fg       bg  :   fg       bg   :  fg       bg   :  fg       bg  
> +.br
> +#000000 #ffffff  #ffffff #000000  #d2b48c #ffa500  #000000 #008000
> +.br
> + black   white :  white   black  : tan    orange  : black   green 
> +.br
> +
> +.SH "SEE ALSO"
> +.BR selinux "(8), " selinux_colors_path "(3), " mcstransd "(8), " secolor.conf "(5), " selinux_raw_to_trans_context "(3), " selinux_trans_to_raw_context "(3), " free "(3)"
> +
> +
> diff --git a/libselinux/man/man5/secolors.conf.5 b/libselinux/man/man5/secolors.conf.5
> new file mode 100644
> index 0000000..91cb4cb
> --- /dev/null
> +++ b/libselinux/man/man5/secolors.conf.5
> @@ -0,0 +1,181 @@
> +.TH "secolors.conf" "5" "08 April 2011" "SELinux API documentation"
> +
> +.SH "NAME"
> +secolors.conf \- The SELinux color configuration file.
> +
> +.SH "DESCRIPTION"
> +This optional file controls the color to be associated to the context components associated to the 
> +.I raw
> +context passed by 
> +.BR selinux_raw_context_to_color "(3),"
> +when context related information is to be displayed in color by an SELinux-aware application. 
> +.sp
> +.BR selinux_raw_context_to_color "(3)"
> +obtains this color information from the active policy 
> +.B secolor.conf
> +file as returned by 
> +.BR selinux_colors_path "(3)."
> +
> +.SH "FILE FORMAT"
> +The file format is as follows:
> +.RS
> +.B color
> +.I color_name
> +.BI "= #"color_mask
> +.br
> +[...]
> +.sp
> +.I context_component string
> +.B =
> +.I fg_color_name bg_color_name
> +.br
> +[...]
> +.sp 
> +.RE
> +
> +Where:
> +.br
> +.B color
> +.RS
> +The color keyword. Each color entry is on a new line.
> +.RE
> +.I color_name
> +.RS
> +A single word name for the color (e.g. red).
> +.RE
> +.I color_mask
> +.RS
> +A color mask starting with a hash (#) that describes the hexadecimal RGB colors with black being #ffffff and white being #000000.
> +.RE
> +.I context_component
> +.RS
> +The context component name that must be one of the following:
> +.br
> +.RS
> +user, role, type or range 
> +.RE
> +Each
> +.IR context_component " " string " ..."
> +entry is on a new line.
> +.RE
> +.I string
> +.RS
> +This is the 
> +.I context_component
> +string that will be matched with the 
> +.I raw
> +context component passed by
> +.BR selinux_raw_context_to_color "(3)."
> +.br
> +A wildcard '*' may be used to match any undefined string for the user, role and type 
> +.I context_component
> +entries only.
> +.RE
> +
> +.I fg_color_name
> +.RS
> +The color_name string that will be used as the foreground color.
> +A 
> +.I color_mask
> +may also be used.
> +.RE
> +.I bg_color_name
> +.RS
> +The color_name string that will be used as the background color.
> +A 
> +.I color_mask
> +may also be used.
> +.RE
> +
> +.SH "EXAMPLES"
> +Example 1 entries are:
> +.RS
> +color black  = #000000
> +.br
> +color green  = #008000
> +.br
> +color yellow = #ffff00
> +.br
> +color blue   = #0000ff
> +.br
> +color white  = #ffffff
> +.br
> +color red    = #ff0000
> +.br
> +color orange = #ffa500
> +.br
> +color tan    = #D2B48C
> +.sp
> +user * = black white
> +.br
> +role * = white black
> +.br
> +type * = tan orange
> +.br
> +range s0-s0:c0.c1023 = black green
> +.br
> +range s1-s1:c0.c1023 = white green
> +.br
> +range s3-s3:c0.c1023 = black tan
> +.br
> +range s5-s5:c0.c1023 = white blue
> +.br
> +range s7-s7:c0.c1023 = black red
> +.br
> +range s9-s9:c0.c1023 = black orange
> +.br
> +range s15:c0.c1023   = black yellow
> +.RE
> +
> +.sp
> +Example 2 entries are:
> +.RS
> +color black  = #000000
> +.br
> +color green  = #008000
> +.br
> +color yellow = #ffff00
> +.br
> +color blue   = #0000ff
> +.br
> +color white  = #ffffff
> +.br
> +color red    = #ff0000
> +.br
> +color orange = #ffa500
> +.br
> +color tan    = #d2b48c
> +.sp
> +user unconfined_u = #ff0000 green
> +.br
> +role unconfined_r = red #ffffff
> +.br
> +type unconfined_t = red orange
> +.br
> +user user_u       = black green
> +.br
> +role user_r       = white black
> +.br
> +type user_t       = tan red
> +.br
> +user xguest_u     = black yellow
> +.br
> +role xguest_r     = black red
> +.br
> +type xguest_t     = black green
> +.br
> +user sysadm_u     = white black
> +.br
> +range s0:c0.c1023 = black white
> +.br
> +user *            = black white
> +.br
> +role *            = black white
> +.br
> +type *            = black white
> +.RE
> +
> +.SH "SEE ALSO"
> +.BR selinux "(8), " selinux_raw_context_to_color "(3), " selinux_colors_path "(3)"
> +
> +

Only issues were secolors.conf should be secolor.conf and there was a
black/white hex mixup. Other than that, looks good.

I fixed those and applied to libselinux-2.0.102

Thanks!

--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@xxxxxxxxxxxxx with
the words "unsubscribe selinux" without quotes as the message.


[Index of Archives]     [Selinux Refpolicy]     [Linux SGX]     [Fedora Users]     [Fedora Desktop]     [Yosemite Photos]     [Yosemite Camping]     [Yosemite Campsites]     [KDE Users]     [Gnome Users]

  Powered by Linux