Changeset 892 for server/common


Ignore:
Timestamp:
Dec 19, 2008, 12:48:18 PM (15 years ago)
Author:
andersk
Message:
Avoid getpwnam in vhostadd so that it works from outside scripts.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • server/common/oursrc/accountadm/vhostadd

    r844 r892  
    2020fi
    2121
    22 pw=$(perl -e '$, = ":"; print getpwnam($ARGV[0]);' -- "$user")
    23 if [ $? -ne 0 ]; then
    24     echo "User not found." >&2
    25     exit $?
    26 fi
    27 IFS=: read user x uid gid x x x home x <<< "$pw"
    28 
    29 user_dn=$(ldapsearch -LLL -x -b ou=People,dc=scripts,dc=mit,dc=edu "(uid=$user)" dn | perl -0pe 's/\n //g; s/^dn: //')
     22while read attr value; do
     23    echo "$attr" "$value"
     24    case "$attr" in
     25        dn:) user_dn=$value;;
     26        uid:) user=$value;;
     27        uidNumber:) uid=$value;;
     28        gidNumber:) gid=$value;;
     29        homeDirectory:) home=$value;;
     30    esac
     31done < <(ldapsearch -LLL -x -b ou=People,dc=scripts,dc=mit,dc=edu "(uid=$user)" dn uid uidNumber gidNumber homeDirectory | perl -0pe 's/\n //g;')
    3032
    3133printf "Docroot: $home/web_scripts" >&2
Note: See TracChangeset for help on using the changeset viewer.