mirror of
				https://github.com/Rudd-O/ansible-qubes.git
				synced 2025-10-31 19:48:54 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			47 lines
		
	
	
		
			937 B
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			937 B
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/env python
 | |
| 
 | |
| import sys
 | |
| import os
 | |
| import subprocess
 | |
| import socket
 | |
| 
 | |
| parms = sys.argv[1:]
 | |
| 
 | |
| try:
 | |
|   socket.inet_aton(parms[0])
 | |
|   os.execv("/usr/bin/ssh", ["/usr/bin/ssh"] + parms)
 | |
| except socket.error:
 | |
|   pass
 | |
| 
 | |
| path_to_bombshell = os.path.abspath(os.path.join(os.path.dirname(__file__), "bombshell-client"))
 | |
| 
 | |
| host = None
 | |
| rest = parms
 | |
| while True:
 | |
|   if not rest:
 | |
|     break
 | |
|   if rest[0] == "--":
 | |
|     if host is None:
 | |
|       _, host, rest = rest[0], rest[1], rest[2:]
 | |
|     else:
 | |
|       _, rest = rest[0], rest[1:]
 | |
|     break
 | |
|   elif rest[0].startswith("-o") and len(rest[0]) > 2:
 | |
|     _, rest = rest[0], rest[1:]
 | |
|   elif rest[0].startswith("-o"):
 | |
|     _, rest = rest[0:1], rest[2:]
 | |
|   elif rest[0].startswith("-"):
 | |
|     _, rest = rest[0], rest[1:]
 | |
|   else:
 | |
|     if host is None:
 | |
|       host, rest = rest[0], rest[1:]
 | |
|     else:
 | |
|       break
 | |
| 
 | |
| cmd = [
 | |
|         path_to_bombshell,
 | |
|         host,
 | |
|     ] + ["sh", "-c", " ".join(rest)]
 | |
| 
 | |
| os.execvp(cmd[0], cmd)
 | 
