From de10a7754b7cfe4f5956ff575113211f222f960b Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Mon, 2 Feb 2015 16:59:48 +0100 Subject: buffer: buffer: Improve argument checking of in ssh_buffer_pack() Signed-off-by: Andreas Schneider Reviewed-by: Aris Adamantiadis --- include/libssh/buffer.h | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'include/libssh') diff --git a/include/libssh/buffer.h b/include/libssh/buffer.h index 1cc8196c..826d0b7c 100644 --- a/include/libssh/buffer.h +++ b/include/libssh/buffer.h @@ -64,9 +64,15 @@ int _ssh_buffer_pack(struct ssh_buffer_struct *buffer, #define ssh_buffer_pack(buffer, format, ...) \ _ssh_buffer_pack((buffer), (format), __VA_NARG__(__VA_ARGS__), __VA_ARGS__, SSH_BUFFER_PACK_END) -int ssh_buffer_unpack_va(struct ssh_buffer_struct *buffer, const char *format, va_list ap); -int _ssh_buffer_unpack(struct ssh_buffer_struct *buffer, const char *format, ...); -#define ssh_buffer_unpack(buffer, format, ...) _ssh_buffer_unpack((buffer),(format), __VA_ARGS__, SSH_BUFFER_PACK_END) +int ssh_buffer_unpack_va(struct ssh_buffer_struct *buffer, + const char *format, int argc, + va_list ap); +int _ssh_buffer_unpack(struct ssh_buffer_struct *buffer, + const char *format, + int argc, + ...); +#define ssh_buffer_unpack(buffer, format, ...) \ + _ssh_buffer_unpack((buffer), (format), __VA_NARG__(__VA_ARGS__), __VA_ARGS__, SSH_BUFFER_PACK_END) int buffer_prepend_data(ssh_buffer buffer, const void *data, uint32_t len); int buffer_add_buffer(ssh_buffer buffer, ssh_buffer source); -- cgit