X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/b07d141af23f2ab160eba2b58a834baee513b3f8..8d6cb5fdac4b2bab0922fe431e12d8f7cc02d723:/src/src/exim.c diff --git a/src/src/exim.c b/src/src/exim.c index 664d5d7f1..8fff9f6a3 100644 --- a/src/src/exim.c +++ b/src/src/exim.c @@ -944,7 +944,7 @@ else int rc = verify_address(deliver_make_addr(address,TRUE), stdout, flags, -1, -1, -1, NULL, NULL, NULL); if (rc == FAIL) *exit_value = 2; - else if (rc == DEFER && *exit_value == 0) *exit_value = 1; + else if (rc == DEFER && *exit_value == 0) *exit_value = 1; } } @@ -954,7 +954,7 @@ else * Show supported features * *************************************************/ -void +static void show_string(BOOL is_stdout, gstring * g) { const uschar * s = string_from_gstring(g); @@ -2655,21 +2655,36 @@ on the second character (the one after '-'), to save some effort. */ #endif break; - /* -d: Set debug level (see also -v below) or set the drop_cr option. - The latter is now a no-op, retained for compatibility only. If -dd is used, - debugging subprocesses of the daemon is disabled. */ - case 'd': + + /* -dropcr: Set this option. Now a no-op, retained for compatibility only. */ + if (Ustrcmp(argrest, "ropcr") == 0) { /* drop_cr = TRUE; */ } - /* Use an intermediate variable so that we don't set debugging while - decoding the debugging bits. */ + /* -dp: Set up a debug pretrigger buffer with given size. */ + + else if (Ustrcmp(argrest, "p") == 0) + if (++i >= argc) + badarg = TRUE; + else + debug_pretrigger_setup(argv[i]); + + /* -dt: Set a debug trigger selector */ + + else if (Ustrncmp(argrest, "t=", 2) == 0) + dtrigger_selector = (unsigned int) Ustrtol(argrest + 2, NULL, 0); + + /* -d: Set debug level (see also -v below). + If -dd is used, debugging subprocesses of the daemon is disabled. */ else { + /* Use an intermediate variable so that we don't set debugging while + decoding the debugging bits. */ + unsigned int selector = D_default; debug_selector = 0; debug_file = NULL;