interface-interval 60;\n\
listen-on {any;};\n\
listen-on-v6 {any;};\n\
-# lock-file \"" NAMED_LOCALSTATEDIR "/run/named/named.lock\";\n\
match-mapped-addresses no;\n\
max-ixfr-ratio 100%;\n\
max-rsa-exponent-size 0; /* no limit */\n\
EXTERN const char *named_g_defaultsessionkeyfile INIT(NAMED_LOCALSTATEDIR
"/run/named/"
"session.key");
-EXTERN const char *named_g_defaultlockfile INIT(NAMED_LOCALSTATEDIR "/run/"
- "named/"
- "named."
- "lock");
-EXTERN bool named_g_forcelock INIT(false);
#if NAMED_RUN_PID_DIR
EXTERN const char *named_g_defaultpidfile INIT(NAMED_LOCALSTATEDIR "/run/named/"
void
named_os_writepidfile(const char *filename, bool first_time);
-bool
-named_os_issingleton(const char *filename);
-
void
named_os_shutdown(void);
dns_dtenv_t *dtenv; /*%< Dnstap environment */
- char *lockfile;
-
isc_tlsctx_cache_t *tlsctx_server_cache;
isc_tlsctx_cache_t *tlsctx_client_cache;
"[-p port] [-s]\n"
" [-S sockets] [-t chrootdir] [-u "
"username] [-U listeners]\n"
- " [-X lockfile] [-m "
+ " [-m "
"{usage|trace|record|size|mctx}]\n"
" [-M fill|nofill]\n"
"usage: named [-v|-V|-C]\n");
printf(" rndc configuration: %s\n", rndcconf);
printf(" nsupdate session key: %s\n", named_g_defaultsessionkeyfile);
printf(" named PID file: %s\n", named_g_defaultpidfile);
- printf(" named lock file: %s\n", named_g_defaultlockfile);
#if defined(HAVE_GEOIP2)
#define RTC(x) RUNTIME_CHECK((x) == ISC_R_SUCCESS)
RTC(cfg_parser_create(mctx, named_g_lctx, &parser));
/* Obsolete. No longer in use. Ignore. */
break;
case 'X':
- named_g_forcelock = true;
- if (strcasecmp(isc_commandline_argument, "none") != 0) {
- named_g_defaultlockfile =
- isc_commandline_argument;
- } else {
- named_g_defaultlockfile = NULL;
- }
+ /* Obsolete. No longer in use. Abort. */
+ named_main_earlyfatal("option '-X' has been removed");
break;
case 'F':
#if OPENSSL_VERSION_NUMBER >= 0x30000000L && OPENSSL_API_LEVEL >= 30000
Synopsis
~~~~~~~~
-:program:`named` [ [**-4**] | [**-6**] ] [**-c** config-file] [**-C**] [**-d** debug-level] [**-D** string] [**-E** engine-name] [**-f**] [**-g**] [**-L** logfile] [**-M** option] [**-m** flag] [**-n** #cpus] [**-p** port] [**-s**] [**-t** directory] [**-U** #listeners] [**-u** user] [**-v**] [**-V**] [**-X** lock-file]
+:program:`named` [ [**-4**] | [**-6**] ] [**-c** config-file] [**-C**] [**-d** debug-level] [**-D** string] [**-E** engine-name] [**-f**] [**-g**] [**-L** logfile] [**-M** option] [**-m** flag] [**-n** #cpus] [**-p** port] [**-s**] [**-t** directory] [**-U** #listeners] [**-u** user] [**-v**] [**-V**] ]
Description
~~~~~~~~~~~
.. option:: -X lock-file
- This option acquires a lock on the specified file at runtime; this helps to
- prevent duplicate :program:`named` instances from running simultaneously.
- Use of this option overrides the ``lock-file`` option in
- :iscman:`named.conf`. If set to ``none``, the lock file check is disabled.
-
- This option has been deprecated and will be removed in the next release.
+ This option has been removed and using it will cause a fatal error.
Signals
~~~~~~~
#endif /* ifdef HAVE_LIBSCF */
static char *pidfile = NULL;
-static char *lockfile = NULL;
static int devnullfd = -1;
-static int singletonfd = -1;
#ifndef ISC_FACILITY
#define ISC_FACILITY LOG_DAEMON
pidfile = NULL;
}
-static void
-cleanup_lockfile(bool unlink_lockfile) {
- if (singletonfd != -1) {
- close(singletonfd);
- singletonfd = -1;
- }
-
- if (lockfile != NULL) {
- if (unlink_lockfile) {
- int n = unlink(lockfile);
- if (n == -1 && errno != ENOENT) {
- named_main_earlywarning("unlink '%s': failed",
- lockfile);
- }
- }
- free(lockfile);
- lockfile = NULL;
- }
-}
-
/*
* Ensure that a directory exists.
* NOTE: This function overwrites the '/' characters in 'filename' with
(void)fclose(fh);
}
-bool
-named_os_issingleton(const char *filename) {
- char strbuf[ISC_STRERRORSIZE];
- struct flock lock;
-
- if (singletonfd != -1) {
- return (true);
- }
-
- if (strcasecmp(filename, "none") == 0) {
- return (true);
- }
-
- /*
- * Make the containing directory if it doesn't exist.
- */
- lockfile = strdup(filename);
- if (lockfile == NULL) {
- strerror_r(errno, strbuf, sizeof(strbuf));
- named_main_earlyfatal("couldn't allocate memory for '%s': %s",
- filename, strbuf);
- } else {
- int ret = mkdirpath(lockfile, named_main_earlywarning);
- if (ret == -1) {
- named_main_earlywarning("couldn't create '%s'",
- filename);
- cleanup_lockfile(false);
- return (false);
- }
- }
-
- /*
- * named_os_openfile() uses safeopen() which removes any existing
- * files. We can't use that here.
- */
- singletonfd = open(filename, O_WRONLY | O_CREAT,
- S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
- if (singletonfd == -1) {
- cleanup_lockfile(false);
- return (false);
- }
-
- memset(&lock, 0, sizeof(lock));
- lock.l_type = F_WRLCK;
- lock.l_whence = SEEK_SET;
- lock.l_start = 0;
- lock.l_len = 1;
-
- /* Non-blocking (does not wait for lock) */
- if (fcntl(singletonfd, F_SETLK, &lock) == -1) {
- cleanup_lockfile(false);
- return (false);
- }
-
- return (true);
-}
-
void
named_os_shutdown(void) {
closelog();
cleanup_pidfile();
- cleanup_lockfile(true);
}
void
#endif /* HAVE_LMDB */
-static isc_result_t
-check_lockfile(named_server_t *server, const cfg_obj_t *config,
- bool first_time) {
- isc_result_t result;
- const char *filename = NULL;
- const cfg_obj_t *maps[3];
- const cfg_obj_t *options;
- const cfg_obj_t *obj;
- int i;
-
- i = 0;
- options = NULL;
- result = cfg_map_get(config, "options", &options);
- if (result == ISC_R_SUCCESS) {
- maps[i++] = options;
- }
- maps[i++] = named_g_defaults;
- maps[i] = NULL;
-
- obj = NULL;
- (void)named_config_get(maps, "lock-file", &obj);
-
- if (!first_time) {
- if (obj != NULL && cfg_obj_isstring(obj) &&
- server->lockfile != NULL && !named_g_forcelock &&
- strcmp(cfg_obj_asstring(obj), server->lockfile) != 0)
- {
- isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
- NAMED_LOGMODULE_SERVER, ISC_LOG_WARNING,
- "changing 'lock-file' "
- "has no effect until the "
- "server is restarted");
- }
-
- return (ISC_R_SUCCESS);
- }
-
- if (obj != NULL) {
- if (named_g_forcelock) {
- isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
- NAMED_LOGMODULE_SERVER, ISC_LOG_WARNING,
- "'lock-file' has no effect "
- "because the server was run with -X");
- isc_log_write(
- named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
- NAMED_LOGMODULE_SERVER, ISC_LOG_WARNING,
- "-X option has been deprecated and will be "
- "removed in the a release");
- if (named_g_defaultlockfile != NULL) {
- server->lockfile = isc_mem_strdup(
- server->mctx, named_g_defaultlockfile);
- }
- } else if (cfg_obj_isvoid(obj)) {
- isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
- NAMED_LOGMODULE_SERVER, ISC_LOG_DEBUG(1),
- "skipping lock-file check");
- } else if (cfg_obj_isstring(obj)) {
- filename = cfg_obj_asstring(obj);
- server->lockfile = isc_mem_strdup(server->mctx,
- filename);
- }
- } else if (named_g_forcelock && named_g_defaultlockfile != NULL) {
- isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
- NAMED_LOGMODULE_SERVER, ISC_LOG_WARNING,
- "-X option has been deprecated and will be "
- "removed in the a release");
- server->lockfile = isc_mem_strdup(server->mctx,
- named_g_defaultlockfile);
- }
-
- if (server->lockfile == NULL) {
- return (ISC_R_SUCCESS);
- }
-
- if (named_os_issingleton(server->lockfile)) {
- return (ISC_R_SUCCESS);
- }
-
- isc_log_write(named_g_lctx, NAMED_LOGCATEGORY_GENERAL,
- NAMED_LOGMODULE_SERVER, ISC_LOG_ERROR,
- "could not lock %s; another named "
- "process may be running",
- server->lockfile);
- return (ISC_R_FAILURE);
-}
-
static isc_result_t
load_configuration(const char *filename, named_server_t *server,
bool first_time) {
setstring(server, &server->bindkeysfile, NULL);
}
- /*
- * Check the process lockfile.
- */
- result = check_lockfile(server, config, first_time);
- if (result != ISC_R_SUCCESS) {
- goto cleanup_bindkeys_parser;
- }
-
#if defined(HAVE_GEOIP2)
/*
* Release any previously opened GeoIP2 databases.
if (server->hostname != NULL) {
isc_mem_free(server->mctx, server->hostname);
}
- if (server->lockfile != NULL) {
- isc_mem_free(server->mctx, server->lockfile);
- }
if (server->zonemgr != NULL) {
dns_zonemgr_detach(&server->zonemgr);
-U 4 Uses four listeners.
- -X named.lock Acquires a lock on this file in the "nsN" directory, so
+ Acquires a lock on this file in the "nsN" directory, so
preventing multiple instances of this named running in this
directory (which could possibly interfere with the test).
rm -f */named.conf
rm -f */named.memstats
rm -f */named.run
-rm -f ns*/named.lock
rm -f ns*/_default.nzf
rm -f ns*/_default.nzd*
rm -f ns*/managed-keys.bind* ns*/*.mkeys*
rm -f */named.memstats
rm -f */named.conf
rm -f */named.run
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
# this server runs named with only one worker thread
--m record -c named.conf -d 99 -D additional-ns1 -X named.lock -g -n 1 -T maxcachesize=2097152
+-m record -c named.conf -d 99 -D additional-ns1 -g -n 1 -T maxcachesize=2097152
rm -f ./ns2/inline.db.signed
rm -f ./ns2/inlinesec.bk*
rm -rf ./ns2/new-zones
-rm -f ./ns*/named.lock
rm -f ./ns*/named.run ./ns*/named.run.prev
rm -f ./ns2/nzf-*
rm -f ./ns3/named.conf
rm -f ns*/named.conf
rm -f ns2/controls.conf
rm -f */named.memstats
-rm -f ns*/named.lock
rm -f ns*/named.run ns*/named.run.prev
rm -f ns*/managed-keys.bind* ns*/*.mkeys*
# this server only has 127.0.0.1 in its localhost/localnets ACLs
--m record -c named.conf -d 99 -D allow-query-ns3 -X named.lock -g -T maxcachesize=2097152 -T fixedlocal
+-m record -c named.conf -d 99 -D allow-query-ns3 -g -T maxcachesize=2097152 -T fixedlocal
rm -f nopriv.key vanishing.key del1.key del2.key
rm -rf ns*/inactive
rm -f ns*/managed-keys.bind*
-rm -f ns*/named.lock
rm -f ns1/root.db ns1/root.db.1 ns1/root.db.2 ns1/root.db.3
rm -f ns1/signing.out
rm -f ns2/bar.db
rm -f ns?/named.conf
rm -f rndc.status.ns*
rm -f dig.out.ns*
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
rm -f */named.run
rm -f */named.conf
rm -f ns2/named_dump.db.*
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
--m record -c named.conf -d 1 -D cacheclean-ns1 -X named.lock -g -T maxcachesize=2097152
+-m record -c named.conf -d 1 -D cacheclean-ns1 -g -T maxcachesize=2097152
--m record -c named.conf -d 3 -D cacheclean-ns2 -X named.lock -g -T maxcachesize=2097152
+-m record -c named.conf -d 3 -D cacheclean-ns2 -g -T maxcachesize=2097152
rm -f dig.ns*.test*
rm -f ns*/named.conf
-rm -f ns*/named.lock
rm -f ns*/named.memstats
rm -f ns*/named.run
rm -f ns1/dynamic.db
rm -f ns*/*.nzf
rm -f ns*/managed-keys.bind*
rm -f ns*/named.conf
-rm -f ns*/named.lock
rm -f ns*/named.memstats
rm -f ns*/named.run
rm -f ns*/named.run.prev
rm -f dig.out.* named*.pid
rm -f ns*/named.conf
-rm -f */named.memstats */named.recursing */named.lock */named.run */ans.run
+rm -f */named.memstats */named.recursing */named.run */ans.run
rm -f ns2/K* ns2/dsset-* ns2/*.db.signed
rm -f ns*/managed-keys.bind*
rm -f good-server-christmas-tree.conf
rm -f good.conf good.conf.raw good.conf.out badzero.conf *.out
rm -rf keys
-rm -f ns*/named.lock
rm -rf test.keydir
rm -f ns5/*.update.db.jnl
rm -f */named.memstats
rm -f */named.run
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
# information regarding copyright ownership.
rm -f test.* good1.db.raw named-compilezone
-rm -f ns*/named.lock
rm -f zones/bad-tsig.db
rm -f zones/zone1_*.txt
rm -f ns1/named_dump.db*
rm -f ns*/named.memstats
rm -f ns*/named.run
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
rm -f ns*/named.run.prev
rm -f ans*/ans.run ans*/ans.log
rm -f ns1/named.conf ns1/named.run ns1/named.memstats
rm -f dig.out.*
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
rm -f ns3/example.bk
rm -f */named.memstats */named.run
rm -f ns*/named.conf
-rm -f ns*/named.lock
rm -f ./dig.out.nn.*
rm -f ./host.out.test*
rm -f ./ns*/managed-keys.bind*
-rm -f ./ns*/named.lock
rm -f ./ns*/K* ./ns*/keyid ./ns*/keydata
rm -f ./ns1/root.db
rm -f ./ns*/dsset-*
rm -f */named.run
rm -f ns1/ddns.key
rm -f dig.out*
-rm -f ns*/named.lock
rm -f ns1/session.key
rm -f ns*/managed-keys.bind*
rm -f */named.memstats
rm -f */named.run
rm -f dig.out.*
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
rm -f ./named.secroots.test*
rm -f ./ns*/*.nta
rm -f ./ns*/managed-keys.bind ./ns*/managed-keys.bind.jnl ./ns*/*.mkeys*
-rm -f ./ns*/named.lock
rm -f ./ns1/managed.key.id
rm -f ./ns1/root.db ./ns2/example.db ./ns2/managed.db ./ns2/trusted.db
rm -f ./ns1/trusted.keys
--m record -c named.conf -d 99 -D dnssec-ns6 -X named.lock -g -T maxcachesize=2097152 -T nonearest -T tat=1
+-m record -c named.conf -d 99 -D dnssec-ns6 -g -T maxcachesize=2097152 -T nonearest -T tat=1
rm -f ns*/dnstap.out.save
rm -f ns*/dnstap.out.save.?
rm -f ns*/managed-keys.bind*
-rm -f ns*/named.lock
rm -f ns2/dnstap.out.*
rm -f ns2/example.db ns2/example.db.jnl
rm -f ns3/dnstap.out.*
# Using "-n 1" allows GL #1795 to be reliably reproduced
--D dnstap-ns3 -X named.lock -m record -c named.conf -d 99 -g -U 4 -n 1 -T maxcachesize=2097152
+-D dnstap-ns3 -m record -c named.conf -d 99 -g -U 4 -n 1 -T maxcachesize=2097152
rm -f */named.conf
rm -f */named.run
rm -f */named.memstats
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
rm -f ns*/dsset-*
rm -f ns*/managed-keys.bind*
rm -f ns*/named.conf
-rm -f ns*/named.lock
rm -f ns*/named.memstats
rm -f ns*/named.run
rm -f ns*/root.db
rm -f ns*/dsset-*
rm -f ns*/managed-keys.bind*
rm -f ns*/named.conf
-rm -f ns*/named.lock
rm -f ns*/named.memstats
rm -f ns*/named.run
rm -f ns*/root.db
# information regarding copyright ownership.
rm -f dig.out*
-rm -f ns*/named.lock
rm -f ns*/named.conf
rm -f ns*/named.run
rm -f ns*/named.memstats
# information regarding copyright ownership.
rm -f ns1/named.conf
-rm -f ns*/named.lock
rm -f ns*/named.run
rm -f ns*/named.memstats
rm -f dig.out.test*
-@ENGINE_ARGS@ -D enginepkcs11-ns1 -X named.lock -m record -c named.conf -d 99 -U 4 -T maxcachesize=2097152
+@ENGINE_ARGS@ -D enginepkcs11-ns1 -m record -c named.conf -d 99 -U 4 -T maxcachesize=2097152
--m record -c named.conf -d 1 -D fetchlimit-ns3 -X named.lock -g -T maxcachesize=2097152
+-m record -c named.conf -d 1 -D fetchlimit-ns3 -g -T maxcachesize=2097152
rm -f ns4/dsset-*
rm -f dig.out.*
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
rm -f ns*/trusted.conf
rm -f twoquestions.out
rm -f noquestions.out
rm -f ns*/named.conf
-rm -f ns*/named.lock
rm -f ns*/named.run
rm -f ns*/named.memstats
rm -f ns*/managed-keys.bind*
rm -f ./ans*/query.log
rm -f ./dig.out.*
rm -f ./ns*/managed-keys.bind*
-rm -f ./ns*/named.lock
rm -f ./ns*/trusted.conf
rm -f ./ns1/K* ./ns1/dsset-*
rm -f ./ns1/root.db ./ns1/root.db.signed
rm -f dig.out.* rndc.out.*
rm -f ns?/named.run
rm -f ns?/named.memstats
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind* ns*/*.mkeys*
rm -f ns*/K*
rm -f ns*/dsset-*
rm -f ns*/managed-keys.bind*
-rm -f ns*/named.lock
rm -f ns*/tc-test-signed.db
rm -f ns*/tc-test-signed.db.signed
rm -f ns1/example.db
rm -f host.out*
rm -f host.err*
-rm -f ns*/named.lock
rm -f ns*/named.memstats
rm -f ns*/named.run
rm -f ns*/named.conf
rm -f */named.run
rm -f */named.conf
rm -f dig.out.*
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
rm -f dig.out.*
rm -f ns*/named.conf
rm -f */named.memstats
-rm -f ns*/named.lock
rm -f ns*/named.run ns*/named.run.prev
rm -f ns*/managed-keys.bind* ns*/*.mkeys*
rm -rf ./*/*.jbk \
./*/*.nzd ./*/*.nzd-lock ./*/*.nzf \
- ./*/named.conf ./*/named.memstats ./*/named.run* ./*/named.lock \
+ ./*/named.conf ./*/named.memstats ./*/named.run* \
./*/trusted.conf \
./K* ./*/K* \
./checkecdsa \
rm -f */ans.run
rm -f dig.out.test* dig.out1.test* dig.out2.test* dig.out3.test*
rm -f ns3/large.db
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind* ns*/*.mkeys
rm -f ns*/named.run
rm -f ns*/named.conf
rm -f ns*/named.stats
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
rm -f ns*/named.conf
rm -f ns*/named.memstats
rm -f ns*/named.run
-rm -f ns*/named.lock
# build.sh
rm -f ns1/named_dump.db*
--m record -c named.conf -d 99 -D legacy-ns4 -X named.lock -g -U 4 -T maxcachesize=2097152 -T noedns
+-m record -c named.conf -d 99 -D legacy-ns4 -g -U 4 -T maxcachesize=2097152 -T noedns
--m record -c named.conf -d 99 -D legacy-ns5 -X named.lock -g -U 4 -T maxcachesize=2097152 -T noedns
+-m record -c named.conf -d 99 -D legacy-ns5 -g -U 4 -T maxcachesize=2097152 -T noedns
--m record -c named.conf -d 99 -D legacy-ns6 -X named.lock -g -U 4 -T maxcachesize=2097152 -T maxudp512
+-m record -c named.conf -d 99 -D legacy-ns6 -g -U 4 -T maxcachesize=2097152 -T maxudp512
--m record -c named.conf -d 99 -D legacy-ns7 -X named.lock -g -U 4 -T maxcachesize=2097152 -T maxudp512
+-m record -c named.conf -d 99 -D legacy-ns7 -g -U 4 -T maxcachesize=2097152 -T maxudp512
rm -f */named.memstats
rm -f */named.conf
rm -f */named.run
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
rm -f ns1/named_log ns1/named_pipe ns1/named_sym
rm -rf ns1/named_dir
rm -f ns1/named_deflog
-rm -f ns*/named.lock
rm -f ns1/query_log
rm -f ns1/named_iso8601
rm -f ns1/named_iso8601_utc
--c named.conf -m record -T nosyslog -d 99 -D logfileconfig-ns1 -X named.lock -U 4
+-c named.conf -m record -T nosyslog -d 99 -D logfileconfig-ns1 -U 4
--c named.conf -m record -T nosyslog -d 99 -D logfileconfig-ns1 -X named.lock -U 4 -L named_deflog
+-c named.conf -m record -T nosyslog -d 99 -D logfileconfig-ns1 -U 4 -L named_deflog
rm -f */named.memstats
rm -f */named.conf
rm -f */named.run
-rm -f ns*/named.lock
rm -f checkzone.out*
rm -f ns*/managed-keys.bind*
rm -f ./baseline.txt ./text.* ./raw.*
rm -f ./ns1/Ksigned.* ./ns1/dsset-signed. ./ns1/signed.db.signed
rm -f ./rndc.out
-rm -f ./ns*/named.lock
rm -f ./ns*/managed-keys.bind*
rm -f keys sigs
rm -f tmp.out
rm -f settime1.test* settime2.test*
-rm -f ns*/named.lock
--D mirror-ns3 -X named.lock -m record -c named.conf -d 99 -g -U 4 -T maxcachesize=2097152 -T tat=3
+-D mirror-ns3 -m record -c named.conf -d 99 -g -U 4 -T maxcachesize=2097152 -T tat=3
rm -f dig.out* delv.out* rndc.out* signer.out*
rm -f dsset-. ns1/dsset-.
rm -f ns*/managed-keys.bind*
-rm -f ns*/named.lock
rm -f ns1/dsset-sub.tld.
rm -f ns1/dsset-tld.
rm -f ns1/named.secroots ns1/root.db.signed* ns1/root.db.tmp
--m record -c named.conf -d 99 -D mkeys-ns2 -X named.lock -g -T maxcachesize=2097152 -T mkeytimers=5/10/20 -T tat=1
+-m record -c named.conf -d 99 -D mkeys-ns2 -g -T maxcachesize=2097152 -T mkeytimers=5/10/20 -T tat=1
--m record -c named.conf -d 99 -D mkeys-ns3 -X named.lock -g -T maxcachesize=2097152 -T mkeytimers=5/10/20
+-m record -c named.conf -d 99 -D mkeys-ns3 -g -T maxcachesize=2097152 -T mkeytimers=5/10/20
--m record -c named.conf -d 99 -X named.lock -g -T maxcachesize=2097152
+-m record -c named.conf -d 99 -g -T maxcachesize=2097152
--m record -c named.conf -d 99 -X named.lock -g -T maxcachesize=2097152 -T mkeytimers=2/20/40
+-m record -c named.conf -d 99 -g -T maxcachesize=2097152 -T mkeytimers=2/20/40
--m record -c named.conf -d 99 -X named.lock -g -T maxcachesize=2097152 -T mkeytimers=5/10/20
+-m record -c named.conf -d 99 -g -T maxcachesize=2097152 -T mkeytimers=5/10/20
# information regarding copyright ownership.
rm -f dig.*.test*
-rm -f ns*/named.lock
rm -f ns*/named.memstats
rm -f ns*/named.run
rm -f ns*/named.pid
rm -f dig.out.ns4.test*
rm -f log.out
rm -f ns*/managed-keys.bind* ns*/*.mkeys*
-rm -f ns*/named.lock
rm -f ns2/example.db
rm -f ns2/x21.db*
rm -f ns3/example.bk
rm -f ns1/example.db
rm -f nslookup.out*
rm -f nslookup.err*
-rm -f ns*/named.lock
rm -f ns*/named.memstats
rm -f ns*/named.run
rm -f ns*/named.conf
rm -f keygen.out.*
rm -f nextpart.out.*
rm -f ns*/managed-keys.bind* ns*/*.mkeys*
-rm -f ns*/named.lock
rm -f ns1/example.db ns1/unixtime.db ns1/yyyymmddvv.db ns1/update.db ns1/other.db ns1/keytests.db
rm -f ns1/many.test.db
rm -f ns1/maxjournal.db
--D nsupdate-ns5 -m record -c named.conf -d 99 -X named.lock -g -U 4 -T maxcachesize=2097152 -T fixedlocal
+-D nsupdate-ns5 -m record -c named.conf -d 99 -g -U 4 -T maxcachesize=2097152 -T fixedlocal
--D nsupdate-ns6 -m record -c named.conf -d 99 -X named.lock -g -U 4 -T maxcachesize=2097152 -T fixedlocal
+-D nsupdate-ns6 -m record -c named.conf -d 99 -g -U 4 -T maxcachesize=2097152 -T fixedlocal
rm -f ns*/named.run
rm -f ns*/named.stats
rm -f ns*/named.stats.prev
-rm -f ns*/named.lock
rm -f ns*/named.conf
rm -f ns*/managed-keys.bind*
rm -rf ns2/example.db
rm -rf ns2/example.com.db
rm -rf nsupdate.out.test
-rm -f ns*/named.lock
rm -f ns*/named.conf
rm -f ns*/managed-keys.bind*
rm -f ./*/named.memstats
rm -f ./*/named.run*
rm -f raw* output* ./*.out.*
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
rm -f */named.memstats
rm -f */named.run */named.run.prev
rm -f dig.out.*
-rm -f ns*/named.lock
rm -f ans*/query.log*
rm -f query*.log
rm -f ns?/named.memstats
rm -f ns?/named.run
rm -f ns*/named.conf
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
rm -f */named.run
rm -f */named.stats
rm -f dig.out.*
-rm -f ns*/named.lock
rm -f ns1/K*
rm -f ns1/dsset-nsec3.
rm -f ns1/dsset-signed.
rm -f ns7/server.db ns7/server.db.jnl
rm -f resolve.out.*.test*
rm -f .digrc
-rm -f ns*/named.lock
rm -f ns5/trusted.conf
rm -f ns*/managed-keys.bind* ns*/*.mkeys*
# this server is IPv6 only
--6 -m record -c named.conf -d 99 -D resolver-ns9 -X named.lock -g -T maxcachesize=2097152
+-6 -m record -c named.conf -d 99 -D resolver-ns9 -g -T maxcachesize=2097152
rm -f ns*/*.nta
rm -f ns*/managed-keys.bind* ns*/*.mkeys*
rm -f ns*/named.conf
-rm -f ns*/named.lock
rm -f ns*/named.memstats
rm -f ns*/named.run ns*/named.run.prev
rm -f ns2/named.stats
# teardown of a huge zone with tracing enabled takes way too long
# -m none is set so that stop.pl does not timeout
--D rndc-ns6 -X named.lock -m none -c named.conf -d 99 -g -U 4 -T maxcachesize=2097152
+-D rndc-ns6 -m none -c named.conf -d 99 -g -U 4 -T maxcachesize=2097152
rm -f ns5/requests ns5/*.perf
rm -f */named.memstats */*.run */*.run.prev */named.stats */session.key
rm -f */*.log */*core */*.pid
- rm -f ns*/named.lock
rm -f ns*/named.conf
rm -f ns*/*switch
rm -f dnsrps.zones
# run the performance test close to real life
--c named.conf -D rpz-ns5 -X named.lock -gd3 -T maxcachesize=2097152
+-c named.conf -D rpz-ns5 -gd3 -T maxcachesize=2097152
rm -f ns*/*.jnl
rm -f ns*/named.conf
-rm -f ns*/named.lock
rm -f ns*/named.memstats
rm -f ns*/named.run
rm -f ns*/rpz*.txt
- -m record -c named.conf -d 99 -D rpzextra-ns1 -X named.lock -U 4 -T maxcachesize=2097152
+ -m record -c named.conf -d 99 -D rpzextra-ns1 -U 4 -T maxcachesize=2097152
rm -f dig.out.*
-rm -f ns*/named.lock
rm -f ns*/named.memstats
rm -f ns*/*.run
rm -f ns*/*core *core
# information regarding copyright ownership.
rm -f classlist.out privatelist.out typelist.out tempzone checkzone.out* checker.out
-rm -f ns*/named.lock
rm -f dig.out* *mdig.out*
rm -f ns*/managed-keys.bind*
rm -f ns*/named.conf
-rm -f ns*/named.lock
rm -f ns3/bl*.db */*.jnl */*.core */*.pid
rm -f ns2/root.bk
rm -f ns?/named.run ns?/named.core
rm -f */named.memstats
-rm -f ns*/named.lock
rm -f ns*/named.conf
rm -f ns*/managed-keys.bind*
rm -f ns1/root.db
rm -f ns2/signer.err
rm -f dig.out.*
-rm -f ns*/named.lock
rm -f ns*/named.conf
rm -f ns*/managed-keys.bind*
rm -f */named.memstats
rm -f kill*.out
rm -f ns*/managed-keys.bind*
-rm -f ns*/named.lock ns*/named*.pid ns*/other.lock
+rm -f ns*/named*.pid
rm -f ns2/named.conf ns2/named-alt*.conf
rm -f rndc.out*
rm -rf ns2/nope
+++ /dev/null
-/*
- * Copyright (C) Internet Systems Consortium, Inc. ("ISC")
- *
- * SPDX-License-Identifier: MPL-2.0
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, you can obtain one at https://mozilla.org/MPL/2.0/.
- *
- * See the COPYRIGHT file distributed with this work for additional
- * information regarding copyright ownership.
- */
-
-// NS2
-
-options {
- query-source address 10.53.0.2;
- port @PORT@;
- pid-file "named-alt3.pid";
- lock-file none;
- listen-on { 10.53.0.2; 10.53.0.3; };
- listen-on-v6 { fd92:7065:b8e:ffff::2; };
- recursion no;
- notify yes;
- dnssec-validation no;
-};
if [ $ret -ne 0 ]; then echo_i "failed"; fi
status=$((status + ret))
-n=$((n + 1))
-echo_i "verifying that named checks for conflicting named processes ($n)"
-ret=0
-test -f ns2/named.lock || ret=1
-testpid=$(run_named ns2 named$n.run -c named-alt2.conf -D runtime-ns2-extra-2 -X named.lock)
-test -n "$testpid" || ret=1
-retry_quiet 10 check_named_log "another named process" ns2/named$n.run || ret=1
-test -n "$testpid" && retry_quiet 10 check_pid $testpid || ret=1
-test -n "$testpid" && kill -15 $testpid >kill$n.out 2>&1 && ret=1
-test -n "$testpid" && retry_quiet 10 check_pid $testpid || ret=1
-test -f ns2/named.lock || ret=1
-if [ $ret -ne 0 ]; then echo_i "failed"; fi
-status=$((status + ret))
-
-n=$((n + 1))
-echo_i "verifying that 'lock-file none' disables process check ($n)"
-ret=0
-testpid=$(run_named ns2 named$n.run -c named-alt3.conf -D runtime-ns2-extra-3)
-test -n "$testpid" || ret=1
-retry_quiet 60 check_named_log "running$" ns2/named$n.run || ret=1
-grep "another named process" ns2/named$n.run >/dev/null && ret=1
-kill_named ns2/named-alt3.pid || ret=1
-test -n "$testpid" && retry_quiet 10 check_pid $testpid || ret=1
-if [ $ret -ne 0 ]; then echo_i "failed"; fi
-status=$((status + ret))
-
n=$((n + 1))
echo_i "checking that named refuses to reconfigure if working directory is not writable ($n)"
ret=0
rm -f ./rndc.*
rm -f ./sfcache.*
rm -f ./ns*/managed-keys.bind*
-rm -f ./ns*/named.lock
rm -f ./ns5/named.run.part*
rm -f ./ns5/named_dump*
# information regarding copyright ownership.
rm -f ns*/*.jnl
-rm -f ns*/named.lock
rm -f ns*/named.memstats
rm -f ns*/rpz*.txt
rm -f */named.conf
# information regarding copyright ownership.
rm -f K* dsset-* *.signed dnskey.sigs other.sigs dsset.out
-rm -f ns*/named.lock
rm -f */named.memstats
rm -f */named.run
rm -f */named.conf
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
rm -f ns1/named.run
rm -f ns1/named.memstats
-rm -f ns*/named.lock
rm -f ns*/named.conf
rm -f ns*/managed-keys.bind*
}
} else {
$command .= "-D $test-$server ";
- $command .= "-X named.lock ";
$command .= "-m record ";
foreach my $t_option(
rm -f tmp
rm -f dig.out.*
-rm -f ns*/named.lock
rm -f ns*/named.conf
rm -f ns3/example.db
rm -f ns3/undelegated.db
rm -f */named.stats-stage*
rm -f dig.out*
rm -f curl.out.*
-rm -f ns*/named.lock
rm -f stats*out
rm -f ns*/managed-keys.bind*
rm -f xsltproc.out.*
rm -f nc.out* curl.out* header.in*
rm -f ns*/managed-keys.bind*
rm -f ns*/named.conf
-rm -f ns*/named.lock
rm -f ns*/named.memstats
rm -f ns*/named.run*
rm -f ns*/named.stats
DIGCMD="$DIG @10.53.0.2 -p ${PORT}"
RNDCCMD="$RNDC -c ../_common/rndc.conf -p ${CONTROLPORT} -s"
-NS_PARAMS="-X named.lock -m record -c named.conf -d 99 -g -U 4 -T maxcachesize=2097152"
+NS_PARAMS="-m record -c named.conf -d 99 -g -U 4 -T maxcachesize=2097152"
if ! $FEATURETEST --have-json-c; then
unset PERL_JSON
# Subroutines
-# Return the full path to a given server's lock file.
-sub server_lock_file {
- my ( $server ) = @_;
-
- return $testdir . "/" . $server . "/named.lock" if ($server =~ /^ns/);
- return if ($server =~ /^ans/);
-
- die "Unknown server type $server\n";
-}
-
# Return the full path to a given server's PID file.
sub server_pid_file {
my ( $server ) = @_;
return $server;
}
-sub lock_file_exists {
- my ( $server ) = @_;
- my $lock_file = server_lock_file($server);
-
- return unless defined($lock_file) && -f $lock_file;
-
- return $server;
-}
-
sub wait_for_servers {
my ( $timeout, @servers ) = @_;
sleep 1 if (@servers > 0);
@servers =
grep { defined($_) }
- map { pid_file_exists($_) || lock_file_exists($_) } @servers;
+ map { pid_file_exists($_) } @servers;
$timeout--;
}
rm -f ns2/zone0*.db
rm -f ns2/zone0*.jnl
rm -f */named.memstats
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
rm -f ns*/named.run
rm -f ns*/named.conf
rm -f */named.memstats
rm -f */named.conf
rm -f */named.run
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
rm -f ns5/example.db
rm -f ans6/ans.run*
rm -f dig.out*
rm -f rndc.out*
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
rm -f ./ns*/managed-keys.bind*
rm -f ./ns*/named.conf
-rm -f ./ns*/named.lock
rm -f ./ns*/named.memstats
rm -f ./ns*/named.run*
rm -f ./ns*/named.stats
--m record -c named.conf -d 1 -D timeouts-ns1 -X named.lock -g -T maxcachesize=2097152
+-m record -c named.conf -d 1 -D timeouts-ns1 -g -T maxcachesize=2097152
rm -f */named.conf
rm -f ns1/named-fips.conf
rm -f */named.run
-rm -f ns*/named.lock
rm -f Kexample.net.*
rm -f keygen.out?
rm -f ns*/managed-keys.bind*
rm -f authsock.pid
rm -f ns1/core
rm -f nsupdate.out*
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
rm -f */*.bk
rm -f */*.bk.*
rm -f ns3/Kexample.*
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind* ns*/*.mkeys*
rm -f */ans.run
rm -f Ksig0.example2.*
rm -f keyname keyname.err
-rm -f ns*/named.lock
rm -f ns1/example2.db
rm -f ns*/managed-keys.bind*
rm -f nsupdate.out.*
# See the COPYRIGHT file distributed with this work for additional
# information regarding copyright ownership.
-rm -f ns*/named.lock
rm -f verify.out*
rm -f zones/*.bad
rm -f zones/*.good
rm -f ns2/zones.conf
rm -f ns2/db.* ns2/K*
rm -f dig.out.external dig.out.internal
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind* ns*/*.mkeys*
rm -f ns1/signer.err
rm -f */named.memstats
rm -f dig.out.ns*.test*
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
rm -f axfr.out
rm -f dig.out.*
rm -f ns*/managed-keys.bind*
-rm -f ns*/named.lock
rm -f ns1/dot-fallback.db
rm -f ns1/edns-expire.db
rm -f ns1/ixfr-too-big.db ns1/ixfr-too-big.db.jnl
--D xfer-ns6 -X named.lock -m record -c named.conf -d 99 -g -U 4 -T maxcachesize=2097152 -T transferinsecs
+-D xfer-ns6 -m record -c named.conf -d 99 -g -U 4 -T maxcachesize=2097152 -T transferinsecs
DIGOPTS="+tcp +noadd +nosea +nostat +noquest +nocomm +nocmd -p ${PORT}"
RNDCCMD="$RNDC -c ../_common/rndc.conf -p ${CONTROLPORT} -s"
-NS_PARAMS="-X named.lock -m record -c named.conf -d 99 -g -U 4 -T maxcachesize=2097152"
+NS_PARAMS="-m record -c named.conf -d 99 -g -U 4 -T maxcachesize=2097152"
status=0
n=0
rm -f */named.memstats
rm -f */named.conf
rm -f */named.run
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
rm -f ns4/example.bk
rm -f dig.out*
rm -f query.list
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind*
--m record -c named.conf -d 1 -D zero-ns2 -X named.lock -g -T maxcachesize=2097152
+-m record -c named.conf -d 1 -D zero-ns2 -g -T maxcachesize=2097152
--m record -c named.conf -d 1 -D zero-ns3 -X named.lock -g -T maxcachesize=2097152
+-m record -c named.conf -d 1 -D zero-ns3 -g -T maxcachesize=2097152
--m record -c named.conf -d 1 -D zero-ns4 -X named.lock -g -T maxcachesize=2097152
+-m record -c named.conf -d 1 -D zero-ns4 -g -T maxcachesize=2097152
rm -f */*.db */*.db.signed */K*.key */K*.private */K*.state */*.jnl */dsset-*
rm -f */signer.err
rm -f rndc.out.*
-rm -f ns*/named.lock
rm -f ns*/managed-keys.bind* ns*/*.mkeys*
This is the pathname of the file the server writes memory usage statistics to
on exit. If not specified, the default is ``named.memstats``.
-.. namedconf:statement:: lock-file
- :tags: deprecated
+.. lock-file:
+ :tags: obsolete
:short: Sets the pathname of the file on which :iscman:`named` attempts to acquire a file lock when starting for the first time.
- This option is deprecated and will be removed in a future release.
-
- This is the pathname of a file on which :iscman:`named` attempts to acquire a
- file lock when starting for the first time; if unsuccessful, the
- server terminates, under the assumption that another server
- is already running. If not specified, the default is
- ``none``.
-
- Specifying ``lock-file none`` disables the use of a lock file.
- :any:`lock-file` is ignored if :iscman:`named` was run using the :option:`-X <named -X>`
- option, which overrides it. Changes to :any:`lock-file` are ignored if
- :iscman:`named` is being reloaded or reconfigured; it is only effective
- when the server is first started.
+ This option has been removed and using it will cause a fatal error.
.. namedconf:statement:: pid-file
:tags: server
listen-on [ port <integer> ] [ tls <string> ] [ http <string> ] { <address_match_element>; ... }; // may occur multiple times
listen-on-v6 [ port <integer> ] [ tls <string> ] [ http <string> ] { <address_match_element>; ... }; // may occur multiple times
lmdb-mapsize <sizeval>;
- lock-file ( <quoted_string> | none ); // deprecated
managed-keys-directory <quoted_string>;
masterfile-format ( raw | text );
masterfile-style ( full | relative );
CFG_CLAUSEFLAG_OBSOLETE },
{ "listen-on", &cfg_type_listenon, CFG_CLAUSEFLAG_MULTI },
{ "listen-on-v6", &cfg_type_listenon, CFG_CLAUSEFLAG_MULTI },
- { "lock-file", &cfg_type_qstringornone, CFG_CLAUSEFLAG_DEPRECATED },
+ { "lock-file", &cfg_type_qstringornone, CFG_CLAUSEFLAG_ANCIENT },
{ "managed-keys-directory", &cfg_type_qstring, 0 },
{ "match-mapped-addresses", &cfg_type_boolean, 0 },
{ "max-rsa-exponent-size", &cfg_type_uint32, 0 },
port 5300;
listen-on { 127.0.0.1; };
listen-on-v6 { ::1; };
- lock-file \"named.lock\";
};
zone \".\" {
exit 1
fi
# "timeout" is unable to report a crash on shutdown via its exit
- # code. A named instance that exits cleanly is expected to
- # clean up its configured lock file, so if it is still around at
- # this point, something went wrong.
- if [ -f "named.lock" ]; then
- echo "named did not clean up its lock file, possible crash on shutdown"
- exit 1
- fi
+ # code.
cd ..
rm -rf "pairwise-${runid}" "pairwise-output.${runid}.txt"
done <pairwise-commands.txt