Просмотр исходного кода

fix(utilities): Add atomic group in expandable field regex pattern

Replace non-capturing group with atomic group in expansion bracket regex
to prevent excessive backtracking. Add missing 'object' key to bulk view
context for template compatibility.
Martin Hauser 17 часов назад
Родитель
Сommit
5804b53bb1

+ 1 - 0
netbox/netbox/views/generic/bulk_views.py

@@ -258,6 +258,7 @@ class BulkCreateView(GetReturnURLMixin, BaseMultiObjectView):
     def _get_context(self, request, form, model_form):
         model = self.queryset.model
         return {
+            'object': None,
             'obj_type': model._meta.verbose_name,
             'obj_type_plural': model._meta.verbose_name_plural,
             'form': form,

+ 1 - 1
netbox/utilities/forms/fields/expandable.py

@@ -59,7 +59,7 @@ class ExpandableIPNetworkField(forms.CharField):
             return [value]
 
         # Replace expansion brackets with a neutral value to get a parseable IP/CIDR
-        stripped = re.sub(r'\[[^\]]+\]', '0', value)
+        stripped = re.sub(r'(?>\[[^\]]+\])', '0', value)
         try:
             family = netaddr.IPNetwork(stripped).version
         except (netaddr.AddrFormatError, ValueError):