Comment 1 for bug 141067

Revision history for this message
TJ (tj) wrote :

It always helps to step back and the revisit a problem, especially when it involves PERL :)

I mention in my previous comment:

liboobs-2.20.0/oobs/oobs-groupsconfig.c::oobs_groups_config_update()

  dbus_message_iter_next (&iter);
  dbus_message_iter_get_basic (&iter, &priv->minimum_gid);

The value comes from the Dbus GroupsConfig structure Integer32 'Minimum GID' element (see http://system-tools-backends.freedesktop.org/dbus-spec.html).

Rereading that made me realise I'd not actually looked at where Dbus got the values because I got sidetracked chasing another lead at that time.

system-tools-backends-2.4.0/Groups.pm::get() hands the GroupsConfig structure to Dbus and liboobs.

Groups.pm::get() does:

return ($groups, $$logindefs{"gmin"}, $$logindefs{"gmax"});

$logindefs is defined in system-tools-backends-2.4.0/Users/Users.pm, and for a debian distro reads defaults from:

@login_defs_names = ( "/etc/login.defs", "/etc/adduser.conf" );

/etc/login.defs contains the entries:

# Min/max values for automatic gid selection in groupadd
#
GID_MIN 100
GID_MAX 60000

so, GID_MIN is the reason that "Group settings" table of Users and Groups doesn't display GIDs 1-99.