// make one pass through msgs_from_host with handled == 0 // return true if there were any // bool do_message_scan() { DB_MSG_FROM_HOST mfh; char buf[256]; bool found=false; int retval; sprintf(buf, "where handled=0"); while (1) { retval = mfh.enumerate(buf); if (retval) { if (retval != ERR_DB_NOT_FOUND) { log_messages.printf(MSG_DEBUG, "DB connection lost, exiting\n" ); exit(0); } break; } retval = handle_message(mfh); if (!retval) { mfh.handled = true; mfh.update(); } found = true; } return found; }
// make one pass through trickle_ups with handled == 0 // return true if there were any // bool do_trickle_scan() { DB_MSG_FROM_HOST mfh; char buf[256]; bool found=false; int retval; sprintf(buf, "where variety='%s' and handled=0", variety); while (1) { retval = mfh.enumerate(buf); if (retval) { if (retval != ERR_DB_NOT_FOUND) { fprintf(stderr, "lost DB conn\n"); exit(1); } break; } retval = handle_trickle(mfh); if (!retval) { log_messages.printf(MSG_CRITICAL, "handle_trickle(): %s", boincerror(retval) ); } mfh.handled = true; mfh.update(); found = true; } return found; }