summaryrefslogtreecommitdiff
path: root/source3/libsmb/clifile.c
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2010-08-10 07:44:15 +0200
committerVolker Lendecke <vl@samba.org>2010-08-18 15:14:02 +0200
commitd7c8fb21bb0a29bb7227d4b242aba2f1524f6c48 (patch)
treec305bcfb7a4de6bc565d6629ce8c33fe37b9bb1a /source3/libsmb/clifile.c
parent77761d9adcf34a9d1cd4567422c98efac101b3f6 (diff)
downloadsamba-d7c8fb21bb0a29bb7227d4b242aba2f1524f6c48.tar.gz
samba-d7c8fb21bb0a29bb7227d4b242aba2f1524f6c48.tar.bz2
samba-d7c8fb21bb0a29bb7227d4b242aba2f1524f6c48.zip
s3: async cli_list
Diffstat (limited to 'source3/libsmb/clifile.c')
-rw-r--r--source3/libsmb/clifile.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/source3/libsmb/clifile.c b/source3/libsmb/clifile.c
index 8965f6c71f..d6b2e31de7 100644
--- a/source3/libsmb/clifile.c
+++ b/source3/libsmb/clifile.c
@@ -91,6 +91,26 @@ uint8_t *smb_bytes_push_str(uint8_t *buf, bool ucs2,
true, pconverted_size);
}
+uint8_t *smb_bytes_push_bytes(uint8_t *buf, uint8_t prefix,
+ const uint8_t *bytes, size_t num_bytes)
+{
+ size_t buflen;
+
+ if (buf == NULL) {
+ return NULL;
+ }
+ buflen = talloc_get_size(buf);
+
+ buf = TALLOC_REALLOC_ARRAY(NULL, buf, uint8_t,
+ buflen + 1 + num_bytes);
+ if (buf == NULL) {
+ return NULL;
+ }
+ buf[buflen] = prefix;
+ memcpy(&buf[buflen+1], bytes, num_bytes);
+ return buf;
+}
+
/***********************************************************
Same as smb_bytes_push_str(), but without the odd byte
align for ucs2 (we're pushing into a param or data block).