* @param start The start routine to activate (can't be NULL)
* @return 0 in case of success or -1 in case of error.
*/
-int jobs_start(int allowed_count, int start_count, int waiter_count, void (*start)(int signum))
+int jobs_start(int allowed_count, int start_count, int waiter_count, void (*start)(int signum, void* arg), void *arg)
{
int rc, launched;
struct thread me;
}
/* queue the start job */
- job = job_create(NULL, 0, (job_cb_t)start, NULL);
+ job = job_create(NULL, 0, start, arg);
if (!job) {
ERROR("out of memory");
errno = ENOMEM;
extern void jobs_terminate();
-extern int jobs_start(int allowed_count, int start_count, int waiter_count, void (*start)(int signum));
+extern int jobs_start(
+ int allowed_count,
+ int start_count,
+ int waiter_count,
+ void (*start)(int signum, void* arg),
+ void *arg);
| job for starting the daemon
+--------------------------------------------------------- */
-static void start(int signum)
+static void start(int signum, void *arg)
{
struct afb_hsrv *hsrv;
afb_debug("main-start");
/* enter job processing */
- jobs_start(3, 0, 50, start);
+ jobs_start(3, 0, 50, start, NULL);
WARNING("hoops returned from jobs_enter! [report bug]");
return 1;
}