Skip to content

Commit

Permalink
datapath-windows: Change return type of OvsInitVxlanTunnel()
Browse files Browse the repository at this point in the history
OvsInitVxlanTunnel() need not return a NL_ERROR. In this patch, we
change it to NTSTATUS, and also update the mapping function that maps a
NTSTATUS to NL_ERROR.

Signed-off-by: Nithin Raju <nithin@vmware.com>
Acked-by: Ankur Sharma <ankursharma@vmware.com>
Signed-off-by: Gurucharan Shetty <gshetty@nicira.com>
  • Loading branch information
nithinrajub authored and shettyg committed Nov 20, 2014
1 parent 827e07b commit 8ea43ba
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 6 deletions.
3 changes: 2 additions & 1 deletion datapath-windows/ovsext/Datapath.c
Expand Up @@ -1802,7 +1802,8 @@ OvsNewVportCmdHandler(POVS_USER_PARAMS_CONTEXT usrParamsCtx,
vportAllocated = TRUE;

if (OvsIsTunnelVportType(portType)) {
nlError = OvsInitTunnelVport(vport, portType, VXLAN_UDP_PORT);
status = OvsInitTunnelVport(vport, portType, VXLAN_UDP_PORT);
nlError = NlMapStatusToNlErr(status);
} else {
OvsInitBridgeInternalVport(vport);
}
Expand Down
8 changes: 7 additions & 1 deletion datapath-windows/ovsext/Netlink/NetlinkError.h
Expand Up @@ -202,13 +202,19 @@ typedef enum _NL_ERROR_
static __inline
NlMapStatusToNlErr(NTSTATUS status)
{
NL_ERROR ret = NL_ERROR_SUCCESS;
NL_ERROR ret = NL_ERROR_INVAL;

switch (status)
{
case STATUS_NOT_SUPPORTED:
ret = NL_ERROR_NOTSUPP;
break;
case STATUS_INSUFFICIENT_RESOURCES:
ret = NL_ERROR_NOMEM;
break;
case STATUS_SUCCESS:
ret = NL_ERROR_SUCCESS;
break;
default:
break;
}
Expand Down
6 changes: 3 additions & 3 deletions datapath-windows/ovsext/Vxlan.c
Expand Up @@ -53,15 +53,15 @@ extern POVS_SWITCH_CONTEXT gOvsSwitchContext;
* udpDestPort: the vxlan is set as payload to a udp frame. If the destination
* port of an udp frame is udpDestPort, we understand it to be vxlan.
*/
NL_ERROR
NTSTATUS
OvsInitVxlanTunnel(POVS_VPORT_ENTRY vport,
UINT16 udpDestPort)
{
POVS_VXLAN_VPORT vxlanPort;

vxlanPort = OvsAllocateMemory(sizeof (*vxlanPort));
if (vxlanPort == NULL) {
return NL_ERROR_NOMEM;
return STATUS_INSUFFICIENT_RESOURCES;
}

RtlZeroMemory(vxlanPort, sizeof(*vxlanPort));
Expand All @@ -74,7 +74,7 @@ OvsInitVxlanTunnel(POVS_VPORT_ENTRY vport,
ASSERT(vxlanPort->dstPort == VXLAN_UDP_PORT);
vport->priv = (PVOID)vxlanPort;

return NL_ERROR_SUCCESS;
return STATUS_SUCCESS;
}


Expand Down
2 changes: 1 addition & 1 deletion datapath-windows/ovsext/Vxlan.h
Expand Up @@ -47,7 +47,7 @@ typedef struct VXLANHdr {
UINT32 reserved2:8;
} VXLANHdr;

NL_ERROR OvsInitVxlanTunnel(POVS_VPORT_ENTRY vport,
NTSTATUS OvsInitVxlanTunnel(POVS_VPORT_ENTRY vport,
UINT16 udpDestPort);

VOID OvsCleanupVxlanTunnel(POVS_VPORT_ENTRY vport);
Expand Down

0 comments on commit 8ea43ba

Please sign in to comment.