diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..f087b42 --- /dev/null +++ b/.gitattributes @@ -0,0 +1 @@ +*.tar.gz filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1534ba5 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +*.rpm +*.log +*spec-20* diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..2b1fbd5 --- /dev/null +++ b/Makefile @@ -0,0 +1,21 @@ +# Makefile for source rpm: pwauth +# $Id: Makefile,v 1.1 2016/02/07 20:42:36 stephdl Exp $ +NAME := pwauth +SPECFILE = $(firstword $(wildcard *.spec)) + +define find-makefile-common +for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done +endef + +MAKEFILE_COMMON := $(shell $(find-makefile-common)) + +ifeq ($(MAKEFILE_COMMON),) +# attept a checkout +define checkout-makefile-common +test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 +endef + +MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) +endif + +include $(MAKEFILE_COMMON) diff --git a/README.md b/README.md index 8be947d..f378151 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,11 @@ # pwauth -3rd Party (Maintained by Koozali) git repo for pwauth smeserver \ No newline at end of file +3rd Party (Maintained by Koozali) git repo for pwauth smeserver + +## Description + +
*This description has been generated by an LLM AI system and cannot be relied on to be fully correct.* +*Once it has been checked, then this comment will be deleted* +
+ +pwauth is an open source software package that provides an authentication mechanism for web applications. It is a light-weight, portable, extensible, and highly configurable system that allows web applications to authenticate users via various methods, such as LDAP, SQL, PAM, or Unix passwd files. It also supports group-based access control, as well as multi-factor authentication. diff --git a/contriborbase b/contriborbase new file mode 100644 index 0000000..ef36a67 --- /dev/null +++ b/contriborbase @@ -0,0 +1 @@ +sme10 diff --git a/pwauth-2.3.10.tar.gz b/pwauth-2.3.10.tar.gz new file mode 100644 index 0000000..c80af97 --- /dev/null +++ b/pwauth-2.3.10.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:267813acccc58d407b735ebfd32ee7ec52726379d0aa3670731d2ea4c9d85906 +size 23825 diff --git a/pwauth-cleanup.patch b/pwauth-cleanup.patch new file mode 100755 index 0000000..4d3ca3b --- /dev/null +++ b/pwauth-cleanup.patch @@ -0,0 +1,41 @@ +--- pwauth-2.3.10/snooze.c.orig 2011-10-05 07:18:44.000000000 -0600 ++++ pwauth-2.3.10/snooze.c 2013-05-21 14:05:07.066802103 -0600 +@@ -42,6 +42,7 @@ + * sleep time, if other pwauth processes are in sleeps. + */ + ++void + snooze(int seconds) + { + int slfd; +--- pwauth-2.3.10/lastlog.c.orig 2009-04-03 22:45:56.000000000 -0600 ++++ pwauth-2.3.10/lastlog.c 2013-05-21 14:08:39.134622151 -0600 +@@ -31,6 +31,8 @@ + * ======================================================================= + */ + ++#include ++ + #include "pwauth.h" + + /* LASTLOG - update the system's lastlog */ +--- pwauth-2.3.10/pwauth.h.orig 2009-04-03 22:45:56.000000000 -0600 ++++ pwauth-2.3.10/pwauth.h 2013-05-21 14:10:16.590658544 -0600 +@@ -127,3 +127,7 @@ extern int haveuid; + #ifndef BFSZ + # define BFSZ 1024 + #endif ++ ++void snooze(int seconds); ++void lastlog(); ++int check_auth(char *login, char *passwd); +--- pwauth-2.3.10/main.c.orig 2013-05-21 12:05:22.068346394 -0600 ++++ pwauth-2.3.10/main.c 2013-05-21 14:18:29.873121527 -0600 +@@ -44,6 +44,7 @@ + #endif + + ++int + main(int argc, char **argv) + { + #ifdef ENV_METHOD diff --git a/pwauth-config.patch b/pwauth-config.patch new file mode 100644 index 0000000..ae49bea --- /dev/null +++ b/pwauth-config.patch @@ -0,0 +1,52 @@ +diff -ruN pwauth-2.3.10.old/config.h pwauth-2.3.10/config.h +--- pwauth-2.3.10.old/config.h 2013-06-04 20:12:37.000000000 -0700 ++++ pwauth-2.3.10/config.h 2013-06-04 20:25:06.000000000 -0700 +@@ -213,8 +213,8 @@ + * uid numbers. + */ + +-#define UNIX_LASTLOG /**/ +-#define HAVE_LASTLOG_H /**/ ++/* #define UNIX_LASTLOG /**/ ++/* #define HAVE_LASTLOG_H /**/ + + + /* If NOLOGIN_FILE is defined to the full path name of a file, then the +@@ -227,8 +227,8 @@ + * right with PAM. + */ + +-/* #define NOLOGIN_FILE "/etc/nologin" /**/ +-/* #define MIN_NOLOGIN_UID 1 /**/ ++#define NOLOGIN_FILE "/etc/nologin" /**/ ++#define MIN_NOLOGIN_UID 1 /**/ + + + /* Defining CHECK_LOGIN_EXPIRATION and CHECK_PASSWORD_EXPIRATION causes +@@ -278,7 +278,7 @@ + * to change the uid list. + */ + +-/* #define SERVER_UIDS 30 /* user "wwwrun" on the author's system */ ++#define SERVER_UIDS 100,101,102 /* user "www" and "admin" (100 allows for upgraded systems) */ + + + /* If MIN_UNIX_UID is defined to an integer, logins with uid numbers less than +@@ -290,7 +290,7 @@ + * given value will be accepted). + */ + +-#define MIN_UNIX_UID 500 /**/ ++#define MIN_UNIX_UID 100 /**/ + + + /* If IGNORE_CASE is defined, the login given is checked in two different +@@ -319,7 +319,7 @@ + * SLEEP_LOCK. SLEEP_TIME defaults to 2 seconds if not defined. + */ + +-#define SLEEP_LOCK "/var/run/pwauth.lock" ++/* #define SLEEP_LOCK "/var/run/pwauth.lock" /**/ + + + /* If ENV_METHOD is defined, pwauth expects mod_auth_external to be configured diff --git a/pwauth-make.patch b/pwauth-make.patch new file mode 100755 index 0000000..1b23368 --- /dev/null +++ b/pwauth-make.patch @@ -0,0 +1,66 @@ +--- pwauth-2.3.10/config.h.orig 2011-10-05 07:01:12.000000000 -0600 ++++ pwauth-2.3.10/config.h 2013-05-21 12:05:22.079346949 -0600 +@@ -123,7 +123,7 @@ + + /* #define SHADOW_NONE /**/ + /* #define SHADOW_BSD /* FreeBSD, NetBSD, OpenBSD, BSDI, OS X */ +-#define SHADOW_SUN /* Linux, Solaris, IRIX */ ++/* #define SHADOW_SUN /* Linux, Solaris, IRIX */ + /* #define SHADOW_JFH /**/ + /* #define SHADOW_MDW /**/ + /* #define SHADOW_AIX /* AIX (see also AUTHENTICATE_AIX) */ +@@ -131,7 +131,7 @@ + + /* HIGH-LEVEL OPTIONS */ + +-/* #define PAM /* Linux PAM or OpenPAM */ ++#define PAM /* Linux PAM or OpenPAM */ + /* #define PAM_OLD_OS_X /* PAM on OS X version 10.5 or older */ + /* #define PAM_SOLARIS /* PAM on Solaris other than 2.6 */ + /* #define PAM_SOLARIS_26 /* PAM on Solaris 2.6 */ +@@ -227,8 +227,8 @@ + * right with PAM. + */ + +-#define NOLOGIN_FILE "/etc/nologin" /**/ +-#define MIN_NOLOGIN_UID 1 /**/ ++/* #define NOLOGIN_FILE "/etc/nologin" /**/ ++/* #define MIN_NOLOGIN_UID 1 /**/ + + + /* Defining CHECK_LOGIN_EXPIRATION and CHECK_PASSWORD_EXPIRATION causes +@@ -278,7 +278,7 @@ + * to change the uid list. + */ + +-#define SERVER_UIDS 30 /* user "wwwrun" on the author's system */ ++/* #define SERVER_UIDS 30 /* user "wwwrun" on the author's system */ + + + /* If MIN_UNIX_UID is defined to an integer, logins with uid numbers less than +--- pwauth-2.3.10/Makefile.orig 2011-10-05 07:45:04.000000000 -0600 ++++ pwauth-2.3.10/Makefile 2013-05-21 12:31:35.249588745 -0600 +@@ -11,7 +11,7 @@ + LOCALFLAGS= -g + + # For PAM on Redhat Linux +-# LIB=-lpam -ldl ++LIB=-lpam -ldl + + # For PAM on Solaris or OS X + # LIB=-lpam +@@ -28,12 +29,12 @@ TAR= README INSTALL CHANGES FORM_AUTH Ma + + pwauth: main.o auth_aix.o auth_bsd.o auth_hpux.o auth_mdw.o auth_openbsd.o \ + auth_pam.o auth_sun.o fail_log.o lastlog.o nologin.o snooze.o +- $(CC) -o pwauth $(CFLAGS) main.o auth_aix.o auth_bsd.o auth_hpux.o \ ++ $(CC) -o pwauth $(CFLAGS) $(LDFLAGS) main.o auth_aix.o auth_bsd.o auth_hpux.o \ + auth_mdw.o auth_openbsd.o auth_pam.o auth_sun.o fail_log.o \ + lastlog.o nologin.o snooze.o $(LIB) + + checkfaillog: checkfaillog.o fail_check.o +- $(CC) -o checkfaillog $(CFLAGS) checkfaillog.o fail_check.o $(LIB) ++ $(CC) -o checkfaillog $(CFLAGS) $(LDFLAGS) checkfaillog.o fail_check.o $(LIB) + + main.o: main.c config.h pwauth.h fail_log.h + auth_aix.o: auth_aix.c config.h pwauth.h diff --git a/pwauth-strchr.patch b/pwauth-strchr.patch new file mode 100644 index 0000000..959bbd6 --- /dev/null +++ b/pwauth-strchr.patch @@ -0,0 +1,11 @@ +--- pwauth-2.3.10/main.c.orig 2009-06-11 07:47:10.000000000 -0600 ++++ pwauth-2.3.10/main.c 2012-04-17 17:03:31.432750719 -0600 +@@ -50,7 +50,7 @@ main(int argc, char **argv) + char *login, *passwd; + #else + char login[BFSZ+1], passwd[BFSZ+1]; +- char *c, *strchr(); ++ char *c; + #endif + int uid,i; + int status; diff --git a/pwauth.pam b/pwauth.pam new file mode 100644 index 0000000..2c80d7a --- /dev/null +++ b/pwauth.pam @@ -0,0 +1,3 @@ +#%PAM-1.0 +auth include password-auth +account include password-auth diff --git a/pwauth.spec b/pwauth.spec new file mode 100644 index 0000000..a7eb16f --- /dev/null +++ b/pwauth.spec @@ -0,0 +1,101 @@ +%global _hardened_build 1 + +Name: pwauth +Version: 2.3.10 +Release: 10%{?dist} +Summary: External plugin for mod_authnz_external authenticator + +Group: Applications/System +License: BSD +URL: http://code.google.com/p/pwauth/ +Source0: http://pwauth.googlecode.com/files/%{name}-%{version}.tar.gz +Source1: pwauth.pam +Patch1: pwauth-make.patch +Patch2: pwauth-strchr.patch +Patch3: pwauth-cleanup.patch + +Patch100: pwauth-config.patch + +BuildRequires: pam-devel +Requires(pre): httpd, perl + +%description +Pwauth is an authenticator designed to be used with mod_auth_external +or mod_authnz_external and the Apache HTTP daemon to support reasonably +secure web authentication out of the system password database on most +versions of Unix. + + +%prep +%setup -q + +%patch1 -p1 -b .make +%patch2 -p1 -b .strchr +%patch3 -p1 -b .cleanup +%patch100 -p1 -b .config + +%build +export CFLAGS="${RPM_OPT_FLAGS}" +export LDFLAGS="${RPM_LD_FLAGS}" + +make %{?_smp_mflags} CFLAGS="${CFLAGS} -Wno-comment" LDFLAGS="${LDFLAGS}" + + +%install +mkdir -p %{buildroot}%{_bindir} %{buildroot}%{_sysconfdir}/pam.d + +install -p -m 4750 -t %{buildroot}%{_bindir} pwauth +install -p -m 0750 -t %{buildroot}%{_bindir} unixgroup +install -p -T %{SOURCE1} %{buildroot}%{_sysconfdir}/pam.d/pwauth + + +%clean + + +%files +%defattr(-,root,root,-) +%attr(4750,-,apache) %{_bindir}/pwauth +%attr(0750,-,apache) %{_bindir}/unixgroup +%attr(644,-,-) %{_sysconfdir}/pam.d/pwauth +%doc CHANGES INSTALL README + + +%changelog +* Fri Jul 14 2023 BogusDateBot +- Eliminated rpmbuild "bogus date" warnings due to inconsistent weekday, + by assuming the date is correct and changing the weekday. + +* Tue Apr 12 2016 Daniel Berteaud - 2.3.10-10.sme +- Rebase on latest EPEL build, reapply SME Server config [SME: 9442] + +* Thu Jun 18 2015 Fedora Release Engineering - 2.3.10-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sun Aug 17 2014 Fedora Release Engineering - 2.3.10-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sat Jun 07 2014 Fedora Release Engineering - 2.3.10-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Sun Aug 04 2013 Fedora Release Engineering - 2.3.10-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Tue May 21 2013 Philip Prindeville 2.3.10-5 +- Fix for bz#965461 +- Get rid of some of the more worrisome compiler warnings. +- Use patch instead of sed to modify Makefile. + +* Fri Mar 22 2013 Philip Prindeville 2.3.10-4 +- Fix for bz#924881 + +* Thu Feb 14 2013 Fedora Release Engineering - 2.3.10-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Sat Jul 21 2012 Fedora Release Engineering - 2.3.10-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Fri May 04 2012 Philip Prindeville 2.3.10-1 +- Initial checkin after Fedora packaging review. + +* Tue Apr 17 2012 Philip Prindeville 2.3.10-0 +- Initial RPM packaging.