diff --git a/include/grpc/byte_buffer.h b/include/grpc/byte_buffer.h index 913e2a7697f..1433ffdf7e3 100644 --- a/include/grpc/byte_buffer.h +++ b/include/grpc/byte_buffer.h @@ -47,8 +47,12 @@ typedef enum { } grpc_byte_buffer_type; struct grpc_byte_buffer { + void *reserved; grpc_byte_buffer_type type; union { + struct { + void *reserved[8]; + } reserved; struct { grpc_compression_algorithm compression; gpr_slice_buffer slice_buffer; diff --git a/include/grpc/grpc.h b/include/grpc/grpc.h index 4fe3a489302..736aff79b1f 100644 --- a/include/grpc/grpc.h +++ b/include/grpc/grpc.h @@ -196,12 +196,13 @@ typedef struct grpc_metadata { const char *key; const char *value; size_t value_length; + gpr_uint32 flags; /** The following fields are reserved for grpc internal use. There is no need to initialize them, and they will be set to garbage during calls to grpc. */ struct { - void *obfuscated[3]; + void *obfuscated[4]; } internal_data; } grpc_metadata; @@ -286,7 +287,13 @@ typedef struct grpc_op { grpc_op_type op; /** Write flags bitset for grpc_begin_messages */ gpr_uint32 flags; + /** Reserved for future usage */ + void *reserved; union { + /** Reserved for future usage */ + struct { + void *reserved[8]; + } reserved; struct { size_t count; grpc_metadata *metadata; @@ -344,7 +351,6 @@ typedef struct grpc_op { int *cancelled; } recv_close_on_server; } data; - void *reserved; } grpc_op; /** Initialize the grpc library.