1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
|
/*
* ntp_stdlib.h - Prototypes for NTP lib.
*/
#include <sys/types.h>
#include "ntp_types.h"
#include "ntp_string.h"
#include "l_stdlib.h"
/*
* Handle gcc __attribute__ if available.
*/
#ifndef __attribute__
/* This feature is available in gcc versions 2.5 and later. */
# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) || (defined(__STRICT_ANSI__))
# define __attribute__(Spec) /* empty */
# endif
/* The __-protected variants of `format' and `printf' attributes
are accepted by gcc versions 2.6.4 (effectively 2.7) and later. */
# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7)
# define __format__ format
# define __printf__ printf
# endif
#endif
#if defined(__STDC__) || defined(HAVE_STDARG_H)
# include <stdarg.h>
extern void msyslog P((int, const char *, ...))
__attribute__((__format__(__printf__, 2, 3)));
#else
# include <varargs.h>
extern void msyslog P(());
#endif
#if 0 /* HMS: These seem to be unused now */
extern void auth_des P((u_long *, u_char *));
extern void auth_delkeys P((void));
extern int auth_parity P((u_long *));
extern void auth_setkey P((u_long, u_long *));
extern void auth_subkeys P((u_long *, u_char *, u_char *));
#endif
extern void auth1crypt P((u_long, u_int32 *, int));
extern int auth2crypt P((u_long, u_int32 *, int));
extern void auth_delkeys P((void));
extern int auth_havekey P((u_long));
extern int authdecrypt P((u_long, u_int32 *, int, int));
extern int authencrypt P((u_long, u_int32 *, int));
extern int authhavekey P((u_long));
extern int authistrusted P((u_long));
extern int authreadkeys P((const char *));
extern void authtrust P((u_long, int));
extern int authusekey P((u_long, int, const u_char *));
extern u_long calleapwhen P((u_long));
extern u_long calyearstart P((u_long));
extern const char *clockname P((int));
extern int clocktime P((int, int, int, int, int, u_long, u_long *, u_int32 *));
#if defined SYS_WINNT && defined DEBUG
# define emalloc(_c) debug_emalloc(_c, __FILE__, __LINE__)
extern void * debug_emalloc P((u_int, char *, int));
#else
extern void * emalloc P((u_int));
#endif
extern int ntp_getopt P((int, char **, const char *));
extern void init_auth P((void));
extern void init_lib P((void));
extern void init_random P((void));
extern struct savekey *auth_findkey P((u_long));
extern int auth_moremem P((void));
extern int ymd2yd P((int, int, int));
#ifdef DES
extern int DESauthdecrypt P((u_char *, u_int32 *, int, int));
extern int DESauthencrypt P((u_char *, u_int32 *, int));
extern void DESauth_setkey P((u_long, const u_int32 *));
extern void DESauth_subkeys P((const u_int32 *, u_char *, u_char *));
extern void DESauth_des P((u_int32 *, u_char *));
extern int DESauth_parity P((u_int32 *));
#endif /* DES */
#ifdef MD5
extern int MD5authdecrypt P((u_char *, u_int32 *, int, int));
extern int MD5authencrypt P((u_char *, u_int32 *, int));
extern void MD5auth_setkey P((u_long, const u_char *, const int));
extern u_long session_key P((u_int32, u_int32, u_long, u_long));
#endif /* MD5 */
extern int atoint P((const char *, long *));
extern int atouint P((const char *, u_long *));
extern int hextoint P((const char *, u_long *));
extern char * humandate P((u_long));
extern char * humanlogtime P((void));
extern char * inttoa P((long));
extern char * mfptoa P((u_long, u_long, int));
extern char * mfptoms P((u_long, u_long, int));
extern const char * modetoa P((int));
extern const char * eventstr P((int));
extern const char * ceventstr P((int));
extern char * statustoa P((int, int));
extern const char * sysstatstr P((int));
extern const char * peerstatstr P((int));
extern const char * clockstatstr P((int));
extern u_int32 netof P((u_int32));
extern char * numtoa P((u_int32));
extern char * numtohost P((u_int32));
extern int octtoint P((const char *, u_long *));
extern u_long ranp2 P((int));
extern char * refnumtoa P((u_int32));
extern int tsftomsu P((u_long, int));
extern char * uinttoa P((u_long));
extern int decodenetnum P((const char *, u_int32 *));
extern const char * FindConfig P((const char *));
extern void signal_no_reset P((int, RETSIGTYPE (*func)(int)));
extern void getauthkeys P((char *));
extern void auth_agekeys P((void));
extern void rereadkeys P((void));
/*
* Variable declarations for libntp.
*/
/*
* Defined by any program.
*/
extern volatile int debug; /* debugging flag */
/* authkeys.c */
extern u_long authkeynotfound; /* keys not found */
extern u_long authkeylookups; /* calls to lookup keys */
extern u_long authnumkeys; /* number of active keys */
extern u_long authkeyexpired; /* key lifetime expirations */
extern u_long authkeyuncached; /* cache misses */
extern u_long authencryptions; /* calls to encrypt */
extern u_long authdecryptions; /* calls to decrypt */
extern int authnumfreekeys;
/*
* The key cache. We cache the last key we looked at here.
*/
extern u_long cache_keyid; /* key identifier */
extern u_char * cache_key; /* key pointer */
extern u_int cache_keylen; /* key length */
/* clocktypes.c */
struct clktype;
extern struct clktype clktypes[];
/* getopt.c */
extern char * ntp_optarg; /* global argument pointer */
extern int ntp_optind; /* global argv index */
/* machines.c */
extern const char *set_tod_using;
/* mexit.c */
#if defined SYS_WINNT || defined SYS_CYGWIN32
extern HANDLE hServDoneEvent;
#endif
/* systime.c */
extern int systime_10ms_ticks; /* adj sysclock in 10ms increments */
extern double sys_maxfreq; /* max frequency correction */
/* version.c */
extern const char *Version; /* version declaration */
|