Changeset 428 for trunk/src/sh_unix.c
- Timestamp:
- Mar 12, 2013, 9:42:07 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/sh_unix.c
r425 r428 1007 1007 struct group * w; 1008 1008 gid_t gid = 0; 1009 int status = 0; 1009 1010 1010 1011 #if defined(HAVE_PTHREAD) && defined (_POSIX_THREAD_SAFE_FUNCTIONS) && defined(HAVE_GETPWNAM_R) … … 1035 1036 #if defined(HAVE_PTHREAD) && defined (_POSIX_THREAD_SAFE_FUNCTIONS) && defined(HAVE_GETPWNAM_R) 1036 1037 buffer = SH_ALLOC(SH_GRBUF_SIZE); 1037 s h_getgrnam_r(g, &grp, buffer, SH_GRBUF_SIZE, &w);1038 status = sh_getgrnam_r(g, &grp, buffer, SH_GRBUF_SIZE, &w); 1038 1039 #else 1040 errno = 0; 1039 1041 w = sh_getgrnam(g); 1040 #endif 1041 1042 if (w == NULL) 1042 status = errno; 1043 #endif 1044 1045 if ((status == ERANGE) && (w == NULL)) 1046 { 1047 static int seen = 0; 1048 1049 if (seen == 0) 1050 { 1051 char errbuf[SH_ERRBUF_SIZE]; 1052 1053 sh_error_handle (SH_ERR_ERR, FIL__, __LINE__, EINVAL, MSG_E_GRNULL, 1054 sh_error_message(status, errbuf, sizeof(errbuf)), 1055 _("sh_group_to_gid"), (long) -1, _("line too long in group entry")); 1056 ++seen; 1057 } 1058 *fail = -1; 1059 } 1060 else if (w == NULL) 1043 1061 { 1044 1062 char * tmp = sh_util_strdup(g); … … 2881 2899 #endif 2882 2900 2901 if (status == ERANGE) 2902 { 2903 static int seen = 0; 2904 2905 if (seen == 0) 2906 { 2907 sh_error_handle (SH_ERR_ERR, FIL__, __LINE__, EINVAL, MSG_E_GRNULL, 2908 sh_error_message(status, errbuf, sizeof(errbuf)), 2909 _("getgrgid"), (long) gid, _("line too long in group entry")); 2910 ++seen; 2911 } 2912 2913 #if defined(HAVE_PTHREAD) && defined (_POSIX_THREAD_SAFE_FUNCTIONS) && defined(HAVE_GETGRGID_R) 2914 SH_FREE(buffer); 2915 #endif 2916 2917 sh_userid_add(gid, NULL, CACHE_GID); 2918 SL_RETURN( NULL, _("sh_unix_getGIDname")); 2919 } 2920 2883 2921 if (tempres == NULL) 2884 2922 {
Note:
See TracChangeset
for help on using the changeset viewer.