]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
Add init_samr_parameters_string().
authorGünther Deschner <gd@samba.org>
Mon, 31 Mar 2008 18:40:16 +0000 (20:40 +0200)
committerGünther Deschner <gd@samba.org>
Mon, 31 Mar 2008 18:55:40 +0000 (20:55 +0200)
Guenther

source/rpc_server/srv_samr_nt.c

index eeb3e400dd09620b960d9df3609db303539ef515..034392ed2124b18fa21bb0568ef4044f22ae2f12 100644 (file)
@@ -2154,6 +2154,41 @@ NTSTATUS _samr_OpenUser(pipes_struct *p,
        return NT_STATUS_OK;
 }
 
+/*************************************************************************
+ *************************************************************************/
+
+static NTSTATUS init_samr_parameters_string(TALLOC_CTX *mem_ctx,
+                                           DATA_BLOB *blob,
+                                           struct lsa_BinaryString **_r)
+{
+       struct lsa_BinaryString *r;
+
+       if (!blob || !_r) {
+               return NT_STATUS_INVALID_PARAMETER;
+       }
+
+       r = TALLOC_ZERO_P(mem_ctx, struct lsa_BinaryString);
+       if (!r) {
+               return NT_STATUS_NO_MEMORY;
+       }
+
+       r->array = TALLOC_ZERO_ARRAY(mem_ctx, uint16_t, blob->length/2);
+       if (!r->array) {
+               return NT_STATUS_NO_MEMORY;
+       }
+       memcpy(r->array, blob->data, blob->length);
+       r->size = blob->length;
+       r->length = blob->length;
+
+       if (!r->array) {
+               return NT_STATUS_NO_MEMORY;
+       }
+
+       *_r = r;
+
+       return NT_STATUS_OK;
+}
+
 /*************************************************************************
  get_user_info_7. Safe. Only gives out account_name.
  *************************************************************************/