* ntpd/ntp_proto.c (receive): Keep track of packet versions.
Implement RES_LIMITED.
* include/ntp_config.h (CONF_RES_LIMITED):
* include/ntp.h (RES_LIMITED): Leave the bits in the original
order.
From Dave Mills.
bk: 3ae76d673CbcA3PcSdgNR_14zFJIrw
2001-04-25 Harlan Stenn <stenn@whimsy.udel.edu>
+ * ntpd/ntp_proto.c (receive): Keep track of packet versions.
+ Implement RES_LIMITED.
+ * include/ntp_config.h (CONF_RES_LIMITED):
+ * include/ntp.h (RES_LIMITED): Leave the bits in the original
+ order.
+ From Dave Mills.
+
* util/timetrim.c:
* util/Makefile.am:
* ntpdc/ntpdc_ops.c:
#define RES_NOPEER 0x020 /* don't allocate memory resources */
#define RES_NOTRAP 0x040 /* don't allow him to set traps */
#define RES_LPTRAP 0x080 /* traps set by him are low priority */
-#define RES_VERSION 0x100 /* serve only current version */
-#define RES_LIMITED 0x200 /* limit per net number of clients */
+#define RES_LIMITED 0x100 /* limit per net number of clients */
+#define RES_VERSION 0x200 /* serve only current version */
#define RES_ALLFLAGS \
(RES_IGNORE|RES_DONTSERVE|RES_DONTTRUST|RES_NOQUERY\
- |RES_NOMODIFY|RES_NOPEER|RES_NOTRAP|RES_LPTRAP|RES_LIMITED)
+ |RES_NOMODIFY|RES_NOPEER|RES_NOTRAP|RES_LPTRAP|RES_LIMITED|RES_VERSION)
/*
* Match flags
#define CONF_RES_NOTRAP 8
#define CONF_RES_LPTRAP 9
#define CONF_RES_NTPPORT 10
-#define CONF_RES_VERSION 11
-#define CONF_RES_LIMITED 12
+#define CONF_RES_LIMITED 11
+#define CONF_RES_VERSION 12
/*
* "trap" modifier keywords
if (restrict_mask & RES_IGNORE)
return; /* no amything */
pkt = &rbufp->recv_pkt;
- if (PKT_VERSION(pkt->li_vn_mode) >= NTP_VERSION)
+ if (PKT_VERSION(pkt->li_vn_mode) == NTP_VERSION) {
sys_newversionpkt++;
- else if (PKT_VERSION(pkt->li_vn_mode) >= NTP_OLDVERSION)
+ } else if (restrict_mask & RES_VERSION) {
+ sys_unknownversion++; /* unknown version */
+ return;
+ } else if (PKT_VERSION(pkt->li_vn_mode) >= NTP_OLDVERSION) {
sys_oldversionpkt++;
- else {
+ } else {
sys_unknownversion++; /* unknown version */
return;
}
if (PKT_MODE(pkt->li_vn_mode) == MODE_PRIVATE) {
if (restrict_mask & RES_NOQUERY)
- return; /* no query private */
+ return; /* no query private */
process_private(rbufp, ((restrict_mask &
RES_NOMODIFY) == 0));
return;
}
if (PKT_MODE(pkt->li_vn_mode) == MODE_CONTROL) {
if (restrict_mask & RES_NOQUERY)
- return; /* no query control */
+ return; /* no query control */
process_control(rbufp, restrict_mask);
return;
}
AUTOMAKE_OPTIONS = ansi2knr
-bin_PROGRAMS = ntp-genkeys @MAKE_NTPTIME@ @MAKE_TICKADJ@ @MAKE_TIMETRIM@
+bin_PROGRAMS = @MAKE_NTPTIME@ @MAKE_TICKADJ@ @MAKE_TIMETRIM@ ntp-genkeys
EXTRA_PROGRAMS = byteorder hist jitter kern longsize ntptime \
precision sht testrs6000 tickadj timetrim
EXTRA_PROGRAMS = byteorder$(EXEEXT) hist$(EXEEXT) jitter$(EXEEXT) \
kern$(EXEEXT) longsize$(EXEEXT) ntptime$(EXEEXT) precision$(EXEEXT) \
sht$(EXEEXT) testrs6000$(EXEEXT) tickadj$(EXEEXT) timetrim$(EXEEXT)
-bin_PROGRAMS = ntp-genkeys$(EXEEXT) @MAKE_NTPTIME@ @MAKE_TICKADJ@ \
-@MAKE_TIMETRIM@
+bin_PROGRAMS = @MAKE_NTPTIME@ @MAKE_TICKADJ@ @MAKE_TIMETRIM@ \
+ntp-genkeys$(EXEEXT)
PROGRAMS = $(bin_PROGRAMS)