mirror of
https://github.com/netbox-community/netbox.git
synced 2025-08-26 09:16:10 -06:00
Closes #9068: Disallow assigning bcast/networks to interfaces
This commit is contained in:
parent
4ea3fad27c
commit
159682124c
@ -351,12 +351,17 @@ class IPAddressForm(TenancyForm, NetBoxModelForm):
|
||||
'primary_for_parent', "Only IP addresses assigned to an interface can be designated as primary IPs."
|
||||
)
|
||||
|
||||
# Do not allow assigning a network ID or broadcast address to an interface
|
||||
# Do not allow assigning a network ID or broadcast address to an interface.
|
||||
if interface:
|
||||
if self.instance.ip == self.instance.network:
|
||||
self.add_error('interface', "This address is a network ID, which may not be assigned to an interface.")
|
||||
if self.instance.ip == self.instance.broadcast:
|
||||
self.add_error('interface', "This address is a broadcast address, which may not be assigned to an interface.")
|
||||
if address := self.cleaned_data.get('address'):
|
||||
if address.ip == address.network:
|
||||
self.add_error(
|
||||
'interface',
|
||||
"This address is a network ID, which may not be assigned to an interface.")
|
||||
if address.ip == address.broadcast:
|
||||
self.add_error(
|
||||
'interface',
|
||||
"This is a broadcast address, which may not be assigned to an interface.")
|
||||
|
||||
def save(self, *args, **kwargs):
|
||||
ipaddress = super().save(*args, **kwargs)
|
||||
|
Loading…
Reference in New Issue
Block a user