diff options
author | Bruce Dubbs <bdubbs@linuxfromscratch.org> | 2020-06-07 20:16:00 +0000 |
---|---|---|
committer | Bruce Dubbs <bdubbs@linuxfromscratch.org> | 2020-06-07 20:16:00 +0000 |
commit | fcc027677da55c41dcaea045f5b9ff8b088e6495 (patch) | |
tree | 42500a7858959695b971e7f28f1d0bf33185db2e /chapter08/libcap.xml | |
parent | d53fefab5a6772fef606392a61608fc290e6a7ae (diff) |
Initial commit of alternative cross LFS
git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/cross2@11897 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
Diffstat (limited to 'chapter08/libcap.xml')
-rw-r--r-- | chapter08/libcap.xml | 166 |
1 files changed, 166 insertions, 0 deletions
diff --git a/chapter08/libcap.xml b/chapter08/libcap.xml new file mode 100644 index 000000000..8126dfaae --- /dev/null +++ b/chapter08/libcap.xml @@ -0,0 +1,166 @@ +<?xml version="1.0" encoding="ISO-8859-1"?> +<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" + "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [ + <!ENTITY % general-entities SYSTEM "../general.ent"> + %general-entities; +]> + +<sect1 id="ch-system-libcap" role="wrap"> + <?dbhtml filename="libcap.html"?> + + <sect1info condition="script"> + <productname>libcap</productname> + <productnumber>&libcap-version;</productnumber> + <address>&libcap-url;</address> + </sect1info> + + <title>Libcap-&libcap-version;</title> + + <indexterm zone="ch-system-libcap"> + <primary sortas="a-Libcap">Libcap</primary> + </indexterm> + + <sect2 role="package"> + <title/> + + <para>The Libcap package implements the user-space interfaces to the POSIX + 1003.1e capabilities available in Linux kernels. These capabilities are a + partitioning of the all powerful root privilege into a set of distinct + privileges.</para> + + <segmentedlist> + <segtitle>&buildtime;</segtitle> + <segtitle>&diskspace;</segtitle> + + <seglistitem> + <seg>&libcap-ch6-sbu;</seg> + <seg>&libcap-ch6-du;</seg> + </seglistitem> + </segmentedlist> + + </sect2> + + <sect2 role="installation"> + <title>Installation of Libcap</title> + + <para>Prevent a static library from being installed:</para> + +<screen><userinput remap="pre">sed -i '/install.*STACAPLIBNAME/d' libcap/Makefile</userinput></screen> + + <para>Compile the package:</para> + +<screen><userinput remap="make">make lib=lib</userinput></screen> + + <variablelist> + <title>The meaning of the make option:</title> + + <varlistentry> + <term><parameter>lib=lib</parameter></term> + <listitem> + <para>This parameter sets the library directory to + <filename>/lib</filename> rather than + <filename>/lib64</filename> on x86_64. It has no effect on + x86.</para> + </listitem> + </varlistentry> + </variablelist> + + <para>To test the results, issue:</para> + +<screen><userinput remap="test">make test</userinput></screen> + + <para>Install the package and do some cleanup:</para> + +<screen><userinput remap="install">make lib=lib PKGCONFIGDIR=/usr/lib/pkgconfig install +chmod -v 755 /lib/libcap.so.&libcap-version; +mv -v /lib/libpsx.a /usr/lib +rm -v /lib/libcap.so +ln -sfv ../../lib/libcap.so.2 /usr/lib/libcap.so</userinput></screen> + + </sect2> + + <sect2 id="contents-libcap" role="content"> + <title>Contents of Libcap</title> + + <segmentedlist> + <segtitle>Installed programs</segtitle> + <segtitle>Installed library</segtitle> + + <seglistitem> + <seg>capsh, getcap, getpcaps, and setcap</seg> + <seg>libcap.so and libpsx.a</seg> + </seglistitem> + </segmentedlist> + + <variablelist> + <bridgehead renderas="sect3">Short Descriptions</bridgehead> + <?dbfo list-presentation="list"?> + <?dbhtml list-presentation="table"?> + + <varlistentry id="capsh"> + <term><command>capsh</command></term> + <listitem> + <para>A shell wrapper to explore and constrain capability support</para> + <indexterm zone="ch-system-libcap capsh"> + <primary sortas="b-capsh">capsh</primary> + </indexterm> + </listitem> + </varlistentry> + + <varlistentry id="getcap"> + <term><command>getcap</command></term> + <listitem> + <para>Examines file capabilities</para> + <indexterm zone="ch-system-libcap getcap"> + <primary sortas="b-getcap">getcap</primary> + </indexterm> + </listitem> + </varlistentry> + + <varlistentry id="getpcaps"> + <term><command>getpcaps</command></term> + <listitem> + <para>Displays the capabilities on the queried process(es)</para> + <indexterm zone="ch-system-libcap getpcaps"> + <primary sortas="b-getpcaps">getpcaps</primary> + </indexterm> + </listitem> + </varlistentry> + + <varlistentry id="setcap"> + <term><command>setcap</command></term> + <listitem> + <para>Sets file capabilities</para> + <indexterm zone="ch-system-libcap setcap"> + <primary sortas="b-setcap">setcap</primary> + </indexterm> + </listitem> + </varlistentry> + + <varlistentry id="libcap"> + <term><filename class="libraryfile">libcap</filename></term> + <listitem> + <para>Contains the library functions for manipulating POSIX 1003.1e + capabilities</para> + <indexterm zone="ch-system-libcap libcap"> + <primary sortas="c-libcap">libcap</primary> + </indexterm> + </listitem> + </varlistentry> + + <varlistentry id="libpsx"> + <term><filename class="libraryfile">libpsx</filename></term> + <listitem> + <para>Contains functions to support POSIX semantics for syscalls + associated with the pthread library</para> + <indexterm zone="ch-system-libcap libpsx"> + <primary sortas="c-libpsx">libpsx</primary> + </indexterm> + </listitem> + </varlistentry> + + </variablelist> + + </sect2> + +</sect1> |