From 0b037b89b708961c340eaf79cc97cc6aaa3c5d08 Mon Sep 17 00:00:00 2001 From: ank Date: Fri, 27 Nov 2015 18:17:56 +0530 Subject: [PATCH] Allow classifier with 'ANY' protocol Closes-Bug: #1416471 Change-Id: I3731a7cedf63075864ae0792b077c7dcc7a9cabc (cherry picked from commit aefb07dd915098b33f9684fe4e5a2c48759b77e3) --- gbpui/panels/application_policy/forms.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/gbpui/panels/application_policy/forms.py b/gbpui/panels/application_policy/forms.py index 7b7eebc..943f217 100644 --- a/gbpui/panels/application_policy/forms.py +++ b/gbpui/panels/application_policy/forms.py @@ -225,6 +225,8 @@ class AddPolicyClassifierForm(forms.SelfHandlingForm): try: if context.get('protocol') in PROTOCOL_MAP: context['protocol'] = PROTOCOL_MAP[context['protocol']] + elif context.get('protocol') == "any": + del context['protocol'] if not context.get('port_range'): context['port_range'] = None if context.get('name'): @@ -257,8 +259,13 @@ class UpdatePolicyClassifierForm(BaseUpdateForm): request, policyclassifier_id) classifier = gfilters.update_classifier_attributes(classifier) for item in ['name', 'description', - 'protocol', 'port_range', 'direction', 'shared']: + 'port_range', 'direction', 'shared']: self.fields[item].initial = getattr(classifier, item) + protocol = getattr(classifier, "protocol") + if protocol is not None: + self.fields['protocol'].initial = protocol + else: + self.fields['protocol'].initial = "any" except Exception: exceptions.handle( request, _("Unable to retrive policy classifier details.")) @@ -269,6 +276,8 @@ class UpdatePolicyClassifierForm(BaseUpdateForm): policyclassifier_id = self.initial['policyclassifier_id'] if context.get('protocol') in PROTOCOL_MAP: context['protocol'] = PROTOCOL_MAP[context['protocol']] + elif context.get('protocol') == "any": + context['protocol'] = None if 'port_range' in context and context['port_range'] == '': context['port_range'] = None if context.get('name'):