diff options
| author | Aris Adamantiadis <aris@0xbadc0de.be> | 2014-09-01 08:33:58 +0200 |
|---|---|---|
| committer | Andreas Schneider <asn@cryptomilk.org> | 2014-09-07 10:27:35 +0200 |
| commit | 2cb2587b55466fda621d3b21b1477cb28f4e4231 (patch) | |
| tree | 2c38728f461d541fc339fca585911614c50c88dd /src | |
| parent | 86294ad3ea506dd86503ad51cb03a33f6478f293 (diff) | |
| download | libssh-2cb2587b55466fda621d3b21b1477cb28f4e4231.tar.gz libssh-2cb2587b55466fda621d3b21b1477cb28f4e4231.tar.xz libssh-2cb2587b55466fda621d3b21b1477cb28f4e4231.zip | |
buffer: Implement "t" for text in ssh_buffer_pack().
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
Diffstat (limited to 'src')
| -rw-r--r-- | src/buffer.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/buffer.c b/src/buffer.c index beaa44bb..8b778479 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -723,6 +723,12 @@ int ssh_buffer_pack_va(struct ssh_buffer_struct *buffer, const char *format, va_ rc = buffer_add_ssh_string(buffer, o.string); SAFE_FREE(o.string); break; + case 't': + cstring = va_arg(ap, char *); + len = strlen(cstring); + rc = ssh_buffer_add_data(buffer, cstring, len); + cstring = NULL; + break; default: SSH_LOG(SSH_LOG_WARN, "Invalid buffer format %c", *p); rc = SSH_ERROR; @@ -753,9 +759,10 @@ int ssh_buffer_pack_va(struct ssh_buffer_struct *buffer, const char *format, va_ * 'q': uint64_t (pushed in network byte order) * 'S': ssh_string * 's': char * (C string, pushed as SSH string) + * 't': char * (C string, pushed as free text) * 'P': size_t, void * (len of data, pointer to data) * only pushes data. - * 'S': bignum (pushed as SSH string) + * 'B': bignum (pushed as SSH string) * @returns SSH_OK on success * SSH_ERROR on error * @warning when using 'P' with a constant size (e.g. 8), do not |
