diff options
Diffstat (limited to 'nss/nss_test.h')
-rw-r--r-- | nss/nss_test.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/nss/nss_test.h b/nss/nss_test.h index f8b81c27a7..db3d617585 100644 --- a/nss/nss_test.h +++ b/nss/nss_test.h @@ -33,11 +33,13 @@ #include <pwd.h> #include <grp.h> +#include <shadow.h> #include <netdb.h> typedef struct test_tables { struct passwd *pwd_table; struct group *grp_table; + struct spwd *spwd_table; struct hostent *host_table; } test_tables; @@ -46,10 +48,12 @@ extern void _nss_test2_init_hook (test_tables *) __attribute__((weak)); #define PWD_LAST() { .pw_name = NULL, .pw_uid = 0 } #define GRP_LAST() { .gr_name = NULL, .gr_gid = 0 } +#define SPWD_LAST() { .sp_namp = NULL, .sp_pwdp = NULL } #define HOST_LAST() { .h_name = NULL, .h_aliases = NULL, .h_length = 0, .h_addr_list = NULL } #define PWD_ISLAST(p) ((p)->pw_name == NULL && (p)->pw_uid == 0) #define GRP_ISLAST(g) ((g)->gr_name == NULL && (g)->gr_gid == 0) +#define SPWD_ISLAST(s) ((s)->sp_namp == NULL && (s)->sp_pwdp == 0) #define HOST_ISLAST(h) ((h)->h_name == NULL && (h)->h_length == 0) /* Macros to fill in the tables easily. */ @@ -76,6 +80,9 @@ extern void _nss_test2_init_hook (test_tables *) __attribute__((weak)); { .gr_name = (char *) n, .gr_passwd = (char *) "*", .gr_gid = u, \ .gr_mem = (char **) m } +#define SPWD(u) \ + { .sp_namp = (char *) "name" #u, .sp_pwdp = (char *) "passwd" #u } + #define HOST(u) \ { .h_name = (char *) "name" #u, .h_aliases = NULL, .h_addrtype = u, \ .h_length = 4, \ |