1 /* Copyright (C) 1996 N.M. Maclaren
2 Copyright (C) 1996 The University of Cambridge
4 This includes all of the 'safe' headers and definitions used across modules.
5 No changes should be needed for any system that is even remotely like Unix. */
18 #define VERSION "1.6" /* Just the version string */
19 #define MAX_SOCKETS 10 /* Maximum number of addresses */
22 # define LOCKNAME "/etc/sntp.pid" /* Stores the pid */
25 # define SAVENAME "/etc/sntp.state" /* Stores the recovery state */
30 /* Defined in main.c */
32 #define op_client 1 /* Behave as a challenge client */
33 #define op_listen 2 /* Behave as a listening client */
35 extern const char *argv0;
37 extern int verbose, operation;
39 extern const char *lockname;
41 extern void fatal (int syserr, const char *message, const char *insert);
45 /* Defined in unix.c */
47 extern void do_nothing (int seconds);
49 extern int ftty (FILE *file);
51 extern void set_lock (int lock);
53 extern void log_message (const char *message);
57 /* Defined in internet.c */
59 /* extern void find_address (struct in_addr *address, int *port, char *hostname,
62 #define PREF_FAM_INET 1
63 #define PREF_FAM_INET6 2
64 extern void preferred_family(int);
67 /* Defined in socket.c */
69 extern void open_socket (int which, char *hostnames, int timespan);
71 extern void write_socket (int which, void *packet, int length);
73 extern int read_socket (int which, void *packet, int length, int waiting);
75 extern int flush_socket (int which);
77 extern void close_socket (int which);
81 /* Defined in timing.c */
83 extern double current_time (double offset);
85 extern time_t convert_time (double value, int *millisecs);
87 extern void adjust_time (double difference, int immediate, double ignore);