92: def gid(group)
93: begin
94: group = Integer(group)
95: rescue ArgumentError
96:
97: end
98: if group.is_a?(Integer)
99: return nil unless name = get_posix_field(:group, :name, group)
100: gid = get_posix_field(:group, :gid, name)
101: check_value = gid
102: else
103: return nil unless gid = get_posix_field(:group, :gid, group)
104: name = get_posix_field(:group, :name, gid)
105: check_value = name
106: end
107: if check_value != group
108: return search_posix_field(:group, :gid, group)
109: else
110: return gid
111: end
112: end