s3:registry: move reg_objects.h to registry/ and use it only where needed
[kai/samba.git] / source3 / rpc_server / srv_ntsvcs_nt.c
index ec0c884acf3ac5f62791740dd931a7f35783c07b..f864dc175dd4c72baa85ab5fee6d23869d96a5be 100644 (file)
@@ -21,6 +21,8 @@
 
 #include "includes.h"
 #include "../librpc/gen_ndr/srv_ntsvcs.h"
+#include "registry.h"
+#include "registry/reg_objects.h"
 
 #undef DBGC_CLASS
 #define DBGC_CLASS DBGC_RPC_SRV
@@ -148,22 +150,22 @@ WERROR _PNP_GetDeviceRegProp(pipes_struct *p,
                        return WERR_GENERAL_FAILURE;
                }
 
-               if (*r->in.buffer_size < val->size) {
-                       *r->out.needed = val->size;
+               if (*r->in.buffer_size < regval_size(val)) {
+                       *r->out.needed = regval_size(val);
                        *r->out.buffer_size = 0;
                        TALLOC_FREE( values );
                        return WERR_CM_BUFFER_SMALL;
                }
 
-               r->out.buffer = (uint8_t *)talloc_memdup(p->mem_ctx, val->data_p, val->size);
+               r->out.buffer = (uint8_t *)talloc_memdup(p->mem_ctx, regval_data_p(val), regval_size(val));
                TALLOC_FREE(values);
                if (!r->out.buffer) {
                        return WERR_NOMEM;
                }
 
                *r->out.reg_data_type = REG_SZ; /* always 1...tested using a remove device manager connection */
-               *r->out.buffer_size = val->size;
-               *r->out.needed = val->size;
+               *r->out.buffer_size = regval_size(val);
+               *r->out.needed = regval_size(val);
 
                break;