Put proper prototypes in tcpd.h
Clang 4.0.0 complains about tcpd.h's not-really-prototypes, e.g.: /usr/include/tcpd.h:75:24: error: this function declaration is not a prototype [-Werror,-Wstrict-prototypes] extern int hosts_access(); /* access control */ ^ To fix this, turn these declarations into real prototypes. While here, garbage collect the incompatible rfc931() function from scaffold.c, as it is never used. Reviewed by: emaste MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D9052
This commit is contained in:
parent
f20a27e327
commit
fd3e9b3896
@ -235,16 +235,6 @@ struct request_info *request;
|
||||
exit(0);
|
||||
}
|
||||
|
||||
/* dummy function to intercept the real rfc931() */
|
||||
|
||||
/* ARGSUSED */
|
||||
|
||||
void rfc931(request)
|
||||
struct request_info *request;
|
||||
{
|
||||
strcpy(request->user, unknown);
|
||||
}
|
||||
|
||||
/* check_path - examine accessibility */
|
||||
|
||||
int check_path(path, st)
|
||||
|
@ -6,6 +6,12 @@
|
||||
* $FreeBSD$
|
||||
*/
|
||||
|
||||
#ifdef INET6
|
||||
#define TCPD_SOCKADDR struct sockaddr
|
||||
#else
|
||||
#define TCPD_SOCKADDR struct sockaddr_in
|
||||
#endif
|
||||
|
||||
/* Structure to describe one communications endpoint. */
|
||||
|
||||
#define STRING_LENGTH 128 /* hosts, users, processes */
|
||||
@ -13,11 +19,7 @@
|
||||
struct host_info {
|
||||
char name[STRING_LENGTH]; /* access via eval_hostname(host) */
|
||||
char addr[STRING_LENGTH]; /* access via eval_hostaddr(host) */
|
||||
#ifdef INET6
|
||||
struct sockaddr *sin; /* socket address or 0 */
|
||||
#else
|
||||
struct sockaddr_in *sin; /* socket address or 0 */
|
||||
#endif
|
||||
TCPD_SOCKADDR *sin; /* socket address or 0 */
|
||||
struct t_unitdata *unit; /* TLI transport address or 0 */
|
||||
struct request_info *request; /* for shared information */
|
||||
};
|
||||
@ -67,21 +69,22 @@ extern char paranoid[];
|
||||
/* Global functions. */
|
||||
|
||||
#if defined(TLI) || defined(PTX) || defined(TLI_SEQUENT)
|
||||
extern void fromhost(); /* get/validate client host info */
|
||||
extern void fromhost(struct request_info *); /* get/validate client host info */
|
||||
#else
|
||||
#define fromhost sock_host /* no TLI support needed */
|
||||
#define fromhost sock_host /* no TLI support needed */
|
||||
#endif
|
||||
|
||||
extern int hosts_access(); /* access control */
|
||||
extern int hosts_ctl(); /* wrapper around request_init() */
|
||||
extern void shell_cmd(); /* execute shell command */
|
||||
extern char *percent_x(); /* do %<char> expansion */
|
||||
extern void rfc931(); /* client name from RFC 931 daemon */
|
||||
extern void clean_exit(); /* clean up and exit */
|
||||
extern void refuse(); /* clean up and exit */
|
||||
extern char *xgets(); /* fgets() on steroids */
|
||||
extern char *split_at(); /* strchr() and split */
|
||||
extern unsigned long dot_quad_addr(); /* restricted inet_addr() */
|
||||
extern int hosts_access(struct request_info *); /* access control */
|
||||
extern int hosts_ctl(char *, char *, char *, char *); /* wrapper around request_init() */
|
||||
extern void shell_cmd(char *); /* execute shell command */
|
||||
extern char *percent_x(char *, int, char *, struct request_info *); /* do %<char> expansion */
|
||||
extern void rfc931(TCPD_SOCKADDR *, TCPD_SOCKADDR *, char *); /* client name from RFC 931 daemon */
|
||||
extern void clean_exit(struct request_info *); /* clean up and exit */
|
||||
extern void refuse(struct request_info *); /* clean up and exit */
|
||||
extern char *xgets(char *, int, FILE *); /* fgets() on steroids */
|
||||
|
||||
extern char *split_at(char *, int); /* strchr() and split */
|
||||
extern unsigned long dot_quad_addr(char *); /* restricted inet_addr() */
|
||||
|
||||
/* Global variables. */
|
||||
|
||||
@ -98,13 +101,8 @@ extern int resident; /* > 0 if resident process */
|
||||
* attributes. Each attribute has its own key.
|
||||
*/
|
||||
|
||||
#ifdef __STDC__
|
||||
extern struct request_info *request_init(struct request_info *,...);
|
||||
extern struct request_info *request_set(struct request_info *,...);
|
||||
#else
|
||||
extern struct request_info *request_init(); /* initialize request */
|
||||
extern struct request_info *request_set(); /* update request structure */
|
||||
#endif
|
||||
extern struct request_info *request_init(struct request_info *,...); /* initialize request */
|
||||
extern struct request_info *request_set(struct request_info *,...); /* update request structure */
|
||||
|
||||
#define RQ_FILE 1 /* file descriptor */
|
||||
#define RQ_DAEMON 2 /* server process (argv[0]) */
|
||||
@ -124,27 +122,27 @@ extern struct request_info *request_set(); /* update request structure */
|
||||
* host_info structures serve as caches for the lookup results.
|
||||
*/
|
||||
|
||||
extern char *eval_user(); /* client user */
|
||||
extern char *eval_hostname(); /* printable hostname */
|
||||
extern char *eval_hostaddr(); /* printable host address */
|
||||
extern char *eval_hostinfo(); /* host name or address */
|
||||
extern char *eval_client(); /* whatever is available */
|
||||
extern char *eval_server(); /* whatever is available */
|
||||
extern char *eval_user(struct request_info *); /* client user */
|
||||
extern char *eval_hostname(struct host_info *); /* printable hostname */
|
||||
extern char *eval_hostaddr(struct host_info *); /* printable host address */
|
||||
extern char *eval_hostinfo(struct host_info *); /* host name or address */
|
||||
extern char *eval_client(struct request_info *); /* whatever is available */
|
||||
extern char *eval_server(struct request_info *); /* whatever is available */
|
||||
#define eval_daemon(r) ((r)->daemon) /* daemon process name */
|
||||
#define eval_pid(r) ((r)->pid) /* process id */
|
||||
|
||||
/* Socket-specific methods, including DNS hostname lookups. */
|
||||
|
||||
extern void sock_host(); /* look up endpoint addresses */
|
||||
extern void sock_hostname(); /* translate address to hostname */
|
||||
extern void sock_hostaddr(); /* address to printable address */
|
||||
extern void sock_host(struct request_info *); /* look up endpoint addresses */
|
||||
extern void sock_hostname(struct host_info *); /* translate address to hostname */
|
||||
extern void sock_hostaddr(struct host_info *); /* address to printable address */
|
||||
#define sock_methods(r) \
|
||||
{ (r)->hostname = sock_hostname; (r)->hostaddr = sock_hostaddr; }
|
||||
|
||||
/* The System V Transport-Level Interface (TLI) interface. */
|
||||
|
||||
#if defined(TLI) || defined(PTX) || defined(TLI_SEQUENT)
|
||||
extern void tli_host(); /* look up endpoint addresses etc. */
|
||||
extern void tli_host(struct request_info *); /* look up endpoint addresses etc. */
|
||||
#endif
|
||||
|
||||
/*
|
||||
@ -153,13 +151,8 @@ extern void tli_host(); /* look up endpoint addresses etc. */
|
||||
* everyone would have to include <setjmp.h>.
|
||||
*/
|
||||
|
||||
#ifdef __STDC__
|
||||
extern void tcpd_warn(char *, ...); /* report problem and proceed */
|
||||
extern void tcpd_jump(char *, ...); /* report problem and jump */
|
||||
#else
|
||||
extern void tcpd_warn();
|
||||
extern void tcpd_jump();
|
||||
#endif
|
||||
|
||||
struct tcpd_context {
|
||||
char *file; /* current file */
|
||||
@ -185,42 +178,42 @@ extern struct tcpd_context tcpd_context;
|
||||
* behavior.
|
||||
*/
|
||||
|
||||
extern void process_options(); /* execute options */
|
||||
extern int dry_run; /* verification flag */
|
||||
extern void process_options(char *, struct request_info *); /* execute options */
|
||||
extern int dry_run; /* verification flag */
|
||||
|
||||
/* Bug workarounds. */
|
||||
|
||||
#ifdef INET_ADDR_BUG /* inet_addr() returns struct */
|
||||
#define inet_addr fix_inet_addr
|
||||
extern long fix_inet_addr();
|
||||
extern long fix_inet_addr(char *);
|
||||
#endif
|
||||
|
||||
#ifdef BROKEN_FGETS /* partial reads from sockets */
|
||||
#define fgets fix_fgets
|
||||
extern char *fix_fgets();
|
||||
extern char *fix_fgets(char *, int, FILE *);
|
||||
#endif
|
||||
|
||||
#ifdef RECVFROM_BUG /* no address family info */
|
||||
#define recvfrom fix_recvfrom
|
||||
extern int fix_recvfrom();
|
||||
extern int fix_recvfrom(int, char *, int, int, struct sockaddr *, int *);
|
||||
#endif
|
||||
|
||||
#ifdef GETPEERNAME_BUG /* claims success with UDP */
|
||||
#define getpeername fix_getpeername
|
||||
extern int fix_getpeername();
|
||||
extern int fix_getpeername(int, struct sockaddr *, int *);
|
||||
#endif
|
||||
|
||||
#ifdef SOLARIS_24_GETHOSTBYNAME_BUG /* lists addresses as aliases */
|
||||
#define gethostbyname fix_gethostbyname
|
||||
extern struct hostent *fix_gethostbyname();
|
||||
extern struct hostent *fix_gethostbyname(char *);
|
||||
#endif
|
||||
|
||||
#ifdef USE_STRSEP /* libc calls strtok() */
|
||||
#define strtok fix_strtok
|
||||
extern char *fix_strtok();
|
||||
extern char *fix_strtok(char *, char *);
|
||||
#endif
|
||||
|
||||
#ifdef LIBC_CALLS_STRTOK /* libc calls strtok() */
|
||||
#define strtok my_strtok
|
||||
extern char *my_strtok();
|
||||
extern char *my_strtok(char *, char *);
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user