Add some helers to sbuf

This commit is contained in:
Andreas Öman 2011-10-29 22:48:41 +02:00
parent 089f60ddf4
commit 8a5567dda4
2 changed files with 29 additions and 2 deletions

View file

@ -436,8 +436,14 @@ void sbuf_err(sbuf_t *sb);
void sbuf_alloc(sbuf_t *sb, int len);
void sbuf_append(sbuf_t *sb, const uint8_t *data, int len);
void sbuf_append(sbuf_t *sb, const void *data, int len);
void sbuf_cut(sbuf_t *sb, int off);
void sbuf_put_be32(sbuf_t *sb, uint32_t u32);
void sbuf_put_be16(sbuf_t *sb, uint16_t u16);
void sbuf_put_byte(sbuf_t *sb, uint8_t u8);
#endif /* TV_HEAD_H */

View file

@ -265,13 +265,34 @@ sbuf_alloc(sbuf_t *sb, int len)
}
void
sbuf_append(sbuf_t *sb, const uint8_t *data, int len)
sbuf_append(sbuf_t *sb, const void *data, int len)
{
sbuf_alloc(sb, len);
memcpy(sb->sb_data + sb->sb_ptr, data, len);
sb->sb_ptr += len;
}
void
sbuf_put_be32(sbuf_t *sb, uint32_t u32)
{
u32 = htonl(u32);
sbuf_append(sb, &u32, 4);
}
void
sbuf_put_be16(sbuf_t *sb, uint16_t u16)
{
u16 = htons(u16);
sbuf_append(sb, &u16, 2);
}
void
sbuf_put_byte(sbuf_t *sb, uint8_t u8)
{
sbuf_append(sb, &u8, 1);
}
void
sbuf_cut(sbuf_t *sb, int off)
{