The GNU C Library - Examples of Sysconf

Node: Examples of Sysconf Prev: Constants for Sysconf Up: Sysconf

Examples of sysconf

We recommend that you first test for a macro definition for the parameter you are interested in, and call sysconf only if the macro is not defined. For example, here is how to test whether job control is supported:

	int
	have_job_control (void)
	{
	#ifdef _POSIX_JOB_CONTROL
	  return 1;
	#else
	  int value = sysconf (_SC_JOB_CONTROL);
	  if (value < 0)
	    /* If the system is that badly wedged,
	       there's no use trying to go on.  */
	    fatal (strerror (errno));
	  return value;
	#endif
	}

Here is how to get the value of a numeric limit:

	int
	get_child_max ()
	{
	#ifdef CHILD_MAX
	  return CHILD_MAX;
	#else
	  int value = sysconf (_SC_CHILD_MAX);
	  if (value < 0)
	    fatal (strerror (errno));
	  return value;
	#endif
	}


Up: Sysconf