/contrib/ntp/ntpdc/ntpdc.h
https://bitbucket.org/freebsd/freebsd-head/ · C++ Header · 67 lines · 38 code · 8 blank · 21 comment · 0 complexity · 8f74fa0c3d1f5deb61f9bde919a5cf67 MD5 · raw file
- /*
- * ntpdc.h - definitions of interest to ntpdc
- */
- #include "ntp_fp.h"
- #include "ntp.h"
- #include "ntp_request.h"
- #include "ntp_string.h"
- #include "ntp_malloc.h"
- /*
- * Maximum number of arguments
- */
- #define MAXARGS 4
- #define MOREARGS 10
- /*
- * Flags for forming descriptors.
- */
- #define OPT 0x80 /* this argument is optional, or'd with type */
- #define NO 0x0
- #define NTP_STR 0x1 /* string argument */
- #define NTP_UINT 0x2 /* unsigned integer */
- #define NTP_INT 0x3 /* signed integer */
- #define NTP_ADD 0x4 /* IP network address */
- #define IP_VERSION 0x5 /* IP version */
- /*
- * Arguments are returned in a struct - no
- * union space saving is attempted.
- */
- typedef struct {
- u_char type;
- char *string;
- long ival;
- u_long uval;
- struct sockaddr_storage netnum;
- } arg_v;
- /*
- * Structure for passing parsed command line
- */
- struct parse {
- char *keyword;
- arg_v argval[MAXARGS + MOREARGS];
- int nargs;
- };
- /*
- * ntpdc includes a command parser which could charitably be called
- * crude. The following structure is used to define the command
- * syntax.
- */
- struct xcmd {
- const char *keyword; /* command key word */
- void (*handler) P((struct parse *, FILE *)); /* command handler */
- u_char arg[MAXARGS]; /* descriptors for arguments */
- const char *desc[MAXARGS]; /* descriptions for arguments */
- const char *comment;
- };
- extern int impl_ver;
- extern int showhostnames;
- extern int s_port;
- extern int doquery P((int, int, int, int, int, char *, int *, int *, char **, int, int));
- extern char * nntohost P((struct sockaddr_storage *));