aboutsummaryrefslogtreecommitdiff
path: root/modules/pam_wheel
diff options
context:
space:
mode:
Diffstat (limited to 'modules/pam_wheel')
-rw-r--r--modules/pam_wheel/.cvsignore6
-rw-r--r--modules/pam_wheel/Makefile.am31
-rw-r--r--modules/pam_wheel/README61
-rw-r--r--modules/pam_wheel/README.xml41
-rw-r--r--modules/pam_wheel/pam_wheel.8101
-rw-r--r--modules/pam_wheel/pam_wheel.8.xml242
-rw-r--r--modules/pam_wheel/pam_wheel.c317
-rwxr-xr-xmodules/pam_wheel/tst-pam_wheel2
8 files changed, 0 insertions, 801 deletions
diff --git a/modules/pam_wheel/.cvsignore b/modules/pam_wheel/.cvsignore
deleted file mode 100644
index 9fb98574..00000000
--- a/modules/pam_wheel/.cvsignore
+++ /dev/null
@@ -1,6 +0,0 @@
-*.la
-*.lo
-.deps
-.libs
-Makefile
-Makefile.in
diff --git a/modules/pam_wheel/Makefile.am b/modules/pam_wheel/Makefile.am
deleted file mode 100644
index 82a98305..00000000
--- a/modules/pam_wheel/Makefile.am
+++ /dev/null
@@ -1,31 +0,0 @@
-#
-# Copyright (c) 2005, 2006 Thorsten Kukuk <kukuk@suse.de>
-#
-
-CLEANFILES = *~
-
-EXTRA_DIST = README ${MANS} $(XMLS) tst-pam_wheel
-
-man_MANS = pam_wheel.8
-XMLS = README.xml pam_wheel.8.xml
-
-TESTS = tst-pam_wheel
-
-securelibdir = $(SECUREDIR)
-secureconfdir = $(SCONFIGDIR)
-
-AM_CFLAGS = -I$(top_srcdir)/libpam/include -I$(top_srcdir)/libpamc/include
-AM_LDFLAGS = -no-undefined -avoid-version -module \
- -L$(top_builddir)/libpam -lpam
-if HAVE_VERSIONING
- AM_LDFLAGS += -Wl,--version-script=$(srcdir)/../modules.map
-endif
-
-securelib_LTLIBRARIES = pam_wheel.la
-
-if ENABLE_REGENERATE_MAN
-noinst_DATA = README
-README: pam_wheel.8.xml
--include $(top_srcdir)/Make.xml.rules
-endif
-
diff --git a/modules/pam_wheel/README b/modules/pam_wheel/README
deleted file mode 100644
index 6a2b21c5..00000000
--- a/modules/pam_wheel/README
+++ /dev/null
@@ -1,61 +0,0 @@
-pam_wheel — Only permit root access to members of group wheel
-
-━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
-
-DESCRIPTION
-
-The pam_wheel PAM module is used to enforce the so-called wheel group. By
-default it permits root access to the system if the applicant user is a member
-of the wheel group. If no group with this name exist, the module is using the
-group with the group-ID 0.
-
-OPTIONS
-
-debug
-
- Print debug information.
-
-deny
-
- Reverse the sense of the auth operation: if the user is trying to get UID 0
- access and is a member of the wheel group (or the group of the group
- option), deny access. Conversely, if the user is not in the group, return
- PAM_IGNORE (unless trust was also specified, in which case we return
- PAM_SUCCESS).
-
-group=name
-
- Instead of checking the wheel or GID 0 groups, use the name group to
- perform the authentication.
-
-root_only
-
- The check for wheel membership is done only.
-
-trust
-
- The pam_wheel module will return PAM_SUCCESS instead of PAM_IGNORE if the
- user is a member of the wheel group (thus with a little play stacking the
- modules the wheel members may be able to su to root without being prompted
- for a passwd).
-
-use_uid
-
- The check for wheel membership will be done against the current uid instead
- of the original one (useful when jumping with su from one account to
- another for example).
-
-EXAMPLES
-
-The root account gains access by default (rootok), only wheel members can
-become root (wheel) but Unix authenticate non-root applicants.
-
-su auth sufficient pam_rootok.so
-su auth required pam_wheel.so
-su auth required pam_unix.so
-
-
-AUTHOR
-
-pam_wheel was written by Cristian Gafton <gafton@redhat.com>.
-
diff --git a/modules/pam_wheel/README.xml b/modules/pam_wheel/README.xml
deleted file mode 100644
index 9e33d7ff..00000000
--- a/modules/pam_wheel/README.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding='UTF-8'?>
-<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
-"http://www.docbook.org/xml/4.3/docbookx.dtd"
-[
-<!--
-<!ENTITY pamaccess SYSTEM "pam_wheel.8.xml">
--->
-]>
-
-<article>
-
- <articleinfo>
-
- <title>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
- href="pam_wheel.8.xml" xpointer='xpointer(//refnamediv[@id = "pam_wheel-name"]/*)'/>
- </title>
-
- </articleinfo>
-
- <section>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
- href="pam_wheel.8.xml" xpointer='xpointer(//refsect1[@id = "pam_wheel-description"]/*)'/>
- </section>
-
- <section>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
- href="pam_wheel.8.xml" xpointer='xpointer(//refsect1[@id = "pam_wheel-options"]/*)'/>
- </section>
-
- <section>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
- href="pam_wheel.8.xml" xpointer='xpointer(//refsect1[@id = "pam_wheel-examples"]/*)'/>
- </section>
-
- <section>
- <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
- href="pam_wheel.8.xml" xpointer='xpointer(//refsect1[@id = "pam_wheel-author"]/*)'/>
- </section>
-
-</article>
diff --git a/modules/pam_wheel/pam_wheel.8 b/modules/pam_wheel/pam_wheel.8
deleted file mode 100644
index ae29c37e..00000000
--- a/modules/pam_wheel/pam_wheel.8
+++ /dev/null
@@ -1,101 +0,0 @@
-.\" Title: pam_wheel
-.\" Author:
-.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
-.\" Date: 06/09/2006
-.\" Manual: Linux\-PAM Manual
-.\" Source: Linux\-PAM Manual
-.\"
-.TH "PAM_WHEEL" "8" "06/09/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
-.\" disable hyphenation
-.nh
-.\" disable justification (adjust text to left margin only)
-.ad l
-.SH "NAME"
-pam_wheel \- Only permit root access to members of group wheel
-.SH "SYNOPSIS"
-.HP 13
-\fBpam_wheel.so\fR [debug] [deny] [group=\fIname\fR] [root_only] [trust] [use_uid]
-.SH "DESCRIPTION"
-.PP
-The pam_wheel PAM module is used to enforce the so\-called
-\fIwheel\fR
-group. By default it permits root access to the system if the applicant user is a member of the
-\fIwheel\fR
-group. If no group with this name exist, the module is using the group with the group\-ID
-\fB0\fR.
-.SH "OPTIONS"
-.TP 3n
-\fBdebug\fR
-Print debug information.
-.TP 3n
-\fBdeny\fR
-Reverse the sense of the auth operation: if the user is trying to get UID 0 access and is a member of the wheel group (or the group of the
-\fBgroup\fR
-option), deny access. Conversely, if the user is not in the group, return PAM_IGNORE (unless
-\fBtrust\fR
-was also specified, in which case we return PAM_SUCCESS).
-.TP 3n
-\fBgroup=\fR\fB\fIname\fR\fR
-Instead of checking the wheel or GID 0 groups, use the
-\fB\fIname\fR\fR
-group to perform the authentication.
-.TP 3n
-\fBroot_only\fR
-The check for wheel membership is done only.
-.TP 3n
-\fBtrust\fR
-The pam_wheel module will return PAM_SUCCESS instead of PAM_IGNORE if the user is a member of the wheel group (thus with a little play stacking the modules the wheel members may be able to su to root without being prompted for a passwd).
-.TP 3n
-\fBuse_uid\fR
-The check for wheel membership will be done against the current uid instead of the original one (useful when jumping with su from one account to another for example).
-.SH "MODULE SERVICES PROVIDED"
-.PP
-The
-\fBauth\fR
-and
-\fBaccount\fR
-services are supported.
-.SH "RETURN VALUES"
-.TP 3n
-PAM_AUTH_ERR
-Authentication failure.
-.TP 3n
-PAM_BUF_ERR
-Memory buffer error.
-.TP 3n
-PAM_IGNORE
-The return value should be ignored by PAM dispatch.
-.TP 3n
-PAM_PERM_DENY
-Permission denied.
-.TP 3n
-PAM_SERVICE_ERR
-Cannot determine the user name.
-.TP 3n
-PAM_SUCCESS
-Success.
-.TP 3n
-PAM_USER_UNKNOWN
-User not known.
-.SH "EXAMPLES"
-.PP
-The root account gains access by default (rootok), only wheel members can become root (wheel) but Unix authenticate non\-root applicants.
-.sp
-.RS 3n
-.nf
-su auth sufficient pam_rootok.so
-su auth required pam_wheel.so
-su auth required pam_unix.so
-
-.fi
-.RE
-.sp
-.SH "SEE ALSO"
-.PP
-
-\fBpam.conf\fR(5),
-\fBpam.d\fR(8),
-\fBpam\fR(8)
-.SH "AUTHOR"
-.PP
-pam_wheel was written by Cristian Gafton <gafton@redhat.com>.
diff --git a/modules/pam_wheel/pam_wheel.8.xml b/modules/pam_wheel/pam_wheel.8.xml
deleted file mode 100644
index bf8b7349..00000000
--- a/modules/pam_wheel/pam_wheel.8.xml
+++ /dev/null
@@ -1,242 +0,0 @@
-<?xml version="1.0" encoding='UTF-8'?>
-<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
- "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd">
-
-<refentry id="pam_wheel">
-
- <refmeta>
- <refentrytitle>pam_wheel</refentrytitle>
- <manvolnum>8</manvolnum>
- <refmiscinfo class="sectdesc">Linux-PAM Manual</refmiscinfo>
- </refmeta>
-
- <refnamediv id="pam_wheel-name">
- <refname>pam_wheel</refname>
- <refpurpose>Only permit root access to members of group wheel</refpurpose>
- </refnamediv>
-
- <refsynopsisdiv>
- <cmdsynopsis id="pam_wheel-cmdsynopsis">
- <command>pam_wheel.so</command>
- <arg choice="opt">
- debug
- </arg>
- <arg choice="opt">
- deny
- </arg>
- <arg choice="opt">
- group=<replaceable>name</replaceable>
- </arg>
- <arg choice="opt">
- root_only
- </arg>
- <arg choice="opt">
- trust
- </arg>
- <arg choice="opt">
- use_uid
- </arg>
- </cmdsynopsis>
- </refsynopsisdiv>
-
- <refsect1 id="pam_wheel-description">
- <title>DESCRIPTION</title>
- <para>
- The pam_wheel PAM module is used to enforce the so-called
- <emphasis>wheel</emphasis> group. By default it permits root
- access to the system if the applicant user is a member of the
- <emphasis>wheel</emphasis> group. If no group with this name exist,
- the module is using the group with the group-ID
- <emphasis remap='B'>0</emphasis>.
- </para>
- </refsect1>
-
- <refsect1 id="pam_wheel-options">
- <title>OPTIONS</title>
- <variablelist>
- <varlistentry>
- <term>
- <option>debug</option>
- </term>
- <listitem>
- <para>
- Print debug information.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>
- <option>deny</option>
- </term>
- <listitem>
- <para>
- Reverse the sense of the auth operation: if the user
- is trying to get UID 0 access and is a member of the
- wheel group (or the group of the <option>group</option> option),
- deny access. Conversely, if the user is not in the group, return
- PAM_IGNORE (unless <option>trust</option> was also specified,
- in which case we return PAM_SUCCESS).
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>
- <option>group=<replaceable>name</replaceable></option>
- </term>
- <listitem>
- <para>
- Instead of checking the wheel or GID 0 groups, use
- the <option><replaceable>name</replaceable></option> group
- to perform the authentication.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>
- <option>root_only</option>
- </term>
- <listitem>
- <para>
- The check for wheel membership is done only.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>
- <option>trust</option>
- </term>
- <listitem>
- <para>
- The pam_wheel module will return PAM_SUCCESS instead
- of PAM_IGNORE if the user is a member of the wheel group
- (thus with a little play stacking the modules the wheel
- members may be able to su to root without being prompted
- for a passwd).
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>
- <option>use_uid</option>
- </term>
- <listitem>
- <para>
- The check for wheel membership will be done against
- the current uid instead of the original one (useful when
- jumping with su from one account to another for example).
- </para>
- </listitem>
- </varlistentry>
- </variablelist>
- </refsect1>
-
- <refsect1 id="pam_wheel-services">
- <title>MODULE SERVICES PROVIDED</title>
- <para>
- The <emphasis remap='B'>auth</emphasis> and
- <emphasis remap='B'>account</emphasis> services are supported.
- </para>
- </refsect1>
-
- <refsect1 id='pam_wheel-return_values'>
- <title>RETURN VALUES</title>
- <variablelist>
- <varlistentry>
- <term>PAM_AUTH_ERR</term>
- <listitem>
- <para>
- Authentication failure.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>PAM_BUF_ERR</term>
- <listitem>
- <para>
- Memory buffer error.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>PAM_IGNORE</term>
- <listitem>
- <para>
- The return value should be ignored by PAM dispatch.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>PAM_PERM_DENY</term>
- <listitem>
- <para>
- Permission denied.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term>PAM_SERVICE_ERR</term>
- <listitem>
- <para>
- Cannot determine the user name.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>PAM_SUCCESS</term>
- <listitem>
- <para>
- Success.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>PAM_USER_UNKNOWN</term>
- <listitem>
- <para>
- User not known.
- </para>
- </listitem>
- </varlistentry>
-
- </variablelist>
- </refsect1>
-
- <refsect1 id='pam_wheel-examples'>
- <title>EXAMPLES</title>
- <para>
- The root account gains access by default (rootok), only wheel
- members can become root (wheel) but Unix authenticate non-root
- applicants.
- <programlisting>
-su auth sufficient pam_rootok.so
-su auth required pam_wheel.so
-su auth required pam_unix.so
- </programlisting>
- </para>
- </refsect1>
-
- <refsect1 id='pam_wheel-see_also'>
- <title>SEE ALSO</title>
- <para>
- <citerefentry>
- <refentrytitle>pam.conf</refentrytitle><manvolnum>5</manvolnum>
- </citerefentry>,
- <citerefentry>
- <refentrytitle>pam.d</refentrytitle><manvolnum>8</manvolnum>
- </citerefentry>,
- <citerefentry>
- <refentrytitle>pam</refentrytitle><manvolnum>8</manvolnum>
- </citerefentry>
- </para>
- </refsect1>
-
- <refsect1 id='pam_wheel-author'>
- <title>AUTHOR</title>
- <para>
- pam_wheel was written by Cristian Gafton &lt;gafton@redhat.com&gt;.
- </para>
- </refsect1>
-
-</refentry>
diff --git a/modules/pam_wheel/pam_wheel.c b/modules/pam_wheel/pam_wheel.c
deleted file mode 100644
index ca0e171d..00000000
--- a/modules/pam_wheel/pam_wheel.c
+++ /dev/null
@@ -1,317 +0,0 @@
-/* pam_wheel module */
-
-/*
- * Written by Cristian Gafton <gafton@redhat.com> 1996/09/10
- * See the end of the file for Copyright Information
- *
- *
- * 1.2 - added 'deny' and 'group=' options
- * 1.1 - added 'trust' option
- * 1.0 - the code is working for at least another person, so... :-)
- * 0.1 - use vsyslog instead of vfprintf/syslog in _pam_log
- * - return PAM_IGNORE on success (take care of sloppy sysadmins..)
- * - use pam_get_user instead of pam_get_item(...,PAM_USER,...)
- * - a new arg use_uid to auth the current uid instead of the
- * initial (logged in) one.
- * 0.0 - first release
- *
- * TODO:
- * - try to use make_remark from pam_unix/support.c
- * - consider returning on failure PAM_FAIL_NOW if the user is not
- * a wheel member.
- */
-
-#include "config.h"
-
-#include <stdio.h>
-#include <unistd.h>
-#include <string.h>
-#include <syslog.h>
-#include <stdarg.h>
-#include <sys/types.h>
-#include <pwd.h>
-#include <grp.h>
-
-/*
- * here, we make a definition for the externally accessible function
- * in this file (this definition is required for static a module
- * but strongly encouraged generally) it is used to instruct the
- * modules include file to define the function prototypes.
- */
-
-#define PAM_SM_AUTH
-#define PAM_SM_ACCOUNT
-
-#include <security/pam_modules.h>
-#include <security/pam_modutil.h>
-#include <security/pam_ext.h>
-
-/* checks if a user is on a list of members of the GID 0 group */
-static int is_on_list(char * const *list, const char *member)
-{
- while (list && *list) {
- if (strcmp(*list, member) == 0)
- return 1;
- list++;
- }
- return 0;
-}
-
-/* argument parsing */
-
-#define PAM_DEBUG_ARG 0x0001
-#define PAM_USE_UID_ARG 0x0002
-#define PAM_TRUST_ARG 0x0004
-#define PAM_DENY_ARG 0x0010
-#define PAM_ROOT_ONLY_ARG 0x0020
-
-static int
-_pam_parse (const pam_handle_t *pamh, int argc, const char **argv,
- char *use_group, size_t group_length)
-{
- int ctrl=0;
-
- memset(use_group, '\0', group_length);
-
- /* step through arguments */
- for (ctrl=0; argc-- > 0; ++argv) {
-
- /* generic options */
-
- if (!strcmp(*argv,"debug"))
- ctrl |= PAM_DEBUG_ARG;
- else if (!strcmp(*argv,"use_uid"))
- ctrl |= PAM_USE_UID_ARG;
- else if (!strcmp(*argv,"trust"))
- ctrl |= PAM_TRUST_ARG;
- else if (!strcmp(*argv,"deny"))
- ctrl |= PAM_DENY_ARG;
- else if (!strcmp(*argv,"root_only"))
- ctrl |= PAM_ROOT_ONLY_ARG;
- else if (!strncmp(*argv,"group=",6))
- strncpy(use_group,*argv+6,group_length-1);
- else {
- pam_syslog(pamh, LOG_ERR, "unknown option: %s", *argv);
- }
- }
-
- return ctrl;
-}
-
-static int
-perform_check (pam_handle_t *pamh, int ctrl, const char *use_group)
-{
- const char *username = NULL;
- const char *fromsu;
- struct passwd *pwd, *tpwd = NULL;
- struct group *grp;
- int retval = PAM_AUTH_ERR;
-
- retval = pam_get_user(pamh, &username, NULL);
- if ((retval != PAM_SUCCESS) || (!username)) {
- if (ctrl & PAM_DEBUG_ARG) {
- pam_syslog(pamh, LOG_DEBUG, "can not get the username");
- }
- return PAM_SERVICE_ERR;
- }
-
- pwd = pam_modutil_getpwnam (pamh, username);
- if (!pwd) {
- if (ctrl & PAM_DEBUG_ARG) {
- pam_syslog(pamh, LOG_NOTICE, "unknown user %s", username);
- }
- return PAM_USER_UNKNOWN;
- }
- if (ctrl & PAM_ROOT_ONLY_ARG) {
- /* su to a non uid 0 account ? */
- if (pwd->pw_uid != 0) {
- return PAM_IGNORE;
- }
- }
-
- if (ctrl & PAM_USE_UID_ARG) {
- tpwd = pam_modutil_getpwuid (pamh, getuid());
- if (!tpwd) {
- if (ctrl & PAM_DEBUG_ARG) {
- pam_syslog(pamh, LOG_NOTICE, "who is running me ?!");
- }
- return PAM_SERVICE_ERR;
- }
- fromsu = tpwd->pw_name;
- } else {
- fromsu = pam_modutil_getlogin(pamh);
- if (fromsu) {
- tpwd = pam_modutil_getpwnam (pamh, fromsu);
- }
- if (!fromsu || !tpwd) {
- if (ctrl & PAM_DEBUG_ARG) {
- pam_syslog(pamh, LOG_NOTICE, "who is running me ?!");
- }
- return PAM_SERVICE_ERR;
- }
- }
-
- /*
- * At this point fromsu = username-of-invoker; tpwd = pwd ptr for fromsu
- */
-
- if (!use_group[0]) {
- if ((grp = pam_modutil_getgrnam (pamh, "wheel")) == NULL) {
- grp = pam_modutil_getgrgid (pamh, 0);
- }
- } else {
- grp = pam_modutil_getgrnam (pamh, use_group);
- }
-
- if (!grp || (!grp->gr_mem && (tpwd->pw_gid != grp->gr_gid))) {
- if (ctrl & PAM_DEBUG_ARG) {
- if (!use_group[0]) {
- pam_syslog(pamh, LOG_NOTICE, "no members in a GID 0 group");
- } else {
- pam_syslog(pamh, LOG_NOTICE,
- "no members in '%s' group", use_group);
- }
- }
- if (ctrl & PAM_DENY_ARG) {
- /* if this was meant to deny access to the members
- * of this group and the group does not exist, allow
- * access
- */
- return PAM_IGNORE;
- } else {
- return PAM_AUTH_ERR;
- }
- }
-
- /*
- * test if the user is a member of the group, or if the
- * user has the "wheel" (sic) group as its primary group.
- */
-
- if (is_on_list(grp->gr_mem, fromsu) || (tpwd->pw_gid == grp->gr_gid)) {
-
- if (ctrl & PAM_DENY_ARG) {
- retval = PAM_PERM_DENIED;
-
- } else if (ctrl & PAM_TRUST_ARG) {
- retval = PAM_SUCCESS; /* this can be a sufficient check */
-
- } else {
- retval = PAM_IGNORE;
- }
-
- } else {
-
- if (ctrl & PAM_DENY_ARG) {
-
- if (ctrl & PAM_TRUST_ARG) {
- retval = PAM_SUCCESS; /* this can be a sufficient check */
- } else {
- retval = PAM_IGNORE;
- }
-
- } else {
- retval = PAM_PERM_DENIED;
- }
- }
-
- if (ctrl & PAM_DEBUG_ARG) {
- if (retval == PAM_IGNORE) {
- pam_syslog(pamh, LOG_NOTICE,
- "Ignoring access request '%s' for '%s'",
- fromsu, username);
- } else {
- pam_syslog(pamh, LOG_NOTICE, "Access %s to '%s' for '%s'",
- (retval != PAM_SUCCESS) ? "denied":"granted",
- fromsu, username);
- }
- }
-
- return retval;
-}
-
-/* --- authentication management functions --- */
-
-PAM_EXTERN int
-pam_sm_authenticate (pam_handle_t *pamh, int flags UNUSED,
- int argc, const char **argv)
-{
- char use_group[BUFSIZ];
- int ctrl;
-
- ctrl = _pam_parse(pamh, argc, argv, use_group, sizeof(use_group));
-
- return perform_check(pamh, ctrl, use_group);
-}
-
-PAM_EXTERN int
-pam_sm_setcred (pam_handle_t *pamh UNUSED, int flags UNUSED,
- int argc UNUSED, const char **argv UNUSED)
-{
- return PAM_SUCCESS;
-}
-
-PAM_EXTERN int
-pam_sm_acct_mgmt (pam_handle_t *pamh, int flags UNUSED,
- int argc, const char **argv)
-{
- char use_group[BUFSIZ];
- int ctrl;
-
- ctrl = _pam_parse(pamh, argc, argv, use_group, sizeof(use_group));
-
- return perform_check(pamh, ctrl, use_group);
-}
-
-#ifdef PAM_STATIC
-
-/* static module data */
-
-struct pam_module _pam_wheel_modstruct = {
- "pam_wheel",
- pam_sm_authenticate,
- pam_sm_setcred,
- pam_sm_acct_mgmt,
- NULL,
- NULL,
- NULL,
- NULL,
-};
-
-#endif /* PAM_STATIC */
-
-/*
- * Copyright (c) Cristian Gafton <gafton@redhat.com>, 1996, 1997
- * All rights reserved
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, and the entire permission notice in its entirety,
- * including the disclaimer of warranties.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. The name of the author may not be used to endorse or promote
- * products derived from this software without specific prior
- * written permission.
- *
- * ALTERNATIVELY, this product may be distributed under the terms of
- * the GNU Public License, in which case the provisions of the GPL are
- * required INSTEAD OF the above restrictions. (This clause is
- * necessary due to a potential bad interaction between the GPL and
- * the restrictions contained in a BSD-style copyright.)
- *
- * THIS SOFTWARE IS PROVIDED `AS IS'' AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
- * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
- * OF THE POSSIBILITY OF SUCH DAMAGE.
- */
diff --git a/modules/pam_wheel/tst-pam_wheel b/modules/pam_wheel/tst-pam_wheel
deleted file mode 100755
index 4bf5d6a6..00000000
--- a/modules/pam_wheel/tst-pam_wheel
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-../../tests/tst-dlopen .libs/pam_wheel.so