mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-11 07:22:22 +00:00
- Fix PAM problem
PR: 92579 Submitted by: Joe Doupnik
This commit is contained in:
parent
bd2f6c37bf
commit
5e6bb83e2d
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=157554
@ -7,6 +7,7 @@
|
||||
|
||||
PORTNAME= vsftpd
|
||||
PORTVERSION= 2.0.4
|
||||
PORTREVISION= 1
|
||||
CATEGORIES= ftp ipv6
|
||||
MASTER_SITES= ftp://vsftpd.beasts.org/users/cevans/
|
||||
PKGNAMESUFFIX?= ${SSL_SUFFIX}${PKGNAMESUFFIX2}
|
||||
|
63
ftp/vsftpd/files/patch-sysdeputil.c
Normal file
63
ftp/vsftpd/files/patch-sysdeputil.c
Normal file
@ -0,0 +1,63 @@
|
||||
--- sysdeputil.c.orig Mon May 23 16:34:23 2005
|
||||
+++ sysdeputil.c Mon Jan 30 20:17:40 2006
|
||||
@@ -6,6 +6,10 @@
|
||||
*
|
||||
* Highly system dependent utilities - e.g. authentication, capabilities.
|
||||
*/
|
||||
+/* Modifications by Joe R. Doupnik, jrd@cc.usu.edu, marked as JRD, for
|
||||
+PAM support on recent FreeBSD systems. Does wtmp entries for last_log.
|
||||
+Most recently tested on FBSD v6.0
|
||||
+*/
|
||||
|
||||
#include "sysdeputil.h"
|
||||
#include "str.h"
|
||||
@@ -34,6 +38,9 @@
|
||||
/* For FreeBSD */
|
||||
#include <sys/param.h>
|
||||
#include <sys/uio.h>
|
||||
+#include <stdio.h> /* JRD */
|
||||
+#include <syslog.h> /* JRD */
|
||||
+#include <utmp.h> /* JRD */
|
||||
|
||||
/* Configuration.. here are the possibilities */
|
||||
#undef VSF_SYSDEP_HAVE_CAPABILITIES
|
||||
@@ -302,15 +309,21 @@
|
||||
s_pamh = 0;
|
||||
return 0;
|
||||
}
|
||||
-#ifdef PAM_RHOST
|
||||
- retval = pam_set_item(s_pamh, PAM_RHOST, str_getbuf(p_remote_host));
|
||||
+
|
||||
+/*was JRD #ifdef PAM_RHOST */
|
||||
+ {
|
||||
+ char buf[UT_HOSTSIZE]; /* restrict to normal system buf size */
|
||||
+ snprintf(buf, sizeof(buf), "%s", str_getbuf(p_remote_host));
|
||||
+ retval = pam_set_item(s_pamh, PAM_RHOST, buf);
|
||||
+ }
|
||||
+/*was JRD retval = pam_set_item(s_pamh, PAM_RHOST, str_getbuf(p_remote_host)); */
|
||||
if (retval != PAM_SUCCESS)
|
||||
{
|
||||
(void) pam_end(s_pamh, 0);
|
||||
s_pamh = 0;
|
||||
return 0;
|
||||
}
|
||||
-#endif
|
||||
+/*was JRD #endif */
|
||||
retval = pam_authenticate(s_pamh, 0);
|
||||
if (retval != PAM_SUCCESS)
|
||||
{
|
||||
@@ -341,6 +354,14 @@
|
||||
}
|
||||
/* Must do this BEFORE opening a session for pam_limits to count us */
|
||||
vsf_insert_uwtmp(p_user_str, p_remote_host);
|
||||
+/* JRD Tell PAM our "PAM_TTY" */
|
||||
+ {
|
||||
+ char ttyline[UT_LINESIZE];
|
||||
+ (void)snprintf(ttyline, sizeof(ttyline), "ftp%d", getpid());
|
||||
+ pam_set_item(s_pamh, PAM_TTY, ttyline);
|
||||
+ }
|
||||
+/* JRD end */
|
||||
+
|
||||
retval = pam_open_session(s_pamh, 0);
|
||||
if (retval != PAM_SUCCESS)
|
||||
{
|
Loading…
Reference in New Issue
Block a user