Explorar el Código

Replaced ASN bounds with constants

Saria Hajjar hace 6 años
padre
commit
6c19c88e99
Se han modificado 3 ficheros con 11 adiciones y 5 borrados
  1. 4 0
      netbox/dcim/constants.py
  2. 5 3
      netbox/dcim/fields.py
  3. 2 2
      netbox/dcim/forms.py

+ 4 - 0
netbox/dcim/constants.py

@@ -1,4 +1,8 @@
 
 
+# BGP ASN bounds
+BGP_ASN_MIN = 1
+BGP_ASN_MAX = 2**32 - 1
+
 # Rack types
 # Rack types
 RACK_TYPE_2POST = 100
 RACK_TYPE_2POST = 100
 RACK_TYPE_4POST = 200
 RACK_TYPE_4POST = 200

+ 5 - 3
netbox/dcim/fields.py

@@ -3,16 +3,18 @@ from django.core.validators import MinValueValidator, MaxValueValidator
 from django.db import models
 from django.db import models
 from netaddr import AddrFormatError, EUI, mac_unix_expanded
 from netaddr import AddrFormatError, EUI, mac_unix_expanded
 
 
+from .constants import *
+
 
 
 class ASNField(models.BigIntegerField):
 class ASNField(models.BigIntegerField):
     description = "32-bit ASN field"
     description = "32-bit ASN field"
     default_validators = [
     default_validators = [
-        MinValueValidator(1),
-        MaxValueValidator(4294967295),
+        MinValueValidator(BGP_ASN_MIN),
+        MaxValueValidator(BGP_ASN_MAX),
     ]
     ]
 
 
     def formfield(self, **kwargs):
     def formfield(self, **kwargs):
-        defaults = {'min_value': 1, 'max_value': 4294967295}
+        defaults = {'min_value': BGP_ASN_MIN, 'max_value': BGP_ASN_MAX}
         defaults.update(**kwargs)
         defaults.update(**kwargs)
         return super().formfield(**defaults)
         return super().formfield(**defaults)
 
 

+ 2 - 2
netbox/dcim/forms.py

@@ -292,8 +292,8 @@ class SiteBulkEditForm(BootstrapMixin, AddRemoveTagsForm, CustomFieldBulkEditFor
         )
         )
     )
     )
     asn = forms.IntegerField(
     asn = forms.IntegerField(
-        min_value=1,
-        max_value=4294967295,
+        min_value=BGP_ASN_MIN,
+        max_value=BGP_ASN_MAX,
         required=False,
         required=False,
         label='ASN'
         label='ASN'
     )
     )