diff options
Diffstat (limited to 'src/grp')
| -rw-r--r-- | src/grp/__grp.c | 24 | ||||
| -rw-r--r-- | src/grp/_grp.h | 32 | ||||
| -rw-r--r-- | src/grp/endgrent.c | 20 | ||||
| -rw-r--r-- | src/grp/getgrent.c | 94 | ||||
| -rw-r--r-- | src/grp/getgrgid.c | 28 | ||||
| -rw-r--r-- | src/grp/getgrnam.c | 29 | ||||
| -rw-r--r-- | src/grp/gid_t.ref | 2 | ||||
| -rw-r--r-- | src/grp/setgrent.c | 19 | ||||
| -rw-r--r-- | src/grp/struct_group.c | 14 |
9 files changed, 0 insertions, 262 deletions
diff --git a/src/grp/__grp.c b/src/grp/__grp.c deleted file mode 100644 index 6ac139f1..00000000 --- a/src/grp/__grp.c +++ /dev/null @@ -1,24 +0,0 @@ -#if 0 - -#include "_grp.h" - -#ifndef _XOPEN_SOURCE -#undef getgrent -#define getgrent __getgrent -#include "getgrent.c" -#endif - -struct __grp __grp = -{ - NULL, - { 0 }, - getgrent, - { 0 }, -}; - -/* -POSIX(1) -*/ - - -#endif diff --git a/src/grp/_grp.h b/src/grp/_grp.h deleted file mode 100644 index e3a15be4..00000000 --- a/src/grp/_grp.h +++ /dev/null @@ -1,32 +0,0 @@ -#ifndef ___GRP_H__ -#define ___GRP_H__ - -#include <sys/types.h> -#include <grp.h> -#include <stdio.h> - -#define MAX_MEMBERS 128 - -struct __grp { - FILE *db; - struct group grp; - struct group * (*getgrent)(void); - char *members[MAX_MEMBERS]; -}; - -extern struct __grp __grp; - -#ifndef _XOPEN_SOURCE -#define setgrent() (__grp.db == NULL ? (void)0 : (void)rewind(__grp.db)) - -#define endgrent() do { \ - if (__grp.db) { \ - fclose(__grp.db); \ - __grp.db = NULL; \ - } \ -} while (0) - -#define getgrent __grp.getgrent -#endif - -#endif diff --git a/src/grp/endgrent.c b/src/grp/endgrent.c deleted file mode 100644 index 6869ed1f..00000000 --- a/src/grp/endgrent.c +++ /dev/null @@ -1,20 +0,0 @@ -#if 0 - -#include <grp.h> -#include <stdio.h> -#include "_grp.h" - -void endgrent(void) -{ - if (__grp.db != NULL) { - fclose(__grp.db); - __grp.db = NULL; - } -} - -/* -XOPEN(400) -*/ - - -#endif diff --git a/src/grp/getgrent.c b/src/grp/getgrent.c deleted file mode 100644 index 5b455ae7..00000000 --- a/src/grp/getgrent.c +++ /dev/null @@ -1,94 +0,0 @@ -#if 0 - -#if ((!defined _POSIX_C_SOURCE) || (_POSIX_C_SOURCE < 2)) -#undef _POSIX_C_SOURCE -#define _POSIX_C_SOURCE 2 -#endif - -#include <sys/types.h> -#include <grp.h> -#include <stdlib.h> -#include <stdio.h> -#include <limits.h> -#include <string.h> -#include "_config.h" -#include "_grp.h" - -#ifndef LINE_MAX -#define LINE_MAX _POSIX2_LINE_MAX -#endif - -#ifndef _XOPEN_SOURCE -static -#endif - -struct group * getgrent(void) -{ - static char buf[LINE_MAX + 1]; - char *group, *password, *gid, *members, *nl; - int member = 0; - - /* TODO: attempt first calling _GRP_CMD */ - - if (__grp.db == NULL) { - __grp.db = fopen(_GRP_DB, "r"); - if (__grp.db == NULL) { - return NULL; - } - } - - if (fgets(buf, sizeof(buf), __grp.db) == NULL) { - endgrent(); - return NULL; - } - - group = buf; - if ((password = strchr(buf, ':')) != NULL) { - *password = '\0'; - password++; - } else { - return NULL; - } - - if ((gid = strchr(password, ':')) != NULL) { - *gid = '\0'; - gid++; - } else { - return NULL; - } - - if ((members = strchr(gid, ':')) != NULL) { - *members = '\0'; - members++; - if ((nl = strchr(members, '\n')) != NULL) { - *nl = '\0'; - } - } else { - return NULL; - } - - __grp.grp.gr_name = group; - __grp.grp.gr_gid = strtoul(gid, NULL, 10); - - while (members && *members) { - __grp.members[member++] = members; - members = strchr(members, ','); - if (members) { - *members = '\0'; - members++; - } - } - - __grp.members[member] = NULL; - - __grp.grp.gr_mem = __grp.members; - - return &__grp.grp; -} - -/* -XOPEN(400) -*/ - - -#endif diff --git a/src/grp/getgrgid.c b/src/grp/getgrgid.c deleted file mode 100644 index 3b745f97..00000000 --- a/src/grp/getgrgid.c +++ /dev/null @@ -1,28 +0,0 @@ -#if 0 - -#include <sys/types.h> -#include <grp.h> -#include "_grp.h" - -struct group * getgrgid(gid_t gid) -{ - struct group *grp = NULL; - setgrent(); - - while ((grp = getgrent()) != NULL) { - if (grp->gr_gid == gid) { - endgrent(); - return grp; - } - } - - endgrent(); - return NULL; -} - -/* -POSIX(1) -*/ - - -#endif diff --git a/src/grp/getgrnam.c b/src/grp/getgrnam.c deleted file mode 100644 index dfa0d5e7..00000000 --- a/src/grp/getgrnam.c +++ /dev/null @@ -1,29 +0,0 @@ -#if 0 - -#include <sys/types.h> -#include <grp.h> -#include <string.h> -#include "_grp.h" - -struct group * getgrnam(const char * name) -{ - struct group *grp = NULL; - setgrent(); - - while ((grp = getgrent()) != NULL) { - if (strcmp(name, grp->gr_name) == 0) { - endgrent(); - return grp; - } - } - - endgrent(); - return NULL; -} - -/* -POSIX(1) -*/ - - -#endif diff --git a/src/grp/gid_t.ref b/src/grp/gid_t.ref deleted file mode 100644 index 18ec6499..00000000 --- a/src/grp/gid_t.ref +++ /dev/null @@ -1,2 +0,0 @@ -REFERENCE(sys/types/gid_t.c) -XOPEN(4) diff --git a/src/grp/setgrent.c b/src/grp/setgrent.c deleted file mode 100644 index 13c20a1f..00000000 --- a/src/grp/setgrent.c +++ /dev/null @@ -1,19 +0,0 @@ -#if 0 - -#include <grp.h> -#include <stdio.h> -#include "_grp.h" - -void setgrent(void) -{ - if (__grp.db != NULL) { - rewind(__grp.db); - } -} - -/* -XOPEN(400) -*/ - - -#endif diff --git a/src/grp/struct_group.c b/src/grp/struct_group.c deleted file mode 100644 index b1abb325..00000000 --- a/src/grp/struct_group.c +++ /dev/null @@ -1,14 +0,0 @@ -#if 0 - -struct group { - char * gr_name; - gid_t gr_gid; - char ** gr_mem; -}; - -/* -POSIX(1) -*/ - - -#endif |
