pam_get_item.3.xml 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
  3. "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"
  4. [
  5. <!--
  6. <!ENTITY accessconf SYSTEM "pam_item_types_std.inc.xml">
  7. <!ENTITY accessconf SYSTEM "pam_item_types_ext.inc.xml">
  8. -->
  9. ]>
  10. <refentry id='pam_get_item'>
  11. <refmeta>
  12. <refentrytitle>pam_get_item</refentrytitle>
  13. <manvolnum>3</manvolnum>
  14. <refmiscinfo class='setdesc'>Linux-PAM Manual</refmiscinfo>
  15. </refmeta>
  16. <refnamediv id='pam_get_item-name'>
  17. <refname>pam_get_item</refname>
  18. <refpurpose>
  19. getting PAM information
  20. </refpurpose>
  21. </refnamediv>
  22. <!-- body begins here -->
  23. <refsynopsisdiv>
  24. <funcsynopsis id="pam_get_item-synopsis">
  25. <funcsynopsisinfo>#include &lt;security/pam_modules.h&gt;</funcsynopsisinfo>
  26. <funcprototype>
  27. <funcdef>int <function>pam_get_item</function></funcdef>
  28. <paramdef>const pam_handle_t *<parameter>pamh</parameter></paramdef>
  29. <paramdef>int <parameter>item_type</parameter></paramdef>
  30. <paramdef>const void **<parameter>item</parameter></paramdef>
  31. </funcprototype>
  32. </funcsynopsis>
  33. </refsynopsisdiv>
  34. <refsect1 id="pam_get_item-description">
  35. <title>DESCRIPTION</title>
  36. <para>
  37. The <function>pam_get_item</function> function allows applications
  38. and PAM service modules to access and retrieve PAM information
  39. of <emphasis>item_type</emphasis>. Upon successful return,
  40. <emphasis>item</emphasis> contains a pointer to the value of the
  41. corresponding item. Note, this is a pointer to the
  42. <emphasis>actual</emphasis> data and should
  43. <emphasis remap="B">not</emphasis> be <emphasis>free()</emphasis>'ed or
  44. over-written! The following values are supported for
  45. <emphasis>item_type</emphasis>:
  46. </para>
  47. <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
  48. href="pam_item_types_std.inc.xml"/>
  49. <para>
  50. The following additional items are specific to Linux-PAM and should not be used in
  51. portable applications:
  52. </para>
  53. <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
  54. href="pam_item_types_ext.inc.xml"/>
  55. <para>
  56. If a service module wishes to obtain the name of the user,
  57. it should not use this function, but instead perform a call to
  58. <citerefentry>
  59. <refentrytitle>pam_get_user</refentrytitle><manvolnum>3</manvolnum>
  60. </citerefentry>.
  61. </para>
  62. <para>
  63. Only a service module is privileged to read the
  64. authentication tokens, PAM_AUTHTOK and PAM_OLDAUTHTOK.
  65. </para>
  66. </refsect1>
  67. <refsect1 id="pam_get_item-return_values">
  68. <title>RETURN VALUES</title>
  69. <variablelist>
  70. <varlistentry>
  71. <term>PAM_BAD_ITEM</term>
  72. <listitem>
  73. <para>
  74. The application attempted to set an undefined or inaccessible
  75. item.
  76. </para>
  77. </listitem>
  78. </varlistentry>
  79. <varlistentry>
  80. <term>PAM_BUF_ERR</term>
  81. <listitem>
  82. <para>
  83. Memory buffer error.
  84. </para>
  85. </listitem>
  86. </varlistentry>
  87. <varlistentry>
  88. <term>PAM_PERM_DENIED</term>
  89. <listitem>
  90. <para>
  91. The value of <emphasis>item</emphasis> was NULL.
  92. </para>
  93. </listitem>
  94. </varlistentry>
  95. <varlistentry>
  96. <term>PAM_SUCCESS</term>
  97. <listitem>
  98. <para>
  99. Data was successful updated.
  100. </para>
  101. </listitem>
  102. </varlistentry>
  103. <varlistentry>
  104. <term>PAM_SYSTEM_ERR</term>
  105. <listitem>
  106. <para>
  107. The <emphasis>pam_handle_t</emphasis> passed as first
  108. argument was invalid.
  109. </para>
  110. </listitem>
  111. </varlistentry>
  112. </variablelist>
  113. </refsect1>
  114. <refsect1 id="pam_get_item-see_also">
  115. <title>SEE ALSO</title>
  116. <para>
  117. <citerefentry>
  118. <refentrytitle>pam_set_item</refentrytitle><manvolnum>3</manvolnum>
  119. </citerefentry>,
  120. <citerefentry>
  121. <refentrytitle>pam_strerror</refentrytitle><manvolnum>3</manvolnum>
  122. </citerefentry>
  123. </para>
  124. </refsect1>
  125. </refentry>