nss_files: Consolidate line parse declarations in <nss_files.h>

These functions should eventually have the same type, so it makes
sense to declare them together.

Tested-by: Carlos O'Donell <carlos@redhat.com>
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
This commit is contained in:
Florian Weimer 2020-07-16 16:40:44 +02:00
parent 23ed36735a
commit e9b2340998
9 changed files with 52 additions and 49 deletions

View File

@ -30,12 +30,6 @@ extern int __old_getgrnam_r (const char *__name, struct group *__resultbuf,
char *__buffer, size_t __buflen, char *__buffer, size_t __buflen,
struct group **__result); struct group **__result);
struct parser_data;
extern int _nss_files_parse_grent (char *line, struct group *result,
struct parser_data *data,
size_t datalen, int *errnop);
libc_hidden_proto (_nss_files_parse_grent)
#define DECLARE_NSS_PROTOTYPES(service) \ #define DECLARE_NSS_PROTOTYPES(service) \
extern enum nss_status _nss_ ## service ## _setgrent (int); \ extern enum nss_status _nss_ ## service ## _setgrent (int); \
extern enum nss_status _nss_ ## service ## _endgrent (void); \ extern enum nss_status _nss_ ## service ## _endgrent (void); \

View File

@ -10,11 +10,5 @@ extern int __sgetsgent_r (const char *string, struct sgrp *resbuf,
char *buffer, size_t buflen, struct sgrp **result) char *buffer, size_t buflen, struct sgrp **result)
attribute_hidden; attribute_hidden;
struct parser_data;
extern int _nss_files_parse_sgent (char *line, struct sgrp *result,
struct parser_data *data,
size_t datalen, int *errnop);
libc_hidden_proto (_nss_files_parse_sgent)
# endif /* !_ISOMAC */ # endif /* !_ISOMAC */
#endif #endif

View File

@ -202,23 +202,10 @@ libc_hidden_proto (ruserpass)
#include <inet/netgroup.h> #include <inet/netgroup.h>
struct parser_data;
extern int _nss_files_parse_protoent (char *line, struct protoent *result,
struct parser_data *data,
size_t datalen, int *errnop);
extern int _nss_files_parse_servent (char *line, struct servent *result,
struct parser_data *data,
size_t datalen, int *errnop);
extern int _nss_files_parse_netent (char *line, struct netent *result,
struct parser_data *data,
size_t datalen, int *errnop);
extern enum nss_status _nss_netgroup_parseline (char **cursor, extern enum nss_status _nss_netgroup_parseline (char **cursor,
struct __netgrent *result, struct __netgrent *result,
char *buffer, size_t buflen, char *buffer, size_t buflen,
int *errnop); int *errnop);
libnss_files_hidden_proto (_nss_files_parse_protoent)
libnss_files_hidden_proto (_nss_files_parse_servent)
libnss_files_hidden_proto (_nss_files_parse_netent)
libnss_files_hidden_proto (_nss_netgroup_parseline) libnss_files_hidden_proto (_nss_netgroup_parseline)
#define DECLARE_NSS_PROTOTYPES(service) \ #define DECLARE_NSS_PROTOTYPES(service) \

View File

@ -15,12 +15,6 @@ struct etherent
struct ether_addr e_addr; struct ether_addr e_addr;
}; };
struct parser_data;
extern int _nss_files_parse_etherent (char *line, struct etherent *result,
struct parser_data *data,
size_t datalen, int *errnop);
libnss_files_hidden_proto (_nss_files_parse_etherent)
#define DECLARE_NSS_PROTOTYPES(service) \ #define DECLARE_NSS_PROTOTYPES(service) \
extern enum nss_status _nss_ ## service ## _setetherent (int __stayopen); \ extern enum nss_status _nss_ ## service ## _setetherent (int __stayopen); \
extern enum nss_status _nss_ ## service ## _endetherent (void); \ extern enum nss_status _nss_ ## service ## _endetherent (void); \

View File

@ -25,4 +25,55 @@
FILE *__nss_files_fopen (const char *path); FILE *__nss_files_fopen (const char *path);
libc_hidden_proto (__nss_files_fopen) libc_hidden_proto (__nss_files_fopen)
struct parser_data;
struct etherent;
struct group;
struct netent;
struct passwd;
struct protoent;
struct rpcent;
struct servent;
struct sgrp;
struct spwd;
/* Instances of the parse_line function from
nss/nss_files/files-parse.c. */
extern int _nss_files_parse_etherent (char *line, struct etherent *result,
struct parser_data *data,
size_t datalen, int *errnop);
extern int _nss_files_parse_grent (char *line, struct group *result,
struct parser_data *data,
size_t datalen, int *errnop);
extern int _nss_files_parse_netent (char *line, struct netent *result,
struct parser_data *data,
size_t datalen, int *errnop);
extern int _nss_files_parse_protoent (char *line, struct protoent *result,
struct parser_data *data,
size_t datalen, int *errnop);
extern int _nss_files_parse_pwent (char *line, struct passwd *result,
struct parser_data *data,
size_t datalen, int *errnop);
extern int _nss_files_parse_rpcent (char *line, struct rpcent *result,
struct parser_data *data,
size_t datalen, int *errnop);
extern int _nss_files_parse_servent (char *line, struct servent *result,
struct parser_data *data,
size_t datalen, int *errnop);
extern int _nss_files_parse_sgent (char *line, struct sgrp *result,
struct parser_data *data,
size_t datalen, int *errnop);
extern int _nss_files_parse_spent (char *line, struct spwd *result,
struct parser_data *data,
size_t datalen, int *errnop);
libnss_files_hidden_proto (_nss_files_parse_etherent)
libc_hidden_proto (_nss_files_parse_grent)
libnss_files_hidden_proto (_nss_files_parse_netent)
libnss_files_hidden_proto (_nss_files_parse_protoent)
libc_hidden_proto (_nss_files_parse_pwent)
libnss_files_hidden_proto (_nss_files_parse_rpcent)
libnss_files_hidden_proto (_nss_files_parse_servent)
libc_hidden_proto (_nss_files_parse_sgent)
libc_hidden_proto (_nss_files_parse_spent)
#endif /* _NSS_FILES_H */ #endif /* _NSS_FILES_H */

View File

@ -26,12 +26,6 @@ extern int __fgetpwent_r (FILE * __stream, struct passwd *__resultbuf,
#include <nss.h> #include <nss.h>
struct parser_data;
extern int _nss_files_parse_pwent (char *line, struct passwd *result,
struct parser_data *data,
size_t datalen, int *errnop);
libc_hidden_proto (_nss_files_parse_pwent)
#define DECLARE_NSS_PROTOTYPES(service) \ #define DECLARE_NSS_PROTOTYPES(service) \
extern enum nss_status _nss_ ## service ## _setpwent (int); \ extern enum nss_status _nss_ ## service ## _setpwent (int); \
extern enum nss_status _nss_ ## service ## _endpwent (void); \ extern enum nss_status _nss_ ## service ## _endpwent (void); \

View File

@ -24,12 +24,6 @@ extern int __getrpcent_r (struct rpcent *__result_buf, char *__buffer,
extern int __old_getrpcent_r (struct rpcent *__result_buf, char *__buffer, extern int __old_getrpcent_r (struct rpcent *__result_buf, char *__buffer,
size_t __buflen, struct rpcent **__result); size_t __buflen, struct rpcent **__result);
struct parser_data;
extern int _nss_files_parse_rpcent (char *line, struct rpcent *result,
struct parser_data *data,
size_t datalen, int *errnop);
libnss_files_hidden_proto (_nss_files_parse_rpcent)
#define DECLARE_NSS_PROTOTYPES(service) \ #define DECLARE_NSS_PROTOTYPES(service) \
extern enum nss_status _nss_ ## service ## _setrpcent (int); \ extern enum nss_status _nss_ ## service ## _setrpcent (int); \
extern enum nss_status _nss_ ## service ## _endrpcent (void); \ extern enum nss_status _nss_ ## service ## _endrpcent (void); \

View File

@ -25,12 +25,6 @@ extern int __fgetspent_r (FILE *__stream, struct spwd *__result_buf,
extern int __lckpwdf (void); extern int __lckpwdf (void);
extern int __ulckpwdf (void); extern int __ulckpwdf (void);
struct parser_data;
extern int _nss_files_parse_spent (char *line, struct spwd *result,
struct parser_data *data,
size_t datalen, int *errnop);
libc_hidden_proto (_nss_files_parse_spent)
#define DECLARE_NSS_PROTOTYPES(service) \ #define DECLARE_NSS_PROTOTYPES(service) \
extern enum nss_status _nss_ ## service ## _setspent (int); \ extern enum nss_status _nss_ ## service ## _setspent (int); \
extern enum nss_status _nss_ ## service ## _endspent (void); \ extern enum nss_status _nss_ ## service ## _endspent (void); \

View File

@ -21,6 +21,7 @@
#include <string.h> #include <string.h>
#include <stdlib.h> #include <stdlib.h>
#include <stdint.h> #include <stdint.h>
#include <nss_files.h>
/* These symbols are defined by the including source file: /* These symbols are defined by the including source file: