diff --git a/net/frr/pkg-descr b/net/frr/pkg-descr index f21cd3062..2f260d0da 100644 --- a/net/frr/pkg-descr +++ b/net/frr/pkg-descr @@ -15,7 +15,8 @@ Plugin Changelog 1.46 * Add address family selection to peer groups (opnsense/plugins/pull/4861) -* Add OSPF point-to-multipoint options (contributed by Andy Binder) +* Add OSPF point-to-multipoint options (contributed by Andy Binder) (opnsense/plugins/pull/4879) +* Add OSPF area configuration options (opnsense/plugins/pull/4880) 1.45 diff --git a/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/Api/OspfsettingsController.php b/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/Api/OspfsettingsController.php index b81d126cd..c0093c937 100644 --- a/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/Api/OspfsettingsController.php +++ b/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/Api/OspfsettingsController.php @@ -62,6 +62,31 @@ class OspfsettingsController extends ApiMutableModelControllerBase return $this->setBase('neighbor', 'neighbors.neighbor', $uuid); } + public function searchAreaAction() + { + return $this->searchBase('areas.area'); + } + public function getAreaAction($uuid = null) + { + return $this->getBase('area', 'areas.area', $uuid); + } + public function addAreaAction() + { + return $this->addBase('area', 'areas.area'); + } + public function delAreaAction($uuid) + { + return $this->delBase('areas.area', $uuid); + } + public function setAreaAction($uuid) + { + return $this->setBase('area', 'areas.area', $uuid); + } + public function toggleAreaAction($uuid) + { + return $this->toggleBase('areas.area', $uuid); + } + public function searchNetworkAction() { return $this->searchBase('networks.network'); diff --git a/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/OspfController.php b/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/OspfController.php index 434767c47..611adabff 100644 --- a/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/OspfController.php +++ b/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/OspfController.php @@ -34,6 +34,9 @@ class OspfController extends \OPNsense\Base\IndexController { $this->view->generalForm = $this->getForm("ospf"); + $this->view->formDialogEditOSPFArea = $this->getForm("dialogEditOSPFArea"); + $this->view->formGridEditOSPFArea = $this->getFormGrid("dialogEditOSPFArea"); + $this->view->formDialogEditOSPFNeighbor = $this->getForm("dialogEditOSPFNeighbor"); $this->view->formGridEditOSPFNeighbor = $this->getFormGrid("dialogEditOSPFNeighbor"); diff --git a/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/forms/dialogEditOSPFArea.xml b/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/forms/dialogEditOSPFArea.xml new file mode 100644 index 000000000..a027c2187 --- /dev/null +++ b/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/forms/dialogEditOSPFArea.xml @@ -0,0 +1,24 @@ +
+ + area.enabled + + checkbox + + 6em + boolean + rowtoggle + + + + area.id + + text + Enter area ID in dotted (e.g. 0.0.0.1) format. + + + area.type + + dropdown + Select area behavior. + +
diff --git a/net/frr/src/opnsense/mvc/app/models/OPNsense/Quagga/OSPF.xml b/net/frr/src/opnsense/mvc/app/models/OPNsense/Quagga/OSPF.xml index 1f28cebb4..931286130 100644 --- a/net/frr/src/opnsense/mvc/app/models/OPNsense/Quagga/OSPF.xml +++ b/net/frr/src/opnsense/mvc/app/models/OPNsense/Quagga/OSPF.xml @@ -49,6 +49,37 @@ /^(?!0).*$/ + + + + 1 + Y + + + Y + ipv4 + N + Please enter area ID in dotted (e.g. 0.0.0.1) format. + + + UniqueConstraint + The area ID must be unique. + + + + + Y + standard + + standard + stub + stub no-summary + nssa + nssa no-summary + + + + diff --git a/net/frr/src/opnsense/mvc/app/views/OPNsense/Quagga/ospf.volt b/net/frr/src/opnsense/mvc/app/views/OPNsense/Quagga/ospf.volt index a5b5d063d..2a22a5039 100644 --- a/net/frr/src/opnsense/mvc/app/views/OPNsense/Quagga/ospf.volt +++ b/net/frr/src/opnsense/mvc/app/views/OPNsense/Quagga/ospf.volt @@ -59,6 +59,14 @@ POSSIBILITY OF SUCH DAMAGE. 'del':'/api/quagga/ospfsettings/del_neighbor/', 'toggle':'/api/quagga/ospfsettings/toggle_neighbor/' }); + $("#{{formGridEditOSPFArea['table_id']}}").UIBootgrid({ + 'search':'/api/quagga/ospfsettings/search_area', + 'get':'/api/quagga/ospfsettings/get_area/', + 'set':'/api/quagga/ospfsettings/set_area/', + 'add':'/api/quagga/ospfsettings/add_area/', + 'del':'/api/quagga/ospfsettings/del_area/', + 'toggle':'/api/quagga/ospfsettings/toggle_area/' + }); $("#{{formGridEditNetwork['table_id']}}").UIBootgrid({ 'search':'/api/quagga/ospfsettings/search_network', 'get':'/api/quagga/ospfsettings/get_network/', @@ -154,6 +162,7 @@ POSSIBILITY OF SUCH DAMAGE.