3) check the curl output that comes back from subprocess.call (or the existing os.system). Grep it for a portion of the standard text that Indigo replies with (it sends an HTML-formatted "Access Denied" message when it fails).
yes you are right, but i don't know what to do with an error. When it fails it can't tell anyone that it failed.
and so far the only error i got from any user was wrong userid or password, no other issue with it. As long as it is connected to the network.
but will think about it ..
2) change your os.system("command_and_args_here") method to subprocess.call("command","arg1","arg2"...) instead. The subprocess class will take care of the escaping for you, and is supposedly more robust than os.system.
the robustness is only about security injection into strings that will be executed but the system. as this should not be an issue here.
changing it to the "proper" method with putting the individual items into a list of strings is work, concatenating is so much simpler. But for this one will do it .
But I don't have a way to test it, don't want to change server password to include "' and spaces ..
Karl