eloop: Add eloop_sock_requeue()
This function can be used to re-build eloop socket tables after forking for eloop implementations that need this. Signed-off-by: Roy Marples <roy@marples.name>
This commit is contained in:
parent
70f4f052f1
commit
2e69bdd16a
8 changed files with 35 additions and 7 deletions
|
@ -525,6 +525,12 @@ static void eloop_sock_table_dispatch(struct epoll_event *events, int nfds)
|
|||
#endif /* CONFIG_ELOOP_EPOLL */
|
||||
|
||||
|
||||
int eloop_sock_requeue(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
static void eloop_sock_table_destroy(struct eloop_sock_table *table)
|
||||
{
|
||||
if (table) {
|
||||
|
|
|
@ -312,6 +312,14 @@ int eloop_register_signal_terminate(eloop_signal_handler handler,
|
|||
int eloop_register_signal_reconfig(eloop_signal_handler handler,
|
||||
void *user_data);
|
||||
|
||||
/**
|
||||
* eloop_sock_requeue - Requeue sockets
|
||||
*
|
||||
* Requeue sockets after forking because some implementations require this,
|
||||
* such as epoll and kqueue.
|
||||
*/
|
||||
int eloop_sock_requeue(void);
|
||||
|
||||
/**
|
||||
* eloop_run - Start the event loop
|
||||
*
|
||||
|
|
|
@ -692,3 +692,9 @@ void eloop_wait_for_read_sock(int sock)
|
|||
WSAEventSelect(sock, event, 0);
|
||||
WSACloseEvent(event);
|
||||
}
|
||||
|
||||
|
||||
int eloop_sock_requeue(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue