�
�Udac @` s� d d l m Z m Z m Z e Z d Z d d l Z d d l m Z d d l
m Z d d l m
Z
d d l m Z d d l m Z d d l m Z d
e f d � � YZ d S( i ( t absolute_importt divisiont print_functions^
---
author:
- Luke Weighall (@lweighall)
- Andrew Welsh (@Ghilli3)
- Jim Huber (@p4r4n0y1ng)
httpapi : fortimanager
short_description: HttpApi Plugin for Fortinet FortiManager Appliance or VM
description:
- This HttpApi plugin provides methods to connect to Fortinet FortiManager Appliance or VM via JSON RPC API
version_added: "2.8"
N( t HttpApiBase( t to_text( t BASE_HEADERS( t FMGBaseException( t
FMGRCommon( t FMGRMethodst HttpApic B` sy e Z d � Z d � Z d � Z d � Z d � Z d � Z d � Z d � Z d � Z
d � Z d
� Z d � Z
e d � � Z e j d
� � Z e d � � Z e j d � � Z d d � Z e d � � Z e j d � � Z d � Z e d � � Z e j d � � Z e d � � Z e j d � � Z d � Z d � Z d � Z d � Z d d � Z d d � Z d e d � Z RS(! c C` s� t t | � j | � d | _ d | _ d | _ d | _ t | _ t
| _ d | _ d | _
d | _ d | _ d | _ d | _ t � | _ t
| _ t
| _ d S( Ni s /jsonrpc( t superR t __init__t _req_idt Nonet _sidt _urlt _hostR t _toolst Falset _debugt _connected_fmgrt _last_response_msgt _last_response_codet _last_data_payloadt _last_urlt _last_response_rawt listt _locked_adom_listt _uses_workspacet _uses_adoms( t selft
connection( ( sH /usr/lib/python2.7/site-packages/ansible/plugins/httpapi/fortimanager.pyR . s c C` s d S( s�
ELEVATION IS NOT REQUIRED ON FORTINET DEVICES - SKIPPED
:param become_context: Unused input.
:return: None
N( R
( R t become_context( ( sH /usr/lib/python2.7/site-packages/ansible/plugins/httpapi/fortimanager.pyt
set_become@ s c C` s d S( s�
TOKENS ARE NOT USED SO NO NEED TO UPDATE AUTH
:param response: Unused input.
:param response_data Unused_input.
:return: None
N( R
( R t responset
response_data( ( sH /usr/lib/python2.7/site-packages/ansible/plugins/httpapi/fortimanager.pyt update_authH s c C` sd | j t j | j j t j d d | d | �� d | j � k rQ | j � d St d d � � d S( s
This function will log the plugin into FortiManager, and return the results.
:param username: Username of FortiManager Admin
:param password: Password of FortiManager Admin
:return: Dictionary of status, if it logged in or not.
s sys/login/usert passwdt users- FortiManager object connected to FortiManagerNt msgsW Unknown error while logging in...connection was lost during login operation.... Exiting( t send_requestR t EXECR t format_requestt __str__t inspect_fmgrR ( R t usernamet password( ( sH /usr/lib/python2.7/site-packages/ansible/plugins/httpapi/fortimanager.pyt loginQ s !
c C` s� | j � | j � } | d d k rB | j � t d d � � nH | d d k r� y! | d | _ | j d | _ Wq� t k
r� q� Xn d S( Ni i����R'