Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 17 Aug 2012 06:37:51 GMT
From:      Loganaden Velvindron <logan@afrinic.net>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/170693: usermin change password not working
Message-ID:  <201208170637.q7H6bpUr083126@red.freebsd.org>
Resent-Message-ID: <201208170640.q7H6e9Ju078413@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         170693
>Category:       ports
>Synopsis:       usermin change password not working
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Fri Aug 17 06:40:09 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator:     Loganaden Velvindron
>Release:        9.0-RELEASE
>Organization:
Afrinic Ltd
>Environment:
FreeBSD ops01.mu.afrinic.net 9.0-RELEASE FreeBSD 9.0-RELEASE #0: Tue Jan  3 07:46:30 UTC 2012     root@farrell.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  amd64

>Description:
Daniel Shaw (daniel@afrinic.net) discovered a bug in the usermin ports.

usermin defines a function known as:

                ($fh, $fpid) = &proc::pty_process_exec(
                                        $passwd_cmd, $uinfo[2], $uinfo[3]);  

This is used to run passwd.

However, this code relies on p5-IO-Tty:


sub pty_process_exec
{
local ($cmd, $uid, $gid) = @_;
if (&is_readonly_mode()) {
        # When in readonly mode, don't run the command
        $cmd = "/bin/true";
        }
&webmin_debug_log('CMD', "cmd=$cmd uid=$uid gid=$gid")
        if ($gconfig{'debug_what_cmd'});
                
eval "use IO::Pty";
if (!$@) {      
        # Use the IO::Pty perl module if installed
        local $ptyfh = new IO::Pty; 
        if (!$ptyfh) {
                &error("Failed to create new PTY with IO::Pty");
                }

>How-To-Repeat:
install usermin & change the unix password of any user. Nothing is displayed after clicking on submit & the password is not updated.
>Fix:
install p5-IO-Tty manually.

Patch attached with submission follows:

--- Makefile.orig	2012-08-17 10:02:14.000000000 +0400
+++ Makefile	2012-08-17 09:57:36.000000000 +0400
@@ -19,6 +19,7 @@ MAINTAINER=	olgeni@FreeBSD.org
 COMMENT=	Web-based interface for performing some user tasks
 
 RUN_DEPENDS=	p5-Net-SSLeay>=0:${PORTSDIR}/security/p5-Net-SSLeay \
+		p5-IO-Tty>=0:${PORTSDIR}/devel/p5-IO-Tty \
 		p5-Authen-PAM>=0:${PORTSDIR}/security/p5-Authen-PAM
 
 FETCH_CMD?=	/usr/bin/fetch -pRr


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201208170637.q7H6bpUr083126>