Add getconf(1)

The logic is simple, it's just a pain in the ass to fill the
data-structures.
Some lines had to be commented out, as glibc/musl apparently
have not fully implemented the mandatory variables for the
2013 corrigendum of POSIX 2008.

Also added a manpage and the necessary entries in README.

I also removed it from the TODO.
This commit is contained in:
FRIGN
2015-10-01 00:59:40 +02:00
committed by sin
parent 98e7e75ec6
commit 05996b997c
5 changed files with 375 additions and 1 deletions

59
getconf.1 Normal file
View File

@@ -0,0 +1,59 @@
.Dd October 1, 2015
.Dt GETCONF 1
.Os sbase
.Sh NAME
.Nm getconf
.Nd get configuration values
.Sh SYNOPSIS
.Nm
.Op Fl v Ar spec
.Ar var
.Ar [path]
.Sh DESCRIPTION
.Nm
writes the value of the variable
.Ar var
to stdout.
.sp
If
.Ar path
is given,
.Ar var
is matched against configuration values from
.Xr pathconf 3 .
If
.Ar path
is not given,
.Ar var
is matched against configuration values from
.Xr sysconf 3 ,
.Xr confstr 3
and limits.h (Minimum and Maximum).
.sp
If
.Ar var
is not defined or has not been found,
.Nm
writes "undefined" to stdout.
.Sh OPTIONS
.Bl -tag -width Ds
.It Fl v Ar spec
Ignored.
.El
.Sh EXIT STATUS
.Bl -tag -width Ds
.It 0
.Ar var
was matched and its value written successfully.
.It 1
An error occured or
.Ar var
was neither defined nor found.
.Sh STANDARDS
The
.Nm
utility is compliant with the
.St -p1003.1-2013
specification except from the
.Op Fl v
flag.