summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorMatt Caswell <matt@openssl.org>2024-08-06 11:05:06 +0200
committerTomas Mraz <tomas@openssl.org>2024-08-07 19:48:26 +0200
commitc0c4e6ba0af309371cb7eb2a9f910829a8c01a70 (patch)
treecd7ad30bd89f46ea7be1fc4ea1fff9512097e1d6 /include
parentdh_kmgmt.c: Avoid expensive public key validation for known safe-prime groups (diff)
downloadopenssl-c0c4e6ba0af309371cb7eb2a9f910829a8c01a70.tar.xz
openssl-c0c4e6ba0af309371cb7eb2a9f910829a8c01a70.zip
Remove the event queue code
PR #18345 added some code for an event queue. It also added a test for it. Unfortunately this event queue code has never been used for anything. Additionally the test was never integrated into a test recipe, so it never actually gets invoked via "make test". This makes the code entirely dead, unnecessarily bloats the size of libssl and causes a decrease in our testing code coverage value. We remove the dead code. Reviewed-by: Neil Horman <nhorman@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/25100)
Diffstat (limited to 'include')
-rw-r--r--include/internal/event_queue.h163
1 files changed, 0 insertions, 163 deletions
diff --git a/include/internal/event_queue.h b/include/internal/event_queue.h
deleted file mode 100644
index 3b1ba50741..0000000000
--- a/include/internal/event_queue.h
+++ /dev/null
@@ -1,163 +0,0 @@
-/*
- * Copyright 2022-2023 The OpenSSL Project Authors. All Rights Reserved.
- *
- * Licensed under the Apache License 2.0 (the "License"). You may not use
- * this file except in compliance with the License. You can obtain a copy
- * in the file LICENSE in the source distribution or at
- * https://www.openssl.org/source/license.html
- */
-
-#ifndef OSSL_INTERNAL_EVENT_QUEUE_H
-# define OSSL_INTERNAL_EVENT_QUEUE_H
-# pragma once
-
-# include "internal/priority_queue.h"
-# include "internal/time.h"
-
-/*
- * Opaque type holding an event.
- */
-typedef struct ossl_event_st OSSL_EVENT;
-
-DEFINE_PRIORITY_QUEUE_OF(OSSL_EVENT);
-
-/*
- * Public type representing an event queue, the underlying structure being
- * opaque.
- */
-typedef struct ossl_event_queue_st OSSL_EVENT_QUEUE;
-
-/*
- * Public type representing a event queue entry.
- * It is (internally) public so that it can be embedded into other structures,
- * it should otherwise be treated as opaque.
- */
-struct ossl_event_st {
- uint32_t type; /* What type of event this is */
- uint32_t priority; /* What priority this event has */
- OSSL_TIME when; /* When the event is scheduled to happen */
- void *ctx; /* User argument passed to call backs */
- void *payload; /* Event specific data of unknown kind */
- size_t payload_size; /* Length (in bytes) of event specific data */
-
- /* These fields are for internal use only */
- PRIORITY_QUEUE_OF(OSSL_EVENT) *queue; /* Queue containing this event */
- size_t ref; /* ID for this event */
- unsigned int flag_dynamic : 1; /* Malloced or not? */
-};
-
-/*
- * Utility function to populate an event structure and add it to the queue
- */
-int ossl_event_queue_add(OSSL_EVENT_QUEUE *queue, OSSL_EVENT *event,
- uint32_t type, uint32_t priority,
- OSSL_TIME when, void *ctx,
- void *payload, size_t payload_size);
-
-/*
- * Utility functions to extract event fields
- */
-static ossl_unused ossl_inline
-uint32_t ossl_event_get_type(const OSSL_EVENT *event)
-{
- return event->type;
-}
-
-static ossl_unused ossl_inline
-uint32_t ossl_event_get_priority(const OSSL_EVENT *event)
-{
- return event->priority;
-}
-
-static ossl_unused ossl_inline
-OSSL_TIME ossl_event_get_when(const OSSL_EVENT *event)
-{
- return event->when;
-}
-
-static ossl_unused ossl_inline
-void *ossl_event_get0_ctx(const OSSL_EVENT *event)
-{
- return event->ctx;
-}
-
-static ossl_unused ossl_inline
-void *ossl_event_get0_payload(const OSSL_EVENT *event, size_t *length)
-{
- if (length != NULL)
- *length = event->payload_size;
- return event->payload;
-}
-
-/*
- * Create and free a queue.
- */
-OSSL_EVENT_QUEUE *ossl_event_queue_new(void);
-void ossl_event_queue_free(OSSL_EVENT_QUEUE *queue);
-
-/*
- * Schedule a new event into an event queue.
- *
- * The event parameters are taken from the function arguments.
- *
- * The function returns NULL on failure and the added event on success.
- */
-OSSL_EVENT *ossl_event_queue_add_new(OSSL_EVENT_QUEUE *queue,
- uint32_t type, uint32_t priority,
- OSSL_TIME when, void *ctx,
- void *payload, size_t payload_size)
-;
-
-/*
- * Schedule an event into an event queue.
- *
- * The event parameters are taken from the function arguments.
- *
- * The function returns 0 on failure and 1 on success.
- */
-int ossl_event_queue_add(OSSL_EVENT_QUEUE *queue, OSSL_EVENT *event,
- uint32_t type, uint32_t priority,
- OSSL_TIME when, void *ctx,
- void *payload, size_t payload_size);
-
-/*
- * Delete an event from the queue.
- * This will cause the early deletion function to be called if it is non-NULL.
- * A pointer to the event structure is returned.
- */
-int ossl_event_queue_remove(OSSL_EVENT_QUEUE *queue, OSSL_EVENT *event);
-
-/*
- * Free a dynamic event.
- * Is a NOP for a static event.
- */
-void ossl_event_free(OSSL_EVENT *event);
-
-/*
- * Return the time until the next event for the specified event, if the event's
- * time is past, zero is returned. Once activated, the event reference becomes
- * invalid and this function becomes undefined.
- */
-OSSL_TIME ossl_event_time_until(const OSSL_EVENT *event);
-
-/*
- * Return the time until the next event in the queue.
- * If the next event is in the past, zero is returned.
- */
-OSSL_TIME ossl_event_queue_time_until_next(const OSSL_EVENT_QUEUE *queue);
-
-/*
- * Postpone an event to trigger at the specified time.
- * If the event has triggered, this function's behaviour is undefined.
- */
-int ossl_event_queue_postpone_until(OSSL_EVENT_QUEUE *queue,
- OSSL_EVENT *event,
- OSSL_TIME when);
-
-/*
- * Return the next event to process.
- */
-int ossl_event_queue_get1_next_event(OSSL_EVENT_QUEUE *queue,
- OSSL_EVENT **event);
-
-#endif