problem with PIPE
Felix Benner
felix.benner at imail.de
Sun Dec 24 09:21:51 EST 2006
Dhika Cikul schrieb:
> Hello,
>
> I'm new in Python, i don't know my subject is correct or wrong. I have
> problem with my script. I want to change password with passwd password
> in python without user submitted anything from keyboard. I get
> tutorial that i must use pipe to process this. And this is my code :
>
> [code]
>
> 1.
> 2. #!/usr/bin/python
> 3.
> 4. import os
> 5.
> 6. COMMAND = 'passwd'
> 7. PASSWD = 'mypassword'
> 8.
> 9. # open a pipe to passwd program and
> 10. # write the data to the pipe
> 11. p = os.popen("%s" % COMMAND, 'w')
> 12. p.write(PASSWD)
> 13. p.write('\n')
> 14. p.write(PASSWD)
> 15. p.close()
> 16.
> [/code]
>
>
> but i got this error :
>
> [output]
> [cp at server cp]$ ./password
> Changing password for user cp.
> Changing password for cp
> (current) UNIX password: passwd: Authentication token manipulation error
> [/output]
>
> Anyone can help me how to write to pipe.. i try several method, and
> always fail.
>
> Thank's
I guess the passwd program doesn't allow changing passwords from a pipe
since it is a potential security hole.
More information about the Python-list
mailing list