in reply to
Re^5: How to pass CTRL-C to child script only
in thread How to pass CTRL-C to child script only
I'll explain further if you have any other questions. Please let me know if this works for you.
The above is tested, working code. It contains an abbreviation of your autoLogon code that I hope is similar to your actual semantics.
Some modules to consider Term::Readkey or IO::Prompter, to handle this for you.
Another option is to put the terminal into raw mode and read characters one at a time. Abort upon finding the key currently bound to sig-int (ctrl-c). blech, what a pain that would be.