.TH genl\-ctrl-list 8 "20 April 2012" "libnl"
.SH NAME
genl\-ctrl\-list \- List available kernel-side Generic Netlink families
.SH SYNOPSIS
.B genl\-ctrl\-list [-d]

.SH DESCRIPTION
.PP
Queries the Generic Netlink controller in kernel and prints a list of all
registered Generic Netlink families including the version of the interface
that has been registered.

.SH OPTIONS
.TP
.BR \-\^h " or " \-\-help
Print help text to console and exit.
.TP
.BR \-\^v " or " \-\-version
Print versioning information to console and exit.
.TP
.BR \-\^d " or " \-\-details
Include additional detailed information for each Generic Netlink
family that is printed.

The information includes:

.RS
.TP
.B hdrsize N
The size of the user specific header.

.TP
.B maxattr N
The maximum Netlink attribute identifier expected by the interface.

.TP
.B op NAME (ID) <FLAGS>
A list of available operations including their name, numeric identifier
and the flags indicating the capabilities of the opertion.

Available flags:
.RS
.TP
.I admin-perm
Requires administrative privileges

.TP
.I has-doit
Command can handle request

.TP
.I has-dump
Command can handle a dump request

.TP
.I has-policy
Command enforces attribute validation policy
.RE

.TP
.B grp NAME (ID)
A list of registered multicast groups including name (if available)
and identifier.
.RE

.RS
.B Example:
.RS
0x0010 nlctrl version 2
.RS 0
    hdrsize 0 maxattr 7
.RS 0
      op GETFAMILY (0x03) <has-doit,has-dump,has-policy>
.RS 0
      grp notify (0x10)
.RE


.SH EXAMPLE
.RS 0
$ genl-ctrl-list 
.RS 0
0x0010 nlctrl version 2
.RS 0
0x0011 NLBL_MGMT version 3
.RS 0
0x0012 NLBL_CIPSOv4 version 3
.RS 0
0x0013 NLBL_UNLBL version 3
.RS 0
0x0014 acpi_event version 1
.RS 0
0x0015 thermal_event version 1
.RS 0
0x0016 VFS_DQUOT version 1
.RS 0
0x0017 TASKSTATS version 1
.RS 0
0x0018 NET_DM version 2

.SH AUTHOR
.PP
Thomas Graf is the original author and current maintainer of libnl and
libnl tools. Many people have contributed to it since.