aboutsummaryrefslogtreecommitdiff
path: root/include/event2/listener.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/event2/listener.h')
-rw-r--r--include/event2/listener.h41
1 files changed, 2 insertions, 39 deletions
diff --git a/include/event2/listener.h b/include/event2/listener.h
index 84b4da0..2dc64be 100644
--- a/include/event2/listener.h
+++ b/include/event2/listener.h
@@ -24,10 +24,8 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-#ifndef EVENT2_LISTENER_H_INCLUDED_
-#define EVENT2_LISTENER_H_INCLUDED_
-
-#include <event2/visibility.h>
+#ifndef _EVENT2_LISTENER_H_
+#define _EVENT2_LISTENER_H_
#ifdef __cplusplus
extern "C" {
@@ -71,32 +69,6 @@ typedef void (*evconnlistener_errorcb)(struct evconnlistener *, void *);
/** Flag: Indicates that the listener should be locked so it's safe to use
* from multiple threadcs at once. */
#define LEV_OPT_THREADSAFE (1u<<4)
-/** Flag: Indicates that the listener should be created in disabled
- * state. Use evconnlistener_enable() to enable it later. */
-#define LEV_OPT_DISABLED (1u<<5)
-/** Flag: Indicates that the listener should defer accept() until data is
- * available, if possible. Ignored on platforms that do not support this.
- *
- * This option can help performance for protocols where the client transmits
- * immediately after connecting. Do not use this option if your protocol
- * _doesn't_ start out with the client transmitting data, since in that case
- * this option will sometimes cause the kernel to never tell you about the
- * connection.
- *
- * This option is only supported by evconnlistener_new_bind(): it can't
- * work with evconnlistener_new_fd(), since the listener needs to be told
- * to use the option before it is actually bound.
- */
-#define LEV_OPT_DEFERRED_ACCEPT (1u<<6)
-/** Flag: Indicates that we ask to allow multiple servers (processes or
- * threads) to bind to the same port if they each set the option.
- *
- * SO_REUSEPORT is what most people would expect SO_REUSEADDR to be, however
- * SO_REUSEPORT does not imply SO_REUSEADDR.
- *
- * This is only available on Linux and kernel 3.9+
- */
-#define LEV_OPT_REUSEABLE_PORT (1u<<7)
/**
Allocate a new evconnlistener object to listen for incoming TCP connections
@@ -115,7 +87,6 @@ typedef void (*evconnlistener_errorcb)(struct evconnlistener *, void *);
file descriptor, and it should already be bound to an appropriate
port and address.
*/
-EVENT2_EXPORT_SYMBOL
struct evconnlistener *evconnlistener_new(struct event_base *base,
evconnlistener_cb cb, void *ptr, unsigned flags, int backlog,
evutil_socket_t fd);
@@ -134,42 +105,34 @@ struct evconnlistener *evconnlistener_new(struct event_base *base,
@param addr The address to listen for connections on.
@param socklen The length of the address.
*/
-EVENT2_EXPORT_SYMBOL
struct evconnlistener *evconnlistener_new_bind(struct event_base *base,
evconnlistener_cb cb, void *ptr, unsigned flags, int backlog,
const struct sockaddr *sa, int socklen);
/**
Disable and deallocate an evconnlistener.
*/
-EVENT2_EXPORT_SYMBOL
void evconnlistener_free(struct evconnlistener *lev);
/**
Re-enable an evconnlistener that has been disabled.
*/
-EVENT2_EXPORT_SYMBOL
int evconnlistener_enable(struct evconnlistener *lev);
/**
Stop listening for connections on an evconnlistener.
*/
-EVENT2_EXPORT_SYMBOL
int evconnlistener_disable(struct evconnlistener *lev);
/** Return an evconnlistener's associated event_base. */
-EVENT2_EXPORT_SYMBOL
struct event_base *evconnlistener_get_base(struct evconnlistener *lev);
/** Return the socket that an evconnlistner is listening on. */
-EVENT2_EXPORT_SYMBOL
evutil_socket_t evconnlistener_get_fd(struct evconnlistener *lev);
/** Change the callback on the listener to cb and its user_data to arg.
*/
-EVENT2_EXPORT_SYMBOL
void evconnlistener_set_cb(struct evconnlistener *lev,
evconnlistener_cb cb, void *arg);
/** Set an evconnlistener's error callback. */
-EVENT2_EXPORT_SYMBOL
void evconnlistener_set_error_cb(struct evconnlistener *lev,
evconnlistener_errorcb errorcb);