2016-10-31 21:27:17 +00:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <osmocom/core/write_queue.h>
|
|
|
|
|
|
|
|
/*!
|
|
|
|
* \brief The socket_state struct represents a unix socket
|
|
|
|
*/
|
|
|
|
struct l2tp_socket_state {
|
|
|
|
/*! write queue of our data socket */
|
|
|
|
struct osmo_wqueue wqueue;
|
|
|
|
/*! \brief listen_bfd listening socket*/
|
|
|
|
struct osmo_fd listen_bfd;
|
|
|
|
|
|
|
|
int log_class;
|
|
|
|
};
|
|
|
|
|
2016-11-02 19:29:36 +00:00
|
|
|
int l2tp_socket_init(struct l2tp_socket_state *state, const char *sock_path, int queue_len, int log_class);
|
2016-10-31 21:27:17 +00:00
|
|
|
int l2tp_socket_enqueue(struct l2tp_socket_state *state, struct msgb *msg);
|
|
|
|
|
|
|
|
void l2tp_set_read_callback(struct l2tp_socket_state *state, int (*read_cb)(struct osmo_fd *fd));
|
2016-11-02 19:51:30 +00:00
|
|
|
int l2tp_sock_cleanup(struct osmo_fd *bfd);
|