<div dir="ltr"><div class="gmail_default" style="font-family:'courier new',monospace;font-size:x-small">I was able to solve the above problem i listed with the following...please let me know if that is the correct way of doing this...or i am way off?</div><div class="gmail_default" style="font-family:'courier new',monospace;font-size:x-small"><br></div><div class="gmail_default" style=""><div class="gmail_default" style=""><font face="courier new, monospace" size="1">>>> for sg in sgs:</font></div><div class="gmail_default" style=""><font face="courier new, monospace" size="1">    for rule in sg.rules:</font></div><div class="gmail_default" style=""><font face="courier new, monospace" size="1">        st = sg, <a href="http://sg.id">sg.id</a>, "inbound:", rule, " source:", rule.grants</font></div><div class="gmail_default" style=""><font face="courier new, monospace" size="1">        s = str(st).replace(","," ")</font></div><div class="gmail_default" style=""><font face="courier new, monospace" size="1">        #print s</font></div><div class="gmail_default" style=""><font face="courier new, monospace" size="1">        get_data(s)</font></div><div class="gmail_default" style=""><font face="courier new, monospace" size="1"><br></font></div><div class="gmail_default" style=""><font face="courier new, monospace" size="1">        </font></div><div class="gmail_default" style=""><font face="courier new, monospace" size="1">{'cidr': 'sg-e632d982-995635159130', 'port': 'None', 'proto': '1'}</font></div><div class="gmail_default" style=""><font face="courier new, monospace" size="1">{'cidr': '<a href="http://67.184.225.222/32">67.184.225.222/32</a>', 'port': '22', 'proto': 'tcp'}</font></div><div class="gmail_default" style=""><font face="courier new, monospace" size="1">{'cidr': '<a href="http://10.0.2.10/32">10.0.2.10/32</a>', 'port': '1024', 'proto': 'tcp'}</font></div><div class="gmail_default" style=""><font face="courier new, monospace" size="1">{'cidr': '<a href="http://24.12.30.198/32">24.12.30.198/32</a>', 'port': '80', 'proto': 'tcp'}</font></div><div class="gmail_default" style=""><font face="courier new, monospace" size="1">{'cidr': '<a href="http://10.0.2.10/32">10.0.2.10/32</a>', 'port': '138', 'proto': 'udp'}</font></div><div class="gmail_default" style=""><font face="courier new, monospace" size="1">{'cidr': '<a href="http://24.12.30.198/32">24.12.30.198/32</a>', 'port': '53', 'proto': 'udp'}</font></div><div class="gmail_default" style=""><font face="courier new, monospace" size="1">{'cidr': '<a href="http://0.0.0.0/0">0.0.0.0/0</a>', 'port': '30015', 'proto': 'tcp'}</font></div><div class="gmail_default" style=""><font face="courier new, monospace" size="1">{'cidr': '<a href="http://10.0.2.10/32">10.0.2.10/32</a>', 'port': '', 'proto': 'icmp'}</font></div><div class="gmail_default" style=""><font face="courier new, monospace" size="1">>>> </font></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Jul 22, 2015 at 11:01 AM, max scalf <span dir="ltr"><<a href="mailto:oracle.blog3@gmail.com" target="_blank">oracle.blog3@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_default" style="font-family:'courier new',monospace;font-size:x-small">Hi Pablo,</div><div class="gmail_default" style="font-family:'courier new',monospace;font-size:x-small"><br></div><div class="gmail_default" style="font-family:'courier new',monospace;font-size:x-small">While playing around with the function you gave me(get_data)...i was thinking to do something like below.  For each line create a dictionary then append that dictionary to a list...but before i even get to that part i get the below error and while researching it i am unable to figure out what is going on... could you point me in the right direction ?</div><div class="gmail_default" style="font-family:'courier new',monospace;font-size:x-small"><br></div><div class="gmail_default"><span class=""><div class="gmail_default"><font face="courier new, monospace" size="1">>>> for sg in sgs:</font></div><div class="gmail_default"><font face="courier new, monospace" size="1">    for rule in sg.rules:</font></div></span><div class="gmail_default"><font face="courier new, monospace" size="1">        pt = sg, <a href="http://sg.id" target="_blank">sg.id</a>, "inbound:", rule, " source:", rule.grants</font></div><div class="gmail_default"><font face="courier new, monospace" size="1">        print pt #this is just for my own purpose</font></div><div class="gmail_default"><font face="courier new, monospace" size="1">        get_data(pt)</font></div><div class="gmail_default"><font face="courier new, monospace" size="1"><br></font></div><div class="gmail_default"><font face="courier new, monospace" size="1">        </font></div><div class="gmail_default"><font face="courier new, monospace" size="1">(SecurityGroup:wordpress-app-SG, u'sg-99c4befc', 'inbound:', IPPermissions:-1(None-None), ' source:', [sg-e632d982-995635159130])</font></div><div class="gmail_default"><font face="courier new, monospace" size="1"><br></font></div><div class="gmail_default"><font face="courier new, monospace" size="1">Traceback (most recent call last):</font></div><div class="gmail_default"><font face="courier new, monospace" size="1">  File "<pyshell#157>", line 5, in <module></font></div><div class="gmail_default"><font face="courier new, monospace" size="1">    get_data(pt)</font></div><div class="gmail_default"><font face="courier new, monospace" size="1">  File "<pyshell#152>", line 5, in get_data</font></div><span class=""><div class="gmail_default"><font face="courier new, monospace" size="1">    _, proto_port, cidr = data.rsplit(":", 2)</font></div></span><div class="gmail_default"><font face="courier new, monospace" size="1">AttributeError: 'tuple' object has no attribute 'rsplit'</font></div><div class="gmail_default"><font face="courier new, monospace" size="1">>>> get_data("SecurityGroup:wordpress-app-SG, u'sg-99c4befc', 'inbound:', IPPermissions:-1(None-None), ' source:', [sg-e632d982-995635159130]")</font></div><div class="gmail_default"><font face="courier new, monospace" size="1">{'cidr': 'sg-e632d982-995635159130', 'port': 'None', 'proto': '1'}</font></div><div class="gmail_default"><font face="courier new, monospace" size="1">>>> </font></div></div></div><div class="gmail_extra"><br><div class="gmail_quote"><span class="">On Tue, Jul 21, 2015 at 8:03 PM, Pablo Lucena <span dir="ltr"><<a href="mailto:plucena24@gmail.com" target="_blank">plucena24@gmail.com</a>></span> wrote:<br></span><div><div class="h5"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_default" style="font-family:'courier new',monospace">​str.split and re are a nice quick way to do it:</div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default"><div class="gmail_default"><font face="courier new, monospace">>>> def get_data(data):</font></div><div class="gmail_default"><font face="courier new, monospace"><span style="white-space:pre-wrap"> </span>import re</font></div><div class="gmail_default"><font face="courier new, monospace"><span style="white-space:pre-wrap">       </span>port_re = re.compile(r'(\w+)\((\S+-\S+)\)')</font></div><div class="gmail_default"><font face="courier new, monospace"><span style="white-space:pre-wrap">     </span>cidr_re = re.compile(r'\[(.*?)\]')</font></div><div class="gmail_default"><font face="courier new, monospace"><span style="white-space:pre-wrap">      </span>_, proto_port, cidr = data.rsplit(":", 2)</font></div><div class="gmail_default"><font face="courier new, monospace"><span style="white-space:pre-wrap">     </span>port_match = port_re.search(proto_port)</font></div><div class="gmail_default"><font face="courier new, monospace"><span style="white-space:pre-wrap"> </span>proto, port = port_match.group(1), port_match.group(2)</font></div><div class="gmail_default"><font face="courier new, monospace"><span style="white-space:pre-wrap">  </span>port = port.split("-")[0]</font></div><div class="gmail_default"><font face="courier new, monospace"><span style="white-space:pre-wrap">     </span>cidr_match = cidr_re.search(cidr)</font></div><div class="gmail_default"><font face="courier new, monospace"><span style="white-space:pre-wrap">       </span>cidr = cidr_match.group(1)</font></div><div class="gmail_default"><font face="courier new, monospace"><span style="white-space:pre-wrap">      </span>return dict(port=port, proto=proto, cidr=cidr)</font></div><div class="gmail_default"><font face="courier new, monospace"><br></font></div><div class="gmail_default"><font face="courier new, monospace">>>> get_data("SecurityGroup:default sg-e1304484 inbound: IPPermissions:tcp(80-80)  source: [<a href="http://67.184.225.222/32" target="_blank">67.184.225.222/32</a>]")</font></div><div class="gmail_default"><font face="courier new, monospace">{'cidr': '<a href="http://67.184.225.222/32" target="_blank">67.184.225.222/32</a>', 'proto': 'tcp', 'port': '80'}</font></div><div class="gmail_default"><font face="courier new, monospace">>>> get_data("SecurityGroup:wordpress-app-SG sg-99c4befc inbound: IPPermissions:-1(None-None)  source: [sg-e632d982-995635159130]")</font></div><div class="gmail_default"><font face="courier new, monospace">{'cidr': 'sg-e632d982-995635159130', 'proto': '1', 'port': 'None'}</font></div><div class="gmail_default"><font face="courier new, monospace"><br></font></div><div class="gmail_default"><br></div></div><div class="gmail_default" style="font-family:'courier new',monospace">​You can alter this and add whatever extra checks you need as Chris A mentioned (when proto is -1 and port is None-None, or the icmp case). This is just a very crude example, but hopefully you get the drift. </div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div><div class="gmail_default" style="font-family:'courier new',monospace">Most text parsing problems can easily be solved with these simple tools. Fire up your shell and test it - this is really the best way to learn how to do something like this.</div><div class="gmail_default" style="font-family:'courier new',monospace"><br></div></div><div class="gmail_extra"><br><div class="gmail_quote"><div><div>On Tue, Jul 21, 2015 at 5:12 PM, max scalf <span dir="ltr"><<a href="mailto:oracle.blog3@gmail.com" target="_blank">oracle.blog3@gmail.com</a>></span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div><div dir="ltr"><div class="gmail_default"><p style="margin:0px 0px 1em;padding:0px;border:0px;font-size:15px;clear:both;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;line-height:17.7272720336914px">Hello all,</p><p style="margin:0px 0px 1em;padding:0px;border:0px;font-size:15px;clear:both;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;line-height:17.7272720336914px">For Each SecurityGroup, how can i convert that into a List that in turn will have a dictionary of the cidr block, protocol type and the port...so from output below, the SecurityGroup called "default" had 2 rules...allowing TCP port from 80 and 5500 to the source IP and then SecurityGroup called "Pub_HDP_SG" had only one rule...so on and so forth....here is the output that i am trying to get out in the form of a list....</p><p style="margin:0px 0px 1em;padding:0px;border:0px;font-size:15px;clear:both;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;line-height:17.7272720336914px">what I am planning to do is, take the list(and nested dictionary) and pass that to a function that will in turn spitout a cloudformation template using troposphere (something like "<a href="http://imil.net/wp/2015/06/04/rock-your-cloudformation-with-troposphere-and-boto/" rel="nofollow" style="margin:0px;padding:0px;border:0px;text-decoration:none;color:rgb(12,101,165)" target="_blank">http://imil.net/wp/2015/06/04/rock-your-cloudformation-with-troposphere-and-boto/</a>")</p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px"><br></span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">For Better Readablity (<a href="http://pastebin.com/rT6Aswwz" target="_blank">http://pastebin.com/rT6Aswwz</a>)</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><span style="font-family:'Helvetica Neue',Helvetica,Arial,sans-serif;font-size:15px;line-height:17.7272720336914px">import boto.ec2</span><br></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><span style="font-size:15px;line-height:17.7272720336914px;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif">sgs = boto.ec2.connect_to_region('us-east-1').get_all_security_groups()</span><br></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><span style="font-size:15px;line-height:17.7272720336914px;font-family:'Helvetica Neue',Helvetica,Arial,sans-serif">for sg in sgs:</span><br></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">    for rule in sg.rules:</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">        print sg, <a href="http://sg.id" target="_blank">sg.id</a>, "inbound:", rule, " source:", rule.grants</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px"><br></span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:default sg-e1304484 inbound: IPPermissions:tcp(80-80)  source: [<a href="http://67.184.225.222/32" target="_blank">67.184.225.222/32</a>]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:default sg-e1304484 inbound: IPPermissions:tcp(5500-5500)  source: [<a href="http://67.184.225.222/32" target="_blank">67.184.225.222/32</a>]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:Pub_HDP_SG sg-e632d982 inbound: IPPermissions:tcp(80-80)  source: [<a href="http://0.0.0.0/0" target="_blank">0.0.0.0/0</a>]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:sg3-MySecurityGroup-LB0QF9UQAOEF sg-4fe73728 inbound: IPPermissions:tcp(22-22)  source: [<a href="http://0.0.0.0/0" target="_blank">0.0.0.0/0</a>]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:sg3-MySecurityGroup-LB0QF9UQAOEF sg-4fe73728 inbound: IPPermissions:tcp(80-80)  source: [<a href="http://0.0.0.0/0" target="_blank">0.0.0.0/0</a>]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:RDP Rule - open everyone  sg-42d58d27 inbound: IPPermissions:-1(None-None)  source: [<a href="http://0.0.0.0/0" target="_blank">0.0.0.0/0</a>]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:us-east-open-all sg-97ffa7f2 inbound: IPPermissions:tcp(22-22)  source: [<a href="http://10.0.20.100/32" target="_blank">10.0.20.100/32</a>]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:us-east-open-all sg-97ffa7f2 inbound: IPPermissions:tcp(53-53)  source: [<a href="http://10.0.20.100/32" target="_blank">10.0.20.100/32</a>]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:wordpress-app-SG sg-99c4befc inbound: IPPermissions:-1(None-None)  source: [sg-e632d982-995635159130]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:wordpress-app-SG sg-99c4befc inbound: IPPermissions:tcp(22-22)  source: [<a href="http://67.184.225.222/32" target="_blank">67.184.225.222/32</a>]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:wordpress-app-SG sg-99c4befc inbound: IPPermissions:tcp(1024-65535)  source: [<a href="http://10.0.20.100/32" target="_blank">10.0.20.100/32</a>]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:wordpress-app-SG sg-99c4befc inbound: IPPermissions:tcp(80-80)  source: [<a href="http://24.12.30.198/32" target="_blank">24.12.30.198/32</a>]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:wordpress-app-SG sg-99c4befc inbound: IPPermissions:udp(138-138)  source: [<a href="http://10.0.20.100/32" target="_blank">10.0.20.100/32</a>]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:wordpress-app-SG sg-99c4befc inbound: IPPermissions:udp(53-53)  source: [<a href="http://24.12.30.198/32" target="_blank">24.12.30.198/32</a>]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:wordpress-app-SG sg-99c4befc inbound: IPPermissions:tcp(30015-30015)  source: [<a href="http://0.0.0.0/0" target="_blank">0.0.0.0/0</a>]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:wordpress-app-SG sg-99c4befc inbound: IPPermissions:icmp(-1--1)  source: [<a href="http://10.0.20.100/32" target="_blank">10.0.20.100/32</a>]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:default sg-c65a20a3 inbound: IPPermissions:-1(None-None)  source: [sg-c65a20a3-995635159130]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:default sg-c65a20a3 inbound: IPPermissions:-1(None-None)  source: [sg-99c4befc-995635159130]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:sg3-MySecurityGroup2-1HGPN4UF57XN6 sg-4ee73729 inbound: IPPermissions:tcp(22-22)  source: [<a href="http://192.168.1.12/32" target="_blank">192.168.1.12/32</a>]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:AWS-AMI-SG sg-35568d51 inbound: IPPermissions:tcp(22-22)  source: [<a href="http://0.0.0.0/0" target="_blank">0.0.0.0/0</a>]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:launch-wizard-2 sg-932255f6 inbound: IPPermissions:tcp(22-22)  source: [<a href="http://10.0.20.100/32" target="_blank">10.0.20.100/32</a>]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">SecurityGroup:launch-wizard-2 sg-932255f6 inbound: IPPermissions:tcp(443-443)  source: [<a href="http://0.0.0.0/0" target="_blank">0.0.0.0/0</a>]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">>>> </span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px"><br></span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">Here is the output i am looking for....</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px"><br></span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">rule1 = [{</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">    'cidr': '<a href="http://67.184.225.222/32" target="_blank">67.184.225.222/32</a>',</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">    'proto': 'tcp',</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">    'port': 80</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">},{</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">    'cidr': '<a href="http://67.184.225.222/32" target="_blank">67.184.225.222/32</a>',</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">    'proto': 'tcp',</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">    'port': 5500</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">}]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px"><br></span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">rule2 = [{</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">    'cidr': '[<a href="http://0.0.0.0/0" target="_blank">0.0.0.0/0</a>',</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">    'proto': 'tcp',</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">    'port': 80</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">}]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px"><br></span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">rule3 = [{</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">    'cidr': '<a href="http://0.0.0.0/0" target="_blank">0.0.0.0/0</a>',</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">    'proto': 'tcp',</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">    'port': 22</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">},{</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">    'cidr': '<a href="http://0.0.0.0/0" target="_blank">0.0.0.0/0</a>',</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">    'proto': 'tcp',</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">    'port': 80</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px">}]</span></font></p><p style="margin:0px 0px 1em;padding:0px;border:0px;clear:both"><font face="Helvetica Neue, Helvetica, Arial, sans-serif"><span style="font-size:15px;line-height:17.7272720336914px"><br></span></font></p></div></div>
<br></div></div><span><font color="#888888">--<br>
<a href="https://mail.python.org/mailman/listinfo/python-list" rel="noreferrer" target="_blank">https://mail.python.org/mailman/listinfo/python-list</a><br>
<br></font></span></blockquote></div><span><font color="#888888"><br><br clear="all"><div><br></div>-- <br><div><div dir="ltr"><font size="4" face="courier new, monospace"><b>Pablo Lucena</b></font></div></div>
</font></span></div>
</blockquote></div></div></div><br></div>
</blockquote></div><br></div>