At 02:40 01-09-99 +0700, you wrote:
>anehnya nih walaupun setuid user dan group udah dipake , kalo make
>user biasa masih gagal kenapa ya ?
>kalo yang akses root udah sukses sih
>

ini karena program passwd() mengecek dengan getuid() == 0, bukan
dengan geteuid(). solusinya, sebelum spawn Expect, set dulu uid = 
euid:

  $< = $>;

dan kayaknya baris berikut di modul Expect harus dibenerin:

  exec($cmd);

jadi

  exec(@_);

udah gitu Anda spawn-nya dengan pass argumen sebagai array seperti 
ini:

  Expect->spawn('/usr/bin/passwd', $user);

prompt "New UNIX password: " berhasil keluar  :-)


tapi...
ada masalah lagi (ini berhubungan dengan PAM?). kalo password yang
kita masukkan terlalu pendek atau 'based on a dictionary word',
dan kita confirm password yang sama di prompt berikutnya, 'token
manipulation' gagal. (sementara kalo kita jalanin sebagai root/
bukan suid root, berhasil).

--
mailto:[EMAIL PROTECTED]
http://steven.haryan.to
Bandung Perl Mongers: http://bandung.pm.org


--------------------------------------------------------------------------------
Utk berhenti langganan, kirim email ke [EMAIL PROTECTED]
Informasi arsip di http://www.linux.or.id/milis.php3
Pengelola dapat dihubungi lewat [EMAIL PROTECTED]
Hosted by http://www.Indoglobal.com

Kirim email ke