You seem to abuse PuTTY as a way to automatically send commands via SSH to a remote host. Why don't you use one of the SSH libraries available at CPAN? If you can't use them, why don't you use plink.exe?
Funny that you still assume that one will need to enter a password to log in to a remote system. I prefer using public key systems, no need to enter a password all the times.
sudo su - $userid looks old. sudo should know the -i parameter, giving you a login session without the extra work of invoking su. It should also know the -u parameter to select a user different from root, by name or by UID.
Depending on how sudo was configured, it will not always ask for a password, but your StartPutty function does not check for that condition. Instead, it blindly enters the password, already having root permissions. Let's hope no user has "rm -rf /" as password.
The code around sudo has two "long" sleeps, during that time, some nasty popup could steal the focus. That would completely break your code, because the keys you send never arrive at the server. It will still sit there waiting for a user command or a password when you try to feed it root commands. You should at least check for prompts. Better, get rid of those remote-controlling attempts. It can't work reliable. Create an SSH connection from within perl or use the plink.exe helper when you can't use an SSH library.
Alexander
In reply to Re: How to Resize a Window in M$ Windows?
by afoken
in thread How to Resize a Window in M$ Windows?
by NateTut
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |