From 888640a398f974cf388bdc983d10e78591275b37 Mon Sep 17 00:00:00 2001 From: Paul Vinciguerra Date: Tue, 14 May 2019 21:01:28 -0400 Subject: map gbp papi: match endianess of f64 clib_net_to_host_f64, clib_host_to_net_f64 are now implemented as '=', https://gerrit.fd.io/r/#/c/20406/ set papi to match. - all f64 api references are now wrapped with clib_net_to_host_f64 or clib_host_to_net_f64. IEEE f64 endianess is not defined. If clib_net_to_host_f64 and clib_host_to_net_f64 are later defined in VPP as big-endian, it is a single character change in the papi vpp_serializer. Note: This breaks the api in a manner that would not be detected by the flag day initiative. The scope is small. This only impacts map.api, which applied the u64 transformation, while the gbp api uses '='. The implementation of "=" raises issues for the papi socket implementation if used between systems of differing endianess. See Vratko's comments. - Added get_f64_endian_value() to api to allow client to verify endianess of f64's. Type: fix Depends-on: https://gerrit.fd.io/r/#/c/20484/ Change-Id: I00fc64a6557ba0190398df211aa0ea5c7eb101df Signed-off-by: Paul Vinciguerra --- src/vpp-api/python/vpp_papi/vpp_serializer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/vpp-api') diff --git a/src/vpp-api/python/vpp_papi/vpp_serializer.py b/src/vpp-api/python/vpp_papi/vpp_serializer.py index fe9a083d6c8..9e17c4a2b8c 100644 --- a/src/vpp-api/python/vpp_papi/vpp_serializer.py +++ b/src/vpp-api/python/vpp_papi/vpp_serializer.py @@ -74,7 +74,7 @@ class BaseTypes(object): 'u32': '>I', 'i32': '>i', 'u64': '>Q', - 'f64': '>d', + 'f64': '=d', 'bool': '>?', 'header': '>HI'} -- cgit 1.2.3-korg