When i ping servers with os.system in python i get multiple response codes.
Command used -  os.system("ping -q -c 30 -s SERVERANME")
- 0 - Online
- 256 - Offline
- 512 - what does 512 mean ?
When i ping servers with os.system in python i get multiple response codes.
Command used -  os.system("ping -q -c 30 -s SERVERANME")
 
    
     
    
    Per the docs:
On Unix, the return value is the exit status of the process encoded in the format specified for
wait(). Note that POSIX does not specify the meaning of the return value of the Csystem()function, so the return value of the Python function is system-dependent.
And the wait docs say:
Wait for completion of a child process, and return a tuple containing its pid and exit status indication: a 16-bit number, whose low byte is the signal number that killed the process, and whose high byte is the exit status (if the signal number is zero); the high bit of the low byte is set if a core file was produced.
So 0, 256 and 512 correspond to ping exiting normally (not killed by signal) with exit statuses of 0 == 0 << 8 (0 traditionally means "success"), 256 == 1 << 8 (1 typically means "normal" failure) and 512 == 2 << 8 (not consistent, but 2 is frequently used to indicate an argument parsing failure). In this case, you passed -s without providing the mandatory value (packetsize) that switch requires, so an exit status of 2 makes sense.
