Skip to content

Commit 76d28a6

Browse files
authored
[pyext] Use SAI autogenerated saiswig.i (sonic-net#837)
No more need to manual translation of each SAI api structure. SAI metadata is now generating this automatically.
1 parent 9949c48 commit 76d28a6

11 files changed

+3
-505
lines changed

pyext/fdb.h

-57
This file was deleted.

pyext/getapi.h

-10
This file was deleted.

pyext/lag.h

-57
This file was deleted.

pyext/nexthop.h

-25
This file was deleted.

pyext/pysairedis.cpp

-98
Original file line numberDiff line numberDiff line change
@@ -65,104 +65,6 @@ sai_status_t sai_api_initialize(
6565
return sai_api_initialize(flags, &g_smt);
6666
}
6767

68-
sai_status_t sai_get_switch_api(sai_switch_api_t* out)
69-
{
70-
sai_switch_api_t* api;
71-
72-
sai_status_t status = sai_api_query(SAI_API_SWITCH, (void**)&api);
73-
74-
if (status == SAI_STATUS_SUCCESS)
75-
{
76-
*out = *api;
77-
}
78-
79-
return status;
80-
}
81-
82-
sai_status_t sai_get_lag_api(sai_lag_api_t* out)
83-
{
84-
sai_lag_api_t* api;
85-
86-
sai_status_t status = sai_api_query(SAI_API_LAG, (void**)&api);
87-
88-
if (status == SAI_STATUS_SUCCESS)
89-
{
90-
*out = *api;
91-
}
92-
93-
return status;
94-
}
95-
96-
sai_status_t sai_get_router_interface_api(sai_router_interface_api_t* out)
97-
{
98-
sai_router_interface_api_t* api;
99-
100-
sai_status_t status = sai_api_query(SAI_API_ROUTER_INTERFACE, (void**)&api);
101-
102-
if (status == SAI_STATUS_SUCCESS)
103-
{
104-
*out = *api;
105-
}
106-
107-
return status;
108-
}
109-
110-
sai_status_t sai_get_next_hop_api(sai_next_hop_api_t* out)
111-
{
112-
sai_next_hop_api_t* api;
113-
114-
sai_status_t status = sai_api_query(SAI_API_NEXT_HOP, (void**)&api);
115-
116-
if (status == SAI_STATUS_SUCCESS)
117-
{
118-
*out = *api;
119-
}
120-
121-
return status;
122-
}
123-
124-
sai_status_t sai_get_route_api(sai_route_api_t* out)
125-
{
126-
sai_route_api_t* api;
127-
128-
sai_status_t status = sai_api_query(SAI_API_ROUTE, (void**)&api);
129-
130-
if (status == SAI_STATUS_SUCCESS)
131-
{
132-
*out = *api;
133-
}
134-
135-
return status;
136-
}
137-
138-
sai_status_t sai_get_vlan_api(sai_vlan_api_t* out)
139-
{
140-
sai_vlan_api_t* api;
141-
142-
sai_status_t status = sai_api_query(SAI_API_VLAN, (void**)&api);
143-
144-
if (status == SAI_STATUS_SUCCESS)
145-
{
146-
*out = *api;
147-
}
148-
149-
return status;
150-
}
151-
152-
sai_status_t sai_get_fdb_api(sai_fdb_api_t* out)
153-
{
154-
sai_fdb_api_t* api;
155-
156-
sai_status_t status = sai_api_query(SAI_API_FDB, (void**)&api);
157-
158-
if (status == SAI_STATUS_SUCCESS)
159-
{
160-
*out = *api;
161-
}
162-
163-
return status;
164-
}
165-
16668
sai_mac_t* sai_mac_t_from_string(const std::string& s)
16769
{
16870
sai_mac_t *mac = (sai_mac_t*)calloc(1, sizeof(sai_mac_t));

pyext/pysairedis.h

-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33

44
extern "C" {
55
#include "sai.h"
6-
#include "getapi.h"
76
}
87

98
#include <map>

pyext/pysairedis.i

+3-31
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
%module pysairedis
2-
32
%include "cpointer.i"
43
%include "carrays.i"
54

@@ -8,7 +7,7 @@
87

98
extern "C"{
109
#include "sai.h"
11-
#include "getapi.h"
10+
#include "saiextensions.h"
1211
}
1312

1413
#include "sairedis.h"
@@ -26,36 +25,9 @@ namespace std {
2625

2726
%include "saitypes.h"
2827
%include "sai.h"
28+
%include "saiextensions.h"
2929

30-
%include "getapi.h"
31-
32-
%include "switch.h"
33-
%include "lag.h"
34-
%include "routerinterface.h"
35-
%include "nexthop.h"
36-
%include "route.h"
37-
%include "vlan.h"
38-
%include "fdb.h"
39-
40-
%ignore sai_switch_api_t;
41-
%ignore sai_lag_api_t;
42-
%ignore sai_router_interface_api_t;
43-
%ignore sai_next_hop_api_t;
44-
%ignore sai_route_api_t;
45-
%ignore sai_vlan_api_t;
46-
%ignore sai_fdb_api_t;
47-
48-
%include "saiswitch.h"
49-
%include "sailag.h"
50-
%include "sairouterinterface.h"
51-
%include "sainexthop.h"
52-
%include "sairoute.h"
53-
%include "saivlan.h"
54-
%include "saifdb.h"
55-
%include "saiport.h"
56-
%include "saibfd.h"
57-
%include "saiqueue.h"
58-
30+
%include "../SAI/meta/saiswig.i"
5931

6032
%include "sairedis.h"
6133

pyext/route.h

-52
This file was deleted.

0 commit comments

Comments
 (0)