|
|
@ -49,22 +49,24 @@ static void pb_varint(PB_CTX *ctx, uint32_t val)
|
|
|
|
|
|
|
|
|
|
|
|
void pb_add_bool(PB_CTX *ctx, uint32_t field_number, bool val)
|
|
|
|
void pb_add_bool(PB_CTX *ctx, uint32_t field_number, bool val)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
field_number = (field_number << 3) | 0;
|
|
|
|
pb_add_varint(ctx, field_number, val);
|
|
|
|
pb_varint(ctx, field_number);
|
|
|
|
|
|
|
|
pb_append(ctx, val);
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void pb_add_string(PB_CTX *ctx, uint32_t field_number, const char *val)
|
|
|
|
void pb_add_bytes(PB_CTX *ctx, uint32_t field_number, const uint8_t *val, uint32_t len)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
field_number = (field_number << 3) | 2;
|
|
|
|
field_number = (field_number << 3) | 2;
|
|
|
|
pb_varint(ctx, field_number);
|
|
|
|
pb_varint(ctx, field_number);
|
|
|
|
size_t len = strlen(val);
|
|
|
|
|
|
|
|
pb_varint(ctx, len);
|
|
|
|
pb_varint(ctx, len);
|
|
|
|
for (size_t i = 0; i < len; i++) {
|
|
|
|
for (uint32_t i = 0; i < len; i++) {
|
|
|
|
pb_append(ctx, val[i]);
|
|
|
|
pb_append(ctx, val[i]);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void pb_add_string(PB_CTX *ctx, uint32_t field_number, const char *val)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
pb_add_bytes(ctx, field_number, (const uint8_t *)val, strlen(val));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void pb_add_varint(PB_CTX *ctx, uint32_t field_number, uint32_t val)
|
|
|
|
void pb_add_varint(PB_CTX *ctx, uint32_t field_number, uint32_t val)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
field_number = (field_number << 3) | 0;
|
|
|
|
field_number = (field_number << 3) | 0;
|
|
|
|