fixeria has uploaded this change for review.

View Change

pfcp_peer: fix handling of IPv6 addr in get_f_seid()

An IPv6 addr is 16 bytes long, not 6!

Change-Id: Ie0529e8f67b5dc477fb8e04207dbef4d19ec9b75
---
M src/pfcp_peer.erl
1 file changed, 3 insertions(+), 3 deletions(-)

git pull ssh://gerrit.osmocom.org:29418/erlang/osmo-s1gw refs/changes/42/38142/1
diff --git a/src/pfcp_peer.erl b/src/pfcp_peer.erl
index c97304b..f379e69 100644
--- a/src/pfcp_peer.erl
+++ b/src/pfcp_peer.erl
@@ -377,9 +377,9 @@
ipv4 = undefined,
ipv6 = undefined},
NodeId = get_node_id(S),
- case byte_size(NodeId) of
- 4 -> IE#f_seid{ipv4 = NodeId};
- 6 -> IE#f_seid{ipv6 = NodeId};
+ case NodeId of
+ << _:32 >> -> IE#f_seid{ipv4 = NodeId};
+ << _:128 >> -> IE#f_seid{ipv6 = NodeId};
_ -> IE %% shall not happen
end.


To view, visit change 38142. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-MessageType: newchange
Gerrit-Project: erlang/osmo-s1gw
Gerrit-Branch: master
Gerrit-Change-Id: Ie0529e8f67b5dc477fb8e04207dbef4d19ec9b75
Gerrit-Change-Number: 38142
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy@sysmocom.de>