SAI Metadata
Loading...
Searching...
No Matches
saiserialize.h File Reference

This module defines SAI Serialize methods. More...

Go to the source code of this file.

Macros

#define SAI_SERIALIZE_ERROR   (-1)
 
#define SAI_CHARDATA_LENGTH   32
 

Functions

bool sai_serialize_is_char_allowed (_In_ char c)
 Is char allowed.
 
int sai_serialize_bool (_Out_ char *buffer, _In_ bool flag)
 Serialize bool value.
 
int sai_deserialize_bool (_In_ const char *buffer, _Out_ bool *flag)
 Deserialize bool value.
 
int sai_serialize_chardata (_Out_ char *buffer, _In_ const char data[SAI_CHARDATA_LENGTH])
 Serialize char data value.
 
int sai_deserialize_chardata (_In_ const char *buffer, _Out_ char data[SAI_CHARDATA_LENGTH])
 Deserialize char data value.
 
int sai_serialize_uint8 (_Out_ char *buffer, _In_ uint8_t u8)
 Serialize 8 bit unsigned integer.
 
int sai_deserialize_uint8 (_In_ const char *buffer, _Out_ uint8_t *u8)
 Deserialize 8 bit unsigned integer.
 
int sai_serialize_int8 (_Out_ char *buffer, _In_ int8_t u8)
 Serialize 8 bit signed integer.
 
int sai_deserialize_int8 (_In_ const char *buffer, _Out_ int8_t *s8)
 Deserialize 8 bit signed integer.
 
int sai_serialize_uint16 (_Out_ char *buffer, _In_ uint16_t u16)
 Serialize 16 bit unsigned integer.
 
int sai_deserialize_uint16 (_In_ const char *buffer, _Out_ uint16_t *u16)
 Deserialize 16 bit unsigned integer.
 
int sai_serialize_int16 (_Out_ char *buffer, _In_ int16_t s16)
 Serialize 16 bit signed integer.
 
int sai_deserialize_int16 (_In_ const char *buffer, _Out_ int16_t *s16)
 Deserialize 16 bit signed integer.
 
int sai_serialize_uint32 (_Out_ char *buffer, _In_ uint32_t u32)
 Serialize 32 bit unsigned integer.
 
int sai_deserialize_uint32 (_In_ const char *buffer, _Out_ uint32_t *u32)
 Deserialize 32 bit unsigned integer.
 
int sai_serialize_int32 (_Out_ char *buffer, _In_ int32_t s32)
 Serialize 32 bit signed integer.
 
int sai_deserialize_int32 (_In_ const char *buffer, _Out_ int32_t *s32)
 Deserialize 32 bit signed integer.
 
int sai_serialize_uint64 (_Out_ char *buffer, _In_ uint64_t u64)
 Serialize 64 bit unsigned integer.
 
int sai_deserialize_uint64 (_In_ const char *buffer, _Out_ uint64_t *u64)
 Deserialize 64 bit unsigned integer.
 
int sai_serialize_int64 (_Out_ char *buffer, _In_ int64_t s64)
 Serialize 64 bit signed integer.
 
int sai_deserialize_int64 (_In_ const char *buffer, _Out_ int64_t *s64)
 Deserialize 64 bit signed integer.
 
int sai_serialize_size (_Out_ char *buffer, _In_ sai_size_t size)
 Serialize sai_size_t.
 
int sai_deserialize_size (_In_ const char *buffer, _Out_ sai_size_t *size)
 Deserialize sai_size_t.
 
int sai_serialize_object_id (_Out_ char *buffer, _In_ sai_object_id_t object_id)
 Serialize object ID.
 
int sai_deserialize_object_id (_In_ const char *buffer, _Out_ sai_object_id_t *object_id)
 Deserialize object Id.
 
int sai_serialize_mac (_Out_ char *buffer, _In_ const sai_mac_t mac_address)
 Serialize MAC address.
 
int sai_deserialize_mac (_In_ const char *buffer, _Out_ sai_mac_t mac)
 Deserialize MAC address.
 
int sai_serialize_encrypt_key (_Out_ char *buffer, _In_ const sai_encrypt_key_t key)
 Serialize encrypt_key.
 
int sai_deserialize_encrypt_key (_In_ const char *buffer, _Out_ sai_encrypt_key_t key)
 Deserialize encrypt_key.
 
int sai_serialize_auth_key (_Out_ char *buffer, _In_ const sai_auth_key_t auth)
 Serialize auth_key.
 
int sai_deserialize_auth_key (_In_ const char *buffer, _Out_ sai_auth_key_t auth)
 Deserialize auth_key.
 
int sai_serialize_macsec_sak (_Out_ char *buffer, _In_ const sai_macsec_sak_t sak)
 Serialize macsec_sak.
 
int sai_deserialize_macsec_sak (_In_ const char *buffer, _Out_ sai_macsec_sak_t sak)
 Deserialize macsec_sak.
 
int sai_serialize_macsec_auth_key (_Out_ char *buffer, _In_ const sai_macsec_auth_key_t auth)
 Serialize macsec_auth_key.
 
int sai_deserialize_macsec_auth_key (_In_ const char *buffer, _Out_ sai_macsec_auth_key_t auth)
 Deserialize macsec_auth_key.
 
int sai_serialize_macsec_salt (_Out_ char *buffer, _In_ const sai_macsec_salt_t salt)
 Serialize macsec_salt.
 
int sai_deserialize_macsec_salt (_In_ const char *buffer, _Out_ sai_macsec_salt_t salt)
 Deserialize macsec_salt.
 
int sai_serialize_enum (_Out_ char *buffer, _In_ const sai_enum_metadata_t *meta, _In_ int32_t value)
 Serialize enum value.
 
int sai_deserialize_enum (_In_ const char *buffer, _In_ const sai_enum_metadata_t *meta, _Out_ int32_t *value)
 Deserialize enum value.
 
int sai_serialize_ip4 (_Out_ char *buffer, _In_ const sai_ip4_t ip4)
 Serialize IPv4 address.
 
int sai_deserialize_ip4 (_In_ const char *buffer, _Out_ sai_ip4_t *ip4)
 Deserialize IPv4 address.
 
int sai_serialize_ip6 (_Out_ char *buffer, _In_ const sai_ip6_t ip6)
 Serialize IPv6 address.
 
int sai_deserialize_ip6 (_In_ const char *buffer, _Out_ sai_ip6_t ip6)
 Deserialize IPv6 address.
 
int sai_serialize_ip_address (_Out_ char *buffer, _In_ const sai_ip_address_t *ip_address)
 Serialize IP address.
 
int sai_deserialize_ip_address (_In_ const char *buffer, _Out_ sai_ip_address_t *ip_address)
 Deserialize IP address.
 
int sai_serialize_ip_prefix (_Out_ char *buffer, _In_ const sai_ip_prefix_t *ip_prefix)
 Serialize IP prefix.
 
int sai_deserialize_ip_prefix (_In_ const char *buffer, _Out_ sai_ip_prefix_t *ip_prefix)
 Deserialize IP prefix.
 
int sai_serialize_ip4_mask (_Out_ char *buffer, _In_ sai_ip4_t ip4_mask)
 Serialize IPv4 mask.
 
int sai_deserialize_ip4_mask (_In_ const char *buffer, _Out_ sai_ip4_t *ip4_mask)
 Deserialize IPv4 mask.
 
int sai_serialize_ip6_mask (_Out_ char *buffer, _In_ const sai_ip6_t ip6_mask)
 Serialize IPv6 mask.
 
int sai_deserialize_ip6_mask (_In_ const char *buffer, _Out_ sai_ip6_t ip6_mask)
 Deserialize IPv6 mask.
 
int sai_serialize_pointer (_Out_ char *buffer, _In_ const sai_pointer_t pointer)
 Serialize pointer.
 
int sai_deserialize_pointer (_In_ const char *buffer, _Out_ sai_pointer_t *pointer)
 Deserialize pointer.
 
int sai_serialize_enum_list (_Out_ char *buffer, _In_ const sai_enum_metadata_t *meta, _In_ const sai_s32_list_t *s32_list)
 Serialize enum list.
 
int sai_deserialize_enum_list (_In_ const char *buffer, _In_ const sai_enum_metadata_t *meta, _Out_ sai_s32_list_t *s32_list)
 Deserialize enum list.
 
int sai_serialize_attr_id (_Out_ char *buffer, _In_ const sai_attr_metadata_t *meta, _In_ sai_attr_id_t attr_id)
 Serialize attribute id.
 
int sai_deserialize_attr_id (_In_ const char *buffer, _Out_ sai_attr_id_t *attr_id)
 Deserialize attribute id.
 
int sai_serialize_attribute (_Out_ char *buffer, _In_ const sai_attr_metadata_t *meta, _In_ const sai_attribute_t *attribute)
 Serialize SAI attribute.
 
int sai_deserialize_attribute (_In_ const char *buffer, _Out_ sai_attribute_t *attribute)
 Deserialize SAI attribute.
 
void sai_free_attribute (_In_ const sai_attr_metadata_t *meta, _In_ const sai_attribute_t *attribute)
 Free SAI attribute.
 

Detailed Description

This module defines SAI Serialize methods.

Copyright (c) 2014 Microsoft Open Technologies, Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0

THIS CODE IS PROVIDED ON AN AS IS BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY OR NON-INFRINGEMENT.

See the Apache Version 2.0 License for specific language governing permissions and limitations under the License.

Microsoft would like to thank the following companies for their review and assistance with these files: Intel Corporation, Mellanox Technologies Ltd, Dell Products, L.P., Facebook, Inc., Marvell International Ltd.

Definition in file saiserialize.h.