%PDF- %PDF-
Direktori : /lib/python2.7/site-packages/salt/states/ |
Current File : //lib/python2.7/site-packages/salt/states/firewall.py |
# -*- coding: utf-8 -*- ''' State to check firewall configurations .. versionadded:: 2016.3.0 ''' from __future__ import absolute_import, print_function, unicode_literals def __virtual__(): ''' Load only if network is loaded ''' return 'firewall' if 'network.connect' in __salt__ else False def check(name, port=None, **kwargs): ''' Checks if there is an open connection from the minion to the defined host on a specific port. name host name or ip address to test connection to port The port to test the connection on kwargs Additional parameters, parameters allowed are: proto (tcp or udp) family (ipv4 or ipv6) timeout .. code-block:: yaml testgoogle: firewall.check: - name: 'google.com' - port: 80 - proto: 'tcp' ''' # set name to host as required by the module host = name ret = {'name': name, 'result': True, 'changes': {}, 'comment': ''} if 'test' not in kwargs: kwargs['test'] = __opts__.get('test', False) # check the connection if kwargs['test']: ret['result'] = True ret['comment'] = 'The connection will be tested' else: results = __salt__['network.connect'](host, port, **kwargs) ret['result'] = results['result'] ret['comment'] = results['comment'] return ret