Changeset 23389
- Timestamp:
- 09/14/07 13:59:58 (15 months ago)
- Files:
-
- 1 modified
-
trunk/launchd/src/launchd_core_logic.c (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/launchd/src/launchd_core_logic.c
r23388 r23389 352 352 uint64_t start_time; 353 353 uint32_t min_run_time; 354 u nsigned int start_interval;354 uint32_t start_interval; 355 355 unsigned int checkedin:1, anonymous:1, debug:1, inetcompat:1, inetcompat_wait:1, 356 356 ondemand:1, session_create:1, low_pri_io:1, no_init_groups:1, priv_port_has_senders:1, … … 1419 1419 if (strcasecmp(key, LAUNCH_JOBKEY_EXITTIMEOUT) == 0) { 1420 1420 if (value < 0) { 1421 job_log(j, LOG_WARNING, "Exit timeout less zero. Ignoring."); 1421 job_log(j, LOG_WARNING, "%s less than zero. Ignoring.", LAUNCH_JOBKEY_EXITTIMEOUT); 1422 } else if (value > UINT32_MAX) { 1423 job_log(j, LOG_WARNING, "%s is too large. Ignoring.", LAUNCH_JOBKEY_EXITTIMEOUT); 1422 1424 } else { 1423 1425 j->exit_timeout = value; … … 1435 1437 case 'T': 1436 1438 if (strcasecmp(key, LAUNCH_JOBKEY_TIMEOUT) == 0) { 1437 if (value <= 0) { 1438 job_log(j, LOG_WARNING, "Timeout less than or equal to zero. Ignoring."); 1439 if (value < 0) { 1440 job_log(j, LOG_WARNING, "%s less than zero. Ignoring.", LAUNCH_JOBKEY_TIMEOUT); 1441 } else if (value > UINT32_MAX) { 1442 job_log(j, LOG_WARNING, "%s is too large. Ignoring.", LAUNCH_JOBKEY_TIMEOUT); 1439 1443 } else { 1440 1444 j->timeout = value; … … 1443 1447 if (value < 0) { 1444 1448 job_log(j, LOG_WARNING, "%s less than zero. Ignoring.", LAUNCH_JOBKEY_THROTTLEINTERVAL); 1449 } else if (value > UINT32_MAX) { 1450 job_log(j, LOG_WARNING, "%s is too large. Ignoring.", LAUNCH_JOBKEY_THROTTLEINTERVAL); 1445 1451 } else { 1446 1452 j->min_run_time = value; … … 1459 1465 if (strcasecmp(key, LAUNCH_JOBKEY_STARTINTERVAL) == 0) { 1460 1466 if (value <= 0) { 1461 job_log(j, LOG_WARNING, "StartInterval is not greater than zero, ignoring"); 1467 job_log(j, LOG_WARNING, "%s is not greater than zero. Ignoring.", LAUNCH_JOBKEY_STARTINTERVAL); 1468 } else if (value > UINT32_MAX) { 1469 job_log(j, LOG_WARNING, "%s is too large. Ignoring.", LAUNCH_JOBKEY_STARTINTERVAL); 1462 1470 } else { 1463 1471 runtime_add_ref(); 1464 1472 j->start_interval = value; 1465 } 1466 if (-1 == kevent_mod((uintptr_t)&j->start_interval, EVFILT_TIMER, EV_ADD, NOTE_SECONDS, value, j)) { 1467 job_log_error(j, LOG_ERR, "adding kevent timer"); 1473 1474 job_assumes(j, kevent_mod((uintptr_t)&j->start_interval, EVFILT_TIMER, EV_ADD, NOTE_SECONDS, value, j) != -1); 1468 1475 } 1469 1476 } else if (strcasecmp(key, LAUNCH_JOBKEY_SANDBOXFLAGS) == 0) { … … 5193 5200 break; 5194 5201 case VPROC_GSK_START_INTERVAL: 5195 if ((unsigned int)inval > 0) { 5202 if ((uint64_t)inval > UINT32_MAX) { 5203 kr = 1; 5204 } else if (inval) { 5196 5205 if (j->start_interval == 0) { 5197 5206 runtime_add_ref();

