??????????????
Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 173
Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 174
Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 175
Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 176
Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 177
Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 178
σ
ΰUdac @` sβ d d l m Z m Z m Z e Z d Z d d l Z d d l Z d d l Z d d l
Z
d d l Z d d l j
Z d d l m Z m Z d d l m Z m Z d d l m Z d d l m Z e Z d e f d YZ d S(
i ( t absolute_importt divisiont print_functions
connection: qubes
short_description: Interact with an existing QubesOS AppVM
description:
- Run commands or put/fetch files to an existing Qubes AppVM using qubes tools.
author: Kushal Das (@kushaldas)
version_added: "2.8"
options:
remote_addr:
description:
- vm name
default: inventory_hostname
vars:
- name: ansible_host
remote_user:
description:
- The user to execute as inside the vm.
default: The *user* account as default in Qubes OS.
vars:
- name: ansible_user
# keyword:
# - name: hosts
N( t to_bytest to_native( t ConnectionBaset ensure_connect( t AnsibleConnectionFailure( t Displayt
Connectionc B` sn e Z d Z d Z e Z d Z d
d
d d Z d Z e
d
e d Z d Z
d Z d Z RS( sc This is a connection plugin for qubes: it uses qubes-run-vm binary to interact with the containers.t qubesc O` sb t t | j | | | | | j j | _ t | _ d | _ | j j r^ | j j | _ n d S( Nt user(
t superR t __init__t
_play_contextt remote_addrt _remote_vmnamet Falset
_connectedR t remote_user( t selft play_contextt new_stdint argst kwargs( ( sD /usr/lib/python2.7/site-packages/ansible/plugins/connection/qubes.pyR
A s s
qubes.VMShellc
C` sS t j d | | j d s, | d } n g } | j d d d g | j d k rp | j d | j g n | j | j | j | g | D] } t | d d ^ q } t j d
| t j d | f d | j t j
| d
t d t j d t j d t j } | j
j t | d d | j d | \ } } | j | | f S( sΈ run qvm-run executable
:param cmd: cmd string for remote system
:param in_data: data passed to qvm-run-vm's stdin
:return: return code, stdout, stderr
s CMD: s
s qvm-runs --pass-ios --serviceR s -ut errorst surrogate_or_stricts Local cmd: s RUN %st hostt shellt stdint stdoutt stderrt input( t displayt vvvvt endswitht extendR t appendR R t vvvt
subprocesst PopenR t PIPER t writet communicatet
returncode( R t cmdt in_dataR t local_cmdt it pR R ( ( sD /usr/lib/python2.7/site-packages/ansible/plugins/connection/qubes.pyt _qubesK s"
%c C` s t t | j t | _ d S( s- No persistent connection is being maintained.N( R R t _connectt TrueR ( R ( ( sD /usr/lib/python2.7/site-packages/ansible/plugins/connection/qubes.pyR3 n s c C` so t t | j | d | d | t j d | | j | \ } } } t j d | | f | | | f S( s+ Run specified command in a running QubesVM R. t sudoables
CMD IS: %ss STDOUT %r STDERR %r( R R t exec_commandR! R" R2 t vvvvv( R R- R. R5 t rcR R ( ( sD /usr/lib/python2.7/site-packages/ansible/plugins/connection/qubes.pyR6 s s
"c C` sί t t | j | | t j d | | f d | j t | d } | j } Wd QX| j d j | | d \ } } } | d k r· | j d j | | \ } } } n | d k rΫ t
d j | n d S(
sA Place a local file located in 'in_path' inside VM at 'out_path' s PUT %s TO %sR t rbNs cat > "{0}"
s qubes.VMRootShelli i s Failed to put_file to {0}( R R t put_fileR! R&