2 * Copyright (C) 2014 - Jérémie Galarneau <jeremie.galarneau@efficios.com>
4 * This program is free software; you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License, version 2 only, as
6 * published by the Free Software Foundation.
8 * This program is distributed in the hope that it will be useful, but WITHOUT
9 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
10 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
13 * You should have received a copy of the GNU General Public License along with
14 * this program; if not, write to the Free Software Foundation, Inc., 51
15 * Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18 #ifndef LOAD_SESSION_THREAD_H
19 #define LOAD_SESSION_THREAD_H
21 #include <semaphore.h>
23 /* Data passed to the thread. */
24 struct load_session_thread_data
{
25 /* Flag if the sem_init() has been done successfully on the sem. */
26 unsigned int sem_initialized
:1;
29 * The load session thread waits on that semaphore which the client thread
30 * will do a sem_post() to unblock it.
32 sem_t message_thread_ready
;
34 /* Path where the sessions are located. */
38 void *thread_load_session(void *data
);
40 int load_session_init_data(struct load_session_thread_data
**data
);
41 void load_session_destroy_data(struct load_session_thread_data
*data
);
43 #endif /* LOAD_SESSION_THREAD_H */