r4201: Remove duplicate const.
[ira/wip.git] / source / rpc_server / handles.c
index 4cddfc896dc9177a7ce66fcbd408fa02ceb8b051..41169aa25dd36e57d4ada187b194c993bbbe6d02 100644 (file)
@@ -21,6 +21,8 @@
 */
 
 #include "includes.h"
+#include "dlinklist.h"
+#include "rpc_server/dcerpc_server.h"
 
 /*
   allocate a new rpc handle
 struct dcesrv_handle *dcesrv_handle_new(struct dcesrv_connection *dce_conn, 
                                        uint8_t handle_type)
 {
-       TALLOC_CTX *mem_ctx;
        struct dcesrv_handle *h;
 
-       mem_ctx = talloc_init("rpc handle type %d\n", handle_type);
-       if (!mem_ctx) {
-               return NULL;
-       }
-       h = talloc(mem_ctx, sizeof(*h));
+       h = talloc_p(dce_conn, struct dcesrv_handle);
        if (!h) {
-               talloc_destroy(mem_ctx);
                return NULL;
        }
-       h->mem_ctx = mem_ctx;
        h->data = NULL;
        h->destroy = NULL;
 
        h->wire_handle.handle_type = handle_type;
-       uuid_generate_random(&h->wire_handle.uuid);
+       h->wire_handle.uuid = GUID_random();
        
        DLIST_ADD(dce_conn->handles, h);
 
@@ -62,7 +57,7 @@ void dcesrv_handle_destroy(struct dcesrv_connection *dce_conn,
                h->destroy(dce_conn, h);
        }
        DLIST_REMOVE(dce_conn->handles, h);
-       talloc_destroy(h->mem_ctx);
+       talloc_free(h);
 }
 
 
@@ -82,7 +77,7 @@ struct dcesrv_handle *dcesrv_handle_fetch(struct dcesrv_connection *dce_conn,
 
        for (h=dce_conn->handles; h; h=h->next) {
                if (h->wire_handle.handle_type == p->handle_type &&
-                   uuid_equal(&p->uuid, &h->wire_handle.uuid)) {
+                   GUID_equal(&p->uuid, &h->wire_handle.uuid)) {
                        if (handle_type != DCESRV_HANDLE_ANY &&
                            p->handle_type != handle_type) {
                                DEBUG(0,("client gave us the wrong handle type (%d should be %d)\n",