code: def describe_security_groups(self, *names):
          
          group_names = {}
          if names:
              group_names = dict([("GroupName.%d" % (i + 1), name)
                                  for i, name in enumerate(names)])
          query = self.query_factory(
              action="DescribeSecurityGroups", creds=self.creds,
              endpoint=self.endpoint, other_params=group_names)
          d = query.submit()
          return d.addCallback(self.parser.describe_security_groups)
docs: Describe security groups.
  
          @param names: Optionally, a list of security group names to describe.
              Defaults to all security groups in the account.
          @return: A C{Deferred} that will fire with a list of L{SecurityGroup}s
              retrieved from the cloud.