If the value specified for 'max_fds' is the system-wide limit
we should be printing out 'max', and not that value.
Signed-off-by: Hannes Reinecke <hare@suse.de>
static int
snprint_max_fds (char * buff, int len, void * data)
{
+ int r = 0, max_fds;
+
if (!conf->max_fds)
return 0;
- return snprintf(buff, len, "%d", conf->max_fds);
+ r = get_sys_max_fds(&max_fds);
+ if (!r && max_fds == conf->max_fds)
+ return snprintf(buff, len, "\"max\"");
+ else
+ return snprintf(buff, len, "%d", conf->max_fds);
}
static int