]> git.pld-linux.org Git - packages/ntp.git/blame - ntp-4.2.6p1-mlock.patch
ntpd requires libgcc_s.so.1
[packages/ntp.git] / ntp-4.2.6p1-mlock.patch
CommitLineData
0ffcfbfc
KK
1diff -up ntp-4.2.6p3/html/ntpd.html.mlock ntp-4.2.6p3/html/ntpd.html
2--- ntp-4.2.6p3/html/ntpd.html.mlock 2011-01-05 17:51:36.242120783 +0100
3+++ ntp-4.2.6p3/html/ntpd.html 2011-01-05 17:51:36.254121258 +0100
a8809dbd
ER
4@@ -32,7 +32,7 @@
5 </ul>
6 <hr>
7 <h4 id="synop">Synopsis</h4>
8- <tt>ntpd [ -46aAbdDgLnNqx ] [ -c <i>conffile</i> ] [ -f <i>driftfile</i> ] [ -i <i>jaildir</i> ] [ -I <i>iface</i> ] [ -k <i>keyfile</i> ] [ -l <i>logfile</i> ] [ -p <i>pidfile</i> ] [ -P <i>priority</i> ] [ -r <i>broadcastdelay</i> ] [ -s <i>statsdir</i> ] [ -t <i>key</i> ] [ -u <i>user</i>[:<i>group</i>] ] [ -U <i>interface_update_interval</i> ] [ -v <i>variable</i> ] [ -V <i>variable</i> ]</tt>
9+ <tt>ntpd [ -46aAbdDgLmnNqx ] [ -c <i>conffile</i> ] [ -f <i>driftfile</i> ] [ -i <i>jaildir</i> ] [ -I <i>iface</i> ] [ -k <i>keyfile</i> ] [ -l <i>logfile</i> ] [ -p <i>pidfile</i> ] [ -P <i>priority</i> ] [ -r <i>broadcastdelay</i> ] [ -s <i>statsdir</i> ] [ -t <i>key</i> ] [ -u <i>user</i>[:<i>group</i>] ] [ -U <i>interface_update_interval</i> ] [ -v <i>variable</i> ] [ -V <i>variable</i> ]</tt>
10 <h4 id="descr">Description</h4>
11 <p>The <tt>ntpd</tt> program is an operating system daemon that synchronises the system clock with remote NTP&nbsp;time servers or local reference clocks. It is a complete implementation of the Network Time Protocol (NTP) version 4, but also retains compatibility with version 3, as defined by RFC-1305, and version 1 and 2, as defined by RFC-1059 and RFC-1119, respectively. The program can operate in any of several modes, as described on the <a href="assoc.html">Association Management</a> page, and with both symmetric key and public key cryptography, as described on the <a href="manyopt.html">Authentication Options</a> page.</p>
12 <p>The <tt>ntpd</tt> program ordinarily requires a configuration file as desccribe on the Configuration Commands and Options collection above. However a client can discover remote servers and configure them automatically. This makes it possible to deploy a fleet of workstations without specifying configuration details specific to the local environment. Further details are on the <a href="manyopt.html">Automatic Server Discovery</a> page.</p>
13@@ -123,6 +123,8 @@
14 <dd>Do not listen to virtual interfaces, defined as those with names containing a colon. This option is deprecated. Please consider using the configuration file <a href="miscopt.html#interface">interface</a> command, which is more versatile.</dd>
15 <dt><tt>-M</tt></dt>
16 <dd>Raise scheduler precision to its maximum (1 msec) using timeBeginPeriod. (Windows only)</dd>
17+ <dt><tt>-m</tt>
18+ <dd>Lock memory.
19 <dt><tt>-n</tt></dt>
20 <dd>Don't fork.</dd>
21 <dt><tt>-N</tt></dt>
0ffcfbfc
KK
22diff -up ntp-4.2.6p3/ntpd/ntpd-opts.c.mlock ntp-4.2.6p3/ntpd/ntpd-opts.c
23--- ntp-4.2.6p3/ntpd/ntpd-opts.c.mlock 2011-01-04 03:15:35.000000000 +0100
24+++ ntp-4.2.6p3/ntpd/ntpd-opts.c 2011-01-05 17:55:01.609260787 +0100
25@@ -282,6 +282,15 @@ static char const zNice_Name[]
a8809dbd
ER
26 #define NICE_FLAGS (OPTST_DISABLED)
27
28 /*
29+ * Mlock option description:
30+ */
0ffcfbfc 31+static char const zMlockText[] =
a8809dbd 32+ "Lock memory";
0ffcfbfc
KK
33+static char const zMlock_NAME[] = "MLOCK";
34+static char const zMlock_Name[] = "mlock";
a8809dbd
ER
35+#define MLOCK_FLAGS (OPTST_DISABLED)
36+
37+/*
38 * Pidfile option description:
39 */
0ffcfbfc
KK
40 static char const zPidfileText[] =
41@@ -909,6 +918,18 @@ static tOptDesc optDesc[ OPTION_CT ] = {
a8809dbd
ER
42 /* desc, NAME, name */ zPccfreqText, zPccfreq_NAME, zPccfreq_Name,
43 /* disablement strs */ NULL, NULL },
44
45+ { /* entry idx, value */ 32, VALUE_OPT_MLOCK,
46+ /* equiv idx, value */ 32, VALUE_OPT_MLOCK,
47+ /* equivalenced to */ NO_EQUIVALENT,
48+ /* min, max, act ct */ 0, 1, 0,
49+ /* opt state flags */ MLOCK_FLAGS, 0,
50+ /* last opt argumnt */ { NULL },
51+ /* arg list/cookie */ NULL,
52+ /* must/cannot opts */ NULL, NULL,
53+ /* option proc */ NULL,
54+ /* desc, NAME, name */ zMlockText, zMlock_NAME, zMlock_Name,
55+ /* disablement strs */ NULL, NULL },
56+
57 { /* entry idx, value */ INDEX_OPT_VERSION, VALUE_OPT_VERSION,
58 /* equiv idx value */ NO_EQUIVALENT, 0,
59 /* equivalenced to */ NO_EQUIVALENT,
0ffcfbfc 60@@ -1008,7 +1029,7 @@ tOptions ntpdOptions = {
a8809dbd
ER
61 NO_EQUIVALENT, /* '-#' option index */
62 NO_EQUIVALENT /* index of default opt */
63 },
64- 35 /* full option count */, 32 /* user option count */,
65+ 36 /* full option count */, 33 /* user option count */,
66 ntpd_full_usage, ntpd_short_usage,
0ffcfbfc
KK
67 NULL, NULL,
68 PKGDATADIR
69diff -up ntp-4.2.6p3/ntpd/ntpd-opts.h.mlock ntp-4.2.6p3/ntpd/ntpd-opts.h
70--- ntp-4.2.6p3/ntpd/ntpd-opts.h.mlock 2011-01-04 03:15:35.000000000 +0100
71+++ ntp-4.2.6p3/ntpd/ntpd-opts.h 2011-01-05 17:51:36.256121337 +0100
72@@ -82,6 +82,7 @@ typedef enum {
a8809dbd
ER
73- INDEX_OPT_VERSION = 32,
74- INDEX_OPT_HELP = 33,
75- INDEX_OPT_MORE_HELP = 34
76+ INDEX_OPT_MLOCK = 32,
77+ INDEX_OPT_VERSION = 33,
78+ INDEX_OPT_HELP = 34,
79+ INDEX_OPT_MORE_HELP = 35
80 } teOptIndex;
81
82-#define OPTION_CT 35
83+#define OPTION_CT 36
0ffcfbfc 84@@ -189,6 +190,10 @@ typedef enum {
a8809dbd
ER
85 # warning undefining MODIFYMMTIMER due to option name conflict
86 # undef MODIFYMMTIMER
87 # endif
88+# ifdef MLOCK
89+# warning undefining MLOCK due to option name conflict
90+# undef MLOCK
91+# endif
92 # ifdef NOFORK
93 # warning undefining NOFORK due to option name conflict
94 # undef NOFORK
0ffcfbfc 95@@ -270,6 +275,7 @@ typedef enum {
a8809dbd
ER
96 # undef LOGFILE
97 # undef NOVIRTUALIPS
98 # undef MODIFYMMTIMER
99+# undef MLOCK
100 # undef NOFORK
101 # undef NICE
102 # undef PIDFILE
0ffcfbfc 103@@ -308,6 +314,7 @@ typedef enum {
a8809dbd
ER
104 #define VALUE_OPT_LOGFILE 'l'
105 #define VALUE_OPT_NOVIRTUALIPS 'L'
106 #define VALUE_OPT_MODIFYMMTIMER 'M'
107+#define VALUE_OPT_MLOCK 'm'
108 #define VALUE_OPT_NOFORK 'n'
109 #define VALUE_OPT_NICE 'N'
110 #define VALUE_OPT_PIDFILE 'p'
0ffcfbfc
KK
111diff -up ntp-4.2.6p3/ntpd/ntpd.c.mlock ntp-4.2.6p3/ntpd/ntpd.c
112--- ntp-4.2.6p3/ntpd/ntpd.c.mlock 2011-01-05 17:51:36.191118761 +0100
113+++ ntp-4.2.6p3/ntpd/ntpd.c 2011-01-05 17:51:36.257121377 +0100
114@@ -723,7 +723,8 @@ ntpdmain(
a8809dbd
ER
115 }
116 #endif
117
118-#if defined(HAVE_MLOCKALL) && defined(MCL_CURRENT) && defined(MCL_FUTURE)
119+#if defined(MCL_CURRENT) && defined(MCL_FUTURE)
120+ if (HAVE_OPT( MLOCK )) {
121 # ifdef HAVE_SETRLIMIT
122 /*
123 * Set the stack limit to something smaller, so that we don't lock a lot
0ffcfbfc 124@@ -749,7 +750,7 @@ ntpdmain(
a8809dbd
ER
125 * fail if we drop root privlege. To be useful the value
126 * has to be larger than the largest ntpd resident set size.
127 */
128- rl.rlim_cur = rl.rlim_max = 32*1024*1024;
129+ rl.rlim_cur = rl.rlim_max = 64*1024*1024;
130 if (setrlimit(RLIMIT_MEMLOCK, &rl) == -1) {
131 msyslog(LOG_ERR, "Cannot set RLIMIT_MEMLOCK: %m");
132 }
0ffcfbfc 133@@ -761,6 +762,7 @@ ntpdmain(
a8809dbd
ER
134 */
135 if (mlockall(MCL_CURRENT|MCL_FUTURE) < 0)
136 msyslog(LOG_ERR, "mlockall(): %m");
137+ }
138 #else /* not (HAVE_MLOCKALL && MCL_CURRENT && MCL_FUTURE) */
139 # ifdef HAVE_PLOCK
140 # ifdef PROCLOCK
This page took 0.049759 seconds and 4 git commands to generate.