flags = verbose = 0;
flags = 0; verbose = 0;
main(argc, argv)	int argc;	char *argv[];{	extern char *optarg;	extern int optind;	DB_ENV *dbenv;	u_int32_t atype;	time_t now;	long usecs;	int ch, flags, verbose;	char *home, *logfile;	atype = DB_LOCK_DEFAULT;	home = logfile = NULL;	usecs = 0;	flags = verbose = 0;	while ((ch = getopt(argc, argv, "a:h:L:t:vw")) != EOF)		switch (ch) {		case 'a':			switch (optarg[0]) {			case 'o':				atype = DB_LOCK_OLDEST;				break;			case 'y':				atype = DB_LOCK_YOUNGEST;				break;			default:				usage();				/* NOTREACHED */			}			if (optarg[1] != '\0')				usage();			break;		case 'h':			home = optarg;			break;		case 'L':			logfile = optarg;			break;		case 't':			get_long(optarg, 1, LONG_MAX, &usecs);			usecs *= 1000000;			break;		case 'v':			verbose = 1;			break;		case 'w':			LF_SET(DB_LOCK_CONFLICT);			break;		case '?':		default:			usage();		}	argc -= optind;	argv += optind;	if (argc != 0)		usage();	if (usecs == 0 && !LF_ISSET(DB_LOCK_CONFLICT)) {		warnx("at least one of -t and -w must be specified");		usage();	}	/*	 * We detect every 100ms (100000 us) when we're running in	 * DB_LOCK_CONFLICT mode.	 */	if (usecs == 0)		usecs = 100000;	/* Initialize the deadlock detector by opening the lock manager. */	dbenv = db_init(home, verbose);	if (logfile != NULL && logpid(logfile, 1)) {		(void)db_appexit(dbenv);		return (1);	}	while (!interrupted) {		if (dbenv->db_verbose != 0) {			time(&now);			__db_err(dbenv, "Running at %.24s", ctime(&now));		}		if ((errno = lock_detect(dbenv->lk_info, flags, atype)) != 0)			break;		/* Make a pass every "usecs" usecs. */		(void)__db_sleep(0, usecs);	}	if (logfile != NULL)		(void)logpid(logfile, 0);	if (interrupted) {		(void)signal(interrupted, SIG_DFL);		(void)raise(interrupted);		/* NOTREACHED */	}	return (db_appexit(dbenv));}