2006-02-03 22:19:41 +00:00
/*
Unix SMB / CIFS implementation .
event handling
Copyright ( C ) Andrew Tridgell 1992 - 1998
2011-07-04 18:52:47 +10:00
Copyright ( C ) Volker Lendecke 2005 - 2007
2006-02-03 22:19:41 +00:00
This program is free software ; you can redistribute it and / or modify
it under the terms of the GNU General Public License as published by
2007-07-09 19:25:36 +00:00
the Free Software Foundation ; either version 3 of the License , or
2006-02-03 22:19:41 +00:00
( at your option ) any later version .
This program is distributed in the hope that it will be useful ,
but WITHOUT ANY WARRANTY ; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
GNU General Public License for more details .
You should have received a copy of the GNU General Public License
2007-07-10 00:52:41 +00:00
along with this program . If not , see < http : //www.gnu.org/licenses/>.
2006-02-03 22:19:41 +00:00
*/
2009-01-04 19:29:12 +01:00
# define TEVENT_COMPAT_DEFINES
# include <tevent.h>
2009-01-05 09:06:05 +01:00
2009-01-04 19:29:12 +01:00
# undef event_context_init
# define event_context_init(mem_ctx) s3_tevent_context_init(mem_ctx)
2006-02-03 22:19:41 +00:00
2009-01-05 09:06:05 +01:00
/* The following definitions come from lib/events.c */
2011-03-30 10:50:10 +02:00
struct pollfd ;
2009-01-05 09:06:05 +01:00
struct timeval * get_timed_events_timeout ( struct event_context * event_ctx ,
struct timeval * to_ret ) ;
void dump_event_list ( struct event_context * event_ctx ) ;
2009-01-04 19:29:12 +01:00
struct tevent_context * s3_tevent_context_init ( TALLOC_CTX * mem_ctx ) ;
2009-01-05 09:06:05 +01:00
2011-02-03 16:34:07 +01:00
bool event_add_to_poll_args ( struct tevent_context * ev , TALLOC_CTX * mem_ctx ,
struct pollfd * * pfds , int * num_pfds ,
int * ptimeout ) ;
bool run_events_poll ( struct tevent_context * ev , int pollrtn ,
struct pollfd * pfds , int num_pfds ) ;
2011-07-04 18:52:47 +10:00
struct idle_event * event_add_idle ( struct event_context * event_ctx ,
TALLOC_CTX * mem_ctx ,
struct timeval interval ,
const char * name ,
bool ( * handler ) ( const struct timeval * now ,
void * private_data ) ,
void * private_data ) ;