summaryrefslogtreecommitdiffstats
path: root/src/plugins/ioam
AgeCommit message (Expand)AuthorFilesLines
2018-12-12VPP-1529: check hop-by-hop header lengthDave Barach1-7/+37
2018-11-14Remove c-11 memcpy checks from perf-critical codeDave Barach6-24/+24
2018-10-23c11 safe string handling supportDave Barach15-29/+30
2018-10-19vppinfra: add atomic macros for __sync builtinsSirshak Das4-26/+28
2018-08-27cmake: Fix plugins .h includesMohsin Kazmi1-0/+31
2018-08-27CMake: fix install lib and iOMA missing symbolNeale Ranns1-0/+1
2018-08-25cmake: handle api_test_plugins in add_vpp_plugin macroDamjan Marion1-19/+2
2018-08-25ioam: one api test plugin instead of fiveDamjan Marion7-6/+54
2018-08-25cmake: improve add_vpp_plugin macroDamjan Marion1-13/+16
2018-08-17CMake as an alternative to autotools (experimental)Damjan Marion1-0/+99
2018-05-13Improve ipfix template packet rewrite constructionDave Barach3-4/+11
2018-05-04Flow: Rename IPFIX exporter.Ole Troan4-4/+4
2018-05-04Harmonize vec/pool_get_aligned object sizes and alignment requestsDave Barach4-2/+12
2018-04-25Fix some build warnings about "Old Style VLA"Juraj Sloboda1-3/+3
2018-04-12Fixes for 'make UNATTENDED=yes CC=clang CXX=clang verify'Neale Ranns2-6/+6
2018-01-23VPPAPIGEN: vppapigen replacement in Python PLY.Ole Troan7-7/+7
2018-01-15fix udp_ping api naming errorGabriel Ganne3-35/+17
2018-01-09api: refactor vlibmemoryFlorin Coras2-4/+4
2017-12-21VPP-1109 Fix loop for some CLI (code review)Swarup Nayak1-0/+3
2017-10-24Add extern to *_main global variable declarations in header files.Dave Wallace2-1/+3
2017-10-09vppapigen: support per-file (major,minor,patch) version stampsDave Barach7-0/+10
2017-10-03Repair vlib API socket serverDave Barach14-14/+8
2017-06-06Rework vxlan-gpe to support FIB 2.0 and bypass modeHongjun Ni1-1/+1
2017-05-30Flowprobe: Stateful flows and IPv6, L4 recordingOle Troan2-2/+4
2017-05-24IPv6 Performance bugsNeale Ranns2-2/+1
2017-05-17ioam: configuration for SRv6 localsid (VPP-693)shwethab4-23/+54
2017-05-05First commit SR MPLSPablo Camarillo3-3/+3
2017-04-27ioam: adding missing setup api msg crc tableShwetha Bhandari4-0/+66
2017-04-25"autoreply" flag: autogenerate standard xxx_reply_t messagesDave Barach6-158/+14
2017-04-13Remove unsed parameter from fib_table_entry_special_add() (only used in FIB t...Neale Ranns1-3/+1
2017-04-11Remove usued, redundant and deprecated code from lookup.hNeale Ranns3-11/+6
2017-04-06Use thread local storage for thread indexDamjan Marion2-11/+11
2017-03-22vlib: add description field in plugin registrationDamjan Marion1-0/+1
2017-03-22Initial draft of VPP changes to cleanup iOAM export.Vengada7-5/+7
2017-03-16API:replaced all REPLY_MACRO's with api_helper_macros.hEyal Bari5-151/+10
2017-03-15VPP changes to support iOAM over NSH-MD2. Separate trace dataVengada7-16/+51
2017-03-14ioam: ip6 hop by hop ext header and SR header co-existenceshwethab1-3/+3
2017-03-14IOAM Coverity fixAkshayaNadahalli8-34/+42
2017-03-10Fix vat_api_hookup name collisionDave Barach1-3/+3
2017-03-07In-band OAM active probe (VPP-471)AkshayaNadahalli19-14/+2638
2017-03-06ioam: manycast using iOAM and SR (VPP-628)Shwetha Bhandari12-9/+2637
2017-03-01VPP-598: tcp stack initial commitDave Barach3-3/+3
2017-02-17ioam: declare export_node instead of defining it in header fileDamjan Marion1-1/+1
2017-02-14Fix coverity issues: ioamShwetha Bhandari2-3/+9
2017-02-13VPP-632 : InBand OAM AnalyserAkshayaNadahalli27-289/+2738
2017-02-03Plugin infrastructure improvementsDamjan Marion1-12/+6
2017-02-02Refactor fragile msg macro W and W2 to not burry return control flow.Jon Loeliger5-34/+45
2017-02-02Localize the timeout variable within the W message macro.Jon Loeliger5-15/+1
2017-02-02Convert message macro S to accept a message pointer parameter;Jon Loeliger5-15/+19
2017-02-02Ensure all M() and M2() second parameters are the message pointer.Jon Loeliger5-16/+15
ology-netconf'
+ }
+ ];
+ this['vbridge-topology:tunnel-type'] = 'tunnel-type-vxlan';
+ this['vbridge-topology:vxlan'] = {
+ 'vni': '1'
+ };
+ this['vbridge-topology:flood'] = "true",
+ this['vbridge-topology:forward'] = "true",
+ this['vbridge-topology:learn'] = "true",
+ this['vbridge-topology:unknown-unicast-flood'] = "true",
+ this['vbridge-topology:arp-termination'] = "false"
+ };
+
+ s.createObj = function(topologyId) {
+ return new BridgeDomain(topologyId);
+ };
+
+ s.add = function(bridgeDomain, successCallback, errorCallback) {
+ var restObj = VPPRestangular.one('restconf').one('config').one('network-topology:network-topology').one('topology').one(bridgeDomain['topology-id']);
+ var dataObj = {'topology': [bridgeDomain]};
+
+ restObj.customPUT(dataObj).then(function(data) {
+ successCallback(data);
+ }, function(res) {
+ errorCallback(res.data, res.status);
+ });
+ };
+
+ s.get = function(successCallback, errorCallback) {
+ var restObj = VPPRestangular.one('restconf').one('config').one('network-topology:network-topology');
+
+ restObj.get().then(function(data) {
+ successCallback(data);
+ }, function(res) {
+ errorCallback(res.data, res.status);
+ });
+ };
+
+
return s;
});
}); \ No newline at end of file
diff --git a/vbd/gui/module/src/main/resources/vpp/services/bdm.interface.service.js b/vbd/gui/module/src/main/resources/vpp/services/bdm.interface.service.js
index 9dca2d29d..341fb5d48 100644
--- a/vbd/gui/module/src/main/resources/vpp/services/bdm.interface.service.js
+++ b/vbd/gui/module/src/main/resources/vpp/services/bdm.interface.service.js
@@ -5,10 +5,43 @@
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-define(['app/vpp/vpp.module', 'next'], function(vpp) {
- vpp.register.factory('bdmInterfaceService', function(VPPRestangular, VPPRestangularXml) {
+define(['app/vpp/vpp.module'], function(vpp) {
+ vpp.register.factory('bdmInterfaceService', function(VPPRestangular) {
var s = {};
+ var Interface = function(tpId, interfaceName) {
+ this['tp-id'] = tpId || null;
+ this['vbridge-topology:user-interface'] = interfaceName;
+ };
+
+ s.createObj = function(tpId, interfaceName) {
+ return new Interface(tpId, interfaceName);
+ };
+
+ s.add = function(interface, bridgeDomainId, vppId, successCallback, errorCallback) {
+ var restObj = VPPRestangular.one('restconf').one('config').one('network-topology:network-topology')
+ .one('topology').one(bridgeDomainId).one('node').one(vppId).one('termination-point').one(interface['tp-id']);
+ var dataObj = {'termination-point': [interface]};
+
+ restObj.customPUT(dataObj).then(function(data) {
+ successCallback(data);
+ }, function(res) {
+ errorCallback(res.data, res.status);
+ });
+ };
+
+ s.get = function(bridgeDomainId, vppId, successCallback, errorCallback) {
+ var restObj = VPPRestangular.one('restconf').one('config').one('network-topology:network-topology')
+ .one('topology').one(bridgeDomainId).one('node').one(vppId);
+
+ restObj.get().then(function(data) {
+ successCallback(data);
+ }, function(res) {
+ errorCallback(res.data, res.status);
+ });
+ };
+
+
return s;
});
}); \ No newline at end of file
diff --git a/vbd/gui/module/src/main/resources/vpp/services/bdm.vpp.service.js b/vbd/gui/module/src/main/resources/vpp/services/bdm.vpp.service.js
index 5a23d831c..b817a75a3 100644
--- a/vbd/gui/module/src/main/resources/vpp/services/bdm.vpp.service.js
+++ b/vbd/gui/module/src/main/resources/vpp/services/bdm.vpp.service.js
@@ -5,10 +5,47 @@
* terms of the Eclipse Public License v1.0 which accompanies this distribution,
* and is available at http://www.eclipse.org/legal/epl-v10.html
*/
-define(['app/vpp/vpp.module', 'next'], function(vpp) {
- vpp.register.factory('bdmVppService', function(VPPRestangular, VPPRestangularXml) {
+define(['app/vpp/vpp.module'], function(vpp) {
+ vpp.register.factory('bdmVppService', function(VPPRestangular) {
var s = {};
+ var Vpp = function(nodeId, vppId) {
+ this['node-id'] = nodeId || null;
+ this['supporting-node'] = [
+ {
+ 'topology-ref': 'topology-netconf',
+ 'node-ref': vppId
+ }
+ ];
+ this['netconf-node-topology:pass-through'] = {};
+ };
+
+ s.createObj = function(nodeId, vppId) {
+ return new Vpp(nodeId, vppId);
+ };
+
+ s.add = function(vpp, bridgeDomainId, successCallback, errorCallback) {
+ var restObj = VPPRestangular.one('restconf').one('config').one('network-topology:network-topology').one('topology').one(bridgeDomainId).one('node').one(vpp['node-id']);
+ var dataObj = {'node': [vpp]};
+
+ restObj.customPUT(dataObj).then(function(data) {
+ successCallback(data);
+ }, function(res) {
+ errorCallback(res.data, res.status);
+ });
+ };
+
+ s.get = function(bridgeDomainId, successCallback, errorCallback) {
+ var restObj = VPPRestangular.one('restconf').one('config').one('network-topology:network-topology').one('topology').one(bridgeDomainId);
+
+ restObj.get().then(function(data) {
+ successCallback(data);
+ }, function(res) {
+ errorCallback(res.data, res.status);
+ });
+ };
+
+
return s;
});
}); \ No newline at end of file
diff --git a/vbd/gui/module/src/main/resources/vpp/views/bridge-domains.tpl.html b/vbd/gui/module/src/main/resources/vpp/views/bridge-domains.tpl.html
index a8b4689d1..d92873afe 100644
--- a/vbd/gui/module/src/main/resources/vpp/views/bridge-domains.tpl.html
+++ b/vbd/gui/module/src/main/resources/vpp/views/bridge-domains.tpl.html
@@ -9,7 +9,7 @@
<md-select ng-model='BridgeDomainsController.selectedBd.name' placeholder="Select BD" ng-change="BridgeDomainsController.bdChanged()" style="width: 100%;">
<md-option ng-repeat="bd in BridgeDomainsController.bridgedomains" value="{{bd.name}}">{{bd.name}}</md-option>
</md-select>
- <md-button class="md-raised" md-no-ink ng-click="BridgeDomainsController.addBd()" style="width: 25%;">Add BD</md-button>
+ <md-button class="md-raised" md-no-ink ng-click="addBd()" style="width: 25%;">Add BD</md-button>
<md-button class="md-raised" md-no-ink ng-click="BridgeDomainsController.removeBd()" style="width: 35%;" ng-if="BridgeDomainsController.dataService.injectedInterfaces.length===0 && BridgeDomainsController.dataService.selectedBd.name">Remove BD</md-button>
</md-input-container>