From 07bbf922670cce83c0b54f28ad43473d044cae5e Mon Sep 17 00:00:00 2001 From: Denis Vlasenko Date: Sat, 12 Apr 2008 01:34:04 +0000 Subject: [PATCH] Functions should be either exported in public .h files and marked with libc_hidden_proto/def(), or not be exported in .h files and be hidden (or even static if possible). We have five functions which violate this. Fixing: netdb.h: export ruserpass() rpc/rpc.h: export xdr_accepted_reply() and xdr_rejected_reply() make inet_ntoa_r static function (it is not exported in any .h file) make _time_tzset hidden function (it is not exported in any .h file) --- include/netdb.h | 5 +++++ include/rpc/rpc.h | 3 +++ libc/inet/addr.c | 5 +---- libc/inet/rpc/rexec.c | 3 +-- libc/inet/rpc/rpc_prot.c | 2 -- libc/inet/rpc/ruserpass.c | 4 ++-- libc/misc/time/time.c | 3 +-- 7 files changed, 13 insertions(+), 12 deletions(-) diff --git a/include/netdb.h b/include/netdb.h index fe3da8239..bcae666e6 100644 --- a/include/netdb.h +++ b/include/netdb.h @@ -444,6 +444,11 @@ extern int getnetgrent_r (char **__restrict __hostp, #endif /* misc */ +/* ruserpass - remote password check. + This function also exists in glibc but is undocumented */ +extern int ruserpass(const char *host, const char **aname, const char **apass); + + #ifdef __USE_BSD /* Call `rshd' at port RPORT on remote machine *AHOST to execute CMD. The local user is LOCUSER, on the remote machine the command is diff --git a/include/rpc/rpc.h b/include/rpc/rpc.h index 9236e7205..8194ffee3 100644 --- a/include/rpc/rpc.h +++ b/include/rpc/rpc.h @@ -105,6 +105,9 @@ extern struct pollfd **__rpc_thread_svc_pollfd (void) extern int *__rpc_thread_svc_max_pollfd (void) __attribute__ ((__const__)); #define svc_max_pollfd (*__rpc_thread_svc_max_pollfd ()) +extern bool_t xdr_accepted_reply (XDR *xdrs, struct accepted_reply *ar); +extern bool_t xdr_rejected_reply (XDR *xdrs, struct rejected_reply *rr); + __END_DECLS #endif /* rpc/rpc.h */ diff --git a/libc/inet/addr.c b/libc/inet/addr.c index 94fa3aab7..cbe3d6893 100644 --- a/libc/inet/addr.c +++ b/libc/inet/addr.c @@ -122,9 +122,7 @@ libc_hidden_def(inet_addr) #define INET_NTOA_MAX_LEN 16 /* max 12 digits + 3 '.'s + 1 nul */ -extern char *inet_ntoa_r(struct in_addr in, char buf[INET_NTOA_MAX_LEN]); -libc_hidden_proto(inet_ntoa_r) -char *inet_ntoa_r(struct in_addr in, char buf[INET_NTOA_MAX_LEN]) +static char *inet_ntoa_r(struct in_addr in, char buf[INET_NTOA_MAX_LEN]) { in_addr_t addr = ntohl(in.s_addr); int i; @@ -143,7 +141,6 @@ char *inet_ntoa_r(struct in_addr in, char buf[INET_NTOA_MAX_LEN]) return p+1; } -libc_hidden_def(inet_ntoa_r) libc_hidden_proto(inet_ntoa) char *inet_ntoa(struct in_addr in) diff --git a/libc/inet/rpc/rexec.c b/libc/inet/rpc/rexec.c index e1cd45af8..44ab3eef9 100644 --- a/libc/inet/rpc/rexec.c +++ b/libc/inet/rpc/rexec.c @@ -61,14 +61,13 @@ libc_hidden_proto(atoi) libc_hidden_proto(connect) libc_hidden_proto(accept) libc_hidden_proto(listen) +libc_hidden_proto(ruserpass) #define SA_LEN(_x) __libc_sa_len((_x)->sa_family) extern int __libc_sa_len (sa_family_t __af) __THROW attribute_hidden; int rexecoptions; char ahostbuf[NI_MAXHOST] attribute_hidden; -extern int ruserpass(const char *host, const char **aname, const char **apass) attribute_hidden; -libc_hidden_proto(ruserpass) libc_hidden_proto(rexec_af) int diff --git a/libc/inet/rpc/rpc_prot.c b/libc/inet/rpc/rpc_prot.c index ebe6c3128..74658e654 100644 --- a/libc/inet/rpc/rpc_prot.c +++ b/libc/inet/rpc/rpc_prot.c @@ -89,7 +89,6 @@ xdr_des_block (XDR *xdrs, des_block *blkp) /* * XDR the MSG_ACCEPTED part of a reply message union */ -extern bool_t xdr_accepted_reply (XDR *xdrs, struct accepted_reply *ar); libc_hidden_proto(xdr_accepted_reply) bool_t xdr_accepted_reply (XDR *xdrs, struct accepted_reply *ar) @@ -117,7 +116,6 @@ libc_hidden_def(xdr_accepted_reply) /* * XDR the MSG_DENIED part of a reply message union */ -extern bool_t xdr_rejected_reply (XDR *xdrs, struct rejected_reply *rr); libc_hidden_proto(xdr_rejected_reply) bool_t xdr_rejected_reply (XDR *xdrs, struct rejected_reply *rr) diff --git a/libc/inet/rpc/ruserpass.c b/libc/inet/rpc/ruserpass.c index 198355de7..8d9d356b1 100644 --- a/libc/inet/rpc/ruserpass.c +++ b/libc/inet/rpc/ruserpass.c @@ -115,8 +115,8 @@ static const struct toktab { }; - -extern int ruserpass(const char *host, const char **aname, const char **apass); +/* ruserpass - remote password check. + This function also exists in glibc but is undocumented */ libc_hidden_proto(ruserpass) int ruserpass(const char *host, const char **aname, const char **apass) { diff --git a/libc/misc/time/time.c b/libc/misc/time/time.c index 91b4097ff..6571b14b3 100644 --- a/libc/misc/time/time.c +++ b/libc/misc/time/time.c @@ -202,8 +202,7 @@ libc_hidden_proto(__ctype_b) ((defined(L_strftime) || defined(L_strftime_l)) && \ defined(__UCLIBC_HAS_XLOCALE__)) -void _time_tzset(int use_old_rules); -libc_hidden_proto(_time_tzset) +void _time_tzset(int use_old_rules) attribute_hidden; #ifndef L__time_mktime -- 2.11.0