Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/user/bin/python
- import sys
- import httplib
- from lxml import etree
- import logging
- import csv
- import re
- ip ='xxxxxx'
- username = 'test'
- password1 = 'test'
- api_key=""
- def key_api():
- logging.debug("In API key")
- conn = httplib.HTTPSConnection(ip)
- try:
- conn.request("GET", "/api/?type=keygen&user="+username+"&password=" + password1)
- except IOError:
- print " Unable to get the device's API key"
- logging.debug("Error occured")
- raise SystemExit(1)
- r1 = conn.getresponse()
- data1 = r1.read()
- m=re.search(r"(<key>)(\w+)", data1)
- try:
- api_key = m.group(2)
- except AttributeError:
- print "NO API key is returned , Possibly incorrect creden"
- logging.debug("Possible ")
- conn.close()
- raise SystemExit(1)
- conn.close()
- print "Working correct1"
- return api_key
- def send_command(source_address,destination_address):
- conn = httplib.HTTPSConnection(ip)
- conn.request("GET", "/api/?type=config&action=se&&xpath=/config/devices/entry[@name='localhost.localdomain']/vsys/entry[@name='vsys1']/rulebase/security/rules/entry[@name='rule2']&key="+str(api_key)+"<source><member>"+source_address+"</member></source><destination><member>"+destination_address+"</member></destination>")
- print "Working correct2"
- if __name__ == '__main__':
- print "Hello Team"
- if (len(sys.argv)==3):
- src=sys.argv[1]
- dst=sys.argv[2]
- print sys.argv[1],sys.argv[2]
- print key_api()
- send_command(src,dst)
- else:
- print "Check the number of arguments!"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement