]> git.ipfire.org Git - thirdparty/dhcp.git/commitdiff
Adjust arguments to omapi_object_type_register
authorTed Lemon <source@isc.org>
Thu, 6 Jul 2000 22:37:53 +0000 (22:37 +0000)
committerTed Lemon <source@isc.org>
Thu, 6 Jul 2000 22:37:53 +0000 (22:37 +0000)
common/comapi.c
common/discover.c
common/icmp.c
dhcpctl/dhcpctl.c
includes/omapip/omapip.h
omapip/support.c
server/omapi.c

index c4679b9750ff8412a882a33d1449eb270d495105..1bae3c3e56fff4e332f6477fce109527e668c30d 100644 (file)
@@ -50,7 +50,7 @@
 
 #ifndef lint
 static char copyright[] =
-"$Id: comapi.c,v 1.2 2000/05/17 16:03:59 mellon Exp $ Copyright (c) 1999-2000 The Internet Software Consortium.  All rights reserved.\n";
+"$Id: comapi.c,v 1.3 2000/07/06 22:37:38 mellon Exp $ Copyright (c) 1999-2000 The Internet Software Consortium.  All rights reserved.\n";
 #endif /* not lint */
 
 #include "dhcpd.h"
@@ -76,7 +76,7 @@ void dhcp_common_objects_setup ()
                                             dhcp_group_stuff_values,
                                             dhcp_group_lookup, 
                                             dhcp_group_create,
-                                            dhcp_group_remove, 0, 0,
+                                            dhcp_group_remove, 0, 0, 0,
                                             sizeof (struct group));
        if (status != ISC_R_SUCCESS)
                log_fatal ("Can't register group object type: %s",
@@ -91,7 +91,7 @@ void dhcp_common_objects_setup ()
                                             dhcp_subnet_stuff_values,
                                             dhcp_subnet_lookup, 
                                             dhcp_subnet_create,
-                                            dhcp_subnet_remove, 0, 0,
+                                            dhcp_subnet_remove, 0, 0, 0,
                                             sizeof (struct subnet));
        if (status != ISC_R_SUCCESS)
                log_fatal ("Can't register subnet object type: %s",
@@ -107,7 +107,7 @@ void dhcp_common_objects_setup ()
                 dhcp_shared_network_stuff_values,
                 dhcp_shared_network_lookup, 
                 dhcp_shared_network_create,
-                dhcp_shared_network_remove, 0, 0,
+                dhcp_shared_network_remove, 0, 0, 0,
                 sizeof (struct shared_network));
        if (status != ISC_R_SUCCESS)
                log_fatal ("Can't register shared network object type: %s",
@@ -123,7 +123,7 @@ void dhcp_common_objects_setup ()
                                             dhcp_interface_lookup, 
                                             dhcp_interface_create,
                                             dhcp_interface_remove,
-                                            0, 0,
+                                            0, 0, 0,
                                             sizeof (struct interface_info));
        if (status != ISC_R_SUCCESS)
                log_fatal ("Can't register interface object type: %s",
index 7b8bbc1d6beaef08b1a78c7e104bee67a89dcd51..c0c9c5cea9ae18881521f8f911919ad7d80a8fab 100644 (file)
@@ -43,7 +43,7 @@
 
 #ifndef lint
 static char copyright[] =
-"$Id: discover.c,v 1.29 2000/06/08 21:14:12 mellon Exp $ Copyright (c) 1995-2000 The Internet Software Consortium.  All rights reserved.\n";
+"$Id: discover.c,v 1.30 2000/07/06 22:37:39 mellon Exp $ Copyright (c) 1995-2000 The Internet Software Consortium.  All rights reserved.\n";
 #endif /* not lint */
 
 #include "dhcpd.h"
@@ -101,7 +101,7 @@ void discover_interfaces (state)
                        (&dhcp_type_interface, "interface",
                         interface_set_value, interface_get_value,
                         interface_destroy, interface_signal_handler,
-                        interface_stuff_values, 0, 0, 0, 0, 0,
+                        interface_stuff_values, 0, 0, 0, 0, 0, 0,
                         sizeof (struct interface_info));
                if (status != ISC_R_SUCCESS)
                        log_fatal ("Can't create interface object type: %s",
index de4a177d9bb2d222bae5be7d6387e5e60dc6482b..4c71718a2430996ec39d6566a70e75c63f14adf9 100644 (file)
@@ -44,7 +44,7 @@
 
 #ifndef lint
 static char copyright[] =
-"$Id: icmp.c,v 1.23 2000/05/16 23:02:21 mellon Exp $ Copyright (c) 1996-2000 The Internet Software Consortium.  All rights reserved.\n";
+"$Id: icmp.c,v 1.24 2000/07/06 22:37:40 mellon Exp $ Copyright (c) 1996-2000 The Internet Software Consortium.  All rights reserved.\n";
 #endif /* not lint */
 
 #include "dhcpd.h"
@@ -80,7 +80,7 @@ void icmp_startup (routep, handler)
                log_fatal ("attempted to reinitialize icmp protocol");
 
        result = omapi_object_type_register (&dhcp_type_icmp,
-                                            "icmp", 0, 0, 0, 0, 0, 0, 0, 0,
+                                            "icmp", 0, 0, 0, 0, 0, 0, 0, 0, 0,
                                             0, 0, sizeof (struct icmp_state));
 
        if (result != ISC_R_SUCCESS)
index e80402c92c5105768c79b72d0d2004aa2185c6f1..2a8e7bfb35d066b87ab4755d84161df2c6abdae0 100644 (file)
@@ -61,7 +61,7 @@ dhcpctl_status dhcpctl_initialize ()
                                    dhcpctl_callback_destroy,
                                    dhcpctl_callback_signal_handler,
                                    dhcpctl_callback_stuff_values,
-                                   0, 0, 0, 0, 0,
+                                   0, 0, 0, 0, 0, 0,
                                    sizeof (dhcpctl_callback_object_t));
        omapi_object_type_register (&dhcpctl_remote_type,
                                    "dhcpctl-remote",
@@ -70,7 +70,7 @@ dhcpctl_status dhcpctl_initialize ()
                                    dhcpctl_remote_destroy,
                                    dhcpctl_remote_signal_handler,
                                    dhcpctl_remote_stuff_values,
-                                   0, 0, 0, 0, 0,
+                                   0, 0, 0, 0, 0, 0,
                                    sizeof (dhcpctl_remote_object_t));
        return ISC_R_SUCCESS;
 }
index 289bb2734d3c0a25e5d0d05e4aeb2dc0ef7c1dac..c9c6b974cc68053c190d82acf7f104852da689bd 100644 (file)
@@ -122,6 +122,7 @@ typedef struct __omapi_object_type_t {
        isc_result_t (*create) (omapi_object_t **, omapi_object_t *);
        isc_result_t (*remove) (omapi_object_t *, omapi_object_t *);
        isc_result_t (*freer) (omapi_object_t *, const char *, int);
+       isc_result_t (*allocator) (omapi_object_t **, const char *, int);
        isc_result_t (*sizer) (size_t);
        size_t size;
 } omapi_object_type_t;
@@ -365,6 +366,8 @@ isc_result_t omapi_object_type_register (omapi_object_type_t **,
                                                           omapi_object_t *),
                                         isc_result_t (*) (omapi_object_t *,
                                                           const char *, int),
+                                        isc_result_t (*) (omapi_object_t **,
+                                                          const char *, int),
                                         isc_result_t (*) (size_t), size_t);
 isc_result_t omapi_signal (omapi_object_t *, const char *, ...);
 isc_result_t omapi_signal_in (omapi_object_t *, const char *, ...);
index a1ceb2c2a9dc9c380de145886b94f4fa0041e471..021fd405f16be047d5813c924dbe4497505e65a2 100644 (file)
@@ -70,7 +70,7 @@ isc_result_t omapi_init (void)
                                             omapi_connection_destroy,
                                             omapi_connection_signal_handler,
                                             omapi_connection_stuff_values,
-                                            0, 0, 0, 0, 0,
+                                            0, 0, 0, 0, 0, 0,
                                             sizeof
                                             (omapi_connection_object_t));
        if (status != ISC_R_SUCCESS)
@@ -83,7 +83,7 @@ isc_result_t omapi_init (void)
                                             omapi_listener_destroy,
                                             omapi_listener_signal_handler,
                                             omapi_listener_stuff_values,
-                                            0, 0, 0, 0, 0,
+                                            0, 0, 0, 0, 0, 0,
                                             sizeof (omapi_listener_object_t));
        if (status != ISC_R_SUCCESS)
                return status;
@@ -95,7 +95,7 @@ isc_result_t omapi_init (void)
                                             omapi_io_destroy,
                                             omapi_io_signal_handler,
                                             omapi_io_stuff_values,
-                                            0, 0, 0, 0, 0,
+                                            0, 0, 0, 0, 0, 0,
                                             sizeof (omapi_io_object_t));
        if (status != ISC_R_SUCCESS)
                return status;
@@ -107,7 +107,7 @@ isc_result_t omapi_init (void)
                                             omapi_generic_destroy,
                                             omapi_generic_signal_handler,
                                             omapi_generic_stuff_values,
-                                            0, 0, 0, 0, 0,
+                                            0, 0, 0, 0, 0, 0,
                                             sizeof (omapi_generic_object_t));
        if (status != ISC_R_SUCCESS)
                return status;
@@ -119,7 +119,7 @@ isc_result_t omapi_init (void)
                                             omapi_protocol_destroy,
                                             omapi_protocol_signal_handler,
                                             omapi_protocol_stuff_values,
-                                            0, 0, 0, 0, 0,
+                                            0, 0, 0, 0, 0, 0,
                                             sizeof (omapi_protocol_object_t));
        if (status != ISC_R_SUCCESS)
                return status;
@@ -131,7 +131,8 @@ isc_result_t omapi_init (void)
                   omapi_protocol_listener_destroy,
                   omapi_protocol_listener_signal,
                   omapi_protocol_listener_stuff,
-                  0, 0, 0, 0, 0, sizeof (omapi_protocol_listener_object_t)));
+                  0, 0, 0, 0, 0, 0,
+                  sizeof (omapi_protocol_listener_object_t)));
        if (status != ISC_R_SUCCESS)
                return status;
 
@@ -142,7 +143,7 @@ isc_result_t omapi_init (void)
                                             omapi_message_destroy,
                                             omapi_message_signal_handler,
                                             omapi_message_stuff_values,
-                                            0, 0, 0, 0, 0,
+                                            0, 0, 0, 0, 0, 0,
                                             sizeof (omapi_message_object_t));
        if (status != ISC_R_SUCCESS)
                return status;
@@ -153,7 +154,7 @@ isc_result_t omapi_init (void)
                                             0,
                                             0,
                                             omapi_waiter_signal_handler, 0,
-                                            0, 0, 0, 0, 0,
+                                            0, 0, 0, 0, 0, 0,
                                             sizeof (omapi_waiter_object_t));
        if (status != ISC_R_SUCCESS)
                return status;
@@ -197,6 +198,9 @@ isc_result_t omapi_object_type_register (omapi_object_type_t **type,
                                         isc_result_t (*freer)
                                                (omapi_object_t *,
                                                 const char *, int),
+                                        isc_result_t (*allocator)
+                                               (omapi_object_t **,
+                                                const char *, int),
                                         isc_result_t (*sizer) (size_t),
                                         size_t size)
 {
@@ -220,6 +224,7 @@ isc_result_t omapi_object_type_register (omapi_object_type_t **type,
        t -> sizer = sizer;
        t -> size = size;
        t -> freer = freer;
+       t -> allocator = allocator;
        omapi_object_types = t;
        if (type)
                *type = t;
index 82c42b84e1332be966cd71cc19bb3060be1b6f0a..9711bdc73ac28cbb3150935e46a0502477b21729 100644 (file)
@@ -50,7 +50,7 @@
 
 #ifndef lint
 static char copyright[] =
-"$Id: omapi.c,v 1.32 2000/06/24 06:31:51 mellon Exp $ Copyright (c) 1999-2000 The Internet Software Consortium.  All rights reserved.\n";
+"$Id: omapi.c,v 1.33 2000/07/06 22:37:53 mellon Exp $ Copyright (c) 1999-2000 The Internet Software Consortium.  All rights reserved.\n";
 #endif /* not lint */
 
 #include "dhcpd.h"
@@ -82,8 +82,9 @@ void dhcp_db_objects_setup ()
                                             dhcp_lease_remove,
 #if defined (COMPACT_LEASES)
                                             dhcp_lease_free,
+                                            dhcp_lease_get,
 #else
-                                            0,
+                                            0, 0,
 #endif
                                             0,
                                             sizeof (struct lease));
@@ -100,7 +101,7 @@ void dhcp_db_objects_setup ()
                                             dhcp_class_stuff_values,
                                             dhcp_class_lookup, 
                                             dhcp_class_create,
-                                            dhcp_class_remove, 0, 0,
+                                            dhcp_class_remove, 0, 0, 0,
                                             sizeof (struct class));
        if (status != ISC_R_SUCCESS)
                log_fatal ("Can't register class object type: %s",
@@ -115,7 +116,7 @@ void dhcp_db_objects_setup ()
                                             dhcp_pool_stuff_values,
                                             dhcp_pool_lookup, 
                                             dhcp_pool_create,
-                                            dhcp_pool_remove, 0, 0,
+                                            dhcp_pool_remove, 0, 0, 0,
                                             sizeof (struct pool));
 
        if (status != ISC_R_SUCCESS)
@@ -131,7 +132,7 @@ void dhcp_db_objects_setup ()
                                             dhcp_host_stuff_values,
                                             dhcp_host_lookup, 
                                             dhcp_host_create,
-                                            dhcp_host_remove, 0, 0,
+                                            dhcp_host_remove, 0, 0, 0,
                                             sizeof (struct host_decl));
 
        if (status != ISC_R_SUCCESS)
@@ -149,7 +150,7 @@ void dhcp_db_objects_setup ()
                                             dhcp_failover_state_lookup, 
                                             dhcp_failover_state_create,
                                             dhcp_failover_state_remove,
-                                            0, 0,
+                                            0, 0, 0,
                                             sizeof (dhcp_failover_state_t));
 
        if (status != ISC_R_SUCCESS)
@@ -163,7 +164,7 @@ void dhcp_db_objects_setup ()
                                             dhcp_failover_link_destroy,
                                             dhcp_failover_link_signal,
                                             dhcp_failover_link_stuff_values,
-                                            0, 0, 0, 0, 0,
+                                            0, 0, 0, 0, 0, 0,
                                             sizeof (dhcp_failover_link_t));
 
        if (status != ISC_R_SUCCESS)
@@ -177,7 +178,7 @@ void dhcp_db_objects_setup ()
                                             dhcp_failover_listener_destroy,
                                             dhcp_failover_listener_signal,
                                             dhcp_failover_listener_stuff,
-                                            0, 0, 0, 0, 0,
+                                            0, 0, 0, 0, 0, 0,
                                             sizeof
                                             (dhcp_failover_listener_t));
 
@@ -345,8 +346,6 @@ isc_result_t dhcp_lease_destroy (omapi_object_t *h, const char *file, int line)
                executable_statement_dereference (&lease -> on_release,
                                                  file, line);
        if (lease -> state) {
-               data_string_forget (&lease -> state -> parameter_request_list,
-                                   file, line);
                free_lease_state (lease -> state, file, line);
                lease -> state = (struct lease_state *)0;