- /* If this returns non-NULL, it means the check failed. */
- void *(*check)(struct manifest *m);
-
- /* The non-NULL return from check is passed to one of these: */
+ /* keep is set if you should keep the results.
+ * If timeleft is set to 0, means it timed out.
+ * score is the result, and a talloc context freed after all our
+ * depends are done. */
+ void (*check)(struct manifest *m,
+ bool keep, unsigned int *timeleft, struct score *score);